Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

ক্লাউড ফায়ার স্টোরে সূচিগুলি পরিচালনা করুন

ক্লাউড ফায়ারস্টোর প্রতিটি প্রশ্নের জন্য একটি সূচক প্রয়োজন দ্বারা ক্যোয়ারী কর্মক্ষমতা নিশ্চিত করে। সবচেয়ে মৌলিক প্রশ্নের জন্য প্রয়োজন বোধ করা ইনডেক্স হয় স্বয়ংক্রিয়ভাবে তৈরি আপনার জন্য। আপনি যখন আপনার অ্যাপ ব্যবহার করেন এবং পরীক্ষা করেন, ক্লাউড ফায়ারস্টোর ত্রুটি বার্তা তৈরি করে যা আপনাকে আপনার অ্যাপের অতিরিক্ত সূচী তৈরি করতে সাহায্য করে। এই পৃষ্ঠাটি আপনার পরিচালনা করতে বর্ণনা একক ক্ষেত্র এবং যৌগিক ইনডেক্স।

একটি ত্রুটি বার্তার মাধ্যমে একটি অনুপস্থিত সূচক তৈরি করুন

যদি আপনি একটি পরিসীমা ধারা সহ একটি যৌগিক প্রশ্নের চেষ্টা করেন যা একটি বিদ্যমান সূচকে মানচিত্র করে না, আপনি একটি ত্রুটি পাবেন। ফায়ারবেস কনসোলে অনুপস্থিত সূচী তৈরির জন্য ত্রুটি বার্তায় একটি সরাসরি লিঙ্ক অন্তর্ভুক্ত রয়েছে।

Firebase কনসোলে উত্পন্ন লিঙ্ক অনুসরণ করুন, স্বয়ংক্রিয়ভাবে জনবহুল তথ্য পর্যালোচনা করি, এবং তৈরি করুন এ ক্লিক করুন।

Firebase কনসোল ব্যবহার করুন

ফায়ারবেস কনসোল থেকে ম্যানুয়ালি একটি নতুন সূচক তৈরি করতে:

ফায়ারবেস কনসোলে ফায়ারস্টোর ইনডেক্সিং ইন্টারফেসের ছবি

  1. এর ক্লাউড Firestore বিভাগে যান Firebase কনসোল
  2. ইনডেক্সে ট্যাবে যান এবং ক্লিক করুন ইনডেক্স যুক্ত করো।
  3. সংগ্রহের নাম লিখুন এবং আপনি যে ক্ষেত্রগুলি সূচকটি অর্ডার করতে চান তা সেট করুন।
  4. ক্লিক করুন।

ক্যোয়ারীর আকারের উপর নির্ভর করে সূচকগুলি তৈরি হতে কয়েক মিনিট সময় নিতে পারে। আপনি তাদের তৈরি করার পরে, আপনি আপনার সূচী এবং কম্পোজিট সূচক বিভাগে তাদের অবস্থা দেখতে পারেন। যদি তারা এখনও নির্মাণ করছে, Firebase কনসোলে একটি বিল্ডিং স্ট্যাটাস বার অন্তর্ভুক্ত রয়েছে।

সূচকগুলি সরান

একটি সূচক মুছে ফেলার জন্য:

  1. এর ক্লাউড Firestore বিভাগে যান Firebase কনসোল
  2. ইনডেক্সে ট্যাবে ক্লিক করুন।
  3. সূচক আপনি মুছে ফেলতে এবং প্রসঙ্গ মেনু থেকে মুছে ফেলুন নির্বাচন করতে চান উপরে কার্সার রাখুন।
  4. নিশ্চিত করুন যে আপনি সতর্কতা থেকে মুছে ক্লিক করে এটি মুছে ফেলতে চাই।

Firebase CLI ব্যবহার করুন

এছাড়াও আপনি সঙ্গে ইনডেক্স স্থাপন করতে Firebase CLI । শুরু চালানোর করতে firebase init firestore আপনার প্রকল্পের ডিরেক্টরির মধ্যে। সেটআপ চলাকালীন, ফায়ারবেস CLI একটি JSON ফাইল জেনারেট করে যা সঠিক ফরম্যাটে ডিফল্ট ইনডেক্স থাকে। আরো ইনডেক্স যোগ করতে পারেন এবং সঙ্গে এটি স্থাপন করা সম্পাদনা ফাইল firebase deploy কমান্ড। আপনি শুধুমাত্র ইনডেক্স স্থাপন করতে চান, যোগ --only firestore:indexes পতাকা। আপনি যদি Firebase কনসোল ব্যবহার করে ইনডেক্সে সম্পাদনা করেন, তাহলে নিশ্চিত করুন যে আপনি আপনার স্থানীয় ইন্ডেক্স ফাইলটিও আপডেট করেছেন। পড়ুন তাদেরকে JSON সূচক সংজ্ঞা রেফারেন্স

সূচক তৈরির সময়

একটি সূচক তৈরি করতে, ক্লাউড ফায়ারস্টোরকে অবশ্যই সূচকটি সেট আপ করতে হবে এবং তারপরে বিদ্যমান ডেটা দিয়ে সূচীটি ব্যাকফিল করতে হবে। ইনডেক্স বিল্ড টাইম হল সেটআপ সময় এবং ব্যাকফিল টাইমের সমষ্টি:

  • একটি সূচক সেট আপ করতে কয়েক মিনিট সময় লাগে। একটি সূচকের জন্য সর্বনিম্ন বিল্ড সময় কয়েক মিনিট, এমনকি একটি খালি ডাটাবেসের জন্যও।

  • নতুন ইনডেক্সে কতটা বিদ্যমান ডেটা রয়েছে তার উপর ব্যাকফিল টাইম নির্ভর করে। সূচকের সংজ্ঞার সাথে যত বেশি ক্ষেত্রের মান মিলে যায়, সূচকে ব্যাকফিল করতে তত বেশি সময় লাগে।

ইনডেক্স তৈরী করে দীর্ঘ দৌড়াচ্ছে অপারেশন।

আপনি একটি সূচক নির্মাণ শুরু করার পরে, ক্লাউড ফায়ারস্টোর অপারেশনটিকে একটি অনন্য নাম বরাদ্দ করে। অপারেশন নামের সাথে প্রিফিক্স projects/[PROJECT_ID]/databases/(default)/operations/ , উদাহরণস্বরূপ:

projects/project-id/databases/(default)/operations/ASA1MTAwNDQxNAgadGx1YWZlZAcSeWx0aGdpbi1zYm9qLW5pbWRhEgopEg

যাইহোক, আপনি প্রিফিক্স ছেড়ে যখন একটি অপারেশন নাম উল্লেখ জন্য করতে describe কমান্ড।

দীর্ঘদিন ধরে চলমান সমস্ত ক্রিয়াকলাপের তালিকা

তালিকা দীর্ঘ চলমান অপারেশন করতে, gcloud firestore অপারেশন তালিকা কমান্ড। এই কমান্ড চলমান এবং সম্প্রতি সম্পন্ন অপারেশন তালিকাভুক্ত করে। অপারেশন সমাপ্তির পরে কয়েক দিনের জন্য তালিকাভুক্ত করা হয়:

gcloud firestore operations list

অপারেশনের অবস্থা পরীক্ষা করুন

সমস্ত দীর্ঘস্থায়ী অপারেশন তালিকাভুক্ত করার পরিবর্তে, আপনি একটি একক অপারেশনের বিবরণ তালিকাভুক্ত করতে পারেন:

gcloud firestore operations describe operation-name

সমাপ্তির সময় অনুমান করা

আপনার অপারেশন চালায় হিসাবে, মান দেখতে state ক্ষেত্র অপারেশন সামগ্রিক অবস্থা।

একটি দীর্ঘ চলমান অপারেশন অবস্থা একটি অনুরোধ এছাড়াও বৈশিষ্ট্যের মান ফেরৎ workEstimated এবং workCompleted । এই মেট্রিকগুলি নথির সংখ্যার জন্য ফেরত দেওয়া হয়। workEstimated শো কাগজপত্র একটি অপারেশন প্রক্রিয়া হবে আনুমানিক মোট সংখ্যা। workCompleted শো দস্তাবেজের সংখ্যা এতদূর প্রক্রিয়া করেছি। অপারেশন সম্পূর্ণ হওয়ার পর, workCompleted নথি যে আসলে প্রক্রিয়াভুক্ত করা হয়েছে, যার মধ্যে মান থেকে আলাদা হতে পারে মোট সংখ্যা প্রতিফলিত workEstimated

ডিভাইড workCompleted দ্বারা workEstimated একটা মোটামুটি উন্নতি অনুমান জন্য। অনুমানটি ভুল হতে পারে কারণ এটি বিলম্বিত পরিসংখ্যান সংগ্রহের উপর নির্ভর করে।

উদাহরণস্বরূপ, এখানে একটি সূচক নির্মাণের অগ্রগতি অবস্থা:

{
  "operations": [
    {
      "name": "projects/project-id/operations/AyAyMDBiM2U5NTgwZDAtZGIyYi0zYjc0LTIzYWEtZjg1ZGdWFmZWQHEjF0c2Flc3UtcmV4ZWRuaS1uaW1kYRUKSBI",
      "metadata": {
        "@type": "type.googleapis.com/google.firestore.admin.v1.IndexOperationMetadata",
        "common": {
          "operationType": "CREATE_INDEX",
          "startTime": "2020-06-23T16:52:25.697539Z",
          "state": "PROCESSING"
        },
        "progressDocuments": {
          "workCompleted": "219327",
          "workEstimated": "2198182"
        }
       },
    },
    ...

যখন একটি অপারেশন করা হয় অপারেশন বিবরণ উপস্থিত থাকবে "done": true । মান দেখুন state ক্ষেত্র অপারেশন ফলাফলের জন্য। তাহলে done ক্ষেত্র প্রতিক্রিয়ায় সেট না করা হয়, তাহলে তার মান false । অস্তিত্ব উপর নির্ভর করে না done প্রগতিতে-থাকা অপারেশনের জন্য মান।

সূচক নির্মাণ ত্রুটি

যৌগিক সূচী এবং একক-ক্ষেত্রের সূচক ছাড়ের ব্যবস্থাপনার সময় আপনি সূচক নির্মাণ ত্রুটির সম্মুখীন হতে পারেন। একটি সূচীকরণ অপারেশন ব্যর্থ হতে পারে যদি ক্লাউড ফায়ারস্টোর তার ইনডেক্সিং ডেটা নিয়ে সমস্যার সম্মুখীন হয়। সাধারণভাবে, এর মানে হল আপনি একটি আঘাত সূচক সীমা । উদাহরণস্বরূপ, ক্রিয়াকলাপটি প্রতি নথিতে সর্বাধিক সূচক এন্ট্রিতে পৌঁছে থাকতে পারে।

যদি সূচক তৈরি ব্যর্থ হয়, আপনি কনসোলে ত্রুটি বার্তা দেখতে পাবেন। আপনার যাচাই করার পরে আপনি যে কোনো আঘাত নেই সূচক সীমা , আপনার সূচক অপারেশন পুনরায় চেষ্টা করুন।