रीजनल एंडपॉइंट के साथ डेटा लोकैलिटी कॉन्फ़िगर करना

इस पेज पर, Cloud Firestore क्लाइंट लाइब्रेरी को कॉन्फ़िगर करने का तरीका बताया गया है, ताकि वे किसी देश/इलाके या कई देशों/इलाकों के एंडपॉइंट का इस्तेमाल कर सकें.

Cloud Firestore क्लाइंट लाइब्रेरी का इस्तेमाल करते समय, इनमें से किसी भी एंडपॉइंट का इस्तेमाल किया जा सकता है:

  • ग्लोबल एंडपॉइंट: डिफ़ॉल्ट रूप से, Cloud Firestore क्लाइंट लाइब्रेरी, एपीआई अनुरोधों को firestore.googleapis.com नाम वाले ग्लोबल सर्विस एंडपॉइंट पर भेजती हैं. ग्लोबल सर्विस एंडपॉइंट, अनुरोध को आपके डेटाबेस पर भेजता है. राउटिंग के दौरान, अनुरोध किसी ऐसे सर्वर से होकर गुज़र सकता है जो आपके डेटाबेस की जगह से अलग हो.

  • क्षेत्रीय एंडपॉइंट: क्षेत्रीय एंडपॉइंट, पाबंदियां लागू करता है. इससे यह पक्का किया जाता है कि डेटा को किसी तय Google Cloud क्षेत्र में ट्रांसमिट, सेव, और प्रोसेस किया जाए. यह पक्का करने के लिए कि सेवा का एंडपॉइंट, आपके ऐप्लिकेशन के Cloud Firestore अनुरोधों को उसी इलाके में प्रोसेस करे जहां आपका डेटाबेस है, क्लाइंट लाइब्रेरी में क्षेत्रीय एंडपॉइंट तय करें.

  • मल्टी-रीजनल एंडपॉइंट: मल्टी-रीजनल एंडपॉइंट, पाबंदियां लागू करता है. इससे यह पक्का किया जाता है कि डेटा को तय किए गए मल्टी-रीजन में सेव और प्रोसेस किया जाए. यह पक्का करने के लिए कि सेवा का एंडपॉइंट, आपके ऐप्लिकेशन के Cloud Firestore अनुरोधों को उसी मल्टी-रीजन में प्रोसेस करे जिसमें आपका डेटाबेस है, क्लाइंट लाइब्रेरी में मल्टी-रीजनल एंडपॉइंट तय करें.

क्षेत्रीय या मल्टी-रीजनल एंडपॉइंट सेट करना

किसी रीजनल या मल्टी-रीजनल एंडपॉइंट को कॉन्फ़िगर करने का तरीका एक जैसा होता है: क्लाइंट लाइब्रेरी को शुरू करते समय, एंडपॉइंट स्ट्रिंग दी जाती है. यहां दिए गए उदाहरणों में, रीजनल एंडपॉइंट (firestore.us-central1.rep.googleapis.com) का इस्तेमाल करके, एंडपॉइंट स्ट्रिंग सेट करने का तरीका बताया गया है. मल्टी-रीजनल एंडपॉइंट का इस्तेमाल करने के लिए, अपने डेटाबेस की जगह के हिसाब से मल्टी-रीजनल एंडपॉइंट स्ट्रिंग दें. उदाहरण के लिए, nam5 के लिए firestore.us.rep.googleapis.com.

Java


import com.google.auth.oauth2.GoogleCredentials;
import com.google.cloud.firestore.Firestore;
import com.google.cloud.firestore.FirestoreOptions;


/**
 * Demonstrate how to set a regional endpoint.
 */
public class RegionalEndpointSnippets {

  /**
   * Create a client with a regional endpoint.
   **/
  public Firestore regionalEndpoint(String projectId, String endpoint) throws Exception {
    FirestoreOptions firestoreOptions =
        FirestoreOptions.newBuilder()
            .setProjectId(projectId)
            .setCredentials(GoogleCredentials.getApplicationDefault())
            // set endpoint like firestore.us-central1.rep.googleapis.com:443
            .setHost(endpoint)
            .build();
    Firestore dbWithEndpoint = firestoreOptions.getService();

    return dbWithEndpoint;
  }

}

Python

ENDPOINT = "firestore.africa-south1.rep.googleapis.com"
client_options = ClientOptions(api_endpoint=ENDPOINT)
db = firestore.Client(client_options=client_options)

cities_query = db.collection("cities").limit(2).get()
for r in cities_query:
    print(r)

रीजनल और मल्टीरीजनल एंडपॉइंट के सिमैंटिक

क्षेत्रीय एंडपॉइंट (आरईपी):

Cloud Firestore, यहां दी गई जगहों के लिए रीजनल एंडपॉइंट इस्तेमाल करता है Cloud Firestore जगहें.

रीजनल एंडपॉइंट तय करने के लिए, इस फ़ॉर्मैट का इस्तेमाल करें:

Java

  firestore.REGION_NAME.rep.googleapis.com:443

पक्का करें कि एंडपॉइंट के साथ पोर्ट नंबर भी तय किया गया हो.

Python

  firestore.REGION_NAME.rep.googleapis.com

जाएं

  firestore.REGION_NAME.rep.googleapis.com:443

पक्का करें कि एंडपॉइंट के साथ पोर्ट नंबर भी तय किया गया हो.

REGION_NAME की जगह, किसी क्षेत्रीय होस्टनेम का नाम डालें.

होस्टनेम के कुछ उदाहरण यहां दिए गए हैं:

  • firestore.us-central1.rep.googleapis.com
  • firestore.europe-west1.rep.googleapis.com

एक से ज़्यादा क्षेत्रों के एंडपॉइंट (एमआरईपी)

कई देशों/इलाकों के लिए उपलब्ध एंडपॉइंट के लिए, us का इस्तेमाल जगहों nam5 और nam7 के लिए करें. साथ ही, eu का इस्तेमाल जगह eur3 के लिए करें (कई देशों/इलाकों के लिए उपलब्ध जगहें देखें).

Java

  firestore.us.rep.googleapis.com:443
  firestore.eu.rep.googleapis.com:443

पक्का करें कि एंडपॉइंट के साथ पोर्ट नंबर भी तय किया गया हो.

Python

  firestore.us.rep.googleapis.com
  firestore.eu.rep.googleapis.com

जाएं

  firestore.us.rep.googleapis.com:443
  firestore.eu.rep.googleapis.com:443

पक्का करें कि एंडपॉइंट के साथ पोर्ट नंबर भी तय किया गया हो.

सीमाएं

जगह की जानकारी वाले एंडपॉइंट (अब सेवा में नहीं हैं)

जगह की जानकारी वाले एंडपॉइंट अब काम नहीं करते. इसके बजाय, किसी इलाके या कई इलाकों के लिए उपलब्ध एंडपॉइंट का इस्तेमाल करें.

Cloud Firestore पहले, जगह की जानकारी देने वाले एंडपॉइंट के साथ काम करता था. इसका फ़ॉर्मैट यह था:

Java

  REGION_NAME-firestore.googleapis.com:443

पक्का करें कि एंडपॉइंट के साथ पोर्ट नंबर भी तय किया गया हो.

Python

  REGION_NAME-firestore.googleapis.com

जाएं

  REGION_NAME-firestore.googleapis.com:443

पक्का करें कि एंडपॉइंट के साथ पोर्ट नंबर भी तय किया गया हो.

REGION_NAME की जगह, किसी देश/इलाके या कई देशों/इलाकों में उपलब्ध होस्टनेम का नाम डालें.

होस्टनेम के कुछ उदाहरण यहां दिए गए हैं:

  • eur3-firestore.googleapis.com
  • nam5-firestore.googleapis.com
  • europe-west6-firestore.googleapis.com
  • asia-northeast2-firestore.googleapis.com

एक से ज़्यादा देशों/इलाकों और किसी देश/इलाके के हिसाब से होस्टनेम की पूरी सूची देखने के लिए, Cloud Firestore लोकेशन पर जाएं.

ग्लोबल एपीआई एंडपॉइंट के इस्तेमाल पर पाबंदी लगाना

क्षेत्रीय और एक से ज़्यादा क्षेत्रों के एंडपॉइंट के इस्तेमाल को लागू करने के लिए, constraints/gcp.restrictEndpointUsage संगठन की नीति से जुड़ी पाबंदी का इस्तेमाल करें. इससे ग्लोबल एपीआई एंडपॉइंट के अनुरोधों को ब्लॉक किया जा सकेगा. ज़्यादा जानकारी के लिए, एंडपॉइंट के इस्तेमाल पर पाबंदी लगाना लेख पढ़ें.