الاستیک سرچ (Elasticsearch) چیست؟

الاستیک سرچ (Elasticsearch) چیست؟


در این مقاله می خواهم تا با شما در مورد اینکه Elasticsearch چیست و چه کاری انجام می دهد، صحبت کنم. همه کسانی که با برنامه نویسی سروکار دارند، حتما اسم Elasticsearch را شنیده اند و یا با آن کار کرده اند. Elasticsearch یا الاستیک سرچ، یک موتور جستجوی اوپن سورس است که توسط شرکت آپاچی و بر اساس Apache Lucene ساخته شده است. مبنای استیک سرچ، معماری Rest است.
Elasticsearch
موارد استفاده از الاستیک سرچ بیشتر در زمینه های جستجوی Full-text، تحلیل لاگ، تحلیل تجاری، هوش امنیتی و هوش عملیاتی است و از سال 2010، تقریبا مشهورترین موتور جستجو به حساب می آید و از رقبای خود پیشی گرفته است.
Elasticsearch
شما توسط APIو ابزارهای مربوط به تفسیر لاگ مانند Amazon kinesis Firehoseو logstash و یا موتور جمع آوری داده، قادر هستید که اطلاعات خودتان را به صورت فایل و یا فایل های JSON به سمت الاستیک سرچ ارسال کنید. در این حالت Elasticsearch فایل اصلی را ذخیره می کند و در ایندکس کلاستر مربوط به این فایل، یک کلید قابل جستجو را اضافه میکند. در نتیجه شما قادر خواهید بود تا این فایل را با APIکه برای Elasticsearchساخته شده است، جستجو کنید. البته می توانید برای این کار از Kibanaهم استفاده کنید.
Elasticsearch
پاسخ خیر است. Elasticsearch یک نرم افزار رایگان و اوپن سورس است و شما می توانید آن را به صورت مستقیم در محل و یا اینکه بر روی سرویس Amazon Elasticsearchو یا Amazon EC2 اجرا کنید. اگر شما الاستیک سرچ را بر روی Amazon EC2 و یا در محل اجرا کنید، نصب الاستیک سرچ و سایر نرم افزارهای جانبی آن و فراهم کردن زیرساخت و همچنین مدیریت کلاستر، با شما است.
Elasticsearch
اما اگر برای این کار از سرویس Amazon Elasticsearch استفاده کنید، دیگر مسئولیتی با شما نیست چرا که این سرویس کاملا مدیریت شده است و شما نیازی به نگرانی در رابطه با مواردی مانند بسته بندی نرم افزار، آماده سازی سخت افزار، بازیابی سیستم پس از هر شکست و پشتیبانی و مانیتورینگ نخواهید داشت.سرویس Amazon Elasticsearchمزایای استفاده از Elasticsearchکاهش زمان پروژه به طور کلی APIهای بر پایه REST ساده و دارای رابط کاربری HTTP ساده را ارائه می کند. علاوه بر آن، این موتور جستجو از فایل های رایگان JSONاستفاده می کند. این ویژگی باعث کاهش زمان پروژه ای که از الاستیک سرچ می شود و می توان به سرعت برنامه های کاربردی را با آن ایجاد کرد.کارایی بالااین به آن معنی است که می تواند مقادیر زیادی از داده ها را به صورت موازی پردازش کرده و سریعا مناسب ترین جواب را برای جستجوی شما نمایش دهد. همانطور که در بالاتر توضیح دادیم، Kibana که یک ابزار معروف در گزارش دهی و تصویرسازی است، به طور یکپارچه ای با Elasticsearch مورد استفاده قرار می گیرد. البته الاستیک سرچ با سرویس های دیگری مانند Logstashو Beats نیز در ارتباط است و توسط آنها می توانید به سادگی، کدهای اصلی خودتان را تبدیل کنید و در کلاستر مربوط به الاستیک سرچ خود ذخیره کنید.استفاده از Logstash البته شما علاوه بر 3 سرویسی که ذکر کردیم، می توانید از سایر پلاگین های اوپن سورس الاستیک سرچ مانند مفسرهای زبان یا پیشنهاد دهنده ها نیز برای افزایش کارایی برنامه هایتان استفاده کنید.عملیات Real Timeاستفاده از Elasticsearch سرعت زیادی را برای شما به ارمغان می آورد. عملیات ها در الاستیک سرچ بسیار سریع و در کمتر از یک ثانیه انجام می شود. از این استفاده از الاستیک سرچ برای نرم افزارهای مانیتورینگ و یا تست و خطایابی بسیار کارآمد خواهد بود.توسعه آسان برنامهبه دلیل پشتیبانی Elasticsearchاز زبان های فراوانی مانند پایتون، جاوا، جاوا اسکریپت، PHP، Ruby ، Node.jsو …، توسعه ساده تری نسبت به سایر برنامه های مشابه خود دارد.توسعه آسان Elasticsearchکاربردهای Elasticsearch هر روز در حال اضافه شدن و تغییر است اما 5 مورد از اصلی ترین کاربردهای آن عبارتند از :تحلیل لاگ و لاگ گیریبرای کسانی که با الاستیک سرچ کار کرده اند، اصطلاح تحلیل لاگ و لاگ گیری بسیار قابل درک است. ابزارهایی که همراه با Elasticsearch ارائه می شوند و به صورت یکپارچه با آن اجرا می شوند، الاستیک سرچ را به یکی از آسان ترین تکنیک های لاگ گیری مبدل کرده اند.خیلی از افراد از این ویژگی برای فعال کردن لاگ مربوط به پروژه خود بهره می برند. شما با استفاده از Elasticsearch از امکانات زیادی مانند Beats ، Ingest Node و Logstash که به منظور جمع آوری داده ها از هر قسمت و ایندکس گذاری آنها استفاده می شود، بهره مند خواهید شد. از طرفی، ابزارهایی مانند Kibana هم به شما امکان ساخت داشبوردهای قدرتمند و همچنین تجزیه و تحلیل را می دهند. این در حالی است که Curator امکان گذاشتن عملیات نگهداری بر روی حالت خودکار را می دهد.جمع آوری و ترکیب داده های عمومیدارای ابزارهای مختلفی به منظور جمع آوری و همینطور ایندکس گذاری ساده داده های راه دور است. از طرفی Elasticsearch به علت نداشتن یک تم پیچیده و سخت گیرانه که ویژگی مشترک تمامی روش های ذخیره سازه غیر رابطه ای که بر پایه ذخیره اسناد است، توانایی و انعطاف لازم برای بارگذاری منابع متفاوت داده و همچنین نگهداری و قابل جستجو کردن این منابع را دارد.جستجوی Full textجستجوی Full Text یکی از مهم ترین توانایی های Elasticsearch است. کاربرانی که از این قابلیت الاستیک سرچ استفاده میکنند، نتایج بهتری را در مقایسه با جستجوی های قدیمی دریافت می کنند. در بحث مربوط به تشخیص Fraud، کاربران ثابت کردند که توانایی های الاستیک سرچ در فرایند جستجو، انعطاف زیادی دارد و شامل ابزارهایی است که فرایند جستجو را ساده تر میکند. از طرفی Elasticsearch، کوئری DSL مخصوص به خود را دارد. علاوه بر آن دارای توانایی تصحیح و ویرایش خودکار متن است و به طور مثال، اشتباه تایپی موجود در متن را به صورت آیا منظور شما “حدس صحیح خودش” است؟ نشان می دهد.معیارها و داده های برنامهدر داده های سری زمانی مثل رویدادهای برنامه و یا معیارها، Elasticsearch قوی عمل میکند. این حد از کارایی به لطف سرویس Beats انجام می شود. با استفاده از این سرویس، امکان جمع آوری آسان داده ها به منظور جستجوهای مشترک را خواهید داشت. الاستیک سرچ همچنین امکان اضافه کردن هر کامپوننتی را که شما بر اساس معیارهای خود به آن نیاز دارید را به شما می دهد.داده های تصویر سازیبرنامه Kibana ، صدها امکان برای ترسیم چارت، TimeLion برای داده های مربوط به سری زمانی و سرویس tile برای اطلاعات جغرافیایی را دارد و یک ابزار تصویر سازی فوق العاده قدرتمند و ساده است. برای تک تک این موارد در Kibana، کامپوننت های تصویری مختلفی وجود دارد. ترکیب Kibanaو Elasticsearch برای افرادی که ابزاری کارآمد برای تصویرسازی داده ها نیاز دارند، بسیار مفید است.Elasticsearchمواردی که در پاراگراف قبل به آنها اشاره کردیم، پر استفاده ترین کاربردهای Elasticsearch هستند. با Elasticsearch و سایر ابزارهای Elastic Stack و ادغام آنها، می توانید نتیجه بسیار بیشتری را دریافت کنید. یکی از بزرگترین مزیت های استفاده از الاستیک سرچ، ارتقا ابزارها و فناوری هایی که از آنها استفاده می کنید است بدون اینکه نیازی به اضافه کردن دیتابیس جدید داشته باشید.

منبع

Author: admin

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *