Datastore conserva le statistiche sui dati archiviati per un'applicazione, come la quantità di entità di un determinato tipo o la quantità di spazio utilizzata dai valori delle proprietà di un determinato tipo. Puoi visualizzare queste statistiche nella pagina Dashboard della console Google Cloud.
Puoi anche accedere a questi valori in modo programmatico all'interno dell'applicazione eseguendo query su entità denominate in modo speciale utilizzando l'API Datastore.
Ogni statistica è accessibile come un'entità il cui nome di tipo inizia e termina con due trattini bassi. Ad esempio, ogni app ha esattamente un'entità del tipo __Stat_Total__
che rappresenta le statistiche su tutte le entità in Datastore in totale. Ogni entità statistica ha le seguenti
proprietà:
count
, il numero di elementi considerati dalla statistica (un numero intero lungo)bytes
, la dimensione totale degli elementi di questa statistica (un numero intero lungo)timestamp
, l'ora dell'aggiornamento più recente della statistica (un valore data-ora)
Alcuni tipi di statistiche hanno anche proprietà aggiuntive, elencate di seguito.
Poiché il client Go Datastore richiede nomi esportati, l'accesso alle proprietà elencate in questo documento richiede l'utilizzo di tag struct.
Quando il sistema delle statistiche crea nuove entità statistiche, non elimina immediatamente quelle precedenti. Il modo migliore per ottenere una visualizzazione coerente delle statistiche è eseguire una query per trovare l'entità con l'entità timestamp
più recente, quindi utilizzare il valore del timestamp come filtro quando recuperi altre entità statistiche.
Le entità statistiche sono incluse nei valori statistici calcolati. Le entità statistiche occupano spazio rispetto al numero di tipi univoci e di nomi di proprietà utilizzati dall'applicazione.
Il sistema delle statistiche creerà inoltre statistiche specifiche per ogni spazio dei nomi. Tieni presente che se un'applicazione non utilizza gli spazi dei nomi Datastore, le statistiche specifiche dello spazio dei nomi non verranno create. Le statistiche specifiche per lo spazio dei nomi
si trovano nello spazio dei nomi per cui sono specifiche. I nomi dei tipi per le statistiche specifiche dello spazio dei nomi sono preceduti dal prefisso __Stat_Ns_
e hanno lo stesso suffisso corrispondente dei tipi di statistiche a livello di applicazione.
Le applicazioni con migliaia di spazi dei nomi, tipi o nomi di proprietà richiedono un numero molto elevato di entità statistiche. Per mantenere ragionevole l'overhead associato all'archiviazione e all'aggiornamento delle statistiche, Datastore elimina progressivamente le entità statistiche nel seguente ordine:
- statistiche per spazio dei nomi, per tipo e per proprietà:
__Stat_Ns_PropertyName_Kind__
,__Stat_Ns_PropertyType_PropertyName_Kind__
- statistiche per tipo e per proprietà:
__Stat_PropertyName_Kind__
,__Stat_PropertyType_PropertyName_Kind__
- statistiche per spazio dei nomi e per tipo:
__Stat_Ns_Kind__
,__Stat_Ns_Kind_IsRootEntity__
,__Stat_Ns_Kind_NotRootEntity__
,__Stat_Ns_PropertyType_Kind__
- statistiche per tipo:
__Stat_Kind__
,__Stat_Kind_IsRootEntity__
,__Stat_Kind_NotRootEntity__
,__Stat_PropertyType_Kind__
- statistiche per spazio dei nomi:
__Stat_Namespace__
,__Stat_Ns_Kind_CompositeIndex__
,__Stat_Ns_PropertyType__
,__Stat_Ns_Total__
Le entità delle statistiche di riepilogo (__Stat_Kind_CompositeIndex__
,
__Stat_PropertyType__
, __Stat_Total__
) non vengono mai eliminate.
L'elenco completo delle statistiche disponibili è il seguente:
Statistica | Tipo entità statistica | Descrizione |
---|---|---|
tutte le entità | __Stat_Total__ Voce specifica per lo spazio dei nomi: __Stat_Ns_Total__ |
Tutte le entità. Proprietà aggiuntive: • entity_bytes : lo spazio di archiviazione nella tabella delle entità misurato in byte.• builtin_index_bytes : lo spazio di archiviazione in voci di indice integrate misurate in byte.• builtin_index_count : il numero di voci di indice integrate.• composite_index_bytes : lo spazio di archiviazione in voci di indice composto misurate in byte.• composite_index_count : il conteggio delle voci degli indici composti. |
tutte le entità in uno spazio dei nomi | __Stat_Namespace__ Tieni presente che le entità __Stat_Namespace__ vengono create per ogni spazio dei nomi rilevato e si trovano solo nello spazio dei nomi della stringa vuota. |
Tutte le entità in uno spazio dei nomi. • subject_namespace , lo spazio dei nomi rappresentato (una stringa)• entity_bytes : lo spazio di archiviazione nella tabella delle entità misurato in byte.• builtin_index_bytes : lo spazio di archiviazione in voci di indice integrate misurate in byte.• builtin_index_count : il numero di voci di indice integrate.• composite_index_bytes : lo spazio di archiviazione in voci di indice composto misurate in byte.• composite_index_count : il conteggio delle voci degli indici composti. |
tutte le voci negli indici definiti dall'applicazione | __Stat_Kind_CompositeIndex__ Voce specifica per lo spazio dei nomi: __Stat_Ns_Kind_CompositeIndex__ |
Voci nella tabella dell'indice composto; un'entità stat per ogni tipo di entità archiviata. Proprietà aggiuntive: • index_id , l'ID indice.• kind_name , il nome del tipo rappresentato (una stringa) |
di un certo tipo | __Stat_Kind__ Voce specifica per lo spazio dei nomi: __Stat_Ns_Kind__ |
Entità di un tipo: un'entità stat per ogni tipo di entità archiviata. Proprietà aggiuntive: • kind_name , il nome del tipo rappresentato (una stringa)• entity_bytes : lo spazio di archiviazione nella tabella delle entità misurato in byte.• builtin_index_bytes : lo spazio di archiviazione in voci di indice integrate misurate in byte.• builtin_index_count : il numero di voci di indice integrate.• composite_index_bytes : lo spazio di archiviazione in voci di indice composto misurate in byte.• composite_index_count : il conteggio delle voci degli indici composti. |
di un tipo di entità radice | __Stat_Kind_IsRootEntity__ Voce specifica per lo spazio dei nomi: __Stat_Ns_Kind_IsRootEntity__ |
Entità di tipo che sono entità radice di gruppo di entità (non hanno un elemento padre predecessore); un'entità stat per ogni tipo di entità archiviata. Proprietà aggiuntive: • kind_name , il nome del tipo rappresentato (una stringa)• entity_bytes : lo spazio di archiviazione nella tabella delle entità misurato in byte. |
di un tipo di entità non radice | __Stat_Kind_NotRootEntity__ Voce specifica per lo spazio dei nomi: __Stat_Ns_Kind_NotRootEntity__ |
Entità di un tipo che non sono entità radice di gruppo di entità (hanno un elemento padre predecessore); un'entità stat per ogni tipo di entità archiviata. Proprietà aggiuntive: • kind_name , il nome del tipo rappresentato (una stringa)• entity_bytes : lo spazio di archiviazione nella tabella delle entità misurato in byte. |
proprietà di un tipo | __Stat_PropertyType__ Voce specifica per lo spazio dei nomi: __Stat_Ns_PropertyType__ |
Proprietà di un tipo di valore per tutte le entità; un'entità statistica per tipo di valore. Proprietà aggiuntive: • property_type , il nome del tipo di valore (una stringa)• entity_bytes : lo spazio di archiviazione nella tabella delle entità misurato in byte.• builtin_index_bytes : lo spazio di archiviazione in voci di indice integrate misurate in byte.• builtin_index_count : il numero di voci di indice integrate. |
proprietà di un tipo per tipo | __Stat_PropertyType_Kind__ Voce specifica per lo spazio dei nomi: __Stat_Ns_PropertyType_Kind__ |
Proprietà di un tipo di valore tra entità di un determinato tipo: un'entità stat per combinazione di tipo e tipo di proprietà. Proprietà aggiuntive: • property_type , il nome del tipo di valore (una stringa)• kind_name , il nome del tipo rappresentato (una stringa)• entity_bytes : lo spazio di archiviazione nella tabella delle entità misurato in byte.• builtin_index_bytes : lo spazio di archiviazione nell'indice integrato misurato in byte.• builtin_index_count : il numero di voci di indice integrate. |
proprietà con un nome | __Stat_PropertyName_Kind__ Voce specifica per lo spazio dei nomi: __Stat_Ns_PropertyName_Kind__ |
Proprietà con un determinato nome in più entità di un determinato tipo: un'entità stat per combinazione di nome e tipo di proprietà univoci. Proprietà aggiuntive: • property_name , il nome della proprietà (una stringa)• kind_name , il nome del tipo rappresentato (una stringa)• entity_bytes : lo spazio di archiviazione nella tabella delle entità misurato in byte.• builtin_index_bytes : lo spazio di archiviazione in voci di indice integrate misurate in byte.• builtin_index_count : il numero di voci di indice integrate. |
proprietà di un tipo e con un nome | __Stat_PropertyType_PropertyName_Kind__ Voce specifica per lo spazio dei nomi: __Stat_Ns_PropertyType_PropertyName_Kind__ |
Proprietà con un dato nome e di un determinato tipo di valore nelle entità di un determinato tipo; un'entità stat per combinazione di nome, tipo di valore e tipo di proprietà esistente in Datastore. Proprietà aggiuntive: • property_type , il nome del tipo di valore (una stringa)• property_name , il nome della proprietà (una stringa)• kind_name , il nome del tipo rappresentato (una stringa)• entity_bytes : lo spazio di archiviazione nella tabella delle entità misurato in byte.• builtin_index_bytes : lo spazio di archiviazione in voci di indice integrate misurate in byte.• builtin_index_count : il numero di voci di indice integrate. |
Alcune statistiche fanno riferimento ai tipi di valori delle proprietà Datastore per nome, come stringhe. Questi nomi sono i seguenti:
"Blob"
"BlobKey"
"Boolean"
"Category"
"Date/Time"
"Email"
"Float"
"GeoPt"
"IM"
"Integer"
"Key"
"Link"
"NULL"
"PhoneNumber"
"PostalAddress"
"Rating"
"ShortBlob"
"String"
"Text"
"User"