Firebase มีฐานข้อมูลเอกสารแบบคลาวด์ที่ไคลเอ็นต์เข้าถึงได้ 2 ประเภท เราขอแนะนำให้ลูกค้าใหม่เริ่มต้นด้วย Cloud Firestore
Cloud Firestore เป็นฐานข้อมูลเอกสารที่ใช้งานร่วมกับ JSON ได้ในระดับองค์กรที่แนะนำ ซึ่งได้รับความไว้วางใจจากนักพัฒนาซอฟต์แวร์กว่า 250,000 คน ซึ่งเหมาะสำหรับแอปพลิเคชันที่มีโมเดลข้อมูลแบบ Rich Data ที่ต้องสามารถค้นหา ปรับขนาด และพร้อมใช้งานสูง รวมถึงการซิงค์ไคลเอ็นต์ที่มีเวลาในการตอบสนองต่ำและการเข้าถึงข้อมูลแบบออฟไลน์
Realtime Database คือฐานข้อมูล JSON ของ Firebase แบบคลาสสิก รูปแบบข้อมูลนี้เหมาะสำหรับแอปพลิเคชันที่มีรูปแบบข้อมูลที่เรียบง่ายซึ่งต้องมีการค้นหาที่ง่ายดายและการซิงค์ที่มีเวลาในการตอบสนองต่ำและความสามารถในการปรับขนาดได้จำกัด
สิ่งสำคัญอื่นๆ ที่ควรพิจารณามีอะไรบ้าง
หลังจากพิจารณาถึงข้อควรพิจารณาหลักก่อนหน้านี้แล้ว คุณอาจพร้อมที่จะเลือกฐานข้อมูล หากคุณยังพิจารณาข้อดีและข้อเสียอยู่ ส่วนนี้จะอธิบายความแตกต่างอื่นๆ ระหว่าง Cloud Firestore กับ Realtime Database
โมเดลข้อมูล
ทั้ง Realtime Database และ Cloud Firestore เป็นฐานข้อมูล NoSQL
Cloud Firestore | [ แนะนำ ] | Realtime Database |
---|---|---|
จัดเก็บข้อมูลเป็นคอลเล็กชันเอกสาร
ดูข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบข้อมูล Cloud Firestore |
จัดเก็บข้อมูลเป็นต้นไม้ JSON ขนาดใหญ่ต้นเดียว
ดูข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบข้อมูล Realtime Database |
การสนับสนุนแบบเรียลไทม์และออฟไลน์
ทั้ง 2 รายการมี SDK แบบเรียลไทม์ที่เน้นอุปกรณ์เคลื่อนที่ และทั้ง 2 รายการรองรับพื้นที่เก็บข้อมูลในเครื่องสําหรับแอปที่พร้อมใช้งานแบบออฟไลน์
Cloud Firestore | [ แนะนำ ] | Realtime Database |
---|---|---|
การรองรับแบบออฟไลน์สำหรับไคลเอ็นต์ Apple, Android และเว็บ | การสนับสนุนแบบออฟไลน์สำหรับไคลเอ็นต์ Apple และ Android |
การตรวจหาบุคคลในบ้าน
การทราบว่าลูกค้าออนไลน์หรือออฟไลน์อยู่อาจมีประโยชน์ Firebase Realtime Database สามารถบันทึกสถานะการเชื่อมต่อไคลเอ็นต์และแสดงข้อมูลอัปเดตทุกครั้งที่สถานะการเชื่อมต่อของไคลเอ็นต์เปลี่ยนแปลง
Cloud Firestore | [ แนะนำ ] | Realtime Database |
---|---|---|
ไม่รองรับโดยค่าเริ่มต้น คุณสามารถใช้การสนับสนุนสถานะที่มีอยู่ของ Realtime Database ได้โดยซิงค์ Cloud Firestore กับ Realtime Database โดยใช้ Cloud Functions ดูการสร้างสถานะใน Cloud Firestore | รองรับการตรวจหาบุคคลในบ้าน |
การค้นหา
ดึงข้อมูล จัดเรียง และกรองข้อมูลจากฐานข้อมูลผ่านคําค้นหา
Cloud Firestore | [ แนะนำ ] | Realtime Database |
---|---|---|
คำค้นหาที่จัดทําดัชนีซึ่งมีการจัดเรียงและกรองแบบผสม
|
การค้นหาแบบเจาะลึกที่มีฟีเจอร์การจัดเรียงและกรองแบบจํากัด
|
การเขียนและธุรกรรม
Cloud Firestore | [ แนะนำ ] | Realtime Database |
---|---|---|
การดำเนินการเขียนและธุรกรรมขั้นสูง
|
การดำเนินการเขียนและธุรกรรมพื้นฐาน
|
ความน่าเชื่อถือและประสิทธิภาพ
Cloud Firestore | [ แนะนำ ] | Realtime Database |
---|---|---|
Cloud Firestore เป็นโซลูชันระดับภูมิภาคและหลายภูมิภาคที่ปรับขนาดโดยอัตโนมัติ
|
Realtime Database เป็นโซลูชันระดับภูมิภาค
|
ระยะเวลาทำงาน
Cloud Firestore | [ แนะนำ ] | Realtime Database |
---|---|---|
ประสิทธิภาพการทํางานที่มีเวลาทํางานสูงมาก
|
ประสิทธิภาพการทํางานที่มีเวลาทํางานสูง
|
ความสามารถในการปรับขนาด
Cloud Firestore | [ แนะนำ ] | Realtime Database |
---|---|---|
การปรับขนาดเป็นแบบอัตโนมัติ
|
การปรับขนาดต้องใช้การแยกข้อมูล
|
ความปลอดภัย
Cloud Firestore | [ แนะนำ ] | Realtime Database |
---|---|---|
กฎแบบไม่ทํางานแบบตามลําดับชั้นซึ่งรวมการให้สิทธิ์เข้ากับการตรวจสอบ
|
ภาษากฎแคสคาดที่แยกการให้สิทธิ์และการตรวจสอบ
|
ราคา
โซลูชันทั้ง 2 รายการมีให้บริการในแพ็กเกจราคา Spark และ Blaze
Cloud Firestore | [ แนะนำ ] | Realtime Database |
---|---|---|
ระบบจะเรียกเก็บเงินตามการดำเนินการในฐานข้อมูล (อ่าน เขียน ลบ) เป็นหลัก และตามอัตราที่ต่ำลงสำหรับแบนด์วิดท์และพื้นที่เก็บข้อมูล
Cloud Firestore รองรับวงเงินใช้จ่ายรายวันสำหรับโปรเจ็กต์ App Engine เพื่อให้แน่ใจว่าค่าใช้จ่ายจะไม่สูงกว่าที่คุณรับได้ อ่านเพิ่มเติมเกี่ยวกับแพ็กเกจราคา Cloud Firestore |
เรียกเก็บเฉพาะค่าแบนด์วิดท์และพื้นที่เก็บข้อมูล แต่จะมีอัตราที่สูงกว่า
อ่านเพิ่มเติมเกี่ยวกับแพ็กเกจราคา Realtime Database |
การใช้ Cloud Firestore และ Realtime Database
คุณใช้ทั้ง 2 ฐานข้อมูลภายในแอปหรือโปรเจ็กต์ Firebase เดียวกันได้ ฐานข้อมูล NoSQL ทั้ง 2 ประเภทสามารถจัดเก็บข้อมูลประเภทเดียวกันและคลังไคลเอ็นต์ทํางานในลักษณะที่คล้ายกัน โปรดคำนึงถึงความแตกต่างที่ระบุไว้ก่อนหน้านี้หากคุณตัดสินใจใช้ทั้ง 2 ฐานข้อมูลในแอป
ดูข้อมูลเพิ่มเติมเกี่ยวกับฟีเจอร์ที่มีให้ใช้งานทั้งใน Realtime Database และ Cloud Firestore
พร้อมเลือกฐานข้อมูลแล้วหรือยัง
เราหวังว่าการเปรียบเทียบนี้จะช่วยให้คุณตัดสินใจเลือกโซลูชันฐานข้อมูล Firebase ได้ ตอนนี้คุณสามารถดูวิธีเพิ่มฐานข้อมูลลงในโปรเจ็กต์ Firebase ได้แล้ว
- สำหรับ Cloud Firestore โปรดดูเริ่มต้นใช้งาน Cloud Firestore
- สำหรับ Realtime Database โปรดอ่านหัวข้อเริ่มต้นใช้งานสำหรับแพลตฟอร์มของคุณ ซึ่งได้แก่ Apple, Android, C++, Unity, เว็บ หรือ REST