কম্পিউটার টিউটোরিয়াল

Amazon Redshift কোয়ারী গতি সর্বাধিক করুন: প্রমাণিত সেরা অনুশীলন

মূলত ১৭ জুন, ২০২০-এ Onica.com/blog-এ প্রকাশিত

বিশাল শৃঙ্খলা ইন্ডাস্ট্রির সaphne সংগঠন ডেটা অ্যানালিটিক্স ব্যবহারের দিকে তাকাচ্ছে অপারেশন এবং সাফল্যের জন্য ক্রিটিক্যাল অন্যান্য ফাংশনের জন্য। যাইহোক, ডেটা ভলিউম বেড়ে Junto, ম্যানেজমেন্ট এবং মান এক্সট্র্যাকশন渐渐地 জটিল হতে পারে।

Amazon Redshift

Amazon® Redshift® হল Amazon Web Services® (AWS)-এর একটি শক্তিশালী ডেটা ওয়্যারহাউস সার্ভিস যা ডেটা ম্যানেজমেন্ট এবং অ্যানালিটিক্স সরল করে। আসুন Amazon Redshift এবং কিছু সেরা অনুশীলন দেখি যা আপনি বাস্তবায়ন করতে পারেন ডেটা কোয়ারী পারফরম্যান্স অপ্টিমাইজ করতে।

ডেটা লেক বনাম ডেটা ওয়্যারহাউস

Amazon Redshift-এ গভীরে যাওয়ার আগে, ডেটা লেক এবং ওয়্যারহাউসের পার্থক্য জানা গুরুত্বপূর্ণ। একটি ডেটা লেক, যেমন Amazon S3, একটি সেন্ট্রালাইজড ডেটা রিপোজিটরি যা স্ট্রাকচারড এবং আনস্ট্রাকচারড ডেটা সংরক্ষণ করে, যেকোনো স্কেলে এবং অনেক সোর্স থেকে, ডেটা পরিবর্তন না করে। অন্যদিকে, ডেটা ওয়্যারহাউস ডেটা সংরক্ষণ করে একটি রিকন্সাইলড স্টেটে যা চলমান অ্যানালিটিক্স পারফর্ম করার জন্য অপ্টিমাইজড এবং শুধু ডেটা লেক থেকে অ্যানালিটিক্সের জন্য প্রয়োজনীয় ডেটা লোড করে।

Amazon Redshift ডেটা অ্যানালিটিক্সের জন্য স্টোরেজকে এক লেভেল আরও নেয়, ডেটা লেক এবং ওয়্যারহাউসের গুণগুলো একসাথে মিলিয়ে একটি "লেক হাউস" আপসংস্কৃতি তৈরি করে। এটি বড় এক্সাবাইট-স্কেল ডেটা লেক কোয়ারী করার অনুমতি দেয় খরচ-প্রভাবশীল থাকতে, ডেটা রিডান্ডেন্সি মিনিমাইজ করতে, এবং মেইনটেনেন্স ওভারহেড এবং অপারেশনাল খরচ মিনিমাইজ করতে।

Amazon Redshift আর্কিটেকচার

বিগ ডেটা সেটে কমপ্লেক্স কোয়ারী দ্রুত প্রসেস করতে, Amazon Redshift আর্কিটেকচার ম্যাসিভলি প্যারালেল প্রসেসিং (MPP) সাপোর্ট করে যা কাজকে অনেক কম্পিউট নোডের জুড়ে ডিস্ট্রিবিউট করে কনকারেন্ট প্রসেসিং-এর জন্য।

এই নোডগুলো ক্লাস্টারে গ্রুপ করা হয়, এবং প্রতিটি ক্লাস্টার তিনটি টাইপের নোড নিয়ে গঠিত:

  • লিডার নোড: এগুলো কানেকশন ম্যানেজ করে, SQL এন্ডপয়েন্ট হিসেবে কাজ করে, এবং প্যারালেল SQL প্রসেসিং কোঅর্ডিনেট করে।

  • কম্পিউট নোড: স্লাইস-এ কমপোজড, এগুলো কোয়ারী এক্সিকিউট করে প্যারালেলে কলামার ফরম্যাটে সংরক্ষিত ডেটা এবং ১ MB ইমিউটেবল ব্লকে। একটি Amazon Redshift ক্লাস্টার ১ থেকে ১২৮ কম্পিউট নোড ধারণ করতে পারে, স্লাইসে পোर्शन করা থাকে যেগুলো টেবিল ডেটা ধারণ করে এবং একটি লোকাল প্রসেসিং জোন হিসেবে কাজ করে।

  • Amazon Redshift স্পেকট্রাম নোড: এগুলো Amazon S3 ডেটা লেকের বিপক্ষে কোয়ারী এক্সিকিউট করে।

Amazon Redshift কোয়ারী গতি সর্বাধিক করুন: প্রমাণিত সেরা অনুশীলন

কোয়ারী পারফরম্যান্স অপ্টিমাইজ করা

ক্লাস্টারে ডেটার ফিজিক্যাল লেআউটকে আপনার কোয়ারী প্যাটার্নের সাথে কনগ্রুয়েন্ট আনিয়ে, আপনি অপ্টিমাল কোয়ারী পারফরম্যান্স এক্সট্রাক্ট করতে পারেন। যদি Amazon Redshift অপ্টিমালি পারফর্ম না করে, তবে ওয়ার্কলোড ম্যানেজমেন্ট রিকনফিগার করার কথা বিবেচনা করুন।

ওয়ার্কলোড ম্যানেজমেন্ট (WLM) রিকনফিগার করুন

প্রায়শই ডিফল্ট সেটিং-এ ছেড়ে দেওয়া থাকে, WLM টিউনিং পারফরম্যান্স উন্নত করতে পারে। আপনি এই টাস্ক অটোমেট করতে পারেন বা ম্যানুয়ালি করতে পারেন। অটোমেটেড হলে, Amazon Redshift মেমরি ইউজ এবং কনকারেন্সি ম্যানেজ করে ক্লাস্টার-রিসোর্স ইউজের ভিত্তিতে। এটি আপনাকে আটটি প্রায়োরিটি-ডেজিগনেটেড কিউ সেট আপ করতে দেয়। ম্যানুয়ালি হলে, আপনি কনকারেন্ট কোয়ারীর সংখ্যা, মেমরি অ্যালোকেশন, এবং টার্গেট আডজাস্ট করতে পারেন।

আপনি নিচের WLM কনফিগারেশন প্যারামিটারগুলোর মাধ্যমে কোয়ারী পারফরম্যান্স অপ্টিমাইজও করতে পারেন:

  • কোয়ারী মনিটরিং রুল আপনাকে এক্সপেনসিভ বা রানওয়ে কোয়ারী ম্যানেজ করতে সাহায্য করে।

  • শর্ট কোয়ারী অ্যাক্সিলারেশন আপনাকে শর্ট-রানিং কোয়ারীকে লং-রানিং কোয়ারীর ওপর প্রায়োরিটি দিতে সাহায্য করে মেশিন লার্নিং অ্যালগরিদম ব্যবহার করে কোয়ারী এক্সিকিউশন টাইম প্রেডিক্ট করে।

  • কনকারেন্সি স্কেলিং আপনাকে একাধিক ট্রানজিয়েন্ট ক্লাস্টার সেকেন্ডগুলোর মধ্যে যোগ করতে সাহায্য করে কনকারেন্ট রিড কোয়ারী স্পিড আপ করতে।

WLM সেরা অনুশীলন

কিছু WLM টিউনিং সেরা অনুশীলন অন্তর্ভুক্ত করে:

  • বিভিন্ন টাইপের ওয়ার্কলোডের জন্য ভিন্ন WLM কোয়ারী তৈরি করা।
  • মেন ক্লাস্টারের জন্য ম্যাক্সিমাম টোটাল কনকারেন্সি ১৫ বা তার কম লিমিট করা থ্রুপুট maksimize করতে।
  • কনকারেন্সি স্কেলিং ইনেবল করা।
  • একটি কিউ-এ রিসোর্সের সংখ্যা মিনিমাইজ করা।

ডেটা ডিস্ট্রিবিউশন পরিশোধ করা

একটি টেবিলের সারিগুলো অটোমেটিক্যালি Amazon Redshift দ্বারা নোড স্লাইসের জুড়ে ডিস্ট্রিবিউট করা হয় নিচের ডিস্ট্রিবিউশন স্টাইল অনুযায়ী:

  • AUTO: ALL দিয়ে শুরু করে এবং টেবিল বাড়ার সাথে সাথে EVEN-এ স্যুইচ করে।
  • ALL: ছোট, ঘন ঘন জয়েন করা, এবং কম মডিফাই করা টেবিল নিয়ে গঠিত যেগুলো প্রতিটি কম্পিউট নোডের প্রথম স্লাইসে প্লেস করা থাকে।
  • EVEN: বড়, স্ট্যান্ডআলোন ফ্যাক্ট টেবিল নিয়ে গঠিত যেগুলো ঘন ঘন জয়েন বা অ্যাগ্রিগেট করা হয় না রাউন্ড-রোবিন ডিস্ট্রিবিউশনে স্লাইসের জুড়ে।
  • KEY: ঘন ঘন জয়েন করা ফ্যাক্ট টেবিল বা বড় ডাইমেনশন টেবিল নিয়ে গঠিত। এই স্টাইলে, একটি কলাম ভ্যালু হ্যাশ করা হয়, এবং একই হ্যাশ ভ্যালু একই স্লাইসে প্লেস করা হয়।

সঠিক ডিস্ট্রিবিউশন প্যাটার্ন ব্যবহার করলে JOIN, GROUP BY, এবং INSERT INTO SELECT অপারেশনের পারফরম্যান্স maksimize করা যায়।

ডেটা সর্টিং পরিশোধ করা

সর্ট কী ডিস্কে ডেটার ফিজিক্যাল অর্ডার ডিফাইন করে। WHERE ক্লজ প্রেডিকেটে ব্যবহৃত টেবিল কলাম সর্ট কী-এর জন্য ভালো চয়স এবং সাধারণত ডেট বা টাইম-সম্পর্কিত কলাম ব্যবহার করা হয়। জোন ম্যাপস ব্যবহার করুন, যা মেমরিতে স্টোরড থাকে এবং অটোমেটিক্যালি জেনারেট হয়, প্রতিটি ডেটা ব্লকের জন্য ভ্যালু এক্সট্রিম ডিফাইন করতে। কার্যকরভাবে সর্ট কী এবং জোন ম্যাপস একসাথে ব্যবহার করলে আপনি স্ক্যানকে ন্যূনতম প্রয়োজনীয় ব্লক সংখ্যায় সীমাবদ্ধ করতে পারেন।

নিচের ডায়াগ্রামটি ইলাস্ট্রেট করে কীভাবে টেবিল সর্টিং টাইম-ভিত্তিক কোয়ারীর জন্য স্ক্যানিং টার্গেট ফোকাস করে, তদনুসারে কোয়ারী পারফরম্যান্স উন্নত করে।

Amazon Redshift কোয়ারী গতি সর্বাধিক করুন: প্রমাণিত সেরা অনুশীলন

অপ্টিমাল কোয়ারী পারফরম্যান্স সেরা অনুশীলন

পূর্বে উল্লিখিত Amazon Redshift পরিবর্তনগুলো ব্যবহার করে কোয়ারী পারফরম্যান্স উন্নত করা যায় এবং খরচ ও রিসোর্স দক্ষতা উন্নত করা যায়। এখানে আরও কিছু সেরা অনুশীলন যা আপনি বাস্তবায়ন করতে পারেন আরও পারফরম্যান্স উন্নতির জন্য:

  • WHERE ক্লজ ফিল্টারে প্রয়োগ হওয়া কলামে SORT কী ব্যবহার করুন।
  • JOIN প্রেডিকেটে প্রয়োগ হওয়া কলামে DISTKEY ব্যবহার করুন।
  • প্রথম সর্ট-কী কলাম বাদে সকল কলাম কমপ্রেস করুন।
  • ডেটা লেকের ডেটা পার্টিশন করুন কোয়ারী ফিল্টার যেমন অ্যাক্সেস প্যাটার্ন অনুযায়ী।

আরও কিছু সেরা অনুশীলন এক্সপ্লোর করতে, Amazon Redshift পরিবর্তনগুলোর গভীরে যান, এবং একটি গভীর কোয়ারী অ্যানালিসিস উদাহরণ দেখুন, AWS Partner Network (APN) ব্লগ পড়ুন।

আপনি যদি একটি ডেটা যাত্রা শুরু করছেন এবং AWS সার্ভিস ব্যবহার করে দ্রুত, নির্ভরযোগ্য, এবং খরচ-প্রভাবশীলভাবে আপনার ডেটা প্ল্যাটফর্ম ডেভেলপ করতে চান, তবে আজ আমাদের Data Engineering & Analytics টিমের সাথে যোগাযোগ করুন।

Onica সার্ভিস সম্পর্কে আরও জানুন।

ফিডব্যাক ট্যাব ব্যবহার করে মন্তব্য করুন বা প্রশ্ন জিজ্ঞাসা করুন। আপনি সেলস চ্যাট-এ ক্লিক করেও এখনই কথা বলার শুরু করতে পারেন।


  1. বিগ ডেটার জন্য শীর্ষ প্রোগ্রামিং ভাষা – পার্ট ১: সঠিক টুলস নির্বাচন

  2. বিগ ডেটার জন্য সেরা প্রোগ্রামিং ল্যাঙ্গুয়েজ: পার্ট ২ - উদ্ভাবনী টুল যা ইন্ডাস্ট্রি রূপান্তর করছে

  3. উইন্ডোজ ১০, ৮, এবং ৭-এর জন্য সেরা ১২টি বিশ্বস্ত ডেটা শ্রেডার সফটওয়্যার

  4. উইন্ডোজ ১০/৮/৭ পিসি জন্য সেরা USB ডেটা রিকভারি সফটওয়্যার—ডিলিট করা ফাইল 순간ে রিকভার করুন