Khi cấp phép một thực thể Cloud Firestore, bạn phải chọn một vị trí cho thực thể đó. Để giảm độ trễ và tăng khả năng hoạt động, hãy lưu trữ dữ liệu của bạn gần với người dùng và dịch vụ cần dữ liệu đó.
Nếu dự án của bạn 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 cấp một phiên bản cơ sở dữ liệu, bạn không thể thay đổi chế độ cài đặt vị trí của phiên bản đó.
Các loại vị trí
Bạn có thể lưu trữ dữ liệu Cloud Firestore của mình ở một vị trí đa vùng hoặc một vị trí theo vùng.
Vị trí đa khu vực
Chọn một vị trí đa khu vực để tối đa hoá khả năng hoạt động và độ bền của cơ sở dữ liệu.
Vị trí đa khu vực bao gồm một nhóm khu vực xác định, nơi lưu trữ nhiều bản sao của cơ sở dữ liệu. 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 nhân chứng không duy trì một tập hợp dữ liệu đầy đủ nhưng tham gia vào quá trình sao chép.
Bằng cách sao chép dữ liệu giữa nhiều khu vực, dữ liệu có thể tiếp tục được phân phát ngay cả khi mất toàn bộ một khu vực. Trong một khu vực, dữ liệu được nhân bản ra nhiều vùng để có thể tiếp tục được phân phát trong khu vực đó ngay cả khi một vùng bị mất dữ liệu.
Cloud Firestore hỗ trợ các vị trí đa khu vực sau:
| Tên của nhiều khu vực | Nội dung mô tả về nhiều khu vực | Khu vực đọc-ghi | Khu vực nhân chứng |
|---|---|---|---|
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 – khu vực 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 – khu vực Google Cloud riêng tư) |
Vị trí theo khu vực
Vị trí theo khu vực là một địa điểm địa lý cụ thể, chẳng hạn như South Carolina. Dữ liệu ở một vị trí theo khu vực được nhân bản ra nhiều vùng trong một khu vực.
Chọn một vị trí theo khu vực để giảm chi phí, giảm độ trễ ghi nếu ứng dụng của bạn nhạy cảm với độ trễ hoặc để đặt cùng vị trí với các tài nguyên Google Cloud khác.
Cloud Firestore hỗ trợ các vị trí tài nguyên theo khu vực sau:
| Tên khu vực | Nội dung mô tả về khu vực | |
|---|---|---|
| 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-southeast3 | Bangkok | |
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 | |
Giá theo vị trí
Vị trí Cloud Firestore của bạn xác định chi phí của các thao tác trên cơ sở dữ liệu.
Để biết thông tin giải thích toàn diện về giá theo khu vực và theo loại khu vực, hãy xem phần Giá.
Xem vị trí của cơ sở dữ liệu
Trong bảng điều khiển của 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 các thực thể đó.
Có thể có các phần phụ thuộc về vị trí do "vị trí cho tài nguyên Google Cloud mặc định"
"Vị trí cho 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 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 bộ chứa Firebase có định dạng tên là
*.appspot.com - Google Cloud Scheduler được dùng riêng cho các hàm theo lịch thế hệ thứ 1
"Vị trí cho tài nguyên Google Cloud mặc định" này là một chế độ cài đặt không thể thay đổi. Ngoài ra, khi đặ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 mối liên kết chung của chúng với App Engine.
Tuy nhiên, do có nhiều thay đổi đối với hệ sinh thái Firebase và Google Cloud trong những năm qua, nên mối liên kết giữa tài nguyên với App Engine cũng thay đổi. Đáng chú ý nhất là kể từ *.firebasestorage.app
Sau đây là thông tin chi tiết về những thay đổi đối với các phần phụ thuộc có thể có về vị trí:
Kể từ
ngày 30 tháng 10 năm 2024 , nếu phiên bản Cloud Firestore mặc định và bộ chứa Cloud Storage cho Firebase mặc định chưa được cấp phép:Việc cấp phép thực thể Cloud Firestore mặc định sẽ đặt vị trí cho mọi ứng dụng App Engine được cấp phép trong dự án sau này. Tuy nhiên, việc này không quyết định vị trí của bộ chứa Cloud Storage mặc định trong tương lai.
Việc cấp bộ chứa Cloud Storage mặc định sẽ không còn cấp ứng dụng App Engine. Do đó, vị trí của bộ chứa Cloud Storage mặc định sẽ 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 cấp phép, nhưng bộ chứa Cloud Storage mặc định cho Firebase chưa được cấp phép:- Thực thể Cloud Firestore mặc định hiện có không quyết định vị trí của bộ 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 bộ chứa Cloud Storage mặc định trong tương lai (
Kể từ
ngày 30 tháng 10 năm 2024 , nếu bộ chứa Cloud Storage mặc định cho Firebase đã được cấp phép (cụ thể là bộ chứa ), nhưng thực thể Cloud Firestore mặc định chưa được cấp phép:*.appspot.com- Khi bộ chứa Cloud Storage mặc định (
) được cấp phép, một ứng dụng App Engine cũng được cấp phép, do đó, vị trí của thực thể Cloud Firestore mặc định trong tương lai đã được đặt tại thời điểm đó. Ngay cả khi xoá bộ 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 bộ chứa Cloud Storage mặc định (
Nếu bạn đã sử dụng hàm theo lịch thế hệ thứ 1, thì vị trí của các hàm này sẽ được đặt thành vị trí cho tài nguyên Google Cloud mặc định. Nguyên nhân là do Cloud Scheduler và App Engine trước đây đã liên kết với nhau. Ngoài ra, nếu bạn thiết lập các hàm theo lịch thế hệ thứ 1 trước khi cung cấp các tài nguyên khác có chung chế độ cài đặt vị trí này, thì bạn cũng đặt vị trí cho các tài nguyên đó.
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 bạn cho tài nguyên Google Cloud mặc định được coi là đa khu vực.