কম্পিউটার

CockroachDB-এর জন্য ObjectRocket-এর সাথে SQL বিতরণ করা স্কেলিং

আগস্ট 2019 সালে, ObjectRocket.com/blog এ প্রকাশিত

CockroachDB® ডাটাবেস প্রযুক্তির Rackspace ObjectRocket পরিবারের অংশ। CockroachDB-এর স্কেলিং ক্ষমতাগুলি উত্তেজনাপূর্ণ, যেখানে ডেটা প্রতিলিপি এবং বিতরণ (উচ্চ প্রাপ্যতা সর্বাধিক করা), স্বয়ংক্রিয় ডাটাবেস পুনঃব্যালেন্সিং, এবং মাল্টি-জিও ডেটা সেন্টারগুলি ডেটা-ডোমিসিলিং কমপ্লায়েন্স সমর্থন করে। এবং এই সবগুলি উচ্চ ডেটা অখণ্ডতা এবং বিতরণ করা ACID লেনদেনের সাথে কারণ CockroachDBdata স্থিতিস্থাপকতা অবশ্যই থাকা আবশ্যক৷

আমরা CockroachDB-এর সাথে স্কেলিংয়ের কিছু হাইলাইট শেয়ার করতে চাই এবং র‍্যাকস্পেস অবজেক্ট রকেটের DBaaS কী অফার করে তা দেখতে চাই। একজন বিকাশকারী হিসাবে, আপনি যখন আমাদের পরিচালিত-সার্ভিসপ্ল্যাটফর্মে CockroachDB ব্যবহার করেন, তখন আপনি আপনার অ্যাপ্লিকেশনগুলি তৈরিতে ফোকাস করতে পারেন এবং একটি ডাটাবেস চালানোর জটিলতায় নয়৷

CockroachDB-এর জন্য ObjectRocket-এর সাথে SQL বিতরণ করা স্কেলিং

আজকাল, স্কেলিং সর্বাপেক্ষা গুরুত্বপূর্ণ

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

এই ল্যান্ডস্কেপে, একটি স্কেলিং কৌশল প্রয়োগ করা গুরুত্বপূর্ণ যা আপনার ডেটা স্টোরের বর্তমান চাহিদা পূরণ করে এবং এছাড়াও ডেটা এবং নতুন, এখনও কল্পনা করা হয়নি, আরও বেশি ডেটা এবং লেনদেনের উত্সগুলির অনিবার্য বৃদ্ধির অনুমতি দেয়৷

স্কেলিং মানে বর্তমান কাজের চাপ যথাযথভাবে পরিচালনা করার জন্য প্রয়োজনীয় ডাটাবেস সংস্থানগুলি উপরে (বা নিচে) র‌্যাম্প করা। নিম্নলিখিত উপায়ে স্কেল করুন:

  • উল্লম্ব স্কেলিং: একটি ক্লাস্টারের মধ্যে অন্তর্নিহিত নোডগুলিতে RAM, স্টোরেজ স্পেস এবং CPU যোগ করুন (বা সরান)৷
  • অনুভূমিক স্কেলিং: কাজের চাপ সামলাতে প্রয়োজন হলে আরও নোড যোগ করুন (একটি নোডে আরও সংস্থান যোগ করার পরিবর্তে)।

বেশিরভাগ রিলেশনাল ডাটাবেস উল্লম্ব স্কেলিং ব্যবহার করে। যাইহোক, বেশিরভাগ বিতরণ করা ডেটাবেস (প্রায়শই অ-সম্বন্ধীয়) অনুভূমিক স্কেলিং ব্যবহার করে- যা ভারী লেনদেন লোড, ঘন ঘন প্রশ্ন, পঠন/লেখা এবং স্থিতিস্থাপকতার প্রয়োজনীয়তার জন্য ভাল। প্রযুক্তিগত (কম্পিউটেশনাল) সীমার কারণে আপনি কেবলমাত্র উল্লম্বভাবে স্কেল করতে পারেন। হার্ডওয়্যারের একক অংশ।

যাইহোক, অনুভূমিকভাবে স্কেলিং গণনাগতভাবে সীমাবদ্ধ নয় এবং কেবলমাত্র উপলব্ধ হার্ডওয়্যারের পরিমাণ এবং সফ্টওয়্যার যা সমর্থন করে তার মধ্যে সীমাবদ্ধ। যা CockroachDB কে অনন্য করে তোলে তা হল যে এটি ডিস্ট্রিবিউটেড অনলাইন লেনদেন প্রক্রিয়াকরণ (OLTP) সিস্টেমে অন্তর্নিহিত দ্রুত, রিয়েল-টাইম রিড এবং রাইটের প্রতিক্রিয়া হিসাবে অনুভূমিকভাবে রিলেশনাল ডাটাবেস (ঐতিহ্যগতভাবে সম্ভব নয়) স্কেলিং করার জন্য একটি দুর্দান্ত সমাধান প্রদান করে। আপনি উল্লম্বভাবে CockroachDB স্কেল করতে পারেন, তবে আরও নোড যোগ করে স্কেলিং হল পছন্দের পদ্ধতি৷

ককরোচডিবি স্কেলিংকে কী বিশেষ করে তোলে?

Rackspace ObjectRocket-এর প্রোডাক্ট ম্যানেজার ডেরেক জনসনের মতে, CockroachDB-এর স্কেলিংয়ের সবচেয়ে উত্তেজনাপূর্ণ দিক হল এটি কতটা স্মার্ট৷ আপনি প্রথম নোড তৈরি এবং কনফিগার করার পরে, পরবর্তী নোডগুলি যোগ করা সহজ হয়৷ মাল্টি-নোড পরিবেশে, আপনি অটো-স্কেল, ব্যালেন্স ডেটা এবং স্ব-পরিচালিত ভূ-নির্দিষ্ট সম্মতির প্রয়োজনীয়তাগুলির শক্তিশালী CockroachDB বৈশিষ্ট্যগুলিকে আপনার ডেটা স্টোরকে নির্ভরযোগ্য, সঙ্গতিপূর্ণ এবং পারফরম্যান্স রাখতে পারেন। অপ্টিমাইজড কনফিগারেশনের সাথে, আপনি CockroachDB এর আসল ক্ষমতার সুবিধা নিতে পারেন। উদাহরণস্বরূপ, —locality ব্যবহার করে নোডের অঞ্চল এবং প্রাপ্যতা অঞ্চল বর্ণনা করার জন্য পতাকা, CockroachDB ভূ-বিভাজন প্রয়োগ করে এবং নির্দিষ্ট অঞ্চলের মধ্যে স্বয়ংক্রিয়ভাবে ডেটা রাখে৷

এখানে কিছু স্কেলিং হাইলাইটের ব্রেকডাউন রয়েছে:

আপনার ডেটা স্টোর স্কেল হিসাবে ডেটা অখণ্ডতা

  • লেনদেনগুলি এসিআইডি-সম্মত, এবং আপনি BEGIN-এর মত SQL কমান্ড ব্যবহার করে সেগুলিকে স্বাভাবিক পদ্ধতিতে ব্যবহার করতে পারেন অথবা COMMIT .
  • CockroachDB রিলেশনাল ডেটাবেস থেকে আলাদা। স্কেলিংয়ের সময়, এটি একটি একক নোডে যাওয়ার পরিবর্তে সমস্ত প্রাসঙ্গিক নোড জুড়ে পঠন এবং লেখা উভয়ই বিতরণ করে। এই মাল্টি-অ্যাকটিভ উপলভ্যতা হল CockroachDB-এর উচ্চ প্রাপ্যতার সংস্করণ এবং জিও-স্প্যানিংয়ের অনুমতি দেয়।
  • CockroachDB কমপক্ষে তিনটি ভিন্ন নোডের প্রতিলিপি অনুরোধ পাঠানোর মাধ্যমে সর্বসম্মত প্রতিলিপি ব্যবহার করে এবং তারপর বেশিরভাগ নোড রিপোর্ট না করা পর্যন্ত প্রতিলিপি করার জন্য অপেক্ষা করে যে তারা সফলভাবে ডেটা প্রতিলিপি করেছে।
  • মধ্যস্থ লেনদেন, প্রতিটি লেখার জন্য অভিপ্রায় এবং রেকর্ড সহ, লেনদেনের দ্বন্দ্ব প্রতিরোধ করে৷
  • CockroachDB সমস্ত লেনদেনের মধ্যস্থতা করতে দুটি বস্তু ব্যবহার করে:একটি লেনদেনের রেকর্ড এবং একটি লেখার অভিপ্রায়, যা একে অপরের সাথে চেক-ইন করে এবং যদি প্রয়োজন হয়, লেনদেন পুনরায় চালু করে যাতে এটি সর্বশেষ মানগুলি নিশ্চিত করে।
  • CockroachDB এর ডেটা ব্যালেন্স এবং প্রতিলিপির কারণে কর্মক্ষমতা এবং ডেটা অখণ্ডতার একটি ভাল ভারসাম্য প্রদান করে৷

উদ্ধারে জিও-পার্টিশনিং!

ভৌগোলিকভাবে সাইলো করা শার্ডগুলি তৈরি করার পরিবর্তে, লেটেন্সি উন্নত করা কিন্তু ক্রস-জিও কোয়েরি প্রতিরোধ করা, সংজ্ঞায়িত অঞ্চলের মধ্যে ডেটা প্রতিলিপি করতে রেঞ্জ স্তরে CockroachDBuses কনফিগারেশন সেটিংস। CockroachDB তার অনন্য জিও-পার্টিশনিং ক্ষমতা সহ দ্বি-উদ্দেশ্য মূল্য প্রদান করে। ডেটা সঞ্চয় করার জন্য নির্দিষ্ট অঞ্চলটি কনফিগার করার মাধ্যমে, আপনি অ্যাপ্লিকেশন কার্যক্ষমতা (ব্যবহারকারীদের অ্যাপ্লিকেশনের কাছাকাছি ডেটা) এবং জিডিপিআরডেটা সম্মতি উভয়ই অর্জন করেন৷

CockroachDB অ্যাডমিন UI এর একটি চমত্কার ভৌগলিক প্রদর্শন রয়েছে যাকে বলা হয় নোড ম্যাপ , যা সমস্ত নোডের জন্য আইকন এবং প্রতিটি নোডের বিবরণ সহ বিশ্বের একটি মানচিত্র দেখায়৷ এই গ্রাফিকাল ডিসপ্লে ডেটাস্টোরের মধ্যে লেটেন্সি সমস্যার পরিকল্পনা এবং সমস্যা সমাধানে সহায়তা করে। অবজেক্ট রকেট মিশন কন্ট্রোল UI এর মাধ্যমে আপনার CockroachDB অ্যাক্সেস করার সময়, আপনি নোড ম্যাপ দেখতে CockroachDB AdminUI এর সাথে সহজেই লিঙ্ক করতে পারেন।

উপযুক্ত কনফিগারেশন সহ ম্যানুয়ালি নতুন নোড যোগ করা স্মার্ট এবং দ্রুত স্কেল-আউটের জন্য অনুমতি দেয়

  • আপনি যদি নতুন নোডগুলিকে সক্রিয়ভাবে স্পিন আপ করতে চান, আপনি নোড তৈরি করতে এবং প্রয়োজনীয় ফ্ল্যাগ এবং অন্যান্য কনফিগারেশন সেট করতে CLI বা অ্যাডমিন UI এর মাধ্যমে একটি কমান্ড ব্যবহার করতে পারেন৷
  • যদিও স্কেল করার জন্য আপনাকে অনেক ডেটাবেস থামাতে হবে এবং শুরু করতে হবে, CockroachDB এর সাহায্যে, সিস্টেমটি লোডের মধ্যে থাকা অবস্থায় আপনি সহজেই আরও নোড যোগ করতে পারেন।

অর্কেস্ট্রেশন ব্যবহার করে, স্কেলিং স্বয়ংক্রিয়ভাবে পরিচালনা করা হয়, কোন ডাউনটাইম ছাড়াই

CockroachDB নিম্নলিখিত স্কেলিং সুবিধাগুলি অফার করে:

  • অর্কেস্ট্রেশন প্ল্যাটফর্মের মাধ্যমে CockroachDB স্কেল করা সহজ করে তোলে এবং শক্তিশালী অটোমেশনের জন্য অনুমতি দেয়। উদাহরণস্বরূপ, আপনি যখন কুবারনেটস ব্যবহার করেন (যেমন অবজেক্ট রকেট করে), তখন একটি একক কমান্ড ককরোচডিবিকে স্কেল-আউট করতে পারে, নতুন সংস্থান সরবরাহ করতে এবং প্রয়োজন অনুসারে অতিরিক্ত পডগুলি স্পিন করতে পারে।
  • নোড জুড়ে ডেটা পুনঃব্যালেন্সিং স্বয়ংক্রিয়ভাবে ঘটে, এমনকি ডেটা সেন্টার এবং বিভিন্ন ক্লাউড প্রদানকারীর মধ্যেও৷
  • ডিস্ট্রিবিউটেড লেনদেনের অর্থ হল কাজের চাপের উপর কোন প্রভাব নেই, কোন ডাউনটাইম নেই এবং বিলম্বে কোন বৃদ্ধি নেই।
  • সমস্ত নোড জুড়ে সমানভাবে সার্ভারের ব্যবহার অপ্টিমাইজ করা CockroachDB-এর অটো-স্কেলিংয়ের একটি স্বাভাবিক ফলাফল।

এটি একটি পরিচালিত পরিষেবাতে একত্রিত করা

ObjectRocket একটি Kubernetes কন্টেইনার-ভিত্তিক আর্কিটেকচার ব্যবহার করে আপনার CockroachDB ডেটা স্টোরগুলির জন্য সম্পূর্ণ পরিচালিত পরিষেবাগুলি অফার করে৷ পরিষেবাটিতে নকশা এবং স্থাপনার পরামর্শ, সম্পূর্ণ প্রযুক্তিগত সহায়তা এবং CockroachDB-এর এন্টারপ্রাইজ-লাইসেন্সযুক্ত সংস্করণের সমস্ত সুবিধা অন্তর্ভুক্ত রয়েছে৷

পরিচালিত CockroachDB সমাধানের মূল বৈশিষ্ট্যগুলির মধ্যে রয়েছে:

  • থ্রি-নোড হাই অ্যাভেলেবিলিটি (HA) ক্লাস্টার
  • অবজেক্ট রকেট UI হলেও CockroachDB অ্যাডমিন UI-তে অ্যাক্সেস
  • আইপি ঠিকানা হোয়াইটলিস্টিং
  • ব্যবহারকারীর প্রমাণীকরণ
  • ট্রান্সপোর্ট লেয়ার সিকিউরিটি (TLS)

আপনার কাছে এটির অর্থ হল আপনি একটি আরামদায়ক SQL ইন্টারফেস এবং PostgreSQLwire সামঞ্জস্য সহ একটি রিলেশনাল, ACID-সম্মত ডেটা স্টোর পাবেন, কিন্তু স্বয়ংক্রিয় HA, সহজ স্কেলেবিলিটি এবং ভৌগলিক স্কেলিং সহ।

ObjectRocket-এর পরিচালিত CockroachDB অফার আপনাকে পূর্ব-নির্ধারিত নোডের ধরন থেকে আপনার ডেটার প্রয়োজনের জন্য সর্বোত্তম বিকল্পটি নির্বাচন করতে সক্ষম করে এবং তারপরে প্রয়োজন অনুসারে সেই নোডের আরও অনেকগুলি যোগ করে অনুভূমিকভাবে স্কেল করে। আমাদের Kubernetes-ভিত্তিক প্ল্যাটফর্ম স্বয়ংক্রিয়ভাবে ব্যর্থ বা সমস্যাযুক্ত নোডগুলি প্রতিস্থাপন করে যাতে আমরা নিশ্চিত করতে পারি যে আপনার ক্লাস্টার সর্বদা চালু এবং উপলব্ধ রয়েছে৷

CockroachDB এবং র‍্যাকস্পেস অবজেক্ট রকেট আমাদের পরিচালিত পরিষেবাগুলির সাথে কী সরবরাহ করে তা দেখার জন্য এটি একটি দুর্দান্ত সময়। CockroachDB-এর একটি পরিচালিত অফার কীভাবে আপনার ডেটা স্টোরের প্রয়োজনীয়তাগুলি সমাধান করতে পারে সে সম্পর্কে কিছু অন্তর্দৃষ্টির জন্য, আমাদের শীর্ষ 5 ব্যবহারের কেস ব্লগ পড়ুন৷ Cockroach® এর চমৎকার ডকুমেন্টেশন রয়েছে, এবং আপনি যদি CockroachDB সম্পর্কে কথোপকথন করতে আগ্রহী হন বা আরও জানতে চান তবে এখানে আমাদের সাথে যোগাযোগ করুন Rackspace-এ। .

র্যাকস্পেস ক্লাউড পরিষেবার শর্তাবলী দেখতে এখানে ক্লিক করুন।

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


  1. MongoDB এর সাথে স্কেলিং:একটি শার্ডিং অবকাঠামো সেট আপ করা

  2. RoboMongo এবং ObjectRocket সহ MongoDB ভিজ্যুয়ালাইজ করা

  3. আপনার অবজেক্ট রকেট উদাহরণের সাথে কীভাবে JSONStudio ব্যবহার করবেন

  4. অবজেক্ট রকেট ইলাস্টিকসার্চে কিবানা 4 এর সাথে আপ এবং রানিং