এই পোস্টটি Oracle® In-Memory Advisor (IMA) বর্ণনা করে, যা Database 12c-এর একটি ফিচার, এবং এর সুবিধাগুলো ব্যাখ্যা করে। এই ফিচার Oracle Database ভার্সন 12.1.0.2 এবং তার পরে উপলব্ধ।
IMA-এর সুবিধা
IMA-এর নিচের প্রধান সুবিধাগুলো রয়েছে:
ত্বরিত আ্যানালিটিক্যাল কোয়েরি।
দ্রুত On-line Transaction Processing (OLTP) ট্রানজেকশন।
কোনো অ্যাপ্লিকেশন পরিবর্তন প্রয়োজন নেই।
ডাটাবেস অ্যাডমিনিস্ট্রেটর (DBA)-র জন্য ডাটাবেস পারফরম্যান্স অপ্টিমাইজ করতে কম ম্যানুয়াল কাজ।
In-Memory Advisor চালু হওয়ার আগে, DBAs-কে ম্যানুয়ালি টেবিলগুলো চিহ্নিত করতে হতো যেগুলো In-Memory Column Store (IMCS)-এ রাখা হবে। IMA এই ম্যানুয়াল টাস্ক দূর করে ডাটাবেসের আ্যানালিটিক্যাল ওয়ার্কলোড বিশ্লেষণ করে এবং একটি রিকমেন্ডেশন রিপোর্ট তৈরি করে (যা SQL কমান্ডসহ থাকে টেবিলগুলো IMCS-এ রাখার জন্য)।
IMA Oracle Database In-Memory কনফিগার করার নির্দিষ্ট পরামর্শ দেয়।
IMA একটি রিপোর্ট তৈরি করে যা চিহ্নিত করে কোন অবজেক্টগুলো Oracle Database In-Memory-এ রাখা উচিত সর্বোচ্চ লাভের জন্য, পাশাপাশি একটি SQL*Plus স্ক্রিপ্ট যা সেসব রিকমেন্ডেশন ইমপ্লিমেন্ট করে।
IMA ইনস্টলেশন প্যাকেজ
ইনস্টলেশন জিপ ফাইল এবং নির্দেশাবলী My Oracle Support (MOS) Doc ID 1965343.1-এ পাওয়া যাবে। ইনস্টলেশন স্ক্রিপ্টগুলো ডাটাবেস লেভেলে IMA ইনস্টল করে। IMA Oracle Database ভার্সন 11.2.0.3-এ চালানো যায়, কিন্তু Oracle Database ভার্সন 12.1.0.2 বা তার পরের জন্য রিকমেন্ড করা হয়।
DBMS_INMEMORY_ADVISOR প্যাকেজ আ্যানালিটিক্যাল ওয়ার্কলোড সম্পর্কে পরামর্শ দেয় যেগুলো In-Memory অপশন থেকে লাভ পেতে পারে। এটি Active Session History (ASH) এবং Automatic Workload Repository (AWR) ডেটা বিশ্লেষণ করে এটি করে। একটি রিপোর্ট তৈরি হয়, সেইসাথে একটি স্ক্রিপ্ট ফাইল, যাতে টার্গেট ডাটাবেসে এক্সিকিউশনের জন্য SQL থাকে। স্ক্রিপ্টটি রিকমেন্ডেড অবজেক্টগুলো সাজেস্টেড কমপ্রেশন টাইপসহ In-Memory-এ রাখে।
IMA ডুয়াল-ফরম্যাট আর্কিটেকচার
পরമ്പরাগতভাবে, Oracle Database ডেটা রো ফরম্যাটে স্টোর করে, যেখানে প্রতিটি ট্রানজেকশন ডাটাবেসে একটি নতুন রো হিসেবে স্টোর হয়, যা অনলাইন ট্রানজেকশন সিস্টেমের জন্য আদর্শ কারণ আপনি একটি রেকর্ডের সব কলাম দ্রুত এক্সেস করতে পারেন। একটি কলাম-ফরম্যাট ডাটাবেস প্রতিটি ট্রানজেকশন অ্যাট্রিবিউটকে একটি আলাদা কলাম স্ট্রাকচারে স্টোর করে এবং আ্যানালিটিক্সের জন্য আদর্শ কারণ আপনি কম কলাম রিট্রিভ করেন। Data Manipulation Language (DML) অপারেশন (যেমন insert, update, বা delete) চলেaatst, রো ফরম্যাট কার্যকর কারণ এটি এক অপারেশনে পুরো রেকর্ড আপডেট করে। আপনি যদি কলাম ফরম্যাটে একই অপারেশন চালান, তবে টেবিলের পুরো কলাম স্ট্রাকচার পরিবর্তন করতে হয়, যা রো-ওয়াইজ DML প্রসেসিং-এর জন্য অকার্যকর।
Oracle Database 12c-এ, ডেটা টেবিলে দুটি ফরম্যাটে পপুলেট হতে পারে: In-Memory রো ফরম্যাট এবং In-Memory কলাম ফরম্যাট। এটাকে ডুয়াল-ফরম্যাট আর্কিটেকচার বলা হয় এবং এটি আরও ভাল পারফরম্যান্স দেয়। এক্সিস্টিং বাফার ক্যাশে রো ফরম্যাট মেইনটেইন করে, এবং একটি নতুন In-Memory কলাম স্টোর কলাম ফরম্যাট মেইনটেইন করে। In-Memory কলাম স্টোর Oracle Database System Global Area (SGA)-এর একটি কম্পোনেন্ট।
নিচের ছবিটি ডুয়াল-ফরম্যাট আর্কিটেকচার ilustrat e করে:
Image source: https://www.doag.org/formes/servlet/DocNavi?action=getFile&did=6770401&key=
যদি আপনার একটি টেবিল থাকে যা চওড়া এবং কয়েকশো মিলিয়ন বা অরবো রো থাকতে পারে, তবে আপনি সেটি স্ক্যান এবং ফিল্টার করতে পারেন অত্যন্ত দ্রুত, এমনকি ডেটা ওয়ারহাউসিং এনভায়রনমেন্টে। আপনি একটি ফ্যাক্ট টেবিলের কলামগুলোকে মাল্টিপল ডাইমেনশন টেবিলের সাথে জয়েন করতে পারেন অবিশ্বাস্য গতিতে। কারণ ডেটা কলামার ফরম্যাটে রয়েছে রো-মেজর ফরম্যাটের পরিবর্তে, আপনি ডেটা অনেক দ্রুত এক্সেস করতে পারেন কারণ আপনি অনেক ইন্টারভেনিং কলাম বাদ দিয়ে দেন।
IMA এবং OLTP
IMA विवিধ OLTP এবং ডেটা ওয়ারহাউস অপারেশনে কোয়েরি উন্নত করতে ব্যবহার করা যায় এবং নিচের মূল ক্ষমতাগুলো অফার করে:
In-Memory সাইজ সিলেকশনে সহায়তা।
দেওয়া In-Memory সাইজের জন্য টেবিল, পার্টিশন, এবং সাব-পার্টিশনের জন্য রিকমেন্ডেশন।
ওয়ার্কলোড এবং পারফরম্যান্স ডেটা ব্যবহার করে অবজেক্ট প্রায়োরিটাইজ করে।
ডিস্ক এবং মেমরি ফুটপ্রিন্ট, সেইসাথে কমপ্রেশন রেশিওর পার্থক্য সামঞ্জস্য করে।
ওয়ার্কলোড-ভিত্তিক কাস্ট/বেনিফিট অ্যানালাইসিস প্রদান করে, যার মধ্যে রয়েছে:
Cost: বিভিন্ন কমপ্রেশন অপশন সহ এস্টিমেটেড মেমরি সাইজ অফার করে।
Benefit: ওয়ার্কলোড প্রসেসিং-এর জন্য এস্টিমেটেড ডাটাবেস টাইম-রিডাকশন মেট্রিক্স অফার করে।
In-memory এরিয়া পপুলেশন প্ল্যান প্রদান করে।
রিপোর্টিং প্রদান করে, যার মধ্যে যেকোনো কনফিগারেশনের টপ SQL বেনিফিট রয়েছে।
In-Memory সাইজ ভেরিয়েট করে একটি নির্দিষ্ট লোডিং প্ল্যান পাওয়া যায়।
সব রিকমেন্ডেড টেবিল, পার্টিশন, এবং সাব-পার্টিশন সহ DDL স্ক্রিপ্ট জেনারেট করে।
উপসংহার
In-Memory অপশন ব্যবহার করে, আপনি আ্যানালিটিক্যাল কোয়েরি এবং OLTP ত্বরান্বিত করতে পারেন সেইসাথে ডাটাবেস পারফরম্যান্স সহজে অপ্টিমাইজ করতে পারেন কম DBA ইনভলভমেন্টে। ব্যবসায়িক দৃষ্টিকোণ থেকে, ব্যবসায় রিয়েল-টাইমে ভালো সিদ্ধান্ত নেওয়া, উন্নত প্রোডাক্টিভিটি, বেড়ানো প্রতিযোগিতামূলকতা, এবং কম খরচ থেকে লাভ उठাতে পারে।
Feedback ট্যাব ব্যবহার করে যেকোনো মন্তব্য বা প্রশ্ন করুন।