ตัวอย่างต่อไปนี้จะช่วยให้คุณเข้าใจการกำหนดราคาของ Firestore รุ่น Enterprise ในสถานการณ์ต่างๆ
ตัวอย่างการกำหนดราคาสำหรับการค้นหา
สถานการณ์: การค้นหากรองข้อมูลในช่อง username ที่มีค่า ilovefirebase ในคอลเล็กชันที่มีเอกสาร 100 รายการ โดยเอกสารแต่ละรายการมีขนาด 2KiB สมมติว่ามี username เพียงรายการเดียวที่มีค่า ilovefirebase และมีการเรียกใช้การค้นหาเดียวกัน 1 ล้านครั้ง
| กิจกรรม | รุ่น Standard (การค้นหาที่จัดทำดัชนีอัตโนมัติ) | รุ่น Enterprise (การค้นหาที่จัดทำดัชนี) | รุ่น Enterprise (การสแกนคอลเล็กชันที่ไม่ได้จัดทำดัชนี) |
| สถานะการจัดทำดัชนี | ใช้ดัชนีที่สร้างขึ้นโดยอัตโนมัติ สำหรับการค้นหาชื่อผู้ใช้ | หลังจากสร้างดัชนีด้วยตนเอง ในช่องชื่อผู้ใช้ | ไม่ได้ใช้ดัชนี แต่จะสแกนคอลเล็กชันผู้ใช้ทั้งหมด 200KiB |
| หน่วยการอ่านต่อการค้นหา | มีค่าใช้จ่าย 1 การอ่าน | มีค่าใช้จ่าย 2 หน่วยการอ่าน (1 หน่วยสำหรับการสแกนดัชนีและ 1 หน่วยสำหรับการอ่านเอกสาร) | มีค่าใช้จ่าย 50 หน่วยการอ่าน (เอกสาร 100 รายการที่ 2KiB = การสแกนทั้งหมด 200KiB 200KiB / 4KiB ต่อหน่วย = 50 หน่วย) |
| ค่าใช้จ่ายทั้งหมด (ต่อการค้นหา 1 ล้านครั้ง) | $0.30 ต่อการค้นหา 1 ล้านครั้ง (1 การอ่าน @ $0.30 ต่อหน่วยการอ่าน 1 ล้านหน่วย) | $0.10 ต่อการค้นหา 1 ล้านครั้ง (2 หน่วยการอ่าน @ $0.05 ต่อหน่วยการอ่าน 1 ล้านหน่วย) | $2.50 ต่อการค้นหา 1 ล้านครั้ง (50 หน่วยการอ่าน @ $0.05 ต่อ 1 ล้านหน่วย) |
สรุปความแตกต่างของค่าใช้จ่าย
- การค้นหาที่จัดทำดัชนี: การค้นหาเดียวกันในรุ่น Enterprise มีค่าใช้จ่าย $0.10 ต่อ 1 ล้านครั้งเมื่อสร้างดัชนีด้วยตนเองในช่องชื่อผู้ใช้
- การค้นหาแบบสแกนคอลเล็กชันที่ไม่ได้จัดทำดัชนี: การค้นหาแบบสแกนคอลเล็กชันที่ไม่ได้จัดทำดัชนีในรุ่น Enterprise มีค่าใช้จ่าย $2.50 ต่อ 1 ล้านครั้ง ซึ่งสูงกว่า $0.30 ที่เรียกเก็บสำหรับการอ่านที่จัดทำดัชนีอัตโนมัติที่เทียบเท่าในรุ่น Standard อย่างมาก ซึ่งแสดงให้เห็นว่าการค้นหาโดยไม่มีดัชนีอาจทำให้การดำเนินการไม่มีประสิทธิภาพและมีค่าใช้จ่ายสูง
- ข้อได้เปรียบด้านค่าใช้จ่าย: $0.10 ต่อหน่วยการอ่าน 1 ล้านหน่วย ถูกกว่าค่าใช้จ่ายในการอ่านที่จัดทำดัชนีของรุ่น Standard ถึง 3 เท่า ซึ่งแสดงให้เห็นถึงราคาพื้นฐานที่ต่ำของหน่วยการอ่านรุ่น Enterprise เมื่อมีการเพิ่มประสิทธิภาพการค้นหา
ตัวอย่างการกำหนดราคาแบบเรียลไทม์
ดูข้อมูลเพิ่มเติมเกี่ยวกับการกำหนดราคาได้ที่การกำหนดราคาแบบเรียลไทม์
สถานการณ์ที่ 1: ลูกค้า 1 ล้านรายค้นหาโพสต์ล่าสุด 10 รายการในคอลเล็กชัน (จัดทำดัชนีตามการประทับเวลา) โดยโพสต์แต่ละรายการมีขนาด 6KiB จากนั้นมีการอัปเดตโพสต์ 2 รายการ ซึ่งส่งผลให้มีการพุชข้อมูลอัปเดตแบบเรียลไทม์ไปยังลูกค้า
| กิจกรรม | รุ่น Standard | รุ่น Enterprise | ไฮไลต์การกำหนดราคา |
| โมเดลการกำหนดราคา | ระบบจะเรียกเก็บเงินทั้งการค้นหาเริ่มต้นและการอัปเดตแบบเรียลไทม์ต่อการอ่านเอกสาร | ระบบจะเรียกเก็บเงินสำหรับการค้นหาเริ่มต้นโดยใช้หน่วยการอ่าน (4KiB ต่อหน่วย)
การอัปเดตแบบเรียลไทม์ใช้ SKU การอัปเดตแบบเรียลไทม์แยกต่างหาก |
รุ่น Enterprise ใช้ประโยชน์จากการกำหนดราคาหน่วยการอ่านสำหรับการอ่านเริ่มต้นที่ถูกกว่า |
| การอ่านครั้งแรก (การซิงค์เริ่มต้นของโพสต์ 10 รายการที่มีเอกสารขนาด 6KiB ต่อรายการ) | ลูกค้าแต่ละรายจะมีการอ่าน 10 ครั้ง (ขนาดเอกสารไม่มีผล) | ลูกค้าแต่ละรายจะมีการอ่าน 21 หน่วย
(1 หน่วยการอ่านสำหรับการสแกนดัชนีของโพสต์ 10 รายการ) (20 หน่วยการอ่าน: 2 หน่วยการอ่านต่อเอกสารขนาด 6KiB * 10 เอกสาร) |
รุ่น Enterprise ใช้หน่วยมากกว่า (21 หน่วยเทียบกับ 10 หน่วย) แต่มีราคาต่อหน่วยที่ต่ำกว่ามาก |
| ค่าใช้จ่ายในการอ่านครั้งแรก (ต่อ 1 ล้านครั้ง) | การอ่าน 10 ครั้ง * ลูกค้า 1 ล้านรายที่ $0.30 ต่อ 1 ล้านครั้ง: $3.00 | หน่วยการอ่าน 21 หน่วย * ลูกค้า 1 ล้านรายที่ 0.05 ต่อ 1 ล้านครั้ง: $1.05 | การอ่านเริ่มต้นถูกกว่าในรุ่น Enterprise ถึง 4 เท่า |
| การอัปเดตแบบเรียลไทม์ (การอัปเดตเอกสารขนาด 6KiB 2 รายการ) | มีการอ่าน 2 ครั้ง (เอกสารที่อัปเดต 2 รายการ) | มีการใช้หน่วยการอัปเดตแบบเรียลไทม์ 4 หน่วย (หน่วยการอัปเดตแบบเรียลไทม์ 2 หน่วยต่อเอกสารขนาด 6KiB * การอัปเดตแบบเรียลไทม์ 2 ครั้ง) | รุ่น Enterprise แยกการอัปเดตแบบเรียลไทม์ออกเป็น SKU เฉพาะ |
| ค่าใช้จ่ายแบบเรียลไทม์ (ต่อลูกค้า 1 ล้านราย) | การอ่าน 2 ครั้ง * ลูกค้า 1 ล้านรายที่ $0.30 ต่อ 1 ล้านครั้ง: $0.60 | หน่วยแบบเรียลไทม์ 4 หน่วย * ลูกค้า 1 ล้านรายที่ $0.30 ต่อ 1 ล้านครั้ง: $1.20 | ค่าใช้จ่ายแบบเรียลไทม์สูงกว่าในรุ่น Enterprise สำหรับสถานการณ์การอัปเดตนี้ |
| ค่าใช้จ่ายทั้งหมด | $3.60 ($3.00 + $0.60) | $2.25 ($1.05 + $1.20) | รุ่น Enterprise ถูกกว่า ($2.25 เทียบกับ $3.60) ในสถานการณ์นี้ที่เกี่ยวข้องกับเอกสารขนาดใหญ่ (6KiB) และปริมาณมาก |
ตัวอย่างการกำหนดราคาสำหรับการค้นหาแบบ Listen แบบเรียลไทม์เพิ่มเติมสำหรับรุ่น Enterprise
ตัวอย่างเช่น ระบบจะคำนวณค่าใช้จ่ายในสถานการณ์ต่อไปนี้โดยใช้อัตรา us-central1 ที่ $0.05 ต่อหน่วยการอ่าน 1 ล้านหน่วย และ $0.30 ต่อหน่วยการอัปเดตแบบเรียลไทม์ 1 ล้านหน่วย
| สถานการณ์ (ลูกค้า, ขนาดเอกสาร) | ระยะที่ 1: รายละเอียดการค้นหาเริ่มต้น (การซิงค์) | ระยะที่ 1: การใช้การค้นหาเริ่มต้น | ค่าใช้จ่ายโดยประมาณ | ระยะที่ 2: รายละเอียดการอัปเดตแบบเรียลไทม์ | ระยะที่ 2: การใช้การอัปเดตแบบเรียลไทม์ | ค่าใช้จ่ายโดยประมาณ |
| ลูกค้า 1 ราย, เอกสารขนาด 2KiB | การค้นหาจะเรียกใช้การสแกนคอลเล็กชันที่ไม่ได้จัดทำดัชนีของเอกสารต่อเนื่อง 10,000 รายการ โดยแต่ละรายการมีขนาด 2KiB | หน่วยการอ่าน 5,000 หน่วย | $0.00025 (คำนวณจาก $0.05 ต่อ 1 ล้านหน่วย) | ลูกค้าได้รับเอกสารทั้งหมด 1,000 รายการโดยใช้การอัปเดตแบบเรียลไทม์ โดยเอกสารแต่ละรายการมีขนาด 2KiB | หน่วยการอัปเดตแบบเรียลไทม์ 1,000 หน่วย | $0.003 (คำนวณจาก $0.30 ต่อ 1 ล้านหน่วย) |
| ลูกค้า 1,000 ราย, เอกสารขนาด 2KiB | ลูกค้า 1,000 รายแต่ละรายเรียกใช้การค้นหาที่ทำการสแกนคอลเล็กชันที่ไม่ได้จัดทำดัชนีของเอกสารต่อเนื่อง 10,000 รายการ โดยแต่ละรายการมีขนาด 2KiB | หน่วยการอ่าน 5 ล้านหน่วย | $0.25 (คำนวณจาก $0.05 ต่อ 1 ล้านหน่วย) | ลูกค้า 1,000 รายแต่ละรายได้รับเอกสารทั้งหมด 1,000 รายการโดยใช้การอัปเดตแบบเรียลไทม์ โดยเอกสารแต่ละรายการมีขนาด 2KiB | หน่วยการอัปเดตแบบเรียลไทม์ 1 ล้านหน่วย | $0.30 (คำนวณจาก $0.30 ต่อ 1 ล้านหน่วย) |
| ลูกค้า 1,000 ราย, เอกสารขนาด 6KiB | ลูกค้า 1,000 รายแต่ละรายเรียกใช้การค้นหาที่ทำการสแกนคอลเล็กชันที่ไม่ได้จัดทำดัชนีของเอกสารต่อเนื่อง 10,000 รายการ โดยแต่ละรายการมีขนาด 6KiB | หน่วยการอ่าน 15 ล้านหน่วย | $0.75 (คำนวณจาก $0.05 ต่อ 1 ล้านหน่วย) | ลูกค้า 1,000 รายแต่ละรายได้รับเอกสารทั้งหมด 1,000 รายการโดยใช้การอัปเดตแบบเรียลไทม์ โดยเอกสารแต่ละรายการมีขนาด 6KiB | หน่วยการอัปเดตแบบเรียลไทม์ 2 ล้านหน่วย | $0.60 (คำนวณจาก $0.30 ต่อ 1 ล้านหน่วย) |