یه چالش خیلی مهم برای هر سامانه و سیستمی اینکه بهترین روش برای ساخت و ذخیره و سازی لاگ ها چیه؟! تا بشه بعدا ازش بهترین استفاده رو داشت و منظورم از استفاده دسترسی سریع، ساختار و نظم و استفاده از فضای بهینه است .
اینا چیزاییه که تاثیر مستقیم روی کار من به عنوان دیتاانالیست داره. فکر کن یه کوئری نوشتن و بازیابی ااطلاعات بخواد ساعت ها از من زمان. وای نه!!!!!!!!!!!!
یه R&D تو هفته گذشته داشتم در این مورد . چند تا استک رو بررسی کردم و میخوام نتیجه رو باهاتون به اشتراک بذارم
سه تا استک رو بررسی کردم که عبارتند ازززززززززز: EFK / ELK / KDF
***********************************
EFK: Elasticseach – FluentD – Kibana
ELK : Elasticsearch – Logdash – kibana
KDF : Kafka – Debezium – Flink
**********************************
-
خب از نظر پیچیدگی و دانش فنی و پیش نیاز ها استک KDFاز همه اش سخت تررررره
-
از نظر طراحی ظاهر و گرافیک و ui راحت استک EFK از دو تای دیگه جای مانور بیشتری داره . خیلی بیشتر
-
از نظر بهینه بودن در حافظه مصرفی استک EFKپیشتازه و بسیار سبکه
-
اگر لاگ و اطلاعات رو real-time یا near real-time میخواین استکKDF بهترینشه
-
چون مانیتورینگ بسیار بسیار بسیار نکته مهمه استک EFKتوصیه که با ابزارهایی مثل Kubernetes تطبیق پذیری بالایی داره
-
اگر لاگ هاتون پراکنده اس و از منابع مختلف میاد استک EFK عالیه چون FluentD انعطاف زیادی تو این زمینه داره و میتونه از منابع مختلف با نوع های متفاوت لاگ ها رو جمع اوری و مدیریت کنه.
این همه نکته مهم گفتم اما نتیجه نهایی، به نظر من بهترین استک…..
درام رول پلیزززززززززززز
بستگی به دیتایی داره که باهاش مواجهین 🙂