แบ่งพาร์ติชันการค้นหาโดยแสดงผลเคอร์เซอร์พาร์ติชันที่จะใช้เพื่อเรียกใช้การค้นหาพร้อมกันได้ เคอร์เซอร์พาร์ติชันที่แสดงผลคือจุดแบ่งที่ Docs.runQuery ใช้เป็นจุดเริ่มต้น/จุดสิ้นสุดสำหรับผลการค้นหาได้
คำขอ HTTP
POST https://firestore.googleapis.com/v1/{parent=projects/*/databases/*/documents}:partitionQuery
URL ใช้ไวยากรณ์การแปลง gRPC
พารามิเตอร์เส้นทาง
พารามิเตอร์ | |
---|---|
parent |
ต้องระบุ ชื่อทรัพยากรระดับบนสุด ในรูปแบบ: |
เนื้อความของคำขอ
เนื้อหาของคำขอมีข้อมูลที่มีโครงสร้างต่อไปนี้
การแสดง JSON |
---|
{ "partitionCount": string, "pageToken": string, "pageSize": integer, // Union field |
ช่อง | |
---|---|
partitionCount |
จำนวนจุดพาร์ติชันสูงสุดที่ต้องการ พาร์ติชันอาจแสดงในผลลัพธ์หลายหน้า ตัวเลขต้องเป็นค่าบวก จำนวนพาร์ติชันจริงที่แสดงผลอาจน้อยกว่า เช่น อาจตั้งค่านี้ให้น้อยกว่าจำนวนการค้นหาแบบขนานที่จะเรียกใช้ หรือในการเรียกใช้งานไปป์ไลน์ข้อมูล น้อยกว่าจำนวนผู้ปฏิบัติงานหรืออินสแตนซ์การประมวลผลที่พร้อมใช้งาน 1 รายการ |
pageToken |
ค่า ตัวอย่างเช่น การเรียกครั้งต่อๆ มาโดยใช้ pageToken อาจแสดงผลดังนี้
หากต้องการได้ชุดผลลัพธ์ที่สมบูรณ์ซึ่งเรียงลำดับตามผลลัพธ์ของการค้นหาที่ให้ไว้กับ document.partitionQuery ชุดผลลัพธ์ควรรวมเข้าด้วยกัน: เคอร์เซอร์ A, เคอร์เซอร์ B, เคอร์เซอร์ M, เคอร์เซอร์ Q, เคอร์เซอร์ U, เคอร์เซอร์ W |
pageSize |
จำนวนพาร์ติชันสูงสุดที่จะแสดงในการเรียกนี้ ขึ้นอยู่กับ ตัวอย่างเช่น ถ้า |
ช่องการรวม query_type การค้นหาที่จะแบ่งพาร์ติชัน query_type ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้ |
|
structuredQuery |
การค้นหาแบบมีโครงสร้าง การค้นหาต้องระบุคอลเล็กชันที่มีองค์ประกอบสืบทอดทั้งหมด และเรียงลำดับตามชื่อจากน้อยไปหามาก ไม่รองรับตัวกรองอื่นๆ การเรียงลำดับตาม ขีดจำกัด ออฟเซ็ต และเคอร์เซอร์เริ่มต้น/สิ้นสุด |
ช่องการรวม consistency_selector โหมดความสอดคล้องสำหรับคำขอนี้ หากไม่ได้ตั้งค่า ระบบจะใช้ความสอดคล้องที่อัปเดตเป็นค่าเริ่มต้น consistency_selector ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้ |
|
readTime |
อ่านเอกสารตามที่อยู่ในเวลาที่กำหนด โดยต้องเป็นการประทับเวลาที่มีความแม่นยำระดับไมโครวินาทีในช่วง 1 ชั่วโมงที่ผ่านมา หรือหากมีการเปิดใช้การกู้คืนช่วงเวลา ก็อาจเป็นการประทับเวลาแบบเต็มนาทีภายใน 7 วันที่ผ่านมาได้ การประทับเวลาเป็น RFC3339 UTC "Zulu" โดยมีความละเอียดระดับนาโนวินาทีและมีเลขเศษส่วนสูงสุด 9 หลัก ตัวอย่าง: |
เนื้อหาการตอบกลับ
การตอบกลับสำหรับ Firestore.PartitionQuery
หากทำสำเร็จ เนื้อหาการตอบกลับจะมีข้อมูลที่มีโครงสร้างต่อไปนี้
การแสดง JSON |
---|
{
"partitions": [
{
object ( |
ช่อง | |
---|---|
partitions[] |
ผลลัพธ์การแบ่งพาร์ติชัน แต่ละพาร์ติชันคือจุดแยกที่สามารถใช้ Document.runQuery เป็นจุดเริ่มต้นหรือจุดสิ้นสุดสำหรับผลการค้นหา คำขอ document.runQuery ต้องทำด้วยข้อความค้นหาเดียวกันกับที่ส่งไปยังคำขอ document.partitionQuery นี้ เคอร์เซอร์พาร์ติชันจะจัดลำดับตามลำดับเดียวกับผลลัพธ์ของการค้นหาที่ระบุให้กับ document.partitionQuery ตัวอย่างเช่น หากคำขอ document.partitionQuery แสดงผลเคอร์เซอร์พาร์ติชัน A และ B การเรียกใช้การค้นหาสามแบบต่อไปนี้จะแสดงชุดผลลัพธ์ทั้งหมดของคำค้นหาเดิม:
ผลลัพธ์ที่ว่างเปล่าอาจบ่งชี้ว่าการค้นหามีผลลัพธ์น้อยเกินไปที่จะแบ่งพาร์ติชัน หรือการค้นหายังไม่รองรับการแบ่งพาร์ติชัน |
nextPageToken |
โทเค็นหน้าเว็บที่อาจใช้เพื่อขอชุดผลลัพธ์เพิ่มเติม ตามจำนวนที่ระบุโดย |
ขอบเขตการให้สิทธิ์
ต้องใช้ขอบเขต OAuth รายการใดรายการหนึ่งต่อไปนี้
https://www.googleapis.com/auth/datastore
https://www.googleapis.com/auth/cloud-platform
สำหรับข้อมูลเพิ่มเติม โปรดดูที่ภาพรวมการตรวจสอบสิทธิ์