ডেটা লাইফসাইকেল ও স্টোরেজ টায়ারিং
এই পাঠে যা শিখবেন
- হট, কুল ও কোল্ড/আর্কাইভ স্টোরেজ টায়ার — প্রতিটির খরচ, গতি ও রিট্রিভাল বৈশিষ্ট্য
- লাইফসাইকেল পলিসি কীভাবে বয়স/অ্যাক্সেস-প্যাটার্নের ভিত্তিতে স্বয়ংক্রিয়ভাবে ডেটা সরায়
- কেন স্টোরেজ টায়ারিং একটি সহজ কিন্তু শক্তিশালী কস্ট-অপ্টিমাইজেশন লিভার (M12/FinOps-এর পূর্বাভাস)
- Python দিয়ে একটি বয়স-ভিত্তিক টায়ার রিকমেন্ডেশন ফাংশন লিখে বাস্তব কস্ট সাশ্রয় হিসাব করা
১ · কেন সব ডেটার একই টায়ার দরকার হয় না
L09-এ দেখা অবজেক্ট স্টোরেজে প্রতিটি ফাইল একই "টায়ার"-এ রাখা যেতে পারে, কিন্তু এটি সবসময় সবচেয়ে সাশ্রয়ী পছন্দ নয়। একটি নতুন আপলোড হওয়া ফাইল হয়তো দিনে বহুবার অ্যাক্সেস হয়, কিন্তু একই ফাইল এক বছর পর হয়তো কখনোই খোলা হয় না — তবুও যদি এটি সবচেয়ে দ্রুত, দামি টায়ারে থেকে যায়, তাহলে প্রতি মাসে অপ্রয়োজনীয় খরচ যোগ হতেই থাকবে।
২ · তিনটি প্রধান স্টোরেজ টায়ার
ঘনঘন অ্যাক্সেস করা ডেটা — সবচেয়ে দামি প্রতি GB, কিন্তু সবচেয়ে দ্রুত।
মাঝে মাঝে অ্যাক্সেস — মাঝারি খরচ, সামান্য বেশি রিট্রিভাল লেটেন্সি।
কদাচিৎ অ্যাক্সেস — সবচেয়ে সস্তা প্রতি GB, কিন্তু রিট্রিভালে কয়েক ঘণ্টাও লাগতে পারে।
৩ · লাইফসাইকেল পলিসি — স্বয়ংক্রিয় টায়ার-মাইগ্রেশন
লাইফসাইকেল পলিসিLifecycle Policyবয়স বা অ্যাক্সেস-প্যাটার্নের ভিত্তিতে স্বয়ংক্রিয়ভাবে ডেটাকে এক স্টোরেজ টায়ার থেকে অন্য টায়ারে সরানোর নিয়ম — যেমন "৯০ দিন অ্যাক্সেস না হলে কোল্ড টায়ারে সরাও"। একটি নিয়ম-ভিত্তিক অটোমেশন — যেমন "৯০ দিন ধরে অ্যাক্সেস না হলে কোল্ড টায়ারে সরাও" — যা কোনো ম্যানুয়াল হস্তক্ষেপ ছাড়াই ডেটাকে সঠিক খরচ-স্তরে রাখে। এটি M12-এর FinOps মডিউলের একটি প্রধান, সহজে বাস্তবায়নযোগ্য কস্ট-অপ্টিমাইজেশন লিভার — একবার সেট করলে চলতেই থাকে।
# বয়স-ভিত্তিক স্টোরেজ টায়ার রিকমেন্ডেশন ও কস্ট সাশ্রয় হিসাব
def recommend_tier(days_since_last_access):
if days_since_last_access < 30:
return "hot"
elif days_since_last_access <= 90:
return "cool"
else:
return "cold"
TIER_COST_PER_GB = {"hot": 0.023, "cool": 0.0125, "cold": 0.004} # ইলাস্ট্রেটিভ, প্রতি GB/মাস ডলারে
files = [
{"name": "current-user-uploads.zip", "size_gb": 50, "days_since_last_access": 2},
{"name": "q1-report-archive.csv", "size_gb": 20, "days_since_last_access": 45},
{"name": "2023-audit-logs.tar", "size_gb": 200, "days_since_last_access": 400},
{"name": "old-project-backup.img", "size_gb": 500, "days_since_last_access": 730},
]
tiered_total = 0.0
hot_only_total = 0.0
print(f"{'ফাইল':28}{'সাইজ(GB)':10}{'শেষ অ্যাক্সেস (দিন)':20}সুপারিশকৃত টায়ার")
for f in files:
tier = recommend_tier(f["days_since_last_access"])
tiered_total += f["size_gb"] * TIER_COST_PER_GB[tier]
hot_only_total += f["size_gb"] * TIER_COST_PER_GB["hot"]
print(f"{f['name']:28}{f['size_gb']:<10}{f['days_since_last_access']:<20}{tier}")
savings = hot_only_total - tiered_total
savings_pct = (savings / hot_only_total) * 100
print(f"\nটায়ার্ড পলিসি অনুযায়ী মোট মাসিক খরচ: ${tiered_total:.2f}")
print(f"সব হট টায়ারে রাখলে মোট মাসিক খরচ: ${hot_only_total:.2f}")
print(f"সাশ্রয়: ${savings:.2f} ({savings_pct:.1f}%)")
2023-audit-logs.tar ও old-project-backup.img — দুটোই ৯০ দিনের
বেশি সময় ধরে অ্যাক্সেস হয়নি, তাই কোল্ড টায়ারে যায় এবং প্রতি GB মাত্র $০.০০৪ খরচ হয়, যেখানে হট টায়ারে
একই ডেটার খরচ হতো $০.০২৩ প্রতি GB (প্রায় ৬x বেশি)। এই চারটি ফাইলের সামান্য উদাহরণেই টায়ার্ড পলিসি
"সব হট টায়ারে রাখা"-র তুলনায় উল্লেখযোগ্য অংশ সাশ্রয় করে — বাস্তব প্রোডাকশন সিস্টেমে টেরাবাইট-স্কেল ডেটায়
এই সাশ্রয় প্রতি মাসে অনেক বড় অঙ্কে দাঁড়াতে পারে।
স্টোরেজ টায়ারিং একটি "সেট করে ভুলে যান" ধরনের অপ্টিমাইজেশন — একবার লাইফসাইকেল পলিসি সেট করলে, প্রতিটি নতুন ফাইল স্বয়ংক্রিয়ভাবে সঠিক সময়ে সঠিক খরচ-স্তরে চলে যায়, কোনো ম্যানুয়াল পর্যবেক্ষণ ছাড়াই। এটিই M3 মডিউলের শেষ পাঠ — পরবর্তী পাঠ L12-এ আমরা দেখব কীভাবে স্ন্যাপশট ও ব্যাকআপ পলিসি দিয়ে ডেটা সুরক্ষিত রাখা যায়।
ভাবনার প্রশ্ন
প্রতিটি প্রশ্ন নিজে কিছুক্ষণ ভাবুন — তারপর "→ উত্তর" চাপুন।
প্র ০১ কেন কোল্ড/আর্কাইভ টায়ারে রিট্রিভালে কয়েক ঘণ্টা লাগতে পারে, অথচ হট টায়ারে তাৎক্ষণিক?
প্রোভাইডাররা কোল্ড টায়ারের কম খরচ অর্জন করে ভিন্ন, সস্তা আন্ডারলাইং হার্ডওয়্যার/প্রক্রিয়া ব্যবহার করে (যেমন ডেটা কমপ্রেসড বা অফলাইন-স্টাইল মিডিয়ায় রাখা, চাহিদা অনুযায়ী পুনরুদ্ধার) — এটি ধীরগতির বিনিময়ে সস্তা প্রতি-GB দাম সম্ভব করে। এটি একটি সচেতন ট্রেড-অফ: যে ডেটা প্রায় কখনোই লাগে না, তার জন্য কয়েক ঘণ্টার রিট্রিভাল বিলম্ব সাধারণত গ্রহণযোগ্য।
প্র ০২ একটি ফাইল যদি ৮৯ দিন অ্যাক্সেস না হয়ে হঠাৎ ৯০তম দিনে একবার অ্যাক্সেস হয়, তারপর আবার দীর্ঘদিন অ্যাক্সেস না হয় — এই "মাঝেমধ্যে হঠাৎ অ্যাক্সেস" প্যাটার্নে সাধারণ বয়স-ভিত্তিক পলিসি কী সমস্যা তৈরি করতে পারে?
একটি নিছক বয়স-ভিত্তিক পলিসি (শুধু আপলোডের বয়স গোনা) ভুলভাবে একটি এখনও-প্রাসঙ্গিক ফাইলকে কোল্ড
টায়ারে সরিয়ে দিতে পারে, যদি সেটি সাম্প্রতিক অ্যাক্সেস আমলে না নেয়। এই কারণেই বাস্তব লাইফসাইকেল
পলিসিগুলো সাধারণত "শেষ অ্যাক্সেসের পর কত দিন" (যেমন এই পাঠের কোড সেলে ব্যবহৃত
days_since_last_access) ট্র্যাক করে, শুধু তৈরির তারিখ নয় — যাতে সাম্প্রতিক অ্যাক্সেস
স্বয়ংক্রিয়ভাবে ফাইলকে আবার উষ্ণ টায়ারে ফিরিয়ে আনতে পারে।
প্র ০৩ স্টোরেজ টায়ারিং ও এই কোর্সের পরবর্তী FinOps মডিউল (M12) কীভাবে সংযুক্ত?
স্টোরেজ টায়ারিং হলো FinOps-এর একটি নির্দিষ্ট, সহজে বাস্তবায়নযোগ্য উদাহরণ — একটি স্বয়ংক্রিয় নিয়ম যা কোনো অ্যাপ্লিকেশন পরিবর্তন ছাড়াই সরাসরি বিলে সাশ্রয় আনে। M12-এ আমরা দেখব এই ধরনের অসংখ্য ছোট, স্বয়ংক্রিয় অপ্টিমাইজেশন (রাইট-সাইজিং, রিজার্ভড/স্পট ইনস্ট্যান্স) একত্র করে কীভাবে একটি প্রতিষ্ঠানের সামগ্রিক ক্লাউড খরচ উল্লেখযোগ্যভাবে কমানো যায় — স্টোরেজ টায়ারিং সেই বৃহত্তর কৌশলের একটি ভিত্তি-স্তম্ভ।
অনুশীলন
-
চিন্তা করুন: একটি লগ ফাইল যা তৈরির প্রথম ৭ দিন খুব ঘনঘন সার্চ করা হয়, তারপর প্রায়
কখনোই খোলা হয় না — এই ফাইলের জন্য আদর্শ লাইফসাইকেল পলিসি কেমন হতে পারে?
প্রথম কয়েক দিন হট টায়ারে রাখা যুক্তিসঙ্গত (সক্রিয় ডিবাগিং/সার্চের জন্য দ্রুত অ্যাক্সেস দরকার), তারপর দ্রুতই কুল বা এমনকি সরাসরি কোল্ড টায়ারে সরিয়ে দেওয়া উচিত (যেমন ৭-১০ দিন পরই), কারণ এই ধরনের লগের অ্যাক্সেস প্যাটার্ন খুব দ্রুত "ঠান্ডা" হয়ে যায় — এই পাঠের ৩০/৯০ দিনের সাধারণ সীমার চেয়ে আরও আক্রমণাত্মক (aggressive) একটি কাস্টম পলিসি এখানে বেশি সাশ্রয়ী হবে।
-
পরীক্ষা করুন: উপরের কোড সেলে
filesতালিকায় একটি নতুন ফাইল যোগ করুন —{"name": "weekly-analytics.parquet", "size_gb": 100, "days_since_last_access": 15}— এবং দেখুন এটি কোন টায়ারে যায় ও মোট সাশ্রয়ের অঙ্ক কীভাবে বদলায়।১৫ দিন হলো ৩০ দিনের নিচে, তাই এই ফাইলটি "hot" টায়ারে যাবে — এবং যেহেতু এটি হট টায়ারেই থাকছে,
tiered_totalওhot_only_totalউভয়েই একই পরিমাণ ($১০০ × $০.০২৩ = $২.৩০) যোগ হবে, তাই মোট সাশ্রয়ের ডলার-অঙ্ক অপরিবর্তিত থাকবে কিন্তু সাশ্রয়ের শতাংশ সামান্য কমবে (কারণ হর/denominator বেড়েছে) — এটি দেখায় শুধু হট-টায়ার ফাইল যোগ করলে টায়ারিং পলিসির আপেক্ষিক সুবিধা কিছুটা কমে যায়, যদিও পরম সাশ্রয় একই থাকে।
আরও পড়ুন · ABCL TECH-এ আপনার পরবর্তী পদক্ষেপ
- কোর্সের সম্পূর্ণ সিলেবাস দেখুন ৫৭টি পাঠ পরবর্তী পাঠ — ব্যাকআপ, স্ন্যাপশট ও ডিজাস্টার রিকভারি — শীঘ্রই যুক্ত হবে।
- System Design & Software Architecture কোর্স সঙ্গী কোর্স বৃহৎ-স্কেল ডেটা স্টোরেজ আর্কিটেকচার শিখতে দেখুন।
- Cybersecurity & Ethical Hacking কোর্স সঙ্গী কোর্স আর্কাইভড ডেটার এনক্রিপশন ও দীর্ঘমেয়াদি সুরক্ষা প্র্যাকটিস শিখতে দেখুন।
- সব Courses দেখুন ABCL TECH C, C++, Python, Java, JavaScript, DSA, DBMS, Discrete Mathematics, System Design, Cybersecurity ও Cloud Computing & DevOps — সব এক জায়গায়।