Email: info@developit.ir

elasticsearch چیست؟ آموزش نصب elasticsearch در لینوکس


elasticsearchelasticsearch، یک موتور جستجو و تحلیلگر توزیع شده است که برای تعامل با آن از restful api استفاده میکنیم.

قالب ارسال و دریافت اطلاعات در این موتور جستجو json میباشد.

اولین نسخه از elasticsearch در سال 2010 عرضه شد و در حال حاضر نسخه 5.0.1 آن هم در دسترس میباشد.

elasticsearch  با جاوا توسعه داده شده، یک پروژه متن باز است و تحت مجوز ASL منتشر شده.

 

برای جستجو امکان ترکیب و استفاده از انواع مختلف را میدهد مثل انواع ساخت یافته، غیر ساخت یافته، geometric و...

از آنجایی که همه چیز را داخل خودش index میکند در کمترین زمان ممکن به درخواست ما پاسخ داده خواهد شد.

بسیار مقیاس پذیر است و قابلیت اجرا روی یک لپ تاپ یا صدها سرور با داده های بسیاز زیاد را دارد.

همچنین پایداری و انعطاف پذیری بالایی دارد و در هنگام بروز مشکلات سخت افزاری یا شبکه، خرابی را تشخیص داده و کلاسترُ داده ی خود را حفط میکند تا قابل استفاده باشند.

همانطور که انتظار داریم اجرا شده و به خوبی کار خودش را انجام میدهد.

به منظور کنترل، نظارت و مدیریت API مورد نیاز را در اختیار ما قرار میدهد.

کتابخانه های elasticsearch برای زبان های برنامه نویسی زیادی نوشته شده تا به وسیله ی این کتابخانه ها برنامه نویس بتواند از آن استفاده کند.

برای مسائل امنیتی امکان تعریف نام کاربری و کلمه عبور و همچنین اعمال مجوز و نقش در کلاستر وجود دارد.

و اگر دیتای زیادی داخل hadoop دارید میتوانید یک موتور جستجو و تحلیلگر real time هم در کنارش داشته باشید. با استفاده از کتابخانه هایی که به این منظور پیاده سازی شده اند امکان اتصال elasticsearch به hadoop فراهم شده.

 

برای نصب elasticsearch ابتدا آن را از elastic.co دانلود، داخل سرور خود قرار داده و از حالت فشرده خارج کنید...

وارد پوشه آن شده و فایل اجرایی elasticsearch را در مسیر bin اجرا کنید:

./bin/elasticsearch

به طور پیش فرض elasticsearch روی IP و پورت  127.0.0.1:9200 اجرا شده و قابل استفاده است.

توجه داشته باشید، در نسخه 5 به دلیل مسائل امنیتی امکان اجرای سرویس  elasticsearch با یوزر root وجود ندارد پس از یک نام کاربری دیگر جهت اجرای آن استفاده کنید.

ممکن است هنگام اجرای سرویس با سه خطای رایج زیر مواجه شوید:

1) خطای max file descriptors

راه حل: فایل limits.conf در مسیر etc/security را با یک ویرایشگر باز کرده و دو خط زیر را برای نام کاربری که elasticsearch را با آن اجرا کرده اید به انتهای فایل اضافه کنید:

<username>       hard        nofile        65536
<username>       soft        nofile        65536

2) خطای max number of threads

راه حل: داخل ترمنیال با نام کاربری که تصمیم دارید elasticsearch را با آن اجرا کنید لاگین کرده و قبل از اجرای خود elasticsearch دستور زیر را اجرا کنید:

ulimit -u 2048

3) خطای vm.max_map_count

راه حل: با یوزر root مقدار آن را تغییر دهید:

sysctl -w vm.max_map_count=262144

در آینده بیشتر درباره elasticsearch  خواهم نوشت :)

 

این مطلب آخرین بار در تاریخ 23:45 - 1395/10/05 ویرایش شده است.

ارسال نظر
2 نظر
سجاد در تاریخ 21:55 - 1395/09/08 نوشته:
من دنبال همچین چیزی میگشتم ای کاش آموزش نصبش داخل ویندوز رو هم بگین یک دنیا ممنون

محمد در تاریخ 17:22 - 1395/09/06 نوشته:
خدا خیرتون بده مطالب سطح بالایی رو به اشتراک میذارید

عضویت در خبرنامه
جهت اطلاع از آخرین فعالیت های من لطفا در خبرنامه عضو شوید