Introducción al modelo de datos de servicio de tabla
Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Introducción al modelo de datos del servicio Tabla

 

El servicio Tabla proporciona almacenamiento estructurado en forma de tabla. Las secciones siguientes describen el modelo de datos del servicio Tabla.

Una cuenta de almacenamiento es una entidad globalmente única dentro del sistema de almacenamiento. La cuenta de almacenamiento es el espacio de nombres primario para el servicio Tabla y es la base para la autenticación. Puede crear cualquier número de tablas en una cuenta de almacenamiento determinada, siempre que cada tabla tenga un nombre único.

La cuenta de almacenamiento se debe especificar siempre en el URI de solicitud. El URI base para tener acceso al servicio Tabla es como sigue:

https://myaccount.table.core.windows.net

Las tablas almacenan los datos en forma de colecciones de entidades. Las entidades son similares a las filas. Una entidad tiene una clave principal y un conjunto de propiedades. Una propiedad es un nombre, un par de valor con tipo, que es similar a una columna.

El servicio Tabla no obliga a utilizar un esquema en particular para las tablas, por tanto las entidades en la misma tabla pueden tener conjuntos diferentes de propiedad. Los programadores pueden elegir el esquema en el lado del cliente. Una tabla puede contener cualquier número de entidades.

Los nombres de tabla deben seguir estas reglas:

  • Los nombres de tabla deben ser únicos en una cuenta.

  • Los nombres de tabla solo pueden contener caracteres alfanuméricos.

  • Los nombres de tabla no pueden comenzar con un carácter numérico.

  • Los nombres de tabla distinguen entre mayúsculas y minúsculas.

  • Los nombres de tabla deben tener entre 3 y 63 caracteres.

  • Algunos nombres de tabla están reservados, incluido "tablas". Cuando se intenta crear una tabla con un nombre de tabla reservado, se obtiene el código de error 404 (solicitud incorrecta).

Estas reglas también se describen con la expresión regular "^[A-Za-z][A-Za-z0-9]{2,62}$".

Los nombres de tabla mantienen su capitalización inicial y distinguen entre mayúsculas y minúsculas cuando se utilizan.

Los nombres de propiedad son cadenas que distinguen entre mayúsculas y minúsculas, y pueden tener un máximo de 255 caracteres. Los nombres de propiedad deben seguir las reglas de nomenclatura para identificadores de C#.

System_CAPS_noteNota

Algunos identificadores de C# no son válidos según el especificación de XML. Estos identificadores no se pueden utilizar en los nombres de propiedad, porque los nombres de propiedad se envían a través de una carga XML en una solicitud respecto al servicio Tabla.

System_CAPS_importantImportante

Los nombres de propiedad se pasan al servicio Tabla en una dirección URL. Es preciso que algunos caracteres tengan codificación de porcentaje para que aparezcan en una URL, con UTF-8 (codificación de preferencia) o MBCS. Esta codificación produce automáticamente al usar las bibliotecas .NET de Azure o construir una Uri objeto que incluye un nombre de propiedad. Sin embargo, hay algunos caracteres que no son válidos para rutas de acceso URL, incluso aunque estén codificados. Estos caracteres no pueden aparecer en nombres de propiedad. Hay algunos puntos de código como \uE000 que, pese a que son válidos en nombres de archivo NTFS, no son caracteres Unicode válidos y, por tanto, no se pueden utilizar. Por otra parte, algunos caracteres ASCII o Unicode, como los caracteres de control (0x00 a 0x1F, \u0081, etc.), tampoco están permitidos. Respecto a las reglas que rigen las cadenas Unicode en HTTP/1.1, vea:

System_CAPS_noteNota

A partir de la versión del 14/04/2009, el servicio Tabla ya no los admite, incluido el guión (-), en los nombres de propiedad.

Una entidad puede tener hasta 255 propiedades, lo cual incluye las 3 propiedades del sistema que se describen en la sección siguiente. Por tanto, el usuario puede incluir hasta 252 propiedades personalizadas, además de las 3 propiedades del sistema. El tamaño total combinado de todos los datos en las propiedades de una entidad no puede superar 1 MB.

Una entidad tiene siempre las propiedades del sistema siguientes:

  • PartitionKey propiedad

  • RowKey propiedad

  • Timestamp propiedad

Estas propiedades del sistema se incluyen automáticamente en cada entidad de una tabla. Los nombres de estas propiedades están reservados y no se pueden cambiar. El programador es responsable de insertar y actualizar los valores de PartitionKey y RowKey. El servidor administra el valor de Timestamp, que no puede modificarse.

Los siguientes caracteres no se permiten valores para el PartitionKey y RowKey Propiedades:

  • El carácter de barra diagonal (/)

  • El carácter de barra inversa (\)

  • El carácter de signo de número (#)

  • El signo de interrogación (?)

  • Caracteres de control de U+0000 a U+001F, incluyendo:

    • Caracteres de tabulador horizontal (\ t)

    • Caracteres de avance de línea (\ n)

    • Caracteres de retorno de carro (\ r)

  • Caracteres de control de U+007F a U+009F

Las tablas tienen particiones para admitir el equilibrio de carga en los nodos de almacenamiento. Las entidades de una tabla se organizan en particiones. Una partición es un intervalo consecutivo de entidades que poseen el mismo valor de clave de partición. La clave de partición es un identificador único para la partición dentro de una tabla determinada, especificada por el PartitionKey propiedad. La clave de partición constituye la primera parte de la clave principal de una entidad. La clave de partición puede ser un valor de cadena de hasta 1 KB de tamaño.

Debe incluir el PartitionKey propiedad en cada instrucción insert, update y delete de operación.

La segunda parte de la clave principal es la clave, especificada por el RowKey propiedad. La clave de fila es un identificador único para una entidad en una partición determinada. Juntos los PartitionKey y RowKey identificar de forma exclusiva cada entidad dentro de una tabla.

La clave de fila es un valor de cadena de hasta 1 KB de tamaño.

Debe incluir el RowKey propiedad en cada instrucción insert, update y delete de operación.

El Timestamp propiedad es una DateTime valor que se mantiene en el servidor para registrar la hora de una entidad se modificó por última vez. El servicio tabla usa el Timestamp propiedad internamente para proporcionar simultaneidad optimista. El valor de Timestamp es un valor de progresión, lo que significa que cada vez que se modifica la entidad, el valor de Timestamp aumenta para esa entidad. Esta propiedad no debe establecerse en operaciones de inserción o actualización (no se hará caso al valor).

El servicio tabla admite un subconjunto de tipos de datos definidos por el especificación de Protocolo OData. La tabla siguiente muestra los tipos de propiedades admitidas para el servicio Tabla:

Tipo de datos OData

Tipo Common Language Runtime

Detalles

Edm.Binary

byte[]

Matriz de bytes hasta 64 KB de tamaño.

Edm.Boolean

bool

Valor de tipo Boolean.

Edm.DateTime

DateTime

Valor de 64 bits expresado como hora universal coordinada (UTC). Los valores de DateTime intervalo comienza a las 12:00 de la noche del 1 de enero de 1601 D.C. (E.C.), UTC. Y termina el 31 de diciembre de 9999.

Edm.Double

double

Valor de punto flotante de 64 bits.

Edm.Guid

Guid

Identificador único global de 128 bits.

Edm.Int32

Int32 o int

Entero de 32 bits.

Edm.Int64

Int64 o long

Un entero de 64 bits.

Edm.String

String

Valor codificado mediante UTF-16. Los valores de cadena pueden tener un tamaño de hasta 64 KB.

De forma predeterminada se crea una propiedad como tipo String, a menos que especifique un tipo diferente. Para escribir explícitamente una propiedad, especifique su tipo de datos con el tipo de datos OData apropiado para un Insert Entity o Update Entity operación. Para obtener más información, vea Insertar y actualizar entidades.

Para obtener ejemplos que muestran cómo filtrar según los distintos tipos de propiedad en un URI de solicitud de consulta, vea Consultar tablas y entidades.

Mostrar:
© 2016 Microsoft