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