Sorguyu paralel olarak çalıştırmak için kullanılabilecek bölüm imleçlerini döndürerek sorguyu bölümlendirir. Döndürülen bölüm imleçleri, documents.runQuery tarafından sorgu sonuçları için başlangıç/bitiş noktaları olarak kullanılabilen bölme noktalarıdır.
HTTP isteği
POST https://firestore.googleapis.com/v1beta1/{parent=projects/*/databases/*/documents}:partitionQuery
URL, gRPC Kod Dönüştürme söz dizimini kullanır.
Yol parametreleri
Parametreler | |
---|---|
parent |
Zorunlu. Üst kaynak adı. Belirtilen biçimde: |
İstek içeriği
İstek gövdesi, aşağıdaki yapıya sahip verileri içerir:
JSON gösterimi |
---|
{ "partitionCount": string, "pageToken": string, "pageSize": integer, // Union field |
Alanlar | |
---|---|
partitionCount |
İstenen maksimum bölüm noktası sayısı. Bölümler, birden çok sonuç sayfasında döndürülebilir. Sayı pozitif olmalıdır. Döndürülen gerçek bölüm sayısı daha az olabilir. Örneğin bu, çalıştırılacak paralel sorgu sayısından veya bir veri ardışık düzeni işi çalıştırırken mevcut çalışan ya da işlem örneği sayısından bir daha az olacak şekilde ayarlanabilir. |
pageToken |
Ek sonuç grubu almak için kullanılabilecek önceki documents.partitionQuery çağrısından döndürülen Örneğin, pageToken kullanan sonraki iki çağrı şu sonucu döndürebilir:
Docs.partitionQuery'ye sağlanan sorgunun sonuçlarına göre sıralanmış tam bir sonuç kümesi elde etmek için sonuç kümeleri birleştirilmelidir: imleç A, imleç B, imle M, Q, imleç U, imle W |
pageSize |
Örneğin, |
Birleştirme alanı query_type . Bölümlendirme sorgusu. query_type şunlardan yalnızca biri olabilir: |
|
structuredQuery |
Yapılandırılmış bir sorgu. Sorgu, koleksiyonu tüm alt alt öğelerle belirtmeli ve ada göre artan düzende sıralanmalıdır. Diğer filtreler, sıralama ölçütleri, sınırlar, ofsetler ve başlangıç/bitiş imleçleri desteklenmez. |
Birleştirme alanı consistency_selector . Bu istek için tutarlılık modu. Ayarlanmazsa varsayılan olarak güçlü tutarlılık kullanılır. consistency_selector şunlardan yalnızca biri olabilir: |
|
readTime |
Belgeleri belirtilen zamanda olduğu gibi okur. Bu, son bir saat içindeki mikrosaniyelik bir hassasiyet zaman damgası olmalıdır. Belirli bir noktadan önceyi kurtarma özelliği etkinse son 7 gün içindeki bir tam dakikalık zaman damgası da olabilir. RFC3339 UTC "Zulu" zaman damgası biçiminde olmalıdır. Örnekler: |
Yanıt gövdesi
Firestore.PartitionQuery
için yanıt.
Başarılı olursa yanıt gövdesi aşağıdaki yapıyla birlikte verileri içerir:
JSON gösterimi |
---|
{
"partitions": [
{
object ( |
Alanlar | |
---|---|
partitions[] |
Bölüm sonuçları. Her bölüm, documents.runQuery tarafından sorgu sonuçları için başlangıç veya bitiş noktası olarak kullanılabilen bir bölme noktasıdır. Docs.runQuery istekleri, bu documents.partitionQuery isteğine sağlanan sorguyla yapılmalıdır. Bölüm imleçleri, documents.partitionQuery'ye sağlanan sorgunun sonuçlarıyla aynı sıralamaya göre sıralanır. Örneğin, documents.partitionQuery isteği A ve B bölüm imleçlerini döndürürse aşağıdaki üç sorgu çalıştırıldığında, orijinal sorgunun tüm sonuç kümesi döndürülür:
Boş bir sonuç, sorguda bölümlendirilemeyecek kadar az sonuç olduğunu veya sorgunun bölümlendirme için henüz desteklenmediğini gösterebilir. |
nextPageToken |
Docs.partitionQuery isteğinde |
Yetkilendirme kapsamları
Aşağıdaki OAuth kapsamlarından birini gerektirir:
https://www.googleapis.com/auth/datastore
https://www.googleapis.com/auth/cloud-platform
Daha fazla bilgi için Kimlik Doğrulamaya Genel Bakış başlıklı makaleye bakın.