আমার কিছু খুব বড় পরিমাণে সময় সিরিজের ডেটা সংরক্ষণ করতে এবং সক্ষম হওয়া দরকার।
ডাটাগুলির বৈশিষ্ট্যগুলি নিম্নরূপ:
- সিরিজের সংখ্যা: প্রায় 12.000 (বারো হাজার)
- বিশ্বব্যাপী ডেটা পয়েন্টের সংখ্যা: প্রতিমাসে প্রায় 500.000.000 (পাঁচশত মিলিয়ন)
- মিশ্র মানের ধরণ: বেশিরভাগ ডেটা পয়েন্ট হ'ল ফ্লোটিং পয়েন্ট মান, বাকী স্ট্রিং
- নমুনা সময়কাল: সিরিজের পাশাপাশি একটি সিরিজের মধ্যে পরিবর্তনশীল
- টাইমস্ট্যাম্পস: মিলিসেকেন্ড যথার্থতা
- ডেটা ধরে রাখার সময়কাল: কয়েক বছর, ক্ষয় বা ডাউনস্যাম্পলিং ছাড়াই
- ডেটা সংরক্ষণাগারগুলি নিকটবর্তী রিয়েলটাইমে তৈরি করা দরকার, তবে একটি যুক্তিসঙ্গত বিলম্ব (~ 1 ঘন্টা) গ্রহণযোগ্য
- অতীতে ডেটা প্রয়োজনে পুনর্নির্মাণ করা যেতে পারে তবে উচ্চ ব্যয়ে at
- কখনও কখনও, তবে বেশ কমই, কিছু অতীত ডেটা আপডেট করা প্রয়োজন needs
কল্পনাযুক্ত প্রশ্নের বৈশিষ্ট্য:
- ডেটা বিরুদ্ধে প্রশ্নগুলির বেশিরভাগ টাইমস্ট্যাম্প-ভিত্তিক ক্যোয়ারী হবে; একদিন থেকে শুরু করে বেশ কয়েক মাস / বছর অবধি। 90% + সর্বাধিক সাম্প্রতিক ডেটাতে অনুসন্ধান করা হবে
অন্যান্য প্রয়োজনীয়তা:
- সমাধানটি অবশ্যই বিয়ারের মতো মুক্ত এবং পছন্দসই মুক্ত উত্স হতে হবে
আমার প্রাথমিক চিন্তাভাবনাটি ছিল এসকিউএল ডাটাবেসের পরিবর্তে পিডিএবেলস / পান্ডাসকে এইচডিএফ 5 ফাইলগুলি ব্যাকএন্ড সংরক্ষণের জন্য ব্যবহার করা ।
প্রশ্নসমূহ:
পাইটিবেলস / পান্ডাসকেই "সেরা" রুট বলে ধরে নিচ্ছেন, বেশ কয়েকটি এইচডিএফ ফাইলগুলিতে ডেটা ভাগ করা ভাল, প্রতিটি প্রত্যেকে নির্দিষ্ট সময়ের মধ্যে বিস্তৃত হওয়া বা একটি একক ফাইলে সমস্ত কিছু রেখে দেবে যা তখন বিশাল আকার ধারণ করবে?
আমি কি গিয়ে স্থির বা টেবিল বিন্যাস পছন্দ করব? আমার কাছে, আমি যদি প্রতিমাসে একটি এইচডিএফ ফাইল রাখি তবে ফর্ম্যাটটি ঠিক আছে, কারণ পুরো সিরিজটি সম্ভবত র্যামের সাথে ফিট করে এবং আমি কোনও টেবিল বিন্যাস সূচকের প্রয়োজন ছাড়াই স্মৃতিতে টুকরো টুকরো করতে পারি। আমি কি সঠিক ?
এবং যদি এটি সর্বোত্তম পদ্ধতির না হয় তবে আমি কীভাবে এই ডেটা স্টোরটি গঠন করব বা আমার কোন প্রযুক্তিগুলি বিবেচনা করা উচিত? আমি টাইম সিরিজের ডেটাগুলির বড় সেটগুলি সঞ্চয় করার ক্ষেত্রে প্রথম নই, এই চ্যালেঞ্জটি সমাধান করার সাধারণ পদ্ধতির কী?
আমি বিবেচনা করেছি অন্যান্য পদ্ধতি:
- অ্যারে ডাটাবেসগুলি: ধ্রুবক নমুনা সময়কালের সাথে টাইম সিরিজের জন্য এগুলি দুর্দান্ত এক উপযুক্ত, কারণ আপনার কেবল তখন আরম্ভের শুরু এবং শেষ সময় এবং স্যাম্পলিং পিরিয়ড সংরক্ষণ করতে হবে এবং তারপরে কেবল অ্যারেতে মানগুলি এবং ইনডেক্সিং সহজ। তবে সিরিজের মধ্যে পরিবর্তনশীল স্যাম্পলিংয়ের সময়কালের সাথে আমার আরও কাছাকাছি টাইমস্ট্যাম্প-> মান সম্পর্ক রাখা দরকার, যা আমার দৃষ্টিতে অ্যারে ডিবিএমএসের জন্য এতটা উপযুক্ত নয়।
- টাইমস্ট্যাম্প, প্যারামিডি, কলাম হিসাবে মান সহ স্ট্যান্ডার্ড এসকিউএল ডাটাবেস কিন্তু তাদের প্রকৃতির দ্বারা তারা যে কোনও প্রশ্নের জন্য অনেক ডিস্ক আই / ও অনুরোধ করে