ফায়ারস্টোর পাইপলাইন অপারেশন হল ফায়ারস্টোর এন্টারপ্রাইজ সংস্করণের একটি কেন্দ্রীয় বৈশিষ্ট্য, যা সম্ভাব্য প্রশ্নের পরিসর উল্লেখযোগ্যভাবে প্রসারিত করার জন্য একটি নতুন কোয়েরি ইঞ্জিনের উপর নির্মিত। ফায়ারস্টোর পাইপলাইন অপারেশনগুলি একটি নমনীয় কোয়েরি সিনট্যাক্স এবং একটি স্বতন্ত্র সূচীকরণ পদ্ধতি ব্যবহার করে যেখানে সূচীকরণগুলি ঐচ্ছিক এবং স্বয়ংক্রিয়ভাবে তৈরি হয় না, যা অ্যাপ্লিকেশনগুলির জন্য উন্নত ডেটা পুনরুদ্ধার ক্রিয়াকলাপ সক্ষম করে।
ফায়ারস্টোর পাইপলাইন পরিচালনার বৈশিষ্ট্য
ফায়ারস্টোর এন্টারপ্রাইজ সংস্করণ এবং নতুন পাইপলাইন অপারেশনগুলিতে একটি নতুন, উন্নত কোয়েরি ইঞ্জিন ব্যবহার করা হয়েছে যা ফায়ারস্টোর স্ট্যান্ডার্ড সংস্করণের অনেক বিদ্যমান সীমাবদ্ধতা দূর করে। ফায়ারস্টোর পাইপলাইন অপারেশনগুলিতে ১২০+ নতুন কোয়েরি বৈশিষ্ট্য রয়েছে। ফায়ারস্টোর পাইপলাইন অপারেশনগুলিতে নিম্নলিখিত ক্ষমতা রয়েছে:
পর্যায়-ভিত্তিক কম্পোজেবল সিনট্যাক্স
পাইপলাইন কোয়েরিগুলি ধারাবাহিক পর্যায়ের একটি সিরিজ সংজ্ঞায়িত করে তৈরি করা হয় যা ক্রমানুসারে সম্পাদিত হয়। এটি জটিল ক্রিয়াকলাপের জন্য অনুমতি দেয়, যেমন একটি সমষ্টির ফলাফলের উপর ফিল্টারিং, যা আগে সম্ভব ছিল না।
নিম্নলিখিত উদাহরণে একটি পাইপলাইন কোয়েরি দেখানো হয়েছে যা গত মাসে দেখা অনন্য পণ্য আইডির সংখ্যা খুঁজে বের করে:
guard let cutoffDate = Calendar.current.date(byAdding: .month, value: -1, to: Date()) else {
return
}
let snapshot = try await db.pipeline()
.collection("productViews")
.where(Field("viewedAt").greaterThan(cutoffDate.timeIntervalSince1970))
.aggregate([Field("productId").countDistinct().as("uniqueProductViews")])
.execute()
বর্ধিত ক্ষমতা
পাইপলাইনস কোয়েরি বিপুল সংখ্যক নতুন ক্ষমতার পরিচয় করিয়ে দেয়, যার মধ্যে রয়েছে:
- সমষ্টি: নতুন সমষ্টি ফাংশন (যেমন
sum(...),min(...), এবংcount_distinct(...)) এর সাথে নির্বিচারে গ্রুপিং ফিল্ডের জন্য সমর্থন। - জটিল ফিল্টারিং: ১২০+ নতুন ফাংশনের জন্য সমর্থন যা ইচ্ছামত জটিল
where(...)স্টেটমেন্ট প্রকাশ করতে পারে, যার মধ্যে রয়েছেregex_match(...),add(...)এবংstr_contains(...), সবই হার্ড ইনডেক্স প্রয়োজনীয়তা ছাড়াই। - আংশিক পঠন / অনুমান:
select(...),remove_fields(...), এবং অন্যান্য অনেক ডকুমেন্ট ম্যানিপুলেশন পর্যায় ব্যবহার করে ডকুমেন্টের গতিশীল উপসেটগুলি পুনরুদ্ধার করুন।
রিয়েলটাইম এবং অফলাইন সাপোর্ট
রিয়েলটাইম এবং অফলাইন ব্যবহার করার জন্য, ডেভেলপাররা ফায়ারস্টোর এন্টারপ্রাইজ সংস্করণে ফায়ারস্টোর কোর অপারেশন ব্যবহার করতে পারেন।
ক্লায়েন্ট এবং টুলিং ইন্টিগ্রেশন
এন্টারপ্রাইজ সংস্করণে পাইপলাইন কোয়েরিগুলির সাথে ইন্টারঅ্যাক্ট এবং পরিচালনা করার জন্য বিশেষ বৈশিষ্ট্যগুলি অন্তর্ভুক্ত রয়েছে:
- কোয়েরি ব্যাখ্যা এবং প্রোফাইলিং: আপনি কোয়েরি ব্যাখ্যা ফলাফল ব্যবহার করে একটি কোয়েরি কতগুলি পঠন বা লেখার ইউনিট ব্যবহার করে তা বুঝতে এবং এর সম্পাদন বিশ্লেষণ করতে পারেন।
- কোয়েরি ইনসাইট: এন্টারপ্রাইজ সংস্করণটি কোয়েরি ইনসাইটস সমর্থন করে যা আপনাকে কোয়েরি পারফরম্যান্স বৈশিষ্ট্যগুলিতে দৃশ্যমানতা প্রদান করে কর্মক্ষমতা এবং খরচ উন্নত করার জন্য কোথায় সূচক তৈরি করা যেতে পারে তা নির্ধারণ করতে সহায়তা করে।
- নতুন সূচকের ধরণ: আপনি এন্টারপ্রাইজ সংস্করণের জন্য বিশেষায়িত সূচক তৈরি করতে পারেন, যার মধ্যে স্পার্স সূচকও অন্তর্ভুক্ত। এটি এন্টারপ্রাইজ ডাটাবেসের জন্য ভেক্টর অনুসন্ধান সূচক তৈরি এবং সম্পাদনা সমর্থন করে।
ফায়ারস্টোর স্ট্যান্ডার্ড এবং ফায়ারস্টোর এন্টারপ্রাইজের মধ্যে পার্থক্য
কোর এবং পাইপলাইন অপারেশনের মধ্যে প্রধান কর্মক্ষম পার্থক্য হল ইনডেক্সিং ব্যবস্থাপনা, যা সরাসরি কর্মক্ষমতা এবং খরচকে প্রভাবিত করে।
| ফায়ারস্টোর স্ট্যান্ডার্ড - মূল কার্যক্রম | ফায়ারস্টোর এন্টারপ্রাইজ - মূল এবং পাইপলাইন অপারেশন | |
| ইনডেক্সিং প্রয়োজনীয়তা | প্রশ্নের জন্য সূচী প্রয়োজন। পৃথক ক্ষেত্রের জন্য সূচী স্বয়ংক্রিয়ভাবে তৈরি হয়, যখন আরও জটিল প্রশ্নগুলি যৌগিক সূচী বা সংগ্রহ গোষ্ঠী সূচীর উপর নির্ভর করে যা ম্যানুয়ালি কনফিগার করতে হবে। | সূচীপত্রের প্রয়োজন নেই, এবং তাই প্রশ্নের জন্য ঐচ্ছিক। আপনি প্রয়োজন অনুসারে সূচকগুলি সংজ্ঞায়িত করেন। এন্টারপ্রাইজ সংস্করণটি নন-স্পার্স/স্পার্স এবং ইউনিক সূচক সহ বিস্তৃত ধরণের সূচককেও সমর্থন করে। |
| কর্মক্ষমতা ঝুঁকি | সূচীবদ্ধ প্রশ্ন: আপনার ফলাফল সেটের আকারের সাথে কর্মক্ষমতা এবং খরচের স্কেল। | আনইনডেক্সড কোয়েরি: আপনার ডেটাসেটের আকারের সাথে পারফরম্যান্স এবং খরচের স্কেল। সূচীবদ্ধ প্রশ্ন: আপনার ফলাফল সেটের আকারের সাথে কর্মক্ষমতা এবং খরচের স্কেল। আমরা সূচী তৈরি করতে এবং আপনার প্রশ্নের কর্মক্ষমতা এবং খরচ উন্নত করতে Query Explain এবং Query Insights টুল ব্যবহার করার পরামর্শ দিচ্ছি। |
| স্টোরেজ খরচের প্রভাব | স্বয়ংক্রিয় সূচক এবং যৌগিক সূচক থেকে আপনার স্টোরেজ ওভারহেড খরচ হয়। | প্রতিটি ক্ষেত্রের জন্য সূচী স্বয়ংক্রিয়ভাবে তৈরি হয় না বলে আপনি স্টোরেজ খরচ বাঁচান। |
| খরচের ভিত্তি | প্রতিটি ডকুমেন্ট পড়া , লেখা এবং মুছে ফেলার জন্য চার্জ করা হবে। | প্রতি রিড ইউনিট (৪ কেবি ট্রাঞ্চ) এবং লেখার ইউনিট (১ কেবি ট্রাঞ্চ) প্রতি চার্জ করা হয়। লেখার সূচক এন্ট্রিগুলি লেখার ইউনিট ব্যবহার করে। কিছু উদাহরণ সহ নতুন মূল্য সম্পর্কে জানুন। |
| নিরাপত্তা বিধি | নিরাপত্তা বিধিগুলি পঠন/লেখার অনুমতি যাচাই করে সংগ্রহগুলিকে সুরক্ষিত করে। | সুরক্ষা বিধিগুলি পঠন/লেখার অনুমতি যাচাই করে সংগ্রহগুলিকে সুরক্ষিত করে। ডেটা মডেল গাইডে পাইপলাইন কোয়েরিগুলিকে সমর্থন করার জন্য আপনার ডেটা কীভাবে মডেল করবেন তা শিখুন। |