2009-05-14 18 views
18

¿Cómo se almacenan los datos en el servidor SQL?¿Cómo se almacenan los datos en el servidor SQL?

+1

Por favor, aclare, ¿qué está buscando exactamente? –

+2

estoy buscando el mecanismo de almacenamiento ..... En qué orden los datos se ingresan en el servidor sql ... Por ejemplo, si estamos insertando 10 millones de filas, ¿cómo se insertarán las filas como la paginación ... registros de transacciones ... archivos ... grupos de archivos – Anoop

+5

El OP debe editarse para reflejar esto. Pobre publicación ... –

Respuesta

-4

¿Qué es RDBMS?

RDBMS significa Sistema de gestión de bases de datos relacionales. Los datos de RDBMS están estructurados en tablas de bases de datos, campos y registros. Cada tabla RDBMS consiste en filas de tabla de base de datos. Cada fila de la tabla de la base de datos consiste en uno o más campos de tabla de base de datos.

RDBMS almacenan los datos en la colección de tablas, que pueden estar relacionadas por campos comunes (columnas de la tabla de la base de datos). RDBMS también proporciona operadores relacionales para manipular los datos almacenados en las tablas de la base de datos. La mayoría de los RDBMS usan SQL como lenguaje de consulta de base de datos.

Edgar Codd presentó el modelo de base de datos relacional. Muchos DBMS modernos no se ajustan a la definición de un RDBMS de Codd, pero aún se consideran RDBMS.

Los RDBMS más populares son MS SQL Server, DB2, Oracle y MySQL. Source

16

Esta Wikipedia article lo describe bastante bien.

Aquí es un subconjunto de la misma, en relación con almacenamiento de datos:

de almacenamiento de datos La unidad principal de almacenamiento de datos es una base de datos, que es una colección de mesas con mecanografiadas columnas. SQL Server es compatible con diferentes tipos de datos, incluyendo tipos primarios como Integer, Float, decimal, Char (incluyendo cadenas de caracteres), VARCHAR (cadenas de caracteres de longitud variable), binaria (por manchas no estructurados de datos), Texto (para datos textuales) entre otros. También permite que se definan tipos compuestos (UDT) definidos por el usuario y se usen. SQL Server también hace que las estadísticas del servidor estén disponibles como tablas virtuales y vistas (llamadas Dynamic Management Views o DMV). Una base de datos también puede contener otros objetos que incluyen vistas, procedimientos almacenados, índices y restricciones, además de tablas, junto con un registro de transacciones. Una base de datos de servidor SQL puede contener un máximo de 0 de 231 objetos y puede abarcar múltiples archivos de nivel de sistema operativo con un tamaño máximo de archivo de archivo de de 220 TB. Los datos en la base de datos se almacenan en archivos de datos primarios con una extensión .mdf. Los archivos de datos secundarios, identificados con una extensión .ndf, se utilizan para almacenar metadatos opcionales . Los archivos de registro son identificados con la extensión .ldf .

El espacio de almacenamiento asignado a una base de datos se divide en páginas numeradas secuencialmente , cada una de 8 KB de tamaño. Una página es la unidad básica de E/S para operaciones de SQL Server . Una página está marcada con un encabezado de 96 bytes de que almacena los metadatos sobre la página, incluido el número de página , el tipo de página, el espacio libre en la página y el ID del objeto que posee.tipo de página define los datos contenida en la página - los datos almacenados en la base de datos, índice, mapa de asignación que contiene información acerca de cómo páginas se asignan a las tablas y índices, mapa de cambio que mantiene información sobre los cambios realizados en otras páginas desde la última copia de seguridad o registro , o contienen grandes tipos de datos como imagen o texto. Mientras que la página es , la unidad básica de una operación de E/S, espacio se gestiona realmente en términos de una extensión que consta de 8 páginas. Un objeto de base de datos puede abarcar todas las 8 páginas en una extensión ("extensión uniforme") o compartir una extensión con hasta 7 objetos más ("extensión mixta"). Una fila en una tabla de base de datos no puede abarcar más de una página, por lo que está limitada a 8 KB en tamaño . Sin embargo, si los datos superan 8 KB y la fila contiene Varchar o de datos varbinary, los datos en esos columnas se mueven a una nueva página (o posiblemente una secuencia de páginas, llamado una unidad de asignación) y reemplazado con un puntero a los datos.

Para el almacenamiento físico de una tabla, sus filas se dividen en una serie de particiones (numeradas del 1 al n). El tamaño de partición es definido por el usuario; por por defecto, todas las filas están en una sola partición . Una tabla se divide en particiones múltiples para propagar una base de datos sobre un clúster. Las filas en cada partición se almacenan en B-tree o estructura de montón. Si la tabla tiene un índice asociado para permitir la recuperación rápida de las filas , las filas se almacenan en orden de acuerdo con sus valores de índice , con un árbol B que proporciona el índice . Los datos están en el nodo de hoja de las hojas y otros nodos que almacenan los valores de índice para los datos de hoja accesibles desde los nodos respectivos. Si el índice no está agrupado, las filas no están ordenadas de acuerdo con las claves de índice . Una vista indizada tiene la misma estructura de almacenamiento que una tabla indexada . Una tabla sin índice es almacenada en una estructura de montón desordenada. Ambos montones y B-trees pueden abarcar unidades de asignación múltiple.

2

SQL Server es una Relational Database Management System:

A sistema de gestión de base de datos relacionales (RDBMS) es un sistema de gestión de base de datos (DBMS) que se basa en el modelo relacional como introducido por EF Codd . Las bases de datos comerciales más populares y de código abierto actualmente en uso se basan en el modelo relacional.

una breve definición de un RDBMS puede ser un DBMS en el que los datos se almacenan en forma de mesas y la relación entre los datos también se almacena en forma de tablas .

1

Puede llevar esto casi tan profundo como desee, pero para SQL Server 2008 Files and Filegroups Architecture - MSDN es una buena visión general de la arquitectura básica de la base de datos.

El sitio MSDN será un recurso valioso si necesita detalles aún más detallados sobre cómo almacena SQL Server 2008 los datos.

8

Los datos del servidor SQL se almacenan en archivos de datos que, de forma predeterminada, tienen una extensión .MDF. Los archivos de registro (.LDF) son archivos secuenciales utilizados por SQL Server para registrar transacciones ejecutadas en la instancia de SQL Server (más en instancias en un momento). Los archivos de registro (archivos .LDF) se truncan automáticamente cuando se utiliza el modelo de recuperación SIMPLE, pero no cuando se usa BULK LOGGED o FULL recovery.

Las instancias permiten más de una instalación de SQL Server en una sola máquina. Si la instancia no tiene nombre, es la instancia predeterminada. Las instancias con nombre también son posibles. Por ejemplo:

MACHINENAME < - la instancia predeterminada es sólo el nombre de la máquina MACHINENAME \ Prueba < - este es el ejemplo "de prueba" en esta máquina

Puede utilizar herramientas como SQL Server Management Studio (a partir de SQL Server 2005) o Enterprise Manager (SQL Server 2000 y anteriores) para interactuar con la instancia & de las bases de datos bajo la instancia.

Todas las instancias (a partir de SQL Server 2005) tendrán una base de datos de recursos oculta, así como una base de datos master, model, msdb y temp. Estas bases de datos son bases de datos "sistema".

No estoy seguro de qué más estás buscando. Espero que ayude.

EDIT: Oh sí, físicamente, los datos en los archivos de datos "" (archivos .MDF, por defecto) está estructurado en lo que se conoce como "páginas" en SQL Server. Los datos en los archivos de registro (archivos .LDF) se almacenan secuencialmente. En la empresa, los archivos de datos y de registro a veces se dividen en diferentes discos duros físicos para una mejor E/S de disco. O RAID de hardware se usa para este propósito.

EDIT2: Olvidé mencionar los grupos de archivos. Al usar grupos de archivos, puede diseñar su esquema de base de datos lógica de manera que los elementos de ese esquema estén físicamente separados, generalmente para desembolsar la base de datos física en diferentes discos duros. Por ejemplo, podría tener un grupo de archivos de datos, un grupo de archivos de índices y un grupo de archivos de imágenes (para imágenes binarias).

+0

Acabo de notar su etiqueta "sqlserver2008", por lo que algunas de las cosas anteriores se pueden ignorar. =) – Garrett

+1

Tu publicación es muy útil – Anoop

+0

Muchas gracias – Anoop

6

Recomiendo el libro 'Microsoft SQL Server 2008 Internals' - de hecho, cualquier cosa de Kalen Delaney en el interior es buena, IMO.

+1

+1 para Karen Delaney .... – Kev

+1

+1> Excelente libro, explica los aspectos internos mucho mejor que unos cientos de caracteres podrían hacer en un foro web. –

Cuestiones relacionadas