ใช้คู่มือนี้เพื่อทำความเข้าใจขีดจำกัดของ Cloud Firestore และดูCloud Firestoreการกำหนดราคาเพื่อดูคำอธิบายโดยละเอียดและครบถ้วนเกี่ยวกับค่าใช้จ่ายของ Cloud Firestore รวมถึงสิ่งที่ควรระวัง
ตรวจสอบการใช้งาน
หากต้องการตรวจสอบการใช้งาน Cloud Firestore ให้เปิดแท็บการใช้งานของ Cloud Firestore ในคอนโซล Firebase ใช้แดชบอร์ดเพื่อประเมินการใช้งานในช่วงระยะเวลาต่างๆ
การใช้งานโดยละเอียดในคอนโซล Google Cloud
เมื่อสร้างโปรเจ็กต์ Firebase เท่ากับว่าคุณกำลังสร้างโปรเจ็กต์ Google Cloud ด้วย หน้าโควต้า Cloud Firestore API และหน้าโควต้า App Engine ในคอนโซล Google Cloud แสดงข้อมูลการใช้งานและโควต้า Cloud Firestore
โควต้าฟรี
Cloud Firestore มีโควต้าฟรีที่ให้คุณเริ่มต้นใช้งานโดยไม่มีค่าใช้จ่าย ปริมาณโควต้าฟรีแสดงอยู่ด้านล่าง หากต้องการโควต้าเพิ่มเติม คุณต้องเปิดใช้การเรียกเก็บเงินสำหรับโปรเจ็กต์ Google Cloud
โควต้าจะมีผลทุกวันและรีเซ็ตประมาณเที่ยงคืนตามเวลาแปซิฟิก
Firestore อนุญาตให้มีฐานข้อมูลฟรีได้เพียง 1 ฐานข้อมูลต่อโปรเจ็กต์
รุ่นฟรี | โควต้า |
---|---|
ข้อมูลที่จัดเก็บ | 1 GiB |
การอ่านเอกสาร | 50,000 คนต่อวัน |
การเขียนเอกสาร | 20,000 รายการต่อวัน |
การลบเอกสาร | 20,000 รายการต่อวัน |
การโอนข้อมูลขาออก | 10 GiB ต่อเดือน |
การดำเนินการและฟีเจอร์ต่อไปนี้ไม่รวมการใช้งานแบบไม่มีค่าใช้จ่าย คุณต้องเปิดใช้การเรียกเก็บเงินจึงจะใช้ฟีเจอร์ต่อไปนี้ได้
- การลบ TTL
- ข้อมูล PITR
- ข้อมูลสํารอง
- การดำเนินการกู้คืน
ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีเรียกเก็บเงินสำหรับฟีเจอร์เหล่านี้ได้ที่ราคาพื้นที่เก็บข้อมูล
ขีดจำกัดมาตรฐาน
ตารางต่อไปนี้แสดงขีดจํากัดที่มีผลกับ Cloud Firestore ขีดจํากัดเหล่านี้เป็นขีดจํากัดที่เปลี่ยนแปลงไม่ได้ เว้นแต่จะระบุไว้เป็นอย่างอื่น
ฐานข้อมูล
ขีดจำกัด | รายละเอียด |
---|---|
จํานวนฐานข้อมูลสูงสุดต่อโปรเจ็กต์ |
100 คุณสามารถติดต่อทีมสนับสนุนเพื่อขอเพิ่มขีดจำกัดนี้ได้ |
คอลเล็กชัน เอกสาร และช่อง
ขีดจำกัด | รายละเอียด |
---|---|
ข้อจำกัดเกี่ยวกับรหัสคอลเล็กชัน |
|
ความลึกสูงสุดของคอลเล็กชันย่อย | 100 |
ข้อจำกัดเกี่ยวกับรหัสเอกสาร |
|
ขนาดสูงสุดของชื่อเอกสาร | 6 KiB |
ขนาดสูงสุดของเอกสาร | 1 MiB (1,048,576 ไบต์) |
ข้อจำกัดเกี่ยวกับชื่อช่อง |
|
ขนาดสูงสุดของชื่อฟิลด์ | 1,500 ไบต์ |
ข้อจำกัดเกี่ยวกับเส้นทางฟิลด์ |
` ) เช่น foo.`x&y` หมายถึงช่อง x&y ที่ฝังอยู่ใต้ช่อง foo หากต้องการสร้างชื่อช่องที่มีอักขระแบ็กทิก ให้หลีกหนีอักขระแบ็กทิกด้วยอักขระแบ็กสแลช (\ ) คุณสามารถหลีกเลี่ยงชื่อช่องที่มีเครื่องหมายคำพูดได้โดยส่งเส้นทางฟิลด์เป็นออบเจ็กต์ FieldPath (เช่น ดู FieldPath ของ JavaScript) เพื่ออำนวยความสะดวก
|
ขนาดสูงสุดของเส้นทางฟิลด์ | 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 (not permitted) |
จำนวนนิพจน์สูงสุดที่ประเมินต่อคำขอ | 1,000 ราย |
ขนาดสูงสุดของชุดกฎ | ชุดกฎต้องเป็นไปตามขีดจํากัดขนาด 2 ข้อต่อไปนี้
|
จัดการการใช้จ่าย
ตั้งงบประมาณและการแจ้งเตือนรายเดือนเพื่อช่วยหลีกเลี่ยงการเรียกเก็บเงินที่ไม่คาดคิดในใบเรียกเก็บเงิน
กำหนดงบประมาณรายเดือน
หากต้องการติดตามค่าใช้จ่าย Cloud Firestore ให้สร้างงบประมาณรายเดือนในคอนโซล Google Cloud งบประมาณจะไม่จำกัดการใช้งาน แต่คุณสามารถตั้งค่าการแจ้งเตือนให้แจ้งเตือนเมื่อค่าใช้จ่ายของคุณใกล้ถึงหรือเกินค่าใช้จ่ายที่วางแผนไว้สำหรับเดือนนั้น
หากต้องการตั้งงบประมาณ ให้ไปที่ส่วนการเรียกเก็บเงินในคอนโซล Google Cloud แล้วสร้างงบประมาณสำหรับบัญชี Cloud Billing คุณสามารถใช้การตั้งค่าการแจ้งเตือนเริ่มต้นหรือแก้ไขการแจ้งเตือนเพื่อส่งการแจ้งเตือนตามเปอร์เซ็นต์ต่างๆ ของงบประมาณรายเดือน
ดูข้อมูลเพิ่มเติมเกี่ยวกับการตั้งงบประมาณและการแจ้งเตือนงบประมาณ