What ML feature stores require and how ScyllaDB fits in as fast, scalable online feature store এই ব্লগ পোস্টে, আমরা রিয়েল টাইম মেশিন লার্নিং (এমএল) অ্যাপ্লিকেশনগুলিতে ফিচার স্টোরের ভূমিকা এবং কেন ScyllaDB অনলাইন ফিচার সার্ভিংয়ের জন্য একটি শক্তিশালী পছন্দগুলি খুঁজে বের করব। আমরা ফিচারগুলির মৌলিক বিষয়গুলি, ফিচার স্টোরগুলি কীভাবে কাজ করে, তাদের সুবিধাগুলি, বিভিন্ন ওয়ার্ক লোড প্রয়োজনীয়তাগুলি এবং কিভাবে ল্যাটেনশন ML অ্যাপ্লিকেশনগুলিতে একটি গুরুত্বপূর্ণ ভূমিকা পালন করে। মেশিন শেখার একটি বৈশিষ্ট্য কি? একটি বৈশিষ্ট্য একটি পরিমাপযোগ্য বৈশিষ্ট্য যা একটি মেশিন লার্নিং মডেল প্রশিক্ষণ বা সেবা করার জন্য ব্যবহৃত হয়. বৈশিষ্ট্যগুলি কাঁচা ডেটা পয়েন্ট বা কাঁচা ডেটা থেকে উত্পাদিত প্রকৌশলিত মান হতে পারে. উদাহরণস্বরূপ, একটি সামাজিক মিডিয়া অ্যাপ্লিকেশন যেমন ShareChat, বৈশিষ্ট্যগুলি অন্তর্ভুক্ত করতে পারে: গত ১০ মিনিটে পছন্দের সংখ্যা গত সাত দিনে শেয়ারের সংখ্যা পোস্টের বিষয় ইমেজ ক্রেডিট: ইভান বার্মিস্ট্রোভ এবং অ্যান্ড্রেই ম্যানাকোভ (ShareChat) এই ডাটা পয়েন্টগুলি ব্যবহারকারীর অঙ্গীকার বা সামগ্রী সুপারিশের মতো ফলাফল পূর্বাভাস করতে সহায়তা করে। একটি বৈশিষ্ট্য ভেক্টর কেবলমাত্র একটি নির্দিষ্ট পূর্বাভাসকৃত কাজ সম্পর্কিত বৈশিষ্ট্যগুলির একটি সংগ্রহ। প্রাসঙ্গিক ডেটা পয়েন্ট নির্বাচন এবং তাদের বৈশিষ্ট্যগুলিতে রূপান্তর করা মেশিন লার্নিং প্রকল্পগুলিতে কাজের একটি উল্লেখযোগ্য অংশ নেয়. এটি বৈশিষ্ট্যগুলি উন্নত এবং অপ্টিমাইজ করার একটি চলমান প্রক্রিয়া যাতে প্রশিক্ষিত মডেলটি সময়ের সাথে সাথে আরো সঠিক হয়। বড় আর্কিটেক্টর বৈশিষ্ট্যগুলির সাথে কার্যকরভাবে কাজ করার জন্য, আপনি আপনার সংস্থার মধ্যে উপলব্ধ বৈশিষ্ট্যগুলি পরিচালনা করার জন্য একটি কেন্দ্রীয় অবস্থান তৈরি করতে পারেন। নতুন বৈশিষ্ট্য তৈরি করার জন্য একটি স্ট্যান্ডার্ড প্রক্রিয়া সহজ অ্যাক্সেসের জন্য বৈশিষ্ট্যগুলির স্টোরেজ টিমগুলির মধ্যে বৈশিষ্ট্যগুলি আবিষ্কার এবং পুনরায় ব্যবহার মডেল প্রশিক্ষণ এবং অনুমান উভয় জন্য বৈশিষ্ট্য সেবা বেশিরভাগ আর্কিটেকচার দুটি স্টোর / ডাটাবেসের মধ্যে পার্থক্য করে: মডেল প্রশিক্ষণের জন্য অফলাইন দোকান (বুলক লিখে / পড়া) অনুমানের জন্য অনলাইন দোকান (প্রাসঙ্গিক সময়, নিম্ন দীর্ঘস্থায়ী লিখা / পড়া) একটি সাধারণ বৈশিষ্ট্য স্টোর পাইপলাইন (ডাটা লেক বা স্টোর থেকে) কাঁচা ডেটা অন্তর্ভুক্ত করে, বৈশিষ্ট্য প্রকৌশল পরিচালনা করে, উভয় স্টোরে বৈশিষ্ট্যগুলি সংরক্ষণ করে এবং তারপর দুটি আলাদা পাইপলাইনের মাধ্যমে তাদের সেবা করে: একটি প্রশিক্ষণের জন্য এবং একটি অনুমানের জন্য। একটি কেন্দ্রীয় বৈশিষ্ট্য স্টোর সুবিধা কেন্দ্রীয় বৈশিষ্ট্য দোকানগুলি কয়েকটি সুবিধা প্রদান করে: দ্বৈততা এড়ানো: টিমগুলি বিদ্যমান বৈশিষ্ট্যগুলি পুনরায় ব্যবহার করতে পারে স্ব-সার্ভে অ্যাক্সেস: ডেটা বিজ্ঞানীরা স্বাধীনভাবে বৈশিষ্ট্যগুলি উত্পাদন এবং অনুরোধ করতে পারে ইউনিফাইড পাইপলাইন: যদিও প্রশিক্ষণ এবং অনুমান কাজ লোডগুলি অত্যন্ত আলাদা, তারা এখনও একই অনুমান স্তর ব্যবহার করে অনুসন্ধান করা যেতে পারে এই ফলাফল দ্রুত iteration, আরো সংশ্লিষ্টতা, এবং ML ওয়ার্কফ্লোগুলিতে ভাল সহযোগিতা। বৈশিষ্ট্য দোকানে বিভিন্ন ওয়ার্ক লোড চলুন একটি বৈশিষ্ট্য স্টোরের মধ্যে দুটি খুব আলাদা ওয়ার্কলোড প্রয়োজনীয়তাগুলি ভেঙে ফেলি: মডেল প্রশিক্ষণ এবং বাস্তব সময়ের অনুমান। 1. মডেল প্রশিক্ষণ (offline দোকান) পূর্বাভাস করার জন্য আপনাকে প্রথমে একটি মেশিন লার্নিং মডেল প্রশিক্ষণ করতে হবে. প্রশিক্ষণ একটি বড় এবং উচ্চ মানের ডেটা সেট প্রয়োজন. আপনি এই ডেটা সেটটি একটি অফলাইন ফিচার স্টোরে সংরক্ষণ করতে পারেন. এখানে মডেল প্রশিক্ষণ কাজ লোডের জন্য কোন বৈশিষ্ট্যগুলি সবচেয়ে গুরুত্বপূর্ণ: দীর্ঘস্থায়ীতা: একটি অগ্রাধিকার নয় ভলিউম: উচ্চ (মিলিয়ন থেকে বিলিয়ন রেকর্ড) ফ্রিকোয়েন্সি: বিরল, পরিকল্পিত কাজ উদ্দেশ্য: একটি বড় অংশ ঐতিহাসিক তথ্য পুনরুদ্ধার মূলত, অফলাইন দোকানগুলি বিশাল ডেটা সেটগুলি কার্যকরভাবে সঞ্চয় করতে হবে। 2. রিয়েল টাইম ইনফারেন্স (ইন্টারনেট স্টোর) একবার আপনি একটি মডেল প্রস্তুত আছে, আপনি বাস্তব সময়ে অনুমান চালানো যেতে পারে. বাস্তব সময়ে অনুমান ব্যবহারকারী দ্বারা প্রদত্ত ইনপুট গ্রহণ করে এবং এটি একটি পূর্বাভাসে রূপান্তর. এখানে কোন বৈশিষ্ট্যগুলি বাস্তব সময়ের অনুমানের জন্য সবচেয়ে গুরুত্বপূর্ণ: দীর্ঘস্থায়ীতা: উচ্চ অগ্রাধিকার ভলিউম: প্রতি অনুরোধে কম কিন্তু উচ্চ পারফরম্যান্স (প্রায় মিলিয়ন অপারেশন / সেকেন্ড) ফ্রিকোয়েন্সি: স্থিতিশীল, ব্যবহারকারীর ক্রিয়াকলাপ (উদাহরণস্বরূপ, খাবার অর্ডার করা) উদ্দেশ্য: দ্রুত পূর্বাভাসের জন্য আপডেট বৈশিষ্ট্যগুলি পরিষেবা উদাহরণস্বরূপ, একটি খাদ্য ডেলিভারি অ্যাপ্লিকেশন বিবেচনা করুন. ব্যবহারকারীর সাম্প্রতিক ক্যারি সামগ্রী, বয়স এবং অবস্থান বৈশিষ্ট্যগুলিতে রূপান্তরিত হতে পারে এবং অবিলম্বে ক্রয় করার জন্য অন্যান্য আইটেমগুলি সুপারিশ করতে ব্যবহার করা যেতে পারে. এটি বাস্তব সময় অনুমানের প্রয়োজন হবে - এবং দেরি ব্যবহারকারীর অভিজ্ঞতা তৈরি করে বা ভাঙে। ল্যাটেনশন কেন গুরুত্বপূর্ণ দেরি (এই নিবন্ধের প্রেক্ষাপটে) একটি অনুরোধ পাঠানোর এবং বৈশিষ্ট্য স্টোর থেকে প্রতিক্রিয়া প্রাপ্তির মধ্যে সময় উল্লেখ করে. রিয়েল টাইম এমএল অ্যাপ্লিকেশনগুলির জন্য - বিশেষ করে ব্যবহারকারীর মুখোমুখি অ্যাপ্লিকেশনগুলির জন্য - কম দেরি সফলতার জন্য গুরুত্বপূর্ণ। একটি ব্যবহারকারীকে চেকআউটের সময় সম্পর্কিত খাদ্য পণ্যগুলি প্রদর্শিত হয়। যদি এই পরামর্শটি একটি ধীর অনলাইন দোকানের কারণে লোড করার জন্য খুব দীর্ঘ সময় লাগে তবে সুযোগটি হারিয়ে যায়। সর্বশেষ ডাটা সংগ্রহ প্রয়োজনীয় বৈশিষ্ট্য অনুপস্থিতি চলছে একটি পূর্বাভাস ফেরত কয়েক মিনিটের মধ্যেই এটা ঘটতে পারে। একটি বৈশিষ্ট্য স্টোর সমাধান নির্বাচন একবার আপনি একটি বৈশিষ্ট্য স্টোর তৈরি করার সিদ্ধান্ত নিয়েছেন, আপনি দ্রুত খুঁজে পাবেন যে উভয় উন্মুক্ত কোড এবং বাণিজ্যিক উভয় ফ্রেমওয়ার্ক এবং সরবরাহকারী রয়েছে যা নির্বাচন করতে পারেন: Feast (আপেন সোর্স): নমনীয় ডাটাবেস সমর্থন প্রদান করে (যেমন, Postgres, Redis, Cassandra, ScyllaDB) Hopsworks: ঘনিষ্ঠভাবে তার নিজস্ব ইকো সিস্টেম সঙ্গে সংযুক্ত AWS SageMaker: AWS স্ট্যাকের সাথে সংযুক্ত (যেমন, S3, DynamoDB) আর বহু অন্যান্য কোনটি সেরা? আপনার টিমের প্রযুক্তিগত দক্ষতা, দীর্ঘস্থায়ী প্রয়োজনীয়তা এবং আপনার বিদ্যমান স্ট্যাকের সাথে প্রয়োজনীয় ইন্টিগ্রেশনগুলির মতো কারণগুলি সব একটি ভূমিকা পালন করে। আপনি যদি আপনার অনলাইন বৈশিষ্ট্য স্টোরের স্কেলযোগ্যতা এবং কর্মক্ষমতা সম্পর্কে উদ্বিগ্ন হন তবে ডাটাবেসের নমনীয়তা একটি গুরুত্বপূর্ণ বিবেচনা হওয়া উচিত। এমন কিছু বৈশিষ্ট্য স্টোর রয়েছে (যেমন AWS SageMaker, GCP Vertex, Hopsworks ইত্যাদি) যা তাদের নিজস্ব ডাটাবেস প্রযুক্তি সরবরাহ করে অনলাইন স্টোর হিসাবে। একটি কঠোর P99 দীর্ঘস্থায়ী প্রয়োজনীয়তা (উদাহরণস্বরূপ, <15ms P99) সঙ্গে এই ধরনের একটি সরবরাহকারী নির্বাচন করার কল্পনা করুন। প্রয়োজনীয়তা সফলভাবে ধারণা প্রমাণ (POC) সময় পূরণ করা হয়. কিন্তু পরে আপনি দীর্ঘস্থায়ী উচ্চতায় অভিজ্ঞতা - সম্ভবত কারণ আপনার প্রয়োজনীয়তা পরিবর্তন বা আপনার অ্যাপ্লিকেশনে নতুন ব্যবহারকারীদের একটি বৃদ্ধি বা অন্য কিছু অনিশ্চিত কারণ আছে. আপনি খরচ সঞ্চয় করার জন্য অন্য একটি অনলাইন স্টোর ডাটাবেস ব্যাকেন্ডে পরিবর্তন করতে চান. সমস্যা হল আপনি করতে পারবেন না ... অন্তত সহজে না. আপনি ভিত্তিক সমাধানের সাথে আটকে আছেন. এটি আপনার আর্কিটেকচারের শুধুমাত্র অনলাইন দোকান অংশ থেকে স্থানান্তর করা অসম্ভব কারণ সবকিছু লক করা হয়। আপনি যদি এই পরিস্থিতিগুলি এড়াতে চান তবে আপনি সরঞ্জামগুলি খুঁজে পেতে পারেন যা অফলাইন এবং অনলাইন স্টোর ব্যাকেন্ডের বিষয়ে নমনীয়। Feast বা FeatureForm মত সরঞ্জামগুলি আপনাকে আপনার নিজস্ব ডাটাবেস ব্যাকেন্ড নিয়ে আসতে দেয়, উভয় অনলাইন এবং অফলাইন স্টোর জন্য। ScyllaDB একটি অনলাইন বৈশিষ্ট্য স্টোর হিসাবে ScyllaDB একটি উচ্চ পারফরম্যান্স NoSQL ডাটাবেস যা API Apache Cassandra এবং DynamoDB API সঙ্গে সামঞ্জস্যপূর্ণ। এবং অন্তর্ভুক্ত , এটি নিম্ন দীর্ঘস্থায়ী, উচ্চ প্রবাহ বৈশিষ্ট্য স্টোর অ্যাপ্লিকেশন জন্য আদর্শ করে তোলে। shard-per-core আর্কিটেকচার অন্তর্ভুক্ত ক্যাশ সিস্টেম কেন ScyllaDB? কম ল্যাটেনশন (এক ডিগ্রী মিলিসেকেন্ড P99 কর্মক্ষমতা) উচ্চ উপলব্ধতা এবং প্রতিরোধের উচ্চ পরিমাপ (Petabyte-scale deployments) কোন বিক্রেতা লক-ইন (on-prem বা কোনও মেঘে কাজ করে) বর্তমান Cassandra / DynamoDB সেটিংসের জন্য ড্রপ-ইন প্রতিস্থাপন অন্যান্য NoSQL ডাটাবেস থেকে সহজ মাইগ্রেশন (Cassandra, DynamoDB, MongoDB, ইত্যাদি) Feature Store Framework Feast এর সাথে ইন্টিগ্রেশন ScyllaDB অনলাইন বৈশিষ্ট্য স্টোর ব্যবহারের ক্ষেত্রে উজ্জ্বল যেখানে বাস্তব সময়ের কর্মক্ষমতা, উপলব্ধতা এবং দেরি পূর্বাভাসযোগ্যতা গুরুত্বপূর্ণ। ScyllaDB + ফেস্ট ইন্টিগ্রেশন Feast একটি জনপ্রিয় ওপেন সোর্স বৈশিষ্ট্য দোকান ফ্রেমওয়ার্ক যা অনলাইন এবং অফলাইন দোকানগুলি সমর্থন করে. এর শক্তিগুলির মধ্যে একটি হল আপনার নিজস্ব ডাটাবেস উত্সগুলি অন্তর্ভুক্ত করার ক্ষমতা, ScyllaDB সহ। . ডকুমেন্টে ScyllaDB + Feast ইন্টিগ্রেশন একটি বৈশিষ্ট্য স্টোর টিউটোরিয়াল দিয়ে শুরু করুন আপনার অনলাইন বৈশিষ্ট্য দোকান হিসাবে ScyllaDB ব্যবহার করার চেষ্টা করতে চান? আমাদের টিউটোরিয়ালগুলি দেখুন যা আপনাকে একটি ScyllaDB ক্লাস্টার তৈরি এবং একটি বাস্তব সময়ের অনুমান অ্যাপ্লিকেশন তৈরি করার প্রক্রিয়াটি পরিচালনা করে। টিউটোরিয়াল: ScyllaDB সঙ্গে মূল্য পূর্বাভাস অনুমান অ্যাপ্লিকেশন টিউটোরিয়াল: Feast & ScyllaDB সঙ্গে রিয়েল টাইম অ্যাপ্লিকেশন Feast + ScyllaDB ইন্টিগ্রেশন GitHub: ScyllaDB একটি বৈশিষ্ট্য স্টোর কোড উদাহরণ আপনার কোন প্রশ্ন আছে বা এটি সেট আপ করতে সাহায্য করতে চান? ! ফোরামে একটি পোস্ট আমি শুধু একটি ডেভেলপার ওয়ার্কশপ সম্পন্ন Feast রক্ষক, Francisco Javier Arceo সঙ্গে: আপনি এখন চাহিদা অনুযায়ী এটি দেখতে পারেন। Update: Python, Feast & NoSQL সঙ্গে রিয়েল-টাইম ML অ্যাপ্লিকেশন তৈরি করুন