เมื่อจัดสรรอินสแตนซ์ Cloud Firestore คุณต้องเลือกตำแหน่งสำหรับอินสแตนซ์ หากต้องการลดเวลาในการตอบสนองและเพิ่มความพร้อมใช้งาน ให้จัดเก็บข้อมูลไว้ใกล้กับผู้ใช้และบริการที่ต้องการข้อมูลนั้น
หากโปรเจ็กต์ใช้แพ็กเกจราคา Blaze แบบจ่ายเมื่อใช้ คุณจะเลือกสร้างฐานข้อมูลหลายรายการในโปรเจ็กต์ได้ โดยแต่ละรายการจะมีการตั้งค่าตำแหน่งของตัวเอง
โปรดทราบว่าเมื่อจัดสรรอินสแตนซ์ฐานข้อมูลแล้ว คุณจะเปลี่ยนการตั้งค่าตำแหน่งไม่ได้
ประเภทของสถานที่ตั้ง
คุณสามารถจัดเก็บข้อมูล Cloud Firestore ไว้ในสถานที่ตั้งแบบหลายภูมิภาคหรือสถานที่ตั้งระดับภูมิภาคได้
ตำแหน่งที่ตั้งแบบหลายภูมิภาค
เลือกตำแหน่งแบบหลายภูมิภาคเพื่อเพิ่มความพร้อมใช้งานและความทนทานของฐานข้อมูลให้สูงสุด
ตำแหน่งแบบหลายภูมิภาคประกอบด้วยชุดภูมิภาคที่กำหนดไว้ซึ่งเป็นที่จัดเก็บสำเนาฐานข้อมูลหลายรายการ ตัวจำลองแต่ละรายการอาจเป็นตัวจำลองแบบอ่าน-เขียนซึ่งมีข้อมูลทั้งหมดในฐานข้อมูล หรือตัวจำลองแบบพยานซึ่งไม่ได้เก็บรักษาชุดข้อมูลทั้งหมดแต่มีส่วนร่วมในการจำลองข้อมูล
การจำลองข้อมูลระหว่างหลายภูมิภาคจะช่วยให้ระบบแสดงข้อมูลต่อไปได้แม้ว่าจะสูญเสียข้อมูลทั้งภูมิภาคก็ตาม ภายในภูมิภาคหนึ่งๆ ข้อมูลจะได้รับการจำลองในโซนต่างๆ เพื่อให้สามารถให้บริการข้อมูลภายในภูมิภาคนั้นต่อไปได้แม้ว่าจะสูญเสียโซนไป
Cloud Firestore รองรับสถานที่ตั้งแบบหลายภูมิภาคต่อไปนี้
| ชื่อหลายภูมิภาค | คำอธิบายหลายภูมิภาค | ภูมิภาคแบบอ่าน-เขียน | ภูมิภาคของพยาน |
|---|---|---|---|
eur3 |
ยุโรป | europe-west1 (เบลเยียม), europe-west4 (เนเธอร์แลนด์) |
europe-north1 (ฟินแลนด์) |
nam5 |
สหรัฐอเมริกา (ภาคกลาง) | us-central1 (ไอโอวา), us-central2 (โอคลาโฮมา - ภูมิภาค GCP ส่วนตัว) |
us-east1 (เซาท์แคโรไลนา) |
nam7 |
สหรัฐอเมริกา (ภาคกลางและภาคตะวันออก) | us-central1 (ไอโอวา), us-east4 (นอร์เทิร์นเวอร์จิเนีย) |
us-central2 (โอคลาโฮมา - ภูมิภาค Google Cloud ส่วนตัว) |
ตำแหน่งที่ตั้งในภูมิภาค
สถานที่ตั้งระดับภูมิภาคคือสถานที่ทางภูมิศาสตร์ที่เฉพาะเจาะจง เช่น ภาคใต้ของประเทศไทย ข้อมูลในสถานที่ตั้งระดับภูมิภาคจะมีการจำลองในหลายโซนภายในภูมิภาค
เลือกตำแหน่งระดับภูมิภาคเพื่อลดค่าใช้จ่าย เพื่อลดเวลาในการตอบสนองในการเขียนหากแอปพลิเคชันของคุณไวต่อเวลาในการตอบสนอง หรือเพื่อใช้ตำแหน่งร่วมกับทรัพยากร Google Cloud อื่นๆ
Cloud Firestore รองรับตำแหน่งทรัพยากรระดับภูมิภาคต่อไปนี้
| ชื่อภูมิภาค | คำอธิบายภูมิภาค | |
|---|---|---|
| อเมริกาเหนือ | ||
us-west1 | ออริกอน | |
us-west2 | ลอสแอนเจลิส | |
us-west3 | ซอลต์เลกซิตี | |
us-west4 | ลาสเวกัส | |
|
|
ไอโอวา | |
northamerica-northeast1 | มอนทรีออล | |
|
|
โทรอนโต | |
|
|
เกเรตาโร | |
us-east1 | เซาท์แคโรไลนา | |
us-east4 | นอร์เทิร์นเวอร์จิเนีย | |
|
|
โคลัมบัส | |
|
|
แดลลัส | |
| อเมริกาใต้ | ||
|
|
ซันติอาโก | |
southamerica-east1 | เซาเปาลู | |
| ยุโรป | ||
europe-west2 | ลอนดอน | |
|
|
เบลเยียม | |
|
|
เนเธอร์แลนด์ | |
|
|
มิลาน | |
|
|
มาดริด | |
|
|
ปารีส | |
|
|
ตูริน | |
|
|
เบอร์ลิน | |
europe-west3 | แฟรงก์เฟิร์ต | |
|
|
ฟินแลนด์ | |
|
|
สตอกโฮล์ม | |
europe-central2 | วอร์ซอ | |
europe-west6 | ซูริก | |
| ตะวันออกกลาง | ||
|
|
โดฮา | |
|
|
ดัมมาม | |
|
|
เทลอาวีฟ | |
| เอเชีย | ||
asia-south1 | มุมไบ | |
|
|
เดลี | |
asia-southeast1 | สิงคโปร์ | |
asia-southeast2 | จาการ์ตา | |
asia-southeast3 | กรุงเทพ | |
asia-east2 | ฮ่องกง | |
asia-east1 | ไต้หวัน | |
asia-northeast1 | โตเกียว | |
asia-northeast2 | โอซาก้า | |
asia-northeast3 | โซล | |
| ออสเตรเลีย | ||
australia-southeast1 | ซิดนีย์ | |
|
|
เมลเบิร์น | |
| แอฟริกา | ||
|
|
โจฮันเนสเบิร์ก | |
การกำหนดราคาตามสถานที่ตั้ง
ตำแหน่ง Cloud Firestore จะเป็นตัวกำหนดค่าใช้จ่ายในการดำเนินการฐานข้อมูล
ดูคำอธิบายที่ครอบคลุมเกี่ยวกับการกำหนดราคาต่อภูมิภาคและต่อประเภทภูมิภาคได้ที่การกำหนดราคา
ดูตำแหน่งของฐานข้อมูล
ในคอนโซล Firebase ให้ไปที่Cloud Firestoreแท็บข้อมูลเพื่อดูรายการอินสแตนซ์ฐานข้อมูลและตำแหน่งของอินสแตนซ์เหล่านั้น
อาจมีการขึ้นต่อกันของตำแหน่งเนื่องจาก "ตำแหน่งสำหรับทรัพยากร Google Cloud เริ่มต้น"
"ตำแหน่งสำหรับทรัพยากร Google Cloud เริ่มต้น" คือการตั้งค่าตำแหน่งสำหรับทรัพยากรโปรเจ็กต์ที่เชื่อมโยงกับ Google App Engine ซึ่งรวมถึงรายการต่อไปนี้
- อินสแตนซ์ฐานข้อมูล Cloud Firestore เริ่มต้น
- บักเก็ต Cloud Storage เริ่มต้นสำหรับ Firebase ที่มีรูปแบบชื่อเป็น
*.appspot.com - Google Cloud Scheduler ที่ใช้กับฟังก์ชันที่กำหนดเวลารุ่นที่ 1 โดยเฉพาะ
"ตำแหน่งสำหรับทรัพยากร Google Cloud เริ่มต้น" นี้เป็นการตั้งค่าที่เปลี่ยนแปลงไม่ได้ นอกจากนี้ เมื่อคุณตั้งค่าตำแหน่งสำหรับทรัพยากรที่เชื่อมโยงรายการใดรายการหนึ่ง คุณจะตั้งค่าตำแหน่งสำหรับทรัพยากรทั้งหมดโดยอ้อมเนื่องจากทรัพยากรเหล่านั้นเชื่อมโยงกับ App Engine เหมือนกัน
อย่างไรก็ตาม ด้วยการเปลี่ยนแปลงมากมายในระบบนิเวศของ Firebase และ Google Cloud ในช่วงหลายปีที่ผ่านมา การเชื่อมโยงทรัพยากรกับ App Engine จึงมีการเปลี่ยนแปลง โดยเฉพาะอย่างยิ่ง ตั้งแต่วันที่ *.firebasestorage.app
รายละเอียดการเปลี่ยนแปลงในทรัพยากร Dependency ของตำแหน่งที่เป็นไปได้มีดังนี้
ตั้งแต่วันที่
30 ตุลาคม 2024 เป็นต้นไป หากอินสแตนซ์ Cloud Firestore เริ่มต้นและที่เก็บข้อมูล Cloud Storage สำหรับ Firebase เริ่มต้นยังไม่ได้จัดสรรการจัดสรรอินสแตนซ์ Cloud Firestore เริ่มต้นจะกำหนดตำแหน่งสำหรับแอป App Engine ในอนาคตที่จัดสรรในโปรเจ็กต์ อย่างไรก็ตาม การดำเนินการนี้จะไม่กำหนดตำแหน่งของที่เก็บข้อมูล Cloud Storage เริ่มต้นในอนาคต
การจัดสรรบักเก็ต Cloud Storage เริ่มต้นจะไม่จัดสรรแอป App Engine อีกต่อไป ดังนั้นตำแหน่งของบักเก็ต Cloud Storage เริ่มต้นจึงไม่ได้กำหนดตำแหน่งของอินสแตนซ์ Cloud Firestore เริ่มต้นในอนาคต
ตั้งแต่วันที่
30 ตุลาคม 2024 เป็นต้นไป หากอินสแตนซ์ Cloud Firestore เริ่มต้นได้รับการจัดสรรแล้ว แต่บักเก็ต Cloud Storage เริ่มต้นสำหรับ Firebase ยังไม่ได้รับการจัดสรร- อินสแตนซ์ Cloud Firestore เริ่มต้นที่มีอยู่จะไม่กำหนดตำแหน่งของที่เก็บข้อมูล Cloud Storage เริ่มต้นในอนาคต (
)*.firebasestorage.app
- อินสแตนซ์ Cloud Firestore เริ่มต้นที่มีอยู่จะไม่กำหนดตำแหน่งของที่เก็บข้อมูล Cloud Storage เริ่มต้นในอนาคต (
ตั้งแต่วันที่
30 ตุลาคม 2024 เป็นต้นไป หาก Cloud Storage เริ่มต้นสำหรับที่เก็บข้อมูล Firebase ได้รับการจัดสรรแล้ว (โดยเฉพาะที่เก็บข้อมูล ) แต่อินสแตนซ์ Cloud Firestore เริ่มต้นยังไม่ได้รับการจัดสรร*.appspot.com- เมื่อมีการจัดสรรบักเก็ต Cloud Storage เริ่มต้น (
) ระบบจะจัดสรรแอป App Engine ด้วย ดังนั้นจึงมีการตั้งค่าตำแหน่งของอินสแตนซ์ Cloud Firestore เริ่มต้นในอนาคตในขณะนั้น แม้ว่าคุณจะลบที่เก็บข้อมูล*.appspot.com คุณก็ไม่สามารถลบแอป App Engine ได้ ดังนั้นระบบจึงตั้งค่าการตั้งค่าตำแหน่งของอินสแตนซ์ Cloud Firestore เริ่มต้นในอนาคตไว้แล้ว*.appspot.com
- เมื่อมีการจัดสรรบักเก็ต Cloud Storage เริ่มต้น (
หากคุณใช้ฟังก์ชันที่กำหนดเวลารุ่นที่ 1 ระบบจะตั้งค่าตำแหน่งของฟังก์ชันเป็นตำแหน่งสำหรับทรัพยากร Google Cloud เริ่มต้น เนื่องจาก Cloud Scheduler และ App Engine เคยเชื่อมโยงกันมาก่อน นอกจากนี้ หากคุณตั้งค่าฟังก์ชันที่กำหนดเวลารุ่นที่ 1 ก่อนจัดสรรทรัพยากรอื่นๆ ที่ใช้การตั้งค่าตำแหน่งนี้ร่วมกัน คุณก็ต้องตั้งค่าตำแหน่งของทรัพยากรเหล่านั้นด้วย
โปรดทราบว่าหากคุณมีแอป App Engine ที่มีตำแหน่งเป็น us-central หรือ europe-west ตำแหน่งสำหรับทรัพยากร Google Cloud เริ่มต้นจะถือว่าเป็นแบบหลายภูมิภาค