পর্যবেক্ষণযোগ্যতা: ডিস্ট্রিবিউটেড সিস্টেমের জন্য ট্রেসেবিলিটি

পর্যবেক্ষণযোগ্যতা: ডিস্ট্রিবিউটেড সিস্টেমের জন্য ট্রেসেবিলিটি

উত্স নোড: 1990640

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

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

এক দশকেরও বেশি আগে, নিরীক্ষণের সরঞ্জামগুলিতে অন্তর্নিহিত সিস্টেম সমস্যাগুলির প্রসঙ্গ এবং দূরদর্শিতার অভাব ছিল এবং দলগুলি প্রতিদিনের অপারেশনাল ত্রুটিগুলি ডিবাগ করার জন্য সীমাবদ্ধ থাকবে। আজ, আমরা মাইক্রোসার্ভিসের একটি বিতরণ করা জগতে কাজ করি এবং বাস করি ডেটা পাইপলাইন; এমনকি একাধিক মনিটরিং টুল নিয়োগ করা আপনাকে আপনার ব্যবসায়িক প্রশ্নের উত্তর দিতে সাহায্য করবে না যেমন "কেন আমার আবেদন সবসময় ধীর হয়?" বা "কোন পর্যায়ে সমস্যাটি ঘটেছে, এবং এটি স্ট্যাকের মধ্যে কতটা গভীর?" বা "আমি কিভাবে পরিবেশের সামগ্রিক কর্মক্ষমতা উন্নত করতে পারি?" এই সিদ্ধান্তগুলি নেওয়ার জন্য সক্রিয় হওয়া এবং আপনার সিস্টেম, অ্যাপ্লিকেশন এবং ডেটার সামগ্রিক দৃশ্যমানতা থাকা প্রয়োজন।

এই ব্লগ পোস্ট Etsy দ্বারা এক দশক আগে প্রকাশিত হয়েছিল, এবং এটি দ্বিতীয় অনুচ্ছেদে সত্যটি বলে:

“অ্যাপ্লিকেশন মেট্রিক্স সাধারণত তিনটির মধ্যে সবচেয়ে কঠিন, তবুও সবচেয়ে গুরুত্বপূর্ণ। এগুলি আপনার ব্যবসার জন্য খুব নির্দিষ্ট, এবং আপনার অ্যাপ্লিকেশনগুলি পরিবর্তন হওয়ার সাথে সাথে সেগুলি পরিবর্তিত হয় (এবং Etsy অনেক পরিবর্তিত হয়)।"

সুতরাং, আমরা কিভাবে সবকিছু এবং কিছু পরিমাপ করব? আমরা পর্যবেক্ষণযোগ্যতা দিয়ে শুরু করি।

পর্যবেক্ষণযোগ্যতা কি?

"পর্যবেক্ষণযোগ্যতা" শব্দটি ছিল উদ্ভাবন 1960 সালে রুডলফ এমিল কালমান তার ইঞ্জিনিয়ারিং পেপারে গাণিতিক নিয়ন্ত্রণ ব্যবস্থা বর্ণনা করেন। তিনি এটিকে একটি পরিমাপ হিসাবে সংজ্ঞায়িত করেছেন যে একটি সিস্টেমের অভ্যন্তরীণ অবস্থাগুলি তার বাহ্যিক আউটপুটগুলির জ্ঞান থেকে কতটা ভালভাবে অনুমান করা যায়। কিন্তু এটা মনিটরিং মত শোনাচ্ছে না? মূলত, হ্যাঁ, এটি পর্যবেক্ষণ করা হয়।

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

পর্যবেক্ষণযোগ্যতা ট্রেস, লগ এবং মেট্রিক্স সংগ্রহ এবং একত্রিত করার মাধ্যমে বিতরণ ট্রেসিংয়ের অনুমতি দেয়। চলুন দেখে নেওয়া যাক এগুলো কি অনুমান করে:

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

এই বৈশিষ্ট্যগুলি ট্রেসেবিলিটি সহ পর্যবেক্ষণ কাঠামোকে উন্নত করে। ট্রেসেবিলিটি আপনাকে এমন একটি অনুরোধ ট্রেস করার জন্য লেন্সগুলি সরবরাহ করে যা আপনার সিস্টেমে একটি কল করে, একটি উপাদান থেকে অন্য উপাদানে যেতে কতক্ষণ সময় লাগে, এটি অন্য কোন পরিষেবাগুলি আহ্বান করে, এটি কোন ত্রুটি ছুঁড়ে দেয়, এটি কী লগ তৈরি করে, এটি কী অবস্থা এটি কখন শুরু হয়েছে এবং শেষ হয়েছে, এটি আপনার সিস্টেমে কোন টাইমলাইনে থেকে গেছে ইত্যাদি , একটি পণ্য অনুসন্ধান করতে তাদের কতক্ষণ লেগেছে, তারা পণ্যটি কতক্ষণ দেখেছে, HTML পৃষ্ঠাটি কি ছবি বা এমবেড করা ভিডিওর মতো সম্পূর্ণ বিবরণ লোড করেছে, অর্থপ্রদানের প্রমাণীকরণ এবং প্রক্রিয়া করতে সিস্টেমটি কতক্ষণ সময় নিয়েছে ইত্যাদি।

একটি বিতরণ পরিবেশে পর্যবেক্ষণযোগ্যতার সাথে আমরা কী অর্জন করব?

বিতরণ ব্যবস্থার বিবর্তন শুরু হয়েছিল যখন সংস্থাগুলি তাদের কেন্দ্রীভূত মনোলিথ আর্কিটেকচার থেকে একটি বিতরণ এবং বিকেন্দ্রীভূত মাইক্রোসার্ভিস আর্কিটেকচারে সরে যেতে শুরু করেছিল। এবং এটি এখনও একটি কাজ চলছে যেখানে অনেক সংস্থা সিস্টেম এবং অ্যাপ্লিকেশনগুলির মাইক্রোসার্ভিস প্রকৃতি গ্রহণ করছে। এবং এই সব দায়ী করা যেতে পারে বড় তথ্য এবং স্কেলিং। একটি বিতরণ করা পরিবেশ পরিচালনার জন্য ক্রমাগত শিক্ষা, অতিরিক্ত কর্মশক্তি, কাঠামো এবং নীতিতে পরিবর্তন, আইটি ব্যবস্থাপনা এবং আরও অনেক কিছু প্রয়োজন। এটা সত্যিই একটি বড় পরিবর্তন.

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

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

এই সমস্ত সিস্টেমে অনেকগুলি চলমান উপাদান রয়েছে, যার চিহ্নগুলি ধরা হলে, 5 Ws-এর গল্পটি ব্যাখ্যা করতে পারে: কখন, কোথায়, কেন, কী এবং কীভাবে। উদাহরণস্বরূপ, আপনি কিছু ব্লগ পোস্ট পড়তে 1:43 pm এ DATAVERSITY এর ওয়েবসাইটে যান। যখন আপনি dataversity.net হিট করেন, HTTP অনুরোধটি সিস্টেমে লগ ইন হয়ে যায়। আপনি একটি ব্লগ পোস্টের জন্য অনুসন্ধান শুরু করেন এবং একটি ডেটা গভর্নেন্স পোস্টে যান, যেখানে আপনি সেই পোস্টটি পড়তে 17 মিনিট ব্যয় করেন এবং তারপরে আপনি 2:00 pm এ আপনার ট্যাব বন্ধ করেন

এছাড়াও নেটওয়ার্ক প্যাকেট ক্যাপচারের জন্য নেটওয়ার্ক সিস্টেমে অন্যান্য কল করা হবে। পর্যবেক্ষণযোগ্যতা সরঞ্জামগুলি সমস্ত স্প্যান সংগ্রহ করে এবং তাদের একটি ট্রেস বা ট্রেসে একত্রিত করে, আপনাকে এর জীবনচক্রের সময় এটি যে পথটি তৈরি হয়েছিল তা দেখতে সক্ষম করে। আপনার যদি নেটওয়ার্ক লেটেন্সি বা সিস্টেমের ত্রুটির মতো সমস্যা থাকে, তাহলে এখন ব্যবচ্ছেদ করা (পেঁয়াজের খোসা ছাড়িয়ে) সমস্যাটি ডিবাগ করা সহজ (কোন স্তরে ত্রুটি)।

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

এই ছোট উদাহরণ দিয়ে, আমরা বুঝতে পারি যে আমরা আমাদের সিস্টেমগুলির মধ্যে অনেক গভীর অন্তর্দৃষ্টি পেয়েছি। সুতরাং, সিস্টেমের বৃহত্তর স্কেল বিবেচনা করে, ইঞ্জিনিয়ারিং দলগুলি সিস্টেমের বর্তমান কাঠামোর উন্নতি করতে, নতুন উপাদানগুলি প্রয়োগ বা অবসর নিতে, অন্য সুরক্ষা স্তর যুক্ত করতে, বাধাগুলি অপসারণ করতে এবং আরও অনেক কিছুর জন্য নমুনাকৃত ডেটা ক্যাপচার এবং কাজ করতে পারে। 

সংস্থাগুলির কি পর্যবেক্ষণযোগ্যতা বেছে নেওয়া উচিত?

আমাদের সকলের বোঝা উচিত যে শেষ লক্ষ্যগুলি হল আরও ভাল ব্যবহারকারীর অভিজ্ঞতা এবং আরও বেশি ব্যবহারকারীর সন্তুষ্টি। এবং এই লক্ষ্যগুলি অর্জনের পথ একটি স্বয়ংক্রিয় এবং সক্রিয় পর্যবেক্ষণ কাঠামোর মাধ্যমে সহজ করা যেতে পারে। ক্রমাগত উন্নতি এবং অপ্টিমাইজেশানের একটি সংস্কৃতি প্রতিষ্ঠা করা সর্বোত্তম ব্যবসা এবং নেতৃত্বের পদ্ধতি হিসাবে বিবেচিত হয়। 

ডিজিটাল রূপান্তরের এই যুগে, একটি ব্যবসার ডিজিটাল যাত্রায় সফল হওয়ার জন্য পর্যবেক্ষণযোগ্যতা অপরিহার্য হয়ে উঠেছে। আপনাকে অন্তর্দৃষ্টিপূর্ণ ট্রেস প্রদান করে, পর্যবেক্ষণযোগ্যতা আপনাকে কেবল ডেটা-চালিত না হয়ে ডেটা-অবহিত হতে চালিত করে।

উপসংহার

যদিও আমরা পর্যবেক্ষন এবং পর্যবেক্ষণযোগ্যতা শব্দগুলিকে বিনিময়যোগ্যভাবে ব্যবহার করেছি, আমরা দেখেছি যে যখন মনিটরিং আপনাকে সিস্টেমের স্বাস্থ্য এবং এতে ঘটতে থাকা ঘটনা সম্পর্কে তথ্য দিতে সহায়তা করে, পর্যবেক্ষণযোগ্যতা আপনাকে শেষের গভীর স্তর থেকে সংগৃহীত প্রমাণের উপর ভিত্তি করে অনুমান করতে সহায়তা করে। শেষ পরিবেশ।

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

সময় স্ট্যাম্প:

থেকে আরো ডেটাভার্সিটি