আঞ্চলিক এন্ডপয়েন্টের মাধ্যমে ডেটা লোকালিটি কনফিগার করা

এই পৃষ্ঠায় বর্ণনা করা হয়েছে যে কীভাবে Cloud Firestore ক্লায়েন্ট লাইব্রেরি কনফিগার করতে হয় যাতে আঞ্চলিক বা মাল্টি-রিজিওনাল এন্ডপয়েন্ট ব্যবহার করা যায়।

আপনি Cloud Firestore ক্লায়েন্ট লাইব্রেরি ব্যবহার করলে, নিম্নলিখিত এন্ডপয়েন্টের যেকোনও একটি ব্যবহার করতে পারবেন:

  • গ্লোবাল এন্ডপয়েন্ট: ডিফল্ট হিসেবে, Cloud Firestore ক্লায়েন্ট লাইব্রেরি firestore.googleapis.com নামের গ্লোবাল সার্ভিস এন্ডপয়েন্টে API অনুরোধ পাঠায়। গ্লোবাল সার্ভিস এন্ডপয়েন্ট আপনার ডেটাবেসে অনুরোধ পাঠায়। রাউটিংয়ের সময়, কোনও অনুরোধ এমন লোকেশনের সার্ভারের মাধ্যমে পাস হতে পারে যা আপনার ডেটাবেসের লোকেশন থেকে আলাদা।

  • রিজিওনাল এন্ডপয়েন্ট: একটি নির্দিষ্ট Google Cloud অঞ্চলে ডেটা ট্রান্সমিট, স্টোর ও প্রসেস করা হচ্ছে কিনা তা নিশ্চিত করতে, রিজিওনাল এন্ডপয়েন্ট বিধিনিষেধ প্রয়োগ করে। পরিষেবা এন্ডপয়েন্ট যাতে আপনার ডেটাবেসের মতো একই অঞ্চলে আপনার অ্যাপের Cloud Firestore অনুরোধ প্রসেস করে তা নিশ্চিত করতে, ক্লায়েন্ট লাইব্রেরিতে একটি আঞ্চলিক এন্ডপয়েন্ট নির্দিষ্ট করুন।

  • মাল্টি-রিজিয়নাল এন্ডপয়েন্ট: মাল্টি-রিজিয়নাল এন্ডপয়েন্ট বিধিনিষেধ প্রয়োগ করে যাতে নির্দিষ্ট মাল্টি-রিজিয়নে ডেটা স্টোর ও প্রসেস করা হয়। পরিষেবা এন্ডপয়েন্ট যাতে আপনার ডেটাবেসের মতো একই মাল্টি-রিজিয়নে আপনার অ্যাপের Cloud Firestore অনুরোধ প্রসেস করে তা নিশ্চিত করতে, ক্লায়েন্ট লাইব্রেরিতে একটি মাল্টি-রিজিয়নাল এন্ডপয়েন্ট উল্লেখ করুন।

আঞ্চলিক বা মাল্টি-রিজিয়নাল এন্ডপয়েন্ট সেট করুন

রিজিয়নাল বা মাল্টি-রিজিয়নাল এন্ডপয়েন্ট কনফিগার করার পদ্ধতি একই: ক্লায়েন্ট লাইব্রেরি শুরু করার সময় আপনি এন্ডপয়েন্ট স্ট্রিং প্রদান করেন। নিম্নলিখিত উদাহরণগুলি দেখায় যে কীভাবে একটি আঞ্চলিক এন্ডপয়েন্ট (firestore.us-central1.rep.googleapis.com) ব্যবহার করে এন্ডপয়েন্ট স্ট্রিং সেট করতে হয়। একটি মাল্টি-রিজিওনাল এন্ডপয়েন্ট ব্যবহার করতে, আপনার ডেটাবেসের লোকেশনের সাথে সম্পর্কিত একটি মাল্টি-রিজিওনাল এন্ডপয়েন্ট স্ট্রিং প্রদান করুন (যেমন, nam5-এর জন্য firestore.us.rep.googleapis.com)।

জাভা


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)

আঞ্চলিক ও মাল্টি-রিজিওনাল এন্ডপয়েন্ট সিম্যান্টিক্স

রিজিওনাল এন্ডপয়েন্ট (REP):

Cloud Firestore এখানে তালিকাভুক্ত আঞ্চলিক লোকেশনের জন্য আঞ্চলিক এন্ডপয়েন্ট সাপোর্ট করে Cloud Firestore লোকেশন।

আঞ্চলিক এন্ডপয়েন্ট নির্ধারণ করতে নিম্নলিখিত ফর্ম্যাট ব্যবহার করুন:

জাভা

  firestore.REGION_NAME.rep.googleapis.com:443

এন্ডপয়েন্টের সাথে পোর্ট নম্বর উল্লেখ করা আছে কিনা তা ভালভাবে দেখে নিন।

Python

  firestore.REGION_NAME.rep.googleapis.com

Go

  firestore.REGION_NAME.rep.googleapis.com:443

এন্ডপয়েন্টের সাথে পোর্ট নম্বর উল্লেখ করা আছে কিনা তা ভালভাবে দেখে নিন।

REGION_NAME-এর জায়গায় কোনও আঞ্চলিক হোস্টনেমের নাম লিখুন।

হোস্টনেমের কিছু উদাহরণ হল:

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

মাল্টি-রিজিওনাল এন্ডপয়েন্ট (MREP)

মাল্টি-রিজিয়নাল এন্ডপয়েন্টের জন্য, nam5 ও nam7 লোকেশনের জন্য us এবং eur3 লোকেশনের জন্য eu ব্যবহার করুন (মাল্টি-রিজিয়নাল লোকেশন দেখুন)।

জাভা

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

এন্ডপয়েন্টের সাথে পোর্ট নম্বর উল্লেখ করা আছে কিনা তা ভালভাবে দেখে নিন।

Python

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

Go

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

এন্ডপয়েন্টের সাথে পোর্ট নম্বর উল্লেখ করা আছে কিনা তা ভালভাবে দেখে নিন।

সীমাবদ্ধতা

লোকেশন এন্ডপয়েন্ট (বন্ধ করা হয়েছে)

লোকেশন এন্ডপয়েন্ট এখন বাতিল করা হয়েছে। পরিবর্তে আঞ্চলিক বা মাল্টি-রিজিওনাল এন্ডপয়েন্ট ব্যবহার করুন।

Cloud Firestore আগে নিম্নলিখিত ফর্ম্যাটে লোকেশন সংক্রান্ত এন্ডপয়েন্ট সাপোর্ট করত:

জাভা

  REGION_NAME-firestore.googleapis.com:443

এন্ডপয়েন্টের সাথে পোর্ট নম্বর উল্লেখ করা আছে কিনা তা ভালভাবে দেখে নিন।

Python

  REGION_NAME-firestore.googleapis.com

Go

  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 লোকেশন দেখুন।

গ্লোবাল API এন্ডপয়েন্টের ব্যবহার সীমাবদ্ধ করুন

আঞ্চলিক এবং বহু-আঞ্চলিক এন্ডপয়েন্টের ব্যবহার এনফোর্স করতে সাহায্য করার জন্য, constraints/gcp.restrictEndpointUsage সংস্থার নীতি সংক্রান্ত সীমাবদ্ধতা ব্যবহার করে গ্লোবাল API এন্ডপয়েন্টে অনুরোধ ব্লক করুন। আরও তথ্যের জন্য, এন্ডপয়েন্ট ব্যবহার সীমাবদ্ধ করা দেখুন।