অবজেক্ট স্টোরেজ
যে ফাইলগুলো সার্ভারে থাকার কথা নয়, তাদের জায়গা।
অবজেক্ট স্টোরেজ ফাইল রাখার এমন একটা জায়গা যেটা কোনো মেশিনের ডিস্ক নয়। আপনি সেখানে পৌঁছান নেটওয়ার্কের উপর দিয়ে S3 API দিয়ে — যেকোনো সার্ভার থেকে বা ব্রাউজার থেকে — আর সেটা বাড়তে থাকে, কাউকে আগে থেকে আকার ঠিক করে দিতে হয় না।
- S3 API
- আপনার এখনকার টুলেই চলে
- আকার ঠিক করা লাগে না
- যা রাখবেন তাই ধরে
- পাবলিক বা প্রাইভেট
- প্রতি ফাইলে আলাদা
- সার্ভারের বাইরে
- অ্যাপের ডিস্ক অ্যাপের জন্যই থাকে
জিনিসটা কী
বেশিরভাগ অ্যাপ্লিকেশন শেষ পর্যন্ত ব্যবহারকারীর আপলোড সেই সার্ভারেই রাখে যেখানে নিজে চলছে, আর সেটা চলতেও থাকে — যতদিন না একদিন থামে: ডিস্ক ভরে যায়, কিংবা দ্বিতীয় একটা সার্ভার যোগ হয় আর অর্ধেক ফাইল ভুল মেশিনে থেকে যায়, কিংবা সার্ভার নতুন করে বানাতে হয় আর তখন ছবিগুলোই হয়ে দাঁড়ায় না-বানাতে-পারার কারণ।
অবজেক্ট স্টোরেজ এই ধরনের ফাইলগুলোকে সার্ভার থেকে পুরোপুরি সরিয়ে নেয়। অ্যাপ্লিকেশন ফোল্ডারের বদলে একটা bucket-এ লেখে, প্রতিটা সার্ভার একই ফাইল দেখে, আর আপনার অ্যাপ্লিকেশন যে ডিস্কে চলে সেটা আবার শুধু অ্যাপ্লিকেশন চালানোর ডিস্কই হয়ে যায়।
এটা আপনার জন্য যা করে
অবজেক্ট স্টোরেজ আপনার অবকাঠামোর আচরণে যে ছয়টা জিনিস বদলে দেয়।
S3 API, তাই নতুন করে লিখতে হয় না
আপনার এখনকার credential আর endpoint আমাদের দিকে তাক করান। Laravel, Django, Rails, Node — যে storage adapter আপনি ইতিমধ্যেই ব্যবহার করছেন সেটাই চলে।
আকার ঠিক করার কেউ লাগে না
ফুরিয়ে যাওয়ার মতো কোনো ভলিউম নেই। যা রাখবেন তাই ধরে, আর যতটা আছে ততটারই দাম।
প্রতিটা ফাইলে আলাদা নিয়ম
পণ্যের ছবি সরাসরি স্টোরেজ থেকে দেখান, আর ইনভয়েসের PDF রাখুন শুধু মেয়াদসহ signed লিংক দিয়ে পৌঁছানোর মতো করে।
প্রতিটা সার্ভার একই ফাইল দেখে
দ্বিতীয় সার্ভার সম্ভব হয় এই কারণেই। ফাইল আর সেই মেশিনের সাথে বাঁধা থাকে না যেটা অনুরোধটা পেয়েছিল।
ব্যাকআপ আর আর্কাইভের জন্য ঠিক
যা একবার লেখা হয়, বছরের পর বছর থাকে আর কালেভদ্রে পড়া হয় — ঠিক এই জিনিসের জন্যই এর গড়ন।
অ্যাপ্লিকেশনের ডিস্ক খালি রাখে
ডিস্ক ভরে যাওয়ার সবচেয়ে সাধারণ কারণ হলো এমন ফাইল যেগুলো কেউ ওখানে রাখতে চায়নি। সেগুলোর জায়গা এটাই।
মানুষ কী কাজে লাগায়
- ব্যবহারকারীর আপলোড
- ছবি, ডকুমেন্ট, অ্যাভাটার — যে সার্ভার অনুরোধটা পেল সে লেখে, পড়ে সবাই।
- মিডিয়া আর static অ্যাসেট
- ওয়েবসাইট যেসব ছবি, ভিডিও আর ফাইল দেখায়, সেগুলো অ্যাপ্লিকেশন সার্ভার আর তার ডিস্কের হিসাবের বাইরে।
- ব্যাকআপ আর লগ আর্কাইভ
- যে retention চিরকাল বাড়ে, তার জায়গা — যেটা জায়গা বানাতে গুছিয়ে রাখতে হয় না।
- সফটওয়্যার আর ফাইল বিতরণ
- গ্রাহককে বড় ডাউনলোড দেওয়া, আপনার অ্যাপ্লিকেশন সার্ভারের ঘাড়ে ব্যান্ডউইথ না চাপিয়ে।
- বিশ্লেষণের ডেটা
- Export আর dataset এক জায়গায়, যেখান থেকে কয়েকটা মেশিন একসাথে পড়তে পারে।
- ফাইল সার্ভারের বদলে
- কয়েকটা ক্লাউড সার্ভার যে শেয়ার্ড স্টোরেজে পড়ে আর লেখে, মাঝখানে এমন কোনো মেশিন ছাড়াই যেটা নষ্ট হতে পারে।
আপনি যা ব্যবহার করেন তার সাথেই চলে
S3 API-ই মান। এগুলোকে নিজের key দিয়ে আমাদের endpoint-এ তাক করান, আর কিছুই বদলাতে হয় না।
- AWS CLI
- rclone
- s3cmd
- Cyberduck
- WinSCP
- Laravel Flysystem
- django-storages
- boto3
- AWS SDK for Node.js
খরচ কত
অবজেক্ট স্টোরেজের দাম প্রতি গিগাবাইট প্রতি মাস হিসেবে। আজ মোটামুটি কতটা আছে আর কত দ্রুত বাড়ে জানান, কোট দিয়ে দিচ্ছি।
যাচাই না করা সংখ্যা ছাপানোর চেয়ে আপনাকে কোট দেওয়াই ভালো মনে করি। দামের পাতায় যা আছে তার প্রতিটাই অর্ডার ফর্ম সত্যিই যা নেয় — এখানেও সেটা সত্যি হওয়ার দিনই এটা সেখানে যোগ হবে।
প্রশ্ন
আমার অ্যাপ্লিকেশন কি অপরিবর্তিত অবস্থায় চলবে?
যদি ইতিমধ্যেই S3-এর সাথে কথা বলে, তাহলে হ্যাঁ — endpoint আর credential বদলান। আর যদি লোকাল ফোল্ডারে লেখে, তাহলে একটা storage adapter লাগবে, যা বেশিরভাগ ফ্রেমওয়ার্কে কোড নয়, কনফিগারেশনের কাজ।
এখান থেকেই কি ওয়েবসাইট চালানো যায়?
ফাইল দেখানো যায় — ছবি, ডাউনলোড, ভিডিও। এটা ওয়েব সার্ভার নয়, স্টোরেজ; তাই প্রতিটা অনুরোধে যা তৈরি করতে হয় সেটা আপনার সার্ভারেই থাকবে।
ব্লক স্টোরেজের সাথে পার্থক্য কী?
ব্লক স্টোরেজ একটা সার্ভারে লাগানো ডিস্ক। অবজেক্ট স্টোরেজে নেটওয়ার্ক দিয়ে যত খুশি সার্ভার পৌঁছাতে পারে, এর কোনো নির্দিষ্ট আকার নেই, আর ঠিকানা filesystem নয় — ফাইল ধরে। ডেটাবেস চায় প্রথমটা; ফাইল চায় দ্বিতীয়টা।
ভুল করে ফাইল মুছে ফেললে?
সেটা চলে যায়, যদি না versioning চালু থাকে বা bucket-এর ব্যাকআপ থাকে। অবজেক্ট স্টোরেজ টেকসই, অর্থাৎ সে আপনার ফাইল হারাবে না — আপনি নিজে মুছে ফেললে সেটা আটকানোর দায়িত্ব তার নয়।
এখানে উত্তর নেই এমন কিছু? জিজ্ঞেস করুন — হয় ছোট একটা উত্তর, নয়তো একটা ফোন কল, দুটোতেই অসুবিধা নেই।
ক্লাউড রেঞ্জের বাকিটা
এগুলো একসাথে ব্যবহারের জন্যই বানানো — প্রাইভেট নেটওয়ার্কের ভেতরে একটা সার্ভার, সামনে firewall, ডেটা ভলিউমে আর ইতিহাস ব্যাকআপে।
ক্লাউড সার্ভার (VM)
Linux আর Windows ইনস্ট্যান্স
আকার ও দাম দেখুনবেয়ার মেটাল
পুরো একটা ফিজিক্যাল মেশিন, ভারী কাজের জন্য
বিস্তারিতলোড ব্যালেন্সার
অনেকগুলো সার্ভারের সামনে একটাই ঠিকানা
বিস্তারিতVPC (ভার্চুয়াল প্রাইভেট ক্লাউড)
শুধু আপনার সার্ভারগুলো দেখতে পায় এমন নেটওয়ার্ক
বিস্তারিতক্লাউড ফায়ারওয়াল
ভেতরে-বাইরে যাওয়া ট্রাফিক নিয়ন্ত্রণ করুন
বিস্তারিতব্লক স্টোরেজ
সার্ভারে যুক্ত করার মতো উচ্চক্ষমতার স্টোরেজ
বিস্তারিতস্ন্যাপশট
সার্ভারের ডিস্কের ছবি, যখন চান
বিস্তারিতব্যাকআপ
স্বয়ংক্রিয় ডেটা সুরক্ষা আর পুনরুদ্ধার
বিস্তারিতএটা আপনার দরকার কি না নিশ্চিত নন?
কী চালাচ্ছেন আর তাতে কী সমস্যা হচ্ছে বলুন। এগুলোর কোনটা সত্যিই কাজে আসবে আমরা বলে দেব — উত্তরটা যদি "কোনোটাই নয়" হয়, সেটাও বলব।