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