ใช้คู่มือนี้เพื่อทำความเข้าใจขีดจำกัดของ Cloud Firestore และดูราคาของ Cloud Firestore เพื่อดูคำอธิบายโดยละเอียดเกี่ยวกับค่าใช้จ่ายของ Cloud Firestore รวมถึงสิ่งที่ควรระวัง
ตรวจสอบการใช้งาน
หากต้องการตรวจสอบการใช้งาน Cloud Firestore จากคอนโซล Firebase ให้ไปที่ฐานข้อมูลและพื้นที่เก็บข้อมูล > Firestore > แท็บการใช้งาน ใช้แดชบอร์ดนี้เพื่อประเมินการใช้งานในระยะเวลาต่างๆ
การใช้งานโดยละเอียดในคอนโซล Google Cloud
เมื่อสร้างโปรเจ็กต์ Firebase คุณจะสร้างโปรเจ็กต์ Google Cloud ด้วย หน้าโควต้า API ของ Cloud Firestore และโควต้าของ App Engine ในคอนโซล Google Cloud จะติดตามข้อมูลการใช้งานและโควต้าของ Cloud Firestore
โควต้าฟรี
Cloud Firestore มีโควต้าฟรีที่ช่วยให้คุณเริ่มต้นใช้งานได้โดยไม่มีค่าใช้จ่าย หากต้องการโควต้าเพิ่ม คุณต้องเปิดใช้การเรียกเก็บเงินสำหรับโปรเจ็กต์ Google Cloud
โควต้าจะใช้เป็นรายวันและรีเซ็ตประมาณเที่ยงคืนตามเวลาแปซิฟิก
ตารางต่อไปนี้สรุปจำนวนโควต้าฟรี
| รุ่นฟรี | โควต้า |
|---|---|
| ข้อมูลที่จัดเก็บไว้ | 1 GiB |
| การอ่านเอกสาร | 50,000 คนต่อวัน |
| การเขียนเอกสาร | 20,000 รายการต่อวัน |
| การลบเอกสาร | 20,000 รายการต่อวัน |
| การโอนข้อมูลขาออก | 10 GiB ต่อเดือน |
การดำเนินการและฟีเจอร์ต่อไปนี้ไม่มีการใช้งานฟรี คุณต้องเปิดใช้การเรียกเก็บเงินเพื่อใช้ฟีเจอร์ต่อไปนี้
- การลบ TTL
- ข้อมูล PITR
- ข้อมูลสำรอง
- การดำเนินการกู้คืน
- การดำเนินการโคลน
ดูข้อมูลเพิ่มเติมเกี่ยวกับการเรียกเก็บเงินสำหรับฟีเจอร์เหล่านี้ได้ที่ราคาพื้นที่เก็บข้อมูล
ขีดจำกัดมาตรฐาน
ตารางต่อไปนี้แสดงขีดจำกัดที่ใช้กับ Cloud Firestore ขีดจำกัดเหล่านี้เป็นขีดจำกัดที่เปลี่ยนแปลงไม่ได้ เว้นแต่จะระบุไว้เป็นอย่างอื่น
ฐานข้อมูล
| ขีดจำกัด | รายละเอียด |
|---|---|
| จำนวนฐานข้อมูลสูงสุดต่อโปรเจ็กต์ |
100 คุณสามารถติดต่อทีมสนับสนุนเพื่อขอเพิ่มขีดจำกัดนี้ได้ |
| จำนวนสูงสุดของฐานข้อมูลคีย์การเข้ารหัสที่จัดการโดยลูกค้า (CMEK) ต่อโปรเจ็กต์ |
0 โดยค่าเริ่มต้น โควต้าจะเป็น 0 เนื่องจากฟีเจอร์นี้อยู่หลังรายการที่อนุญาต คุณสามารถขอเพิ่มโควต้าได้โดยกรอกแบบฟอร์มคำขอเข้าถึง CMEK |
คอลเล็กชัน เอกสาร และฟิลด์
| ขีดจำกัด | รายละเอียด |
|---|---|
| ข้อจำกัดเกี่ยวกับรหัสคอลเล็กชัน |
|
| ความลึกสูงสุดของคอลเล็กชันย่อย | 100 |
| ข้อจำกัดเกี่ยวกับรหัสเอกสาร |
|
| ขนาดสูงสุดสำหรับชื่อเอกสาร | 6 KiB |
| ขนาดสูงสุดของเอกสาร | 1 MiB (1,048,576 ไบต์) |
| ข้อจำกัดเกี่ยวกับชื่อฟิลด์ |
|
| ขนาดสูงสุดของชื่อช่อง | 1,500 ไบต์ |
| ข้อจำกัดในเส้นทางของฟิลด์ |
`) เช่น foo.`x&y` หมายถึงฟิลด์ x&y ที่ซ้อนอยู่ใต้ฟิลด์ foo หากต้องการสร้างชื่อช่องที่มีอักขระแบ็กทิก ให้หลีกเลี่ยงอักขระแบ็กทิกด้วยอักขระแบ็กสแลช (\) เพื่อความสะดวก คุณสามารถหลีกเลี่ยงชื่อช่องที่อยู่ในเครื่องหมายคำพูดได้โดยส่งเส้นทางช่องเป็นออบเจ็กต์ FieldPath (เช่น ดู JavaScript FieldPath)
|
| ขนาดสูงสุดของเส้นทางฟิลด์ | 1,500 ไบต์ |
| ขนาดสูงสุดของค่าในช่อง | 1 MiB - 89 ไบต์ (1,048,487 ไบต์) |
| ความลึกสูงสุดของฟิลด์ในแผนที่หรืออาร์เรย์ | 20 ช่องแผนที่และอาร์เรย์จะเพิ่มความลึกโดยรวมของออบเจ็กต์ 1 ระดับ ตัวอย่างเช่น ออบเจ็กต์ต่อไปนี้มีความลึกทั้งหมด 3 ระดับ |
การเขียนและธุรกรรม
นอกจากขีดจำกัดเหล่านี้แล้ว คุณควรดูแนวทางปฏิบัติแนะนำสำหรับการออกแบบเพื่อรองรับการปรับขนาดด้วย
| ขีดจำกัด | รายละเอียด |
|---|---|
| ขนาดคำขอ API สูงสุด | 10 MiB |
| ระยะเวลาที่จำกัดสำหรับการทำธุรกรรม | 270 วินาที โดยมีเวลาหมดอายุเมื่อไม่มีการใช้งาน 60 วินาที |
จำนวนการเปลี่ยนรูปแบบฟิลด์สูงสุดที่ทำได้ในเอกสารเดียวในการดำเนินการ Commit หรือในธุรกรรม |
500 |
ดัชนี
ขีดจำกัดต่อไปนี้มีผลกับดัชนีช่องเดียวและดัชนีแบบผสม
| ขีดจำกัด | รายละเอียด |
|---|---|
| จำนวนดัชนีแบบผสมสูงสุดสำหรับฐานข้อมูล |
|
| จำนวนการกำหนดค่าช่องเดียวสูงสุดสำหรับฐานข้อมูล |
การกำหนดค่าระดับฟิลด์ 1 รายการอาจมีการกำหนดค่าหลายรายการสำหรับฟิลด์เดียวกัน เช่น การยกเว้นการจัดทำดัชนีช่องเดียวและนโยบาย TTL ในช่องเดียวกันจะนับเป็นการกำหนดค่าช่อง 1 รายการในขีดจำกัด |
|
จำนวนรายการดัชนีสูงสุดสำหรับเอกสารแต่ละรายการ |
40,000 จำนวนรายการค่าดัชนีคือผลรวมของรายการต่อไปนี้สำหรับเอกสาร
หากต้องการดูวิธีที่ Cloud Firestore เปลี่ยนเอกสารและชุดดัชนีเป็นรายการค่าดัชนี โปรดดูตัวอย่างการนับรายการค่าดัชนีนี้ |
| จำนวนฟิลด์สูงสุดในดัชนีแบบผสม | 100 |
| ขนาดสูงสุดของรายการดัชนี |
7.5 KiB หากต้องการดูวิธีที่ Cloud Firestore คำนวณขนาดรายการดัชนี โปรดดูขนาดรายการดัชนี |
| ผลรวมสูงสุดของขนาดรายการดัชนีของเอกสาร |
8 MiB ขนาดรวมคือผลรวมของรายการต่อไปนี้สำหรับเอกสาร |
| ขนาดสูงสุดของค่าในช่องที่จัดทำดัชนี |
1,500 ไบต์ ระบบจะตัดค่าในช่องที่เกิน 1,500 ไบต์ให้สั้นลง การค้นหาที่เกี่ยวข้องกับค่าในช่องที่ถูกตัดอาจแสดงผลลัพธ์ที่ไม่สอดคล้องกัน |
Time to Live (TTL)
| ขีดจำกัด | รายละเอียด |
|---|---|
| จำนวนการกำหนดค่าช่องเดียวสูงสุดสำหรับฐานข้อมูล |
การกำหนดค่าระดับฟิลด์ 1 รายการอาจมีการกำหนดค่าหลายรายการสำหรับฟิลด์เดียวกัน เช่น การยกเว้นการจัดทำดัชนีช่องเดียวและนโยบาย TTL ในช่องเดียวกันจะนับเป็นการกำหนดค่าช่อง 1 รายการในขีดจำกัด |
ส่งออก/นำเข้า
ขีดจำกัดต่อไปนี้มีผลกับการดำเนินการนำเข้าและส่งออกที่มีการจัดการ
| ขีดจำกัด | รายละเอียด |
|---|---|
| จำนวนคำขอส่งออกและนำเข้ารวมกันสูงสุดที่อนุญาตต่อนาทีสำหรับโปรเจ็กต์ | 20 |
| จำนวนการส่งออกและนำเข้าพร้อมกันสูงสุด | 50 |
| จำนวนตัวกรองรหัสคอลเล็กชันสูงสุดสำหรับคำขอส่งออกและนำเข้า | 100 |
กฎความปลอดภัย
| ขีดจำกัด | รายละเอียด |
|---|---|
จำนวนการเรียก exists(), get() และ getAfter() สูงสุดต่อคำขอ |
หากเกินขีดจำกัดใดขีดจำกัดหนึ่ง ระบบจะแสดงข้อผิดพลาด "สิทธิ์ถูกปฏิเสธ" ระบบอาจแคชการเรียกใช้การเข้าถึงเอกสารบางรายการ และการเรียกใช้ที่แคชไว้จะไม่นับรวมในขีดจำกัด |
ความลึกสูงสุดของคำสั่ง match ที่ซ้อนกัน |
10 |
ความยาวเส้นทางสูงสุดในกลุ่มเส้นทางที่อนุญาตภายในชุดคำสั่ง match ที่ซ้อนกัน |
100 |
จำนวนตัวแปรการบันทึกเส้นทางสูงสุดที่อนุญาตภายในชุดคำสั่ง match ที่ซ้อนกัน |
20 |
| ความลึกสูงสุดของการเรียกใช้ฟังก์ชัน | 20 |
| จำนวนอาร์กิวเมนต์ของฟังก์ชันสูงสุด | 7 |
การเชื่อมโยงตัวแปร let สูงสุดต่อฟังก์ชัน |
10 |
| จำนวนการเรียกใช้ฟังก์ชันแบบวนซ้ำหรือแบบวนรอบสูงสุด | 0 (ไม่อนุญาต) |
| จำนวนนิพจน์สูงสุดที่ประเมินต่อคำขอ | 1,000 ราย |
| ขนาดสูงสุดของชุดกฎ | ชุดกฎต้องเป็นไปตามขีดจำกัดขนาด 2 รายการต่อไปนี้
|
จัดการการใช้จ่าย
ตั้งงบประมาณรายเดือนและการแจ้งเตือนเพื่อช่วยหลีกเลี่ยงค่าใช้จ่ายที่ไม่คาดคิดในใบเรียกเก็บเงิน
กำหนดงบประมาณรายเดือน
หากต้องการติดตามค่าใช้จ่าย Cloud Firestore ให้สร้างงบประมาณรายเดือนในคอนโซล Google Cloud งบประมาณจะไม่จำกัดการใช้งานของคุณ แต่คุณสามารถตั้งการแจ้งเตือนเพื่อแจ้งให้ทราบเมื่อค่าใช้จ่ายใกล้ถึงหรือเกินค่าใช้จ่ายที่วางแผนไว้สำหรับเดือนนั้น
หากต้องการกำหนดงบประมาณ ให้ไปที่ส่วนการเรียกเก็บเงินในคอนโซล Google Cloud แล้วสร้างงบประมาณสำหรับบัญชี Cloud Billing คุณสามารถใช้การตั้งค่าการแจ้งเตือนเริ่มต้นหรือแก้ไขการแจ้งเตือนเพื่อส่งการแจ้งเตือนเมื่อถึงเปอร์เซ็นต์ต่างๆ ของงบประมาณรายเดือน
ดูข้อมูลเพิ่มเติมเกี่ยวกับการตั้งค่างบประมาณและการแจ้งเตือนงบประมาณ