Conexión de base de datos
En Ciencias de la computación, un conexión de base de datos es el medio por el cual un servidor de base de datos y su cliente software comunicar uno con el otro. El término se utiliza o no el cliente y el servidor en diferentes máquinas.
El cliente utiliza una conexión de base de datos para enviar comandos a y recibir respuestas del servidor. Una base de datos se almacena como un archivo o un conjunto de archivos en el disco magnético o cinta, disco óptico o algún otro dispositivo de almacenamiento secundario. La información contenida en estos archivos puede desglosarse en los registros, cada una de las cuales consta de uno o más campos.
Los campos son las unidades básicas de almacenamiento de datos, y cada campo normalmente contiene información relacionada con un aspecto o un atributo de la entidad que se describe por la base de datos. Los registros se organizan en tablas que contienen información acerca de las relaciones entre varios de sus campos. Aunque la base de datos se aplica libremente a cualquier colección de información en archivos de computadora, una base de datos en el sentido estricto proporciona capacidades de referencias cruzadas.
Las conexiones son un concepto clave en centradas en los datos programación. Ya que algunos Bases de datos requieren un tiempo considerable para conectar, agrupación de conexiones se utiliza para mejorar el rendimiento. Ningún comando puede realizarse contra una base de datos sin conexión "abierta y disponible" a él.
Las conexiones están construidas mediante el suministro de un subyacente controlador o proveedor con un cadena de conexión, que se utiliza para tratar una específica base de datos o servidor y para proporcionar credenciales de autenticación de usuario y la instancia (por ejemplo, Servidor =sql_box;Base de datos =Común;ID de usuario =UID;Pwd =contraseña;
).
Una vez que se ha construido una conexión, puede ser abierto y cerrado a voluntad y propiedades (como la longitud de tiempo de espera de comando, o transacciónSi es que existe) puede ajustarse. La cadena de conexión se compone de un conjunto de pares clave/valor, dictada por la interfaz de acceso de datos del proveedor de datos.
Algunas bases de datos, tales como PostgreSQL, sólo permiten una operación que se realizará en un momento en cada conexión.[citación necesitada] Una solicitud de datos (un if SQL Seleccione Declaración) es enviado a la base de datos y un conjunto de resultados se devuelve, la conexión está abierta pero no está disponible para otras operaciones hasta que el cliente termina consumiendo el conjunto de resultados.
Otras bases de datos, tales como SQL Server 2005 (y posteriores), no imponer esta limitación. Sin embargo, las bases de datos que permiten varias operaciones simultáneas en cada conexión generalmente incurren en gastos más que aquellos que sólo permiten una operación a la vez.
Contenido
- 1 Agrupación
- 2 Véase también
- 3 Referencias
- 4 Enlaces externos
Agrupación
Conexiones de base de datos son finito[aclarar] y caro y puede tomar un tiempo desproporcionadamente largo para crear en relación con las operaciones realizadas en los. Es muy ineficiente para una aplicación para crear y cerrar una conexión de base de datos cada vez que necesita actualizar una base de datos.
Agrupación de conexiones es una técnica para aliviar este problema. Un pool de conexiones de base de datos es creado y luego compartido entre las aplicaciones que necesitan tener acceso a la base de datos. Cuando una aplicación necesita acceso de base de datos, pide una conexión de la piscina. Cuando esté terminado, devuelve la conexión a la piscina, donde esté disponible para su uso por otras aplicaciones.
El objeto de conexión que se obtiene de la agrupación de conexiones es a menudo un envoltura alrededor de la conexión de base de datos actual. La envoltura maneja internamente su relación con la piscina y oculta los detalles de la piscina de la aplicación. Por ejemplo, el objeto contenedor puede implementar un método de "cerrar" que puede ser llamado como el método de "cerrar" en la conexión de base de datos. A diferencia del método de la conexión de base de datos, el método de la envoltura en realidad no puede cerrar la conexión de base de datos, pero en cambio podría volver a la piscina. La aplicación no necesita ser consciente de la agrupación de conexiones cuando llama a los métodos del objeto contenedor.
Este enfoque fomenta la práctica de la apertura de una conexión en una aplicación sólo cuando sea necesario, y cierre tan pronto como se realiza el trabajo, en lugar de sostener una conexión abierta para toda la vida de la aplicación. De esta manera, un número relativamente pequeño de conexiones puede atender un gran número de solicitudes. Esto también se llama Multiplexación.
En un arquitectura cliente – servidor, por otro lado, una conexión persistente se suele utilizar para que el estado de servidor puede manejar. Este "estado" incluye el lado del servidor cursores, productos temporales[aclarar], ajustes funcionales específicos de la conexión y así sucesivamente.
Es deseable para establecer un límite en el número de conexiones en la piscina. Usando demasiadas conexiones sólo puede causar paliza en lugar de trabajar más útil. En caso de una operación que se efectúa y todas las conexiones estén en uso, puede bloquear la operación hasta que una conexión se devuelve a la piscina, o podrá ser devuelto un error.
Véase también
- ADO
- ADO.NET
- ODBC
- JDBC
- XQJ
- RDBMS
Referencias
|
Este artículo incluye un lista de referencias, relacionados con la lectura o enlaces externos, pero sus orígenes no están claros porque carece de citas en línea. (Septiembre de 2009) |
- IDbConnection Interface en MSDN
- Gestión y monitorización .NET conexiones whitepaper.
- Llegar y estar conectados whitepaper.
- Guía del autostopista a Visual Studio y SQL Server (séptima edición) Addison Wesley, William Vaughn, ISBN 978-0-321-24362-1
Enlaces externos
- ConnectionStrings.com
|