ওরাকল ১২সি রিলিজ ২ সংস্করণে, ওরাকল একটি ফিচার চালু করেছিল যা এক্সটার্নাল টেবিলে পার্টিশন তৈরি করার ক্ষমতা দিয়েছিল। ওরাকল ১৯সি সংস্করণে, ওরাকল একটি নতুন ফিচার olan Hybrid Partitioning চালু করেছে যা আমাদের কিছু পার্টিশন ডাটাবেসের বাইরে (ফ্ল্যাট ফাইল) এবং কিছু পার্টিশন টেবলস্পেসে (ডাটাবেসের ভিতরে) তৈরি করতে দেয়।
এই ফিচারের সাহায্যে আমরা কম ব্যবহৃত পুরনো পার্টিশনগুলো এক্সটার্নাল সোর্সে (লিনাক্স ফাইল সিস্টেম) এবং সবচেয়ে এক্টিভ পার্টিশনগুলো ডাটাবেসে রাখতে পারি। এই ডেমোতে, আমরা DATA নামে একটি হাইব্রিড পার্টিশन्ड টেবিল তৈরি করব ৪টি পার্টিশন DATA_2019, DATA_2020, DATA_2021 এবং DATA_2022 সহ। ২০১৯, ২০২০ এবং ২০২১ সালের ডেটা OS ডিরেক্টরি /home/oracle/data_dir-এ ফ্ল্যাট ফাইলগুলিতে স্টোর করা থাকবে।
এই ৩টি ফ্ল্যাট ফাইলে ২০১৯, ২০২০ এবং ২০২২ সালের ডেটা হোয়াইটস্পেস দিয়ে আলাদা করা অবস্থায় রয়েছে।
স্টেপ ১: ডাটাবেসে লগইন করুন এবং টার্গেট PDB সেট করুন যেখানে টেবিল তৈরি করা হবে।
স্টেপ ২: ডাটাবেসে DATA_FILES_DIR নামে একটি ডিরেক্টরি তৈরি করুন যা OS ডিরেক্টরি data_dir-কে পয়েন্ট করবে। APP_USER ইউজার তৈরি করুন এবং ডিরেক্টরিতে READ, WRITE পারমিশন দিন।
স্টেপ ৩: APP_USER-এ Hybrid Partitioned table DATA তৈরি করুন। পার্টিশন DATA_2019, DATA_2020 এবং DATA_2021 ডাটাবেসের বাইরে রয়েছে এবং ফ্ল্যাট ফাইলে ডেটা আছে। কিন্তু পার্টিশন DATA_2022 ডাটাবেসের ভিতরে রয়েছে।
স্টেপ ৪: আমরা প্রতিটি পার্টিশন থেকে ডেটা কোয়েরি চালাতে পারছি।
DATA_2019 -
DATA_2020 -
DATA_2021 -
DATA_2022 -
স্টেপ ৫: তৈরি করা টেবিল DATA হাইব্রিড পার্টিশन्ड টেবিল কিনা তা চেক করুন?
স্টেপ ৬: পার্টিশন DATA_2022-এ ডেটা ইনসার্ট করার চেষ্টা করলে ORA-01950: no privileges on tablespace 'USERS' এরর দেয়। এটি নিশ্চিত করে যে DATA_2022 পার্টিশনে ডেটা USERS টেবলস্পেসে স্টোর হবে অর্থাৎ ডাটাবেসের ভিতরে। টেবলস্পেস USERS-এ কোটা দিলে DATA_2022 পার্টিশনে ডেটা ইনসার্ট করা যায়।
স্টেপ ৭: নিচের কোয়েরি দেখায় যে শুধু পার্টিশন DATA_2022 ডাটাবেসে স্টোর করা আছে। অন্যান্য পার্টিশনের ডেটা ডাটাবেসের বাইরে।
উপসংহার
এই নতুন ফিচার ব্যবহার করে আমরা একটি টেবিলের পুরনো পার্টিশনগুলো যা এক্টিভ নয় সেগুলো ডাটাবেসের বাইরে সস্তা স্টোরেজে সরাতে পারি - যেখানে এক্টিভ টেবিল ডেটা ওরাকল ডাটাবেসের ভিতরে থাকে।
মন্তব্য বা প্রশ্নের জন্য Feedback ট্যাব ব্যবহার করুন। আপনি আমাদের সাথে কথা বলতে পারেন।