Preguntas más frecuentes sobre las claves de partición jerárquicas en Azure Cosmos DB (versión preliminar)

SE APLICA A: SQL API Cassandra API Gremlin API Table API Azure Cosmos DB API para MongoDB

Las claves de partición jerárquicas, o subpartición, le permiten configurar una jerarquía de hasta tres niveles para sus claves de partición para optimizar aún más la distribución de los datos y permitir una mayor escala. En este artículo se responden las preguntas más frecuentes sobre las claves de partición jerárquica de Azure Cosmos DB.

¿Hay un límite de almacenamiento en el tamaño de una clave de partición lógica?

Sí. Al igual que en Cosmos DB en la actualidad, el tamaño de la partición lógica todavía está limitado a 20 GB. Sin embargo, con claves de partición jerárquicas, la partición lógica es ahora toda la ruta de acceso de la clave de partición. Por ejemplo, si ha particionado por TenantId:> UserId, una partición lógica de ejemplo sería "Contoso_Alice". El uso de subparticiones significa que puede tener 20 GB de datos donde el valor de la clave de partición es "Contoso_Alice". La cantidad de almacenamiento permitida para los datos en "Contoso" es efectivamente de 20 GB * número de Identificadores de usuario únicos para el inquilino "Contoso".

¿Hay algún cambio en los límites de almacenamiento y RU/s en las particiones físicas?

No. Al igual que en Cosmos DB en la actualidad, una partición física puede contener 50 GB de almacenamiento y servir hasta 10 000 RU/s. Sin embargo, con claves de partición jerárquicas, si los datos de un prefijo de clave de partición determinado (por ejemplo, TenantId) están en varias particiones físicas, la subpartición significa que el total de RU/s factibles para un único TenantId puede superar los 10 000 RU/s.

¿Qué ocurre si se consulta y solo se especifica una clave de partición en el "centro" de la ruta de acceso?

La consulta seguirá siendo una consulta entre particiones. Por ejemplo, si crea particiones por TenantId:> UserId y proporciona solo el UserId en la consulta, esta consulta se ramificada a todas las particiones físicas.

Para tener una consulta enrutada eficazmente mediante el ejemplo TenantId -> UserId, hay dos opciones:

  • Proporcionar tenantId. Las consultas irán a todas las particiones físicas que contengan los datos de TenantId.
  • Proporcionar tenantId y UserId. Las consultas irán a la única partición física que contiene tenantId y el userId específico.

¿Tengo que crear una nueva propiedad en mis documentos para usar esta característica?

No. Especifique la jerarquía de rutas de acceso de clave de partición que desea usar durante la creación del contenedor. Por ejemplo, si crea particiones por TenantId -> UserId, no es necesario crear una nueva propiedad con estos valores concatenados. Asegúrese de que cada documento tiene una propiedad TenantId y una propiedad UserId. Para más información, consulte los ejemplos de código de subdivisión.

Pasos siguientes