Elastic Search چیست؟ معرفی هاست ارزان Elastic


۲۶ مهر ۱۴۰۲

Elasticsearch یک موتور جستجو و تحلیل متنی open-source است که توسط شرکت Elastic توسعه داده شده است. این سیستم اساساً برای جستجوی سریع اطلاعات در داده‌های نهان و بزرگ، به ویژه برای متن‌ها، لاگ‌ها، و داده‌های وابسته به متن، بسیار کارآمد است. در ادامه، به موارد زیر می‌پردازیم:

  • معرفی Elasticsearch و نحوه عملکرد آن
  • کاربردهای معروف Elasticsearch
  • نحوه استفاده از Elasticsearch
  • هاست Elasticsearch ایرانی

معرفی Elasticsearch و نحوه عملکرد آن

همانطور که گفته شد؛ Elasticsearch یک موتور open-source است که توسط شرکت Elastic به عنوان یک سیستم مستند محور (document-oriented) طراحی شده است. عملکرد Elasticsearch به شرح زیر است:

  1. ذخیره سازی مستندات: در Elasticsearch، هر مستند می‌تواند به صورت یک مجموعه‌ شامل یک‌سری اطلاعات و ویژگی‌ها باشد که در فایل JSON ذخیره می‌شود.
  2. انجام جستجوهای پیشرفته: Elasticsearch از زبان پرس‌وجوی JSON برای اجرای جستجوها استفاده می‌کند. این جستجوها می‌توانند شامل کلمات کلیدی، فیلترها و محدودیت‌ها باشند که امکان یافتن و بازیابی اطلاعات مورد نظر را فراهم می‌کنند.
  3. تحلیل متن و امتیازدهی: Elasticsearch توانمندی تحلیل و امتیازدهی به متن‌ها را دارد. در واقع Elasticsearch می‌تواند متن را تجزیه و تحلیل کند و به واژگان، امتیاز دهد تا جستجوها دقیق‌تر و کارآمدتر شود.
  4. مقیاس‌پذیری: Elasticsearch به عنوان یک سیستم مقیاس‌پذیر طراحی شده است، به این معنا که می‌توانید آن را بر روی یک سرور تنها یا یک مجموعه از سرورها برای پردازش داده‌های حجیم، نصب کنید.
  5. پشتیبانی از داده‌های چند منبعی: Elasticsearch قادر است اطلاعات را از منابع مختلفی مانند پایگاه‌داده‌ها، سیستم‌های لاگ‌گیری و سایر منابع به صورت همزمان جمع‌آوری و جستجو کند.
  6. پشتیبانی از تحلیل و داده‌کاوی: Elasticsearch از تجزیه و تحلیل داده‌ها و بررسی الگوهای مختلف پشتیبانی می‌کند و به شما امکان می‌دهد اطلاعات بسیار کاملی را از داده‌های خود استخراج کنید.

کاربردهای معروف Elasticsearch

  1. مانیتورینگ و زمینه‌های عملیاتی:
    • بسیاری از سازمان‌ها از Elasticsearch برای جمع‌آوری، نگهداری و جستجوی لاگ‌ها و رویدادهای سیستم و برنامه‌های خود استفاده می‌کنند. به ویژه در محیط‌های پرجریان و پراهمیت.
  2. جستجو در متن و مدیریت داده:
    • برای جستجوی متن در سایت‌ها و برنامه‌های وب، Elasticsearch مورد استفاده قرار می‌گیرد. این به توسعه‌دهندگان اجازه می‌دهد تا جستجوهای پیشرفته و سریع را بر روی متن‌ها و داده‌های مشابه، به سرعت انجام دهند.
    • Elasticsearch به شرکت‌ها کمک می‌کند تا اطلاعات متنی خود را ذخیره، جستجو و استخراج کنند. این کاربرد به صورت گسترده در دامنه‌های مختلف از وب‌سایت‌ها تا سیستم‌های مدیریت محتوا (CMSها) استفاده می‌شود.
  3. سیستم پیشنهاد دهنده و توصیه‌گر:
    • در فروشگاه‌های آنلاین، Elasticsearch به عنوان موتوری برای ارائه پیشنهادات محصولات به مشتریان بسیار مفید است. با تحلیل تاریخچه خریدها و علایق، می‌توان به مشتریان محصولات مشابه و یا مرتبط پیشنهاد داد.
  4. جستجو و تحلیل لاگ‌ها:
    • در محیط‌های شبکه‌ای و مراکز داده، Elasticsearch به عنوان یک ابزار خیلی خوب برای جستجو و تحلیل لاگ‌ها برای ردیابی رویدادها و اشکال زدایی، استفاده می‌شود.
  5. موتور جستجوی وب
    • برخی از وب‌سایت‌های جهانی، از Elasticsearch برای ارائه نتایج جستجو سریع و دقیق به کاربران خود استفاده می‌کنند.
  6. جستجو و تحلیل داده‌های محلی:
    • Elasticsearch می‌تواند در نرم‌افزارهای محلی که نیاز به جستجو و تحلیل داده دارند، مورد استفاده قرار گیرد.

نحوه استفاده از Elasticsearch

در قدم اول، باید به وب‌سایت رسمی Elastic مراجعه کنید و Elasticsearch را متناسب با سیستم عامل خود، دانلود و نصب کنید. پس از آن کافیست که فایل bin/elasticsearch (یا در ویندوز bin/elasticsearch.bat) را اجرا کنید.

هاست Elasticsearch ایرانی

شما می‌توانید با استفاده از هاست ابری Elasticsearch لیارا، یک دیتابیس Elasticsearch داشته باشید و مستندات مدنظرتان را در این دیتابیس مدیریت کنید. در ادامه، نحوه اتصال به دیتابیس از طریق برنامه پایتونی، توضیح داده شده است:

پس از آن کافیست که با استفاده از pip، ماژول Elasticsearch را در محیط مجازی (یا سیستم عامل) خود نصب کنید:

pip install elasticsearch

بعد از نصب ماژول elasticsearch باید آن را در برنامه خود import کنید:

from elasticsearch import Elasticsearch

پس از انجام مراحل خود، می‌توانید با استفاده از URI به دیتابیس خود متصل شوید:

es=Elasticsearch(['http://username:password@your_elasticsearch_host:port/'])

و برای اطمینان از اتصال، می‌توانید از متد ping استفاده کنید:

if es.ping():
    print("connected")
else:
    print("not connected")

اگر که بعد از اجرای برنامه، پیام connected را مشاهده کردید؛ پس توانسته‌اید با موفقیت به دیتابیس Elasticsearch خود متصل شوید؛ اکنون می‌توانید با استفاده از کد‌های زیر، یک‌سری عملیات از جمله ساخت index، ساخت document، دریافت index، سرچ در index و حذف document و index را انجام دهید:

# creating an index
es.indices.create(index="my_index")

# creating one document
doc = {
    'author': 'John Doe',
    'text': 'Hello World'
}

# indexing created document
es.index(
    index="my_index",
    id="my_document_id",
    document=doc
)

# getting created index
print('index:')
print(es.get(index="my_index", id="my_document_id"), end='\n\n')

# searching using query
es.search(index="my_index", query={
    "match": {
        "text": "Hello World"
    }
})

# deleting a document
es.delete(index="my_index", id="my_document_id")

# deleting an index
es.indices.delete(index="my_index")

زمان را از دست ندهید و هم‌اکنون شروع کنید: هاست ابری Elasticsearch

خدمات رایگان لیارا

۲.۵ گیگابایت فضای ذخیره‌سازی ابری رایگان

۲.۵ گیگابایت Object Storage سازگار با پروتکل S3 با دیسک‌های SSD به‌صورت رایگان دریافت کنید.

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

دیتابیس‌های MariaDB، PostgreSQL و Redis را فقط با یک کلیک و به‌صورت رایگان تهیه کنید.

سرویس DNS رایگان

به سادگی دامنه‌تان را اضافه کنید و به صورت رایگان رکورد‌های آن را مدیریت کنید.

۱۰۰ هزار تومان اعتبار اولیه

بعد از ثبت نام در لیارا مبلغ ۱۰۰ هزار تومان اعتبار هدیه دریافت می‌کنید که با توجه به ساعتی بودن هزینه سرویس‌ها، می‌توانید تمامی خدمات پولی را برای چندین هفته رایگان استفاده کنید.

ارسال ۱۰۰ ایمیل تراکنشی رایگان در هر ماه

در سرویس ایمیل لیارا شما می‌توانید تا ۱۰۰ ایمیل رایگان در هر ماه ارسال کنید و فقط برای بیش از آن هزینه پرداخت کنید. (به‌همراه دسترسی SMTP)

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

تفاوتی ندارد برای وبسایت خود از Node استفاده می‌کنید یا Laravel و Django، در لیارا می‌توانید به صورت کاملا رایگان آن را میزبانی کنید.

توسعه‌دهندگان درباره‌ی ما چه می‌گویند

تجربه کار باliara_cloud@امروز خیلی خوب بود. یکی از سرویس هام رو منتقل کردم روش و راضیم. انقد سریع و جذاب کارم راه افتادم اصن باورم نمیشد! برعکس سرویس های PaaS دیگه با اون همه پیچیدگیشون. دمتون گرم
...

MohammadReza
liara testimonial
keikaavousi

بعد از بسته شدن @fandoghpaas و ناراحتی همه‌مون از اینکه یه سرویس خوب و صادق نمی‌تونه از پس هزینه‌ها بر بیاد، سرویسم رو منتقل کردم به پاس لیارا (https://liara.ir @liara_cloud) . تجربه راحت و خوب. تفاوت‌هایی داشت که کمی کار می‌خواست ولی تا الان کاملا راضی.

jadi
liara testimonial
jadi

یه خسته نباشید باید به تصمیمliara_cloud@بگم،
بعد از چندین روز سرکله زدن با سرویس های مشابه بالاخره تصمیم گرفتم لیارا رو امتحان کنم و باور نمیشه ۱۰ دقیقه بیشتر وقت نبرد،
دمتون گرم.

Arch
liara testimonial
EbadiDev

واسه سرویس PaaS با اختلاف لیارا بهترین رابط کاربری داره و یکی از مزیت‌های سرویس دیتابیس‌شون اینه که خودشون به صورت دوره‌ای بکآپ میگیرن.
...

Ali Najafi
liara testimonial
me_ali_najafi

یکی از کارهای خوبی که جدیداً میکنم اینه که یه دیتابیس روی لیارا میسازم و به پروژه وصل میکنم اینطوری هم خونه و هم محل کار دیتابیس بروز رو دارم و راحت میتونم ادامه بدم کار روliara_cloud@

Navid
liara testimonial
1navid

عاشقliara_cloud@شدم درسته در حد AWS نیست ولی خب تجربه خوبی واسه پروژه های داخل ایران ارائه میده، میتونم رو CD هم اجراش کنم

Amir H Shekari
liara testimonial
vanenshi

همراه شما هستیم

در خصوص سفارش یا استفاده از سرویس‌ها سوالی دارید؟
تلفن واحد فروش:
۰۲۵-۳۳۵۵۷۶۱۹ (روزهای کاری ۹ الی ۱۷)
تلفن واحد فروش: ۳۳۵۵۷۶۱۹-۰۲۵ (روزهای کاری ۹ الی ۱۷)