হুইস্পার / গ্রাফাইটের জন্য ডিস্ক ক্যাপাসিটি পরিকল্পনা


14

কারও কাছে কি এমন কোনও সূত্র আছে, বা তাদের পরিবেশের কিছু নমুনা ডেটা রয়েছে যা আমাকে অনুমান করতে সহায়তা করতে পারে যে ডেটাপয়েন্টে গ্রাফাইট দ্বারা কত ডিস্ক স্পেস ব্যবহার করা হবে?


2
নিশ্চিত করুন যে আপনি নিজের ডিস্কের I / O সঠিকভাবে পরিকল্পনা করছেন, এবং কেবলমাত্র আপনার ডিস্কের ক্ষমতা নয়। rdtool, বছরের পর বছর ধরে গ্রাফাইটের হুইস্পার ডাটাবেস ফর্ম্যাটের চেয়ে লেখায় অনেকগুলি মাইক্রো-অপটিমাইজেশন জমা করেছে যা এটিকে অনেক দ্রুত (2x দ্রুত?) করে তোলে। যদি আপনি আপনার সমস্ত ডেটা শালীন এসএসডি-তে রাখার পরিকল্পনা করে থাকেন তবে এটি আপনাকে বেশিরভাগ ক্ষেত্রেই পেয়ে যাবে, তবে আমি স্পিনিং ডিস্কে পুরো টন হুইপার ডিবি রাখার পরিকল্পনা করব না। স্কেল এ, গ্রাফাইট যে ডিস্ক I / O স্তরগুলি ফেলে দেয় এটি কেবল সাশ্রয়ী নয়।
jgoldschrafe

উত্তর:


7

whisper-info.py ফাইলের আকার সহ প্রতিটি ফাইল কী এবং কীভাবে একত্রিত হয় সে সম্পর্কে আপনাকে প্রচুর অন্তর্দৃষ্টি দেয়।

তবে এটি বিদ্যমান বিদ্যমান ফিসফার ফাইলগুলির জন্য কেবল কার্যকর।

আপনি যখন স্কিমাটি স্থাপনের আগে ভবিষ্যদ্বাণীপূর্ণ আকার পরিবর্তন করতে চান, তখন হুইস্পার ক্যালকুলেটরটি চেষ্টা করুন, যেমন https://gist.github.com/jjmaestro/5774063 এ উপলব্ধ

সম্পাদনা করুন:

উদাহরণ চাইলে ...

storage_schema:

{
    :catchall => {
      :priority   => "100",
      :pattern    => "^\.*",
      :retentions => "1m:31d,15m:1y,1h:5y"
    }
}

আমার ফাইলটি দেখছি applied-in-last-hour.wsp, ls -lফলন হচ্ছে

-rwxr-xr-x 1 root root 4415092 Sep 16 08:26 applied-in-last-hour.wsp

এবং whisper-info.py ./applied-in-last-hour.wspফলন

maxRetention: 157680000
xFilesFactor: 0.300000011921
aggregationMethod: average
fileSize: 4415092

Archive 0
retention: 604800
secondsPerPoint: 10
points: 60480
size: 725760
offset: 52

Archive 1
retention: 2678400
secondsPerPoint: 60
points: 44640
size: 535680
offset: 725812

Archive 2
retention: 157680000
secondsPerPoint: 600
points: 262800
size: 3153600
offset: 1261492

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


সেই থেকে আপনার কয়েকটি নমুনা নম্বর পাওয়ার কোনও সুযোগ (রিটেনশন সেটিংসের সাথে যুক্ত)। এই মুহুর্তে আমি ডিস্ক ব্যবহারের ক্ষেত্রে বিভিন্ন টাইম সিরিজের ডেটা স্টোর সম্পর্কে ভাবছি - সুতরাং এর জন্য গ্রাফাইট লাইভ পাওয়া কিছুটা করণীয়।
কাইল ব্র্যান্ড্ট

@ কাইলব্র্যান্ড উত্তর আপডেট হয়েছে।
gWaldo

এর জন্য ধন্যবাদ. ফাইলসাইজের সাথে, ডেটা সংগ্রহের এক ঘন্টা পরে এটি কী হবে বা ফাইলাইজ হ'ল এটি সর্বদা কী হবে? তাহলে কি 4415092 বছরের 5 বছরের প্রতিনিধির ডেটা এই ধারণার মূল্যবান, বা 1 মিনিটের ডেটার এক ঘন্টার প্রতিনিধিত্বকারী কি? এছাড়াও, যে বাইট বা বিটস?
কাইল ব্র্যান্ডেট

এটি এই সংস্থায় একটি নতুন বাস্তবায়ন, এবং আমার পুরানোটির কাছে আমার অ্যাক্সেস নেই। যেহেতু শীর্ষ স্তরের ফাইল সাইজের ফলাফল ফলাফলের সাথে মেলে ls -l, তাই আমি এটিকে বাইট হিসাবে নিতে পারি। আমি যখন ডাব্লুএসপি ফাইলের মধ্যে সংরক্ষণাগারগুলির মাপগুলি জুড়েছি (হিসাবে রিপোর্ট করা হয়েছে whisper-info.py), তারা সামগ্রিক .wsp ফাইলের আকারের কাছে চলে আসে (বাকী আমি ধরে নিই মেটাডেটা এবং এ জাতীয়। সকলের জন্য ফাইলের আকার হওয়া উচিত) সময়, ডেটা নিম্ন ডেটা রেজোলিউশনে নেমে যাওয়ার সাথে সাথে পুরানো ডেটা পয়েন্টগুলি বাতিল করা হয়
gWaldo

ঠিক আছে, তাই এই ধারণার সেটিংস সঙ্গে। মোটামুটি:ServerCount * MetricCount * 4.5MBytes
কাইল ব্র্যান্ডেট

2

স্ট্যাটাসডের ডকুমেন্টেশনে তারা ডেটা ধরে রাখার নীতিটির উদাহরণ দেয়

প্রতিস্থাপনগুলি 10s:6h,1min:7d,10min:5yহ'ল যা 2160 + 10080 + 262800 = 275040 ডেটা পয়েন্ট এবং তারা একটি সংরক্ষণাগার আকার দেয় 3.2 মাইবি

রৈখিক সম্পর্ক ধরে নেওয়া, এটি প্রতি ডাটা পয়েন্টে প্রায় 12.2 বাইট হবে ।


ops-school.readthedocs.org/en/latest/monmitted_201.html (টাইমস্ট্যাম্প, মান) জোড়গুলি দীর্ঘ এবং জোড়া হিসাবে 12 টি বাইট গ্রহণকারী একটি ডাবল মান হিসাবে সংরক্ষণ করা হয়। ০.২ পার্থক্যের কারণেই সম্ভবত ফাইলের মেটাডেটা তথ্য ওভারহেড ?!
ব্যবহারকারী27465

1

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

দ্রুত উত্তরটি "সম্ভবত আপনার মনে হবে আপনার প্রয়োজন হবে এতটা জায়গা নয়।"


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

উদাহরণ হিসাবে আমি ডিস্ক স্পেস ব্যবহার করব - আমরা ৩০ দিনের জন্য 5 মিনিটের নির্ভুলতা, আরও 60 দিনের জন্য 15 মিনিটের নির্ভুলতা এবং তারপরে আরও 300 দিনের জন্য এক ঘণ্টার স্পষ্টতা সহ চিত্রগুলি সংরক্ষণ করি এবং আমরা একটি 64 ব্যবহার করছি -বিট (8 বাইট) এটি সঞ্চয় করতে পূর্ণসংখ্যা:

  • মোট 21600 টি নমুনা:
    • 30 দিনের 5 মিনিটের নির্ভুলতার জন্য 8640 নমুনা
    • 60 দিনের 15 মিনিটের নির্ভুলতার জন্য 5760 টি নমুনা
    • 300 দিনের 1-ঘন্টা নির্ভুলতার জন্য 7200 নমুনা

প্রতি স্যাম্পল প্রতি 8 বাইট যা প্রায় 173KB, স্টোর স্টোরেজ ইনডেক্সিংয়ের জন্য স্বাস্থ্যকর ওভারহেড এবং এর মতো এটি একটি পার্টিশনের ডিস্ক ব্যবহারের ডেটা (অত্যধিক প্রতিরোধের দিকে ঝুঁকিতে কোনও ত্রুটি) প্রায় 200KB এ নিয়ে আসে।

বেস মেট্রিকগুলি থেকে আমি গড়ে "মেশিন প্রতি" আকার (10 ডিস্ক পার্টিশন, অদলবদল স্থান, র‌্যাম, লোড গড়, নেটওয়ার্ক ট্রান্সফার এবং অন্যান্য কয়েকটি জিনিস) নিয়ে কাজ করতে পারি - মেশিনে প্রায় 5MB কাজ করে।

আমি চূড়ান্ত সংখ্যার শীর্ষে একটি স্বাস্থ্যকর 10% যোগ করি এবং গোল করি, সুতরাং আমি প্রতি মেশিনে 6 এমবিতে জিনিসগুলি আকার করি।

তারপরে আমি চার্টিংয়ের জন্য মেট্রিক্স ডেটা সঞ্চয় করার জন্য আমি যে 1TB স্থান রেখেছিলাম তার দিকে তাকিয়ে বলি "হ্যাঁ, আমরা পুরোটা বাড়তে না পারলে আমি সম্ভবত আমার জীবদ্দশায় স্টোরেজটি ছাড়ে না!" :-)


1
আমার উত্পাদন ধরে রাখার নীতিগুলি (9 মাস 5 মিনিটে; 1 ঘন্টা প্রতি ঘণ্টায়; দৈনিক 5 বছর) এবং প্রায় 20 টি মেশিন প্রতি 20 ডলার 8-বাইট মেট্রিক সহ সতর্কতা / অ্যালার্ম সহ সেখানে প্রকৃত অনুশীলন থেকে বেরিয়ে আসার জন্য / সমালোচনামূলক / বহির্মুখী ইভেন্টের ইতিহাস 5 বছরের জন্য আমি ডিস্কের স্থান 1.5G ব্যবহার করছি। এটি ইন্টারগ্র্যাপারটি পোস্টগ্রিস ডাটাবেসে সবকিছু serোকানোর সাথে। আবারও - দ্রুত উত্তরটি "সম্ভবত আপনার মনে হয় আপনার প্রয়োজন হবে এতটা জায়গা নয়" :-)
voretaq7

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

হুইস্পার (স্টোরেজ ব্যাক-এন্ড গ্রাফাইট ব্যবহার করে) এর কিছু বিল্ট-ইন স্পেস-চিউইং আইটেম রয়েছে - আপনি সম্ভবত এটি পৃষ্ঠাটি দেখেছেন। "সংরক্ষণাগারগুলি ওভারল্যাপ সময়কাল" সম্পর্কে অধ্যায়টি আমার কাছে দাঁড়িয়ে আছে কারণ এর অর্থ আর্কাইভগুলি আমার উপরের উদাহরণগুলির চেয়ে বড় কারণ তারা সমস্ত সময়ের শুরুতে ফিরে যায় (60 দিনের সংরক্ষণাগারটি আসলে 90 দিনের দীর্ঘ; 300 দিনের সংরক্ষণাগারটি হয় 390 দিন দীর্ঘ)। ফিসফিস প্রতিটি ডাটা পয়েন্টের পাশাপাশি একটি টাইমস্ট্যাম্প (4 বা 8 বাইট) রাখে যা খুব বেশি যুক্ত করা দরকার। যদিও
অবাক লাগছে

0

আমার কাছে 70 টি নোড রয়েছে যা প্রচুর ডেটা তৈরি করে। কার্বন / হুইস্পার ব্যবহার করে একটি নোড একা তৈরি করেছে 91 কে ফাইল (নোড একাধিক স্কিমার উত্পন্ন করে যার প্রত্যেকটিতে একাধিক কাউন্টার এবং ভেরিয়েবল ক্ষেত্র রয়েছে যা নির্বাচনযোগ্য হতে হবে eg যেমন: (নোডনাম) ((স্কিমা) ((কাউন্টার) ( ) .... ইত্যাদি)

এটি আমার চাইলে গ্রাফ প্লট করার জন্য প্রয়োজনীয় গ্রানুলারিটি সরবরাহ করেছিল। বাকি n৯ টি নোড পপুলেট করার জন্য স্ক্রিপ্টটি চালানোর পরে আমার ডিস্কে ১.৩ টিবি ডেটা ছিল। এবং এটি কেবল 6 ঘন্টা মূল্যবান ডেটা / নোড। আমার কাছে যা ঘটে তা হ'ল আসল ফ্ল্যাট সিএসভি ফাইল 6hrs মূল্যের ডেটা প্রায় 230Mb / নোড। 70 টি নোড ~ 16Gb ডেটা। আমার স্টোরেজ-স্কিমাটি 120 এর দশক: 365 ডি।

আমি ডাটাবেসগুলিতে তুলনামূলকভাবে নতুন, তাই আমি হয়ত কিছু ভুল করছি, তবে আমি অনুমান করছি যে এটি প্রতিটি নমুনার জন্য সমস্ত ওভারহেড।

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

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.