Khi cung cấp một Cloud Firestore thực thể, bạn phải chọn một vị trí cho thực thể đó. Để giảm độ trễ và tăng khả năng cung cấp, hãy lưu trữ dữ liệu gần với những người dùng và dịch vụ cần đến dữ liệu đó.
Nếu dự án của bạn đang sử dụng gói giá Blaze trả tiền theo mức dùng, thì bạn có thể tuỳ ý tạo nhiều cơ sở dữ liệu trong dự án, mỗi cơ sở dữ liệu có chế độ cài đặt vị trí riêng.
Xin lưu ý rằng sau khi cung cấp một thực thể cơ sở dữ liệu, bạn không thể thay đổi chế độ cài đặt vị trí của thực thể đó.
Các loại vị trí
Bạn có thể lưu trữ dữ liệu Cloud Firestore ở vị trí đa vùng hoặc vị trí theo vùng.
Vị trí đa vùng
Chọn một vị trí đa vùng để tối đa hoá khả năng cung cấp và độ bền của cơ sở dữ liệu.
Vị trí đa vùng bao gồm một tập hợp các vùng được xác định, nơi lưu trữ nhiều bản sao của cơ sở dữ liệu được lưu trữ. Mỗi bản sao là một bản sao đọc-ghi chứa tất cả dữ liệu trong cơ sở dữ liệu hoặc một bản sao chứng kiến không duy trì một tập hợp đầy đủ dữ liệu nhưng tham gia vào quá trình nhân bản.
Bằng cách nhân bản dữ liệu giữa nhiều vùng, dữ liệu có thể tiếp tục được phân phát ngay cả khi mất toàn bộ một vùng. Trong một vùng, dữ liệu được nhân bản trên nhiều vùng để dữ liệu có thể tiếp tục được phân phát trong vùng đó ngay cả khi mất một vùng.
Cloud Firestore hỗ trợ các vị trí đa vùng sau:
| Tên đa vùng | Nội dung mô tả đa vùng | Vùng đọc-ghi | Vùng chứng kiến |
|---|---|---|---|
eur3 |
Châu Âu | europe-west1 (Bỉ), europe-west4 (Hà Lan) |
europe-north1 (Phần Lan) |
nam5 |
Hoa Kỳ (Miền trung) | us-central1 (Iowa), us-central2 (Oklahoma – vùng GCP riêng tư) |
us-east1 (Nam Carolina) |
nam7 |
Hoa Kỳ (Miền trung và miền đông) | us-central1 (Iowa), us-east4 (Bắc Virginia) |
us-central2 (Oklahoma – vùng Google Cloud riêng tư) |
Vị trí theo vùng
Vị trí theo vùng là một vị trí địa lý cụ thể, chẳng hạn như Nam Carolina. Dữ liệu ở vị trí theo vùng được nhân bản ở nhiều vùng trong một vùng.
Cloud Firestore hỗ trợ các vị trí tài nguyên theo vùng sau:
| Tên vùng | Nội dung mô tả về vùng | |
|---|---|---|
| Bắc Mỹ | ||
us-west1 | Oregon | |
us-west2 | Los Angeles | |
us-west3 | Thành phố Salt Lake | |
us-west4 | Las Vegas | |
|
|
Iowa | |
northamerica-northeast1 | Montréal | |
|
|
Toronto | |
|
|
Queretaro | |
us-east1 | South Carolina | |
us-east4 | Bắc Virginia | |
|
|
Columbus | |
|
|
Dallas | |
| Nam Mỹ | ||
|
|
Santiago | |
southamerica-east1 | São Paulo | |
| Châu Âu | ||
europe-west2 | London | |
|
|
Bỉ | |
|
|
Hà Lan | |
|
|
Milan | |
|
|
Madrid | |
|
|
Paris | |
|
|
Turin | |
|
|
Berlin | |
europe-west3 | Frankfurt | |
|
|
Phần Lan | |
|
|
Stockholm | |
europe-central2 | Warsaw | |
europe-west6 | Zürich | |
| Trung Đông | ||
|
|
Doha | |
|
|
Dammam | |
|
|
Tel Aviv | |
| Châu Á | ||
asia-south1 | Mumbai | |
|
|
Delhi | |
asia-southeast1 | Singapore | |
asia-southeast2 | Jakarta | |
asia-east2 | Hong Kong | |
asia-east1 | Đài Loan | |
asia-northeast1 | Tokyo | |
asia-northeast2 | Osaka | |
asia-northeast3 | Seoul | |
| Úc | ||
australia-southeast1 | Sydney | |
|
|
Melbourne | |
| Châu Phi | ||
|
|
Johannesburg | |
SLA vị trí
Loại vị trí Cloud Firestore của bạn xác định phần trăm thời gian hoạt động của Thoả thuận mức độ cung cấp dịch vụ (SLA):
| Dịch vụ được áp dụng | Phần trăm thời gian hoạt động hằng tháng |
|---|---|
| Cloud Firestore đa vùng | >= 99,999% |
| Cloud Firestore theo vùng | >= 99,99% |
Giá theo vị trí
Vị trí Cloud Firestore của bạn xác định chi phí của các thao tác cơ sở dữ liệu.
Để biết giải thích toàn diện về giá theo vùng và theo loại vùng, hãy xem Tìm hiểu về hoá đơnCloud Firestore.
Xem vị trí của cơ sở dữ liệu
Trong bảng điều khiển Firebase, hãy chuyển đến thẻ Cloud Firestore Dữ liệu để xem danh sách các thực thể cơ sở dữ liệu và vị trí của chúng.
Các phần phụ thuộc vị trí có thể có do "vị trí của các tài nguyên Google Cloud mặc định"
"Vị trí của các tài nguyên Google Cloud mặc định" là chế độ cài đặt vị trí cho mọi tài nguyên dự án được liên kết với Google App Engine, bao gồm:
- thực thể cơ sở dữ liệu Cloud Firestore mặc định
- Cloud Storage mặc định cho vùng chứa Firebase có định dạng tên là
*.appspot.com - Google Cloud Scheduler được dùng riêng với các hàm được lên lịch thế hệ thứ 1
"Vị trí của các tài nguyên Google Cloud mặc định" là một chế độ cài đặt không thể thay đổi. Ngoài ra, khi bạn đặt vị trí cho một trong các tài nguyên được liên kết, bạn sẽ gián tiếp đặt vị trí cho tất cả các tài nguyên đó do chúng có mối liên kết chung với App Engine.
Tuy nhiên, với nhiều thay đổi đối với hệ sinh thái Firebase và Google Cloud trong
những năm qua, mối liên kết của các tài nguyên với App Engine đã
thay đổi. Đáng chú ý nhất là kể từ ngày
*.firebasestorage.app
Dưới đây là thông tin chi tiết về những thay đổi trong các phần phụ thuộc vị trí có thể có:
Kể từ ngày
30 tháng 10 năm 2024 , nếu thực thể Cloud Firestore mặc định và vùng chứa Cloud Storage mặc định cho Firebase chưa được cung cấp:Việc cung cấp thực thể Cloud Firestore mặc định sẽ đặt vị trí cho mọi ứng dụng App Engine trong tương lai được cung cấp trong dự án. Tuy nhiên, việc này không quyết định vị trí của vùng chứa mặc định Cloud Storage trong tương lai.
Việc cung cấp vùng chứa Cloud Storage mặc định không còn cung cấp ứng dụng App Engine nữa. Do đó, vị trí của vùng chứa Cloud Storage mặc định không quyết định vị trí của thực thể Cloud Firestore mặc định trong tương lai.
Kể từ ngày
30 tháng 10 năm 2024 , nếu thực thể Cloud Firestore mặc định đã được cung cấp rồi, nhưng vùng chứa mặc định Cloud Storage cho Firebase chưa được cung cấp:- Thực thể Cloud Firestore mặc định hiện có không quyết định
vị trí của vùng chứa Cloud Storage mặc định trong tương lai
(
).*.firebasestorage.app
- Thực thể Cloud Firestore mặc định hiện có không quyết định
vị trí của vùng chứa Cloud Storage mặc định trong tương lai
(
Kể từ ngày
30 tháng 10 năm 2024 , nếu vùng chứa Cloud Storage mặc định cho Firebase đã được cung cấp (cụ thể là vùng chứa ), nhưng thực thể Cloud Firestore mặc định chưa được cung cấp:*.appspot.com- Khi vùng chứa Cloud Storage mặc định
(
) được cung cấp, một ứng dụng App Engine cũng được cung cấp và do đó, vị trí của thực thể Cloud Firestore mặc định trong tương lai đã được đặt vào thời điểm đó. Ngay cả khi bạn xoá vùng chứa*.appspot.com , bạn cũng không thể xoá ứng dụng App Engine, vì vậy, chế độ cài đặt vị trí của thực thể Cloud Firestore mặc định trong tương lai đã được đặt.*.appspot.com
- Khi vùng chứa Cloud Storage mặc định
(
Nếu bạn đã sử dụng các hàm được lên lịch thế hệ thứ 1, thì vị trí của các hàm đó được đặt thành vị trí của các tài nguyên Google Cloud mặc định. Điều này là do Cloud Scheduler và App Engine trước đây có mối liên kết với nhau. Ngoài ra, nếu bạn thiết lập các hàm được lên lịch thế hệ thứ nhất trước khi cung cấp các tài nguyên khác có cùng chế độ cài đặt vị trí này, thì bạn cũng sẽ đặt vị trí của các hàm đó.
Xin lưu ý rằng nếu bạn có một ứng dụng App Engine có
vị trí là us-central hoặc europe-west, thì
vị trí của các tài nguyên Google Cloud mặc định sẽ được coi là
đa vùng.
Các bước tiếp theo
- Để tạo cơ sở dữ liệu Cloud Firestore ở một vị trí cụ thể, hãy xem bài viết Bắt đầu sử dụng Cloud Firestore.
- Để biết thêm thông tin về cách xây dựng ứng dụng nhằm đáp ứng các yêu cầu về độ trễ, khả năng cung cấp và độ bền, hãy tham khảo bài viết Vị trí địa lý và vùng.