Estadísticas de Datastore

Cloud Firestore en modo Datastore mantiene estadísticas sobre los datos almacenados para una aplicación, como cuántas entidades de una categoría determinada hay o cuánto espacio usan los valores de propiedad de una categoría determinada. Puedes ver estas estadísticas en GCP Console. Abre la página Panel o ejecuta una consulta GQL en formato SELECT * FROM __Stat_Kind__ desde la página Entidades.

También puedes acceder a estos valores de manera programática dentro de la aplicación si consultas las entidades con nombre específicos con la API de Cloud Datastore. Se accede a cada estadística como una entidad cuyo nombre de categoría comienza y termina con dos guiones bajos. Por ejemplo, cada app tiene solo una entidad de la categoría __Stat_Total__ que representa las estadísticas de todas las entidades en modo Datastore en total. Cada entidad estadística tiene las siguientes propiedades:

  • count: el número de elementos que considera la estadística (un número entero largo)
  • bytes: el tamaño total de los elementos para esta estadística (un número entero largo)
  • timestamp: la hora de la actualización más reciente de la estadística (un valor de fecha y hora)

Algunas categorías estadísticas también tienen propiedades adicionales, que se mencionan a continuación.

Cuando el sistema de estadísticas crea nuevas entidades de estadísticas, no borra las anteriores de inmediato. La mejor manera de obtener una vista coherente de las estadísticas es realizar una consulta sobre la entidad estadística con el timestamp más reciente y, luego, usar ese valor de marca de tiempo como filtro para buscar otras entidades de estadísticas.

Las entidades de estadísticas se incluyen en los valores estadísticos calculados. Las entidades de estadísticas ocupan un espacio según la cantidad de nombres de variantes y propiedades únicas que utiliza la aplicación.

El sistema de estadística también creará estadísticas específicas para cada espacio de nombres. Ten en cuenta que, si una aplicación no usa espacios de nombres, no se crearán estadísticas específicas de espacio de nombres. Las estadísticas específicas de espacio de nombres se encuentran en el espacio de nombres al que corresponden. Los nombres de categorías de las estadísticas específicas de espacio de nombres tienen el prefijo __Stat_Ns_ y tienen el mismo sufijo correspondiente que las categorías de estadísticas de toda la aplicación.

Las aplicaciones con miles espacios de nombres, categorías o nombres de propiedades necesitan una gran cantidad de entidades de estadísticas. Para no sobrecargar el almacenamiento ni la actualización de las estadísticas, las bases de datos en modo Datastore descartan de forma progresiva las entidades de estadísticas en el siguiente orden:

  • estadísticas por espacio de nombres, por categoría y por propiedad: __Stat_Ns_PropertyName_Kind__, __Stat_Ns_PropertyType_PropertyName_Kind__
  • estadísticas por categoría y por propiedad: __Stat_PropertyName_Kind__, __Stat_PropertyType_PropertyName_Kind__
  • estadísticas por espacio de nombres y por categoría: __Stat_Ns_Kind__, __Stat_Ns_Kind_IsRootEntity__, __Stat_Ns_Kind_NotRootEntity__, __Stat_Ns_PropertyType_Kind__
  • estadísticas por categoría: __Stat_Kind__, __Stat_Kind_IsRootEntity__, __Stat_Kind_NotRootEntity__, __Stat_PropertyType_Kind__
  • estadísticas por espacio de nombres: __Stat_Namespace__, __Stat_Ns_Kind_CompositeIndex__, __Stat_Ns_PropertyType__, __Stat_Ns_Total__

Las entidades de estadísticas de resumen (__Stat_Kind_CompositeIndex__, __Stat_PropertyType__, __Stat_Total__) nunca se descartan.

A continuación, se muestra una lista completa de todas las estadísticas disponibles:

Estadística Categoría de la entidad de estadística Descripción
Todas las entidades __Stat_Total__
Entrada específica de espacio de nombres:
__Stat_Ns_Total__
Todas las entidades. Propiedades adicionales:

entity_bytes: el almacenamiento en la tabla de entidades medido en bytes
builtin_index_bytes: el almacenamiento en entradas de índice integrado medido en bytes
builtin_index_count: el conteo de entradas de índice integrado
composite_index_bytes: el almacenamiento en entradas de índice compuesto medido en bytes
composite_index_count: el conteo de entradas de índice compuesto
Todas las entidades en un espacio de nombres __Stat_Namespace__
Ten en cuenta que las entidades se crean para cada espacio de nombres encontrado y solo se ubican en el espacio de nombres de string vacía.
Todas las entidades de un espacio de nombres.
subject_namespace: el espacio de nombres representado (una string)
entity_bytes: el almacenamiento en la tabla de entidades medido en bytes
builtin_index_bytes: el almacenamiento en entradas de índice integrado medido en bytes
builtin_index_count: el conteo de entradas de índice integrado
composite_index_bytes: el almacenamiento en entradas de índice compuesto medido en bytes
composite_index_count: el conteo de entradas de índice compuesto
Todas las entradas en índices definidos de la aplicación __Stat_Kind_CompositeIndex__
Entrada específica de espacio de nombres: __Stat_Ns_Kind_CompositeIndex__
Entradas en la tabla de un índice compuesto; una entidad estadística por cada categoría de entidad almacenada. Propiedades adicionales:

index_id: el ID del índice
kind_name: el nombre de la categoría representada (una string)
Entidades de una categoría __Stat_Kind__
Entrada específica de espacio de nombres:
__Stat_Ns_Kind__
Entidades de una categoría; una entidad estadística por cada categoría de entidad almacenada. Propiedades adicionales:

kind_name: el nombre de la categoría representada (una string)
entity_bytes: el almacenamiento en la tabla de entidades medido en bytes
builtin_index_bytes: el almacenamiento en entradas de índice integrado medido en bytes
builtin_index_count: el conteo de entradas de índice integrado
composite_index_bytes: el almacenamiento en entradas de índice compuesto medido en bytes
composite_index_count: el conteo de entradas de índice compuesto
Entidades raíz de una categoría __Stat_Kind_IsRootEntity__
Entrada específica de espacio de nombres:
__Stat_Ns_Kind_IsRootEntity__
Entidades de una categoría que son entidades raíz de un grupo de entidad (no tienen una principal superior); una entidad estadística por cada categoría de entidad almacenada. Propiedades adicionales:

kind_name: el nombre de la categoría representada (una string)
entity_bytes: el almacenamiento en la tabla de entidades medido en bytes
Entidades que no son raíz de una categoría __Stat_Kind_NotRootEntity__
Entrada específica de espacio de nombres:
__Stat_Ns_Kind_NotRootEntity__
Entidades de una categoría que no son entidades raíz de un grupo de entidad (tienen una principal superior); una entidad estadística por cada categoría de entidad almacenada. Propiedades adicionales:

kind_name: el nombre de la categoría representada (una string)
entity_bytes: el almacenamiento en la tabla de entidades medido en bytes
Propiedades de un tipo __Stat_PropertyType__
Entrada específica de espacio de nombres:
__Stat_Ns_PropertyType__
Propiedades de un tipo de valor en todas las entidades; una entidad estadística por tipo de valor. Propiedades adicionales:

property_type: el nombre del tipo de valor (una string)
entity_bytes: el almacenamiento en la tabla de entidades medido en bytes
builtin_index_bytes: el almacenamiento en entradas de índice integrado medido en bytes
builtin_index_count: el conteo de entradas de índice integrado
Propiedades de un tipo por categoría __Stat_PropertyType_Kind__
Entrada específica de espacio de nombres:
__Stat_Ns_PropertyType_Kind__
Propiedades de un tipo de valor en las entidades de una categoría específica; una entidad estadística por combinación de tipo y categoría de propiedad. Propiedades adicionales:

property_type: el nombre del tipo de valor (una string)
kind_name: el nombre de la categoría representada (una string)
entity_bytes: el almacenamiento en la tabla de entidades medido en bytes
builtin_index_bytes: el almacenamiento en el índice integrado medido en bytes.
builtin_index_count: el conteo de entradas de índice integrado
Propiedades con nombre __Stat_PropertyName_Kind__
Entrada específica de espacio de nombres:
__Stat_Ns_PropertyName_Kind__
Propiedades con un nombre específico en todas las entidades de una categoría específica; una entidad estadística por combinación de nombre y categoría de propiedad única. Propiedades adicionales:

property_name: el nombre de la propiedad (una string)
kind_name: el nombre de la categoría representada (una string)
entity_bytes: el almacenamiento en la tabla de entidades medido en bytes
builtin_index_bytes: el almacenamiento en entradas de índice integrado medido en bytes
builtin_index_count: el conteo de entradas de índice integrado
Propiedades de un tipo y con un nombre __Stat_PropertyType_PropertyName_Kind__
Entrada específica de espacio de nombres:
__Stat_Ns_PropertyType_PropertyName_Kind__
Propiedades con un nombre determinado y de un tipo de valor determinado en entidades de una categoría determinada; una entidad estadística por combinación de nombre de propiedad, tipo de valor y categoría que existe en la base de datos. Propiedades adicionales:

property_type: el nombre del tipo de valor (una string)
property_name: el nombre de la propiedad (una string)
kind_name: el nombre de la categoría representada (una string)
entity_bytes: el almacenamiento en la tabla de entidades medido en bytes
builtin_index_bytes: el almacenamiento en entradas de índice integrado medido en bytes
builtin_index_count: el conteo de entradas de índice integrado

Algunas estadísticas se refieren a los tipos de valores de propiedad por nombre, como strings. Los nombres son los siguientes:

  • "Blob"
  • "BlobKey"
  • "Boolean"
  • "Category"
  • "Date/Time"
  • "Email"
  • "Float"
  • "GeoPt"
  • "IM"
  • "Integer"
  • "Key"
  • "Link"
  • "NULL"
  • "PhoneNumber"
  • "PostalAddress"
  • "Rating"
  • "ShortBlob"
  • "String"
  • "Text"
  • "User"

Consulta también este vínculo:

¿Te sirvió esta página? Envíanos tu opinión:

Enviar comentarios sobre…

Documentación de Cloud Datastore