آموزش راهنمای کامل Elasticsearch

Complete Guide to Elasticsearch

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: Elasticsearch را از ابتدا یاد بگیرید و شروع به یادگیری پشته ELK (Elasticsearch، Logstash و Kibana) و Elastic Stack کنید. نحوه ساخت یک موتور جستجوی قدرتمند با Elasticsearch تئوری Elasticsearch و نحوه عملکرد آن در زیر سرپوش نوشتن سوالات جستجوی پیچیده مسلط به مفاهیم و اصطلاحات Elasticsearch

آیا می خواهید Elasticsearch را از ابتدا یاد بگیرید و در کمترین زمان حرفه ای شوید؟ این دوره راهی عالی برای یادگیری سریع Elasticsearch و به کارگیری دانش خود در عرض چند ساعت است! این دوره آنلاین جامع ترین آموزش Elasticsearch است که در هر کجا پیدا می کنید! این یک نقطه شروع عالی برای هر کسی است که می خواهد پشته Elastic و ELK را یاد بگیرد، زیرا Elasticsearch در مرکز هر دو پشته قرار دارد.

Elasticsearch یک موتور جستجوی بسیار محبوب است و افزودنی عالی برای CV شما خواهد بود - حتی اگر قبلاً با موتورهای جستجو یا چارچوب های دیگر مانند Apache Lucene، Apache Solr، Algolia و غیره آشنا هستید.

این دوره آموزشی Elasticsearch ترکیبی از تئوری و یادگیری از طریق انجام است. قبل از ارائه مثال هایی از نحوه انجام پرس و جوهای خاص، از قبل به تئوری لازم مجهز شده اید. این تضمین می‌کند که نه تنها می‌دانید چگونه جستارهای قدرتمند Elasticsearch بنویسید، بلکه تئوری مربوطه را نیز درک می‌کنید. در طول این آموزش، درک عمیقی از نحوه عملکرد Elasticsearch در زیر کاپوت خواهید داشت.

دوره از ابتدا مطلق شروع می شود و هیچ دانش یا تجربه قبلی با Elasticsearch لازم نیست. ما تمام جنبه های مهم Elasticsearch را بررسی خواهیم کرد. پس از تکمیل این دوره، می‌توانید از Elasticsearch برای چندین مورد و اهداف استفاده کنید، مانند:

  • ساخت یک موتور جستجوی متن کامل (مثلاً مشابه جستجوی Google)

  • تجزیه و تحلیل داده‌ها برای مقادیر زیاد داده با تجمیع‌ها

  • استفاده از Elasticsearch به عنوان پایگاه داده سری زمانی (TSDB)

  • ... و خیلی بیشتر!

در ترکیب با سایر محصولات موجود در Elastic Stack، مانند Logstash یا Kibana، چندین ویژگی دیگر را باز خواهید کرد، مانند:

  • مدیریت گزارش و تجزیه و تحلیل گزارش

  • قابلیت مشاهده (از جمله نظارت سرور/سرویس و APM (نظارت بر عملکرد برنامه))

  • تجسم و گزارش دهی داده

  • تحلیل امنیتی (SIEM)

  • ... و خیلی بیشتر!

* این ویژگی ها به طور خاص در این دوره پوشش داده نمی شوند. برخی از آنها در دوره های Logstash و Kibana من پوشش داده شده است.

بنابراین، در این دوره آنلاین به من بپیوندید و یاد بگیرید که چگونه با Elasticsearch چیزهای شگفت انگیز بسازید!



لطفاً توجه داشته باشید که این دوره برای توسعه دهندگانی در نظر گرفته شده است که می خواهند با یک خوشه Elasticsearch به هر طریقی تعامل داشته باشند و نه مدیران سیستم که به دنبال حفظ یک خوشه Elasticsearch در تولید هستند. این دوره بر عملکردهای مرتبط با استفاده از قابلیت های Elasticsearch به عنوان یک توسعه دهنده تمرکز دارد. همچنین Elasticsearch را به نفع OpenSearch پوشش می دهد، اما بیشتر ویژگی های اصلی یکسان یا مشابه هستند. بنابراین حتی اگر مایل به یادگیری OpenSearch هستید، این دوره همچنان باید نقطه شروع خوبی باشد.

توجه داشته باشید که این دوره شامل Logstash و Kibana نمی شود. این به این دلیل است که بتوانم با Elasticsearch جزئیات بیشتری را وارد کنم و به طور انحصاری روی آن تمرکز کنم. بنابراین این دوره به Elasticsearch اختصاص دارد. برای دوره‌های Logstash و Kibana، لطفاً دوره‌های دیگر من را ببینید.


سرفصل ها و درس ها

معرفی Introduction

  • معرفی دوره Introduction to the course

  • مقدمه ای بر Elasticsearch Introduction to Elasticsearch

  • مروری بر پشته الاستیک Overview of the Elastic Stack

  • درک پشته الاستیک Understanding of the Elastic Stack

  • مروری بر معماری های رایج Walkthrough of common architectures

  • راهنمای دوره پرسش و پاسخ Guidelines for the course Q&A

معرفی Introduction

  • معرفی دوره Introduction to the course

  • مقدمه ای بر Elasticsearch Introduction to Elasticsearch

  • مروری بر پشته الاستیک Overview of the Elastic Stack

  • درک پشته الاستیک Understanding of the Elastic Stack

  • مروری بر معماری های رایج Walkthrough of common architectures

  • راهنمای دوره پرسش و پاسخ Guidelines for the course Q&A

شروع شدن Getting Started

  • نمای کلی گزینه های نصب Overview of installation options

  • اجرای Elasticsearch و Kibana در Elastic Cloud Running Elasticsearch & Kibana in Elastic Cloud

  • راه اندازی Elasticsearch و Kibana در macOS و Linux Setting up Elasticsearch & Kibana on macOS & Linux

  • راه اندازی Elasticsearch & Kibana در ویندوز Setting up Elasticsearch & Kibana on Windows

  • آشنایی با معماری پایه Understanding the basic architecture

  • بازرسی خوشه Inspecting the cluster

  • ارسال پرس و جو با cURL Sending queries with cURL

  • Sharding و مقیاس پذیری Sharding and scalability

  • شاردینگ Sharding

  • درک همانندسازی Understanding replication

  • همانند سازی Replication

  • اضافه کردن گره های بیشتر به خوشه Adding more nodes to the cluster

  • نمای کلی نقش های گره Overview of node roles

  • بسته شدن Wrap up

شروع شدن Getting Started

  • نمای کلی گزینه های نصب Overview of installation options

  • اجرای Elasticsearch و Kibana در Elastic Cloud Running Elasticsearch & Kibana in Elastic Cloud

  • راه اندازی Elasticsearch و Kibana در macOS و Linux Setting up Elasticsearch & Kibana on macOS & Linux

  • راه اندازی Elasticsearch & Kibana در ویندوز Setting up Elasticsearch & Kibana on Windows

  • آشنایی با معماری پایه Understanding the basic architecture

  • بازرسی خوشه Inspecting the cluster

  • ارسال پرس و جو با cURL Sending queries with cURL

  • Sharding و مقیاس پذیری Sharding and scalability

  • شاردینگ Sharding

  • درک همانندسازی Understanding replication

  • همانند سازی Replication

  • اضافه کردن گره های بیشتر به خوشه Adding more nodes to the cluster

  • نمای کلی نقش های گره Overview of node roles

  • بسته شدن Wrap up

مدیریت اسناد Managing Documents

  • ایجاد و حذف شاخص ها Creating & deleting indices

  • نمایه سازی اسناد Indexing documents

  • بازیابی مدارک با شناسه Retrieving documents by ID

  • به روز رسانی اسناد Updating documents

  • به روز رسانی های اسکریپت شده Scripted updates

  • بالاها Upserts

  • تعویض اسناد Replacing documents

  • حذف اسناد Deleting documents

  • درک مسیریابی Understanding routing

  • چگونه Elasticsearch داده ها را می خواند How Elasticsearch reads data

  • نحوه نوشتن داده ها توسط Elasticsearch How Elasticsearch writes data

  • درک نسخه سازی اسناد Understanding document versioning

  • کنترل همزمانی خوشبینانه Optimistic concurrency control

  • به روز رسانی با پرس و جو Update by query

  • حذف با پرس و جو Delete by query

  • پردازش دسته ای Batch processing

  • وارد کردن داده با cURL Importing data with cURL

  • بسته شدن Wrap up

مدیریت اسناد Managing Documents

  • ایجاد و حذف شاخص ها Creating & deleting indices

  • نمایه سازی اسناد Indexing documents

  • بازیابی مدارک با شناسه Retrieving documents by ID

  • به روز رسانی اسناد Updating documents

  • به روز رسانی های اسکریپت شده Scripted updates

  • بالاها Upserts

  • تعویض اسناد Replacing documents

  • حذف اسناد Deleting documents

  • درک مسیریابی Understanding routing

  • چگونه Elasticsearch داده ها را می خواند How Elasticsearch reads data

  • نحوه نوشتن داده ها توسط Elasticsearch How Elasticsearch writes data

  • درک نسخه سازی اسناد Understanding document versioning

  • کنترل همزمانی خوشبینانه Optimistic concurrency control

  • به روز رسانی با پرس و جو Update by query

  • حذف با پرس و جو Delete by query

  • پردازش دسته ای Batch processing

  • وارد کردن داده با cURL Importing data with cURL

  • بسته شدن Wrap up

نقشه برداری و تحلیل Mapping & Analysis

  • معرفی این بخش Introduction to this section

  • مقدمه ای بر تحلیل Introduction to analysis

  • با استفاده از Analyze API Using the Analyze API

  • آشنایی با شاخص های معکوس Understanding inverted indices

  • مقدمه ای بر نقشه برداری Introduction to mapping

  • مروری بر انواع داده ها Overview of data types

  • نوع داده «کلمه کلیدی» چگونه کار می کند How the "keyword" data type works

  • درک نوع اجبار Understanding type coercion

  • درک آرایه ها Understanding arrays

  • افزودن نقشه های صریح Adding explicit mappings

  • بازیابی نقشه ها Retrieving mappings

  • استفاده از علامت نقطه در نام فیلدها Using dot notation in field names

  • افزودن نگاشت به شاخص های موجود Adding mappings to existing indices

  • نحوه عملکرد خرما در Elasticsearch How dates work in Elasticsearch

  • نحوه رسیدگی به فیلدهای گمشده How missing fields are handled

  • مروری بر پارامترهای نقشه برداری Overview of mapping parameters

  • به روز رسانی نقشه های موجود Updating existing mappings

  • فهرست مجدد اسناد با Reindex API Reindexing documents with the Reindex API

  • تعریف نام مستعار فیلد Defining field aliases

  • نقشه برداری چند میدانی Multi-field mappings

  • قالب های شاخص Index templates

  • مقدمه ای بر طرحواره مشترک الاستیک (ECS) Introduction to the Elastic Common Schema (ECS)

  • مقدمه ای بر نقشه برداری پویا Introduction to dynamic mapping

  • ترکیب نگاشت صریح و پویا Combining explicit and dynamic mapping

  • پیکربندی نگاشت پویا Configuring dynamic mapping

  • قالب های پویا Dynamic templates

  • توصیه های نقشه برداری Mapping recommendations

  • ریشه و توقف کلمات Stemming & stop words

  • تحلیلگرها و پرس و جوهای جستجو Analyzers and search queries

  • آنالایزرهای داخلی Built-in analyzers

  • ایجاد تحلیلگرهای سفارشی Creating custom analyzers

  • افزودن تحلیلگرها به شاخص های موجود Adding analyzers to existing indices

  • به روز رسانی آنالیزورها Updating analyzers

  • بسته شدن Wrap up

نقشه برداری و تحلیل Mapping & Analysis

  • معرفی این بخش Introduction to this section

  • مقدمه ای بر تحلیل Introduction to analysis

  • با استفاده از Analyze API Using the Analyze API

  • آشنایی با شاخص های معکوس Understanding inverted indices

  • مقدمه ای بر نقشه برداری Introduction to mapping

  • مروری بر انواع داده ها Overview of data types

  • نوع داده «کلمه کلیدی» چگونه کار می کند How the "keyword" data type works

  • درک نوع اجبار Understanding type coercion

  • درک آرایه ها Understanding arrays

  • افزودن نقشه های صریح Adding explicit mappings

  • بازیابی نقشه ها Retrieving mappings

  • استفاده از علامت نقطه در نام فیلدها Using dot notation in field names

  • افزودن نگاشت به شاخص های موجود Adding mappings to existing indices

  • نحوه عملکرد خرما در Elasticsearch How dates work in Elasticsearch

  • نحوه رسیدگی به فیلدهای گمشده How missing fields are handled

  • مروری بر پارامترهای نقشه برداری Overview of mapping parameters

  • به روز رسانی نقشه های موجود Updating existing mappings

  • فهرست مجدد اسناد با Reindex API Reindexing documents with the Reindex API

  • تعریف نام مستعار فیلد Defining field aliases

  • نقشه برداری چند میدانی Multi-field mappings

  • قالب های شاخص Index templates

  • مقدمه ای بر طرحواره مشترک الاستیک (ECS) Introduction to the Elastic Common Schema (ECS)

  • مقدمه ای بر نقشه برداری پویا Introduction to dynamic mapping

  • ترکیب نگاشت صریح و پویا Combining explicit and dynamic mapping

  • پیکربندی نگاشت پویا Configuring dynamic mapping

  • قالب های پویا Dynamic templates

  • توصیه های نقشه برداری Mapping recommendations

  • ریشه و توقف کلمات Stemming & stop words

  • تحلیلگرها و پرس و جوهای جستجو Analyzers and search queries

  • آنالایزرهای داخلی Built-in analyzers

  • ایجاد تحلیلگرهای سفارشی Creating custom analyzers

  • افزودن تحلیلگرها به شاخص های موجود Adding analyzers to existing indices

  • به روز رسانی آنالیزورها Updating analyzers

  • بسته شدن Wrap up

جستجو برای داده ها Searching for Data

  • مقدمه ای برای جستجو Introduction to searching

  • مقدمه ای بر پرس و جوهای سطح ترم Introduction to term level queries

  • جستجوی اصطلاحات Searching for terms

  • بازیابی مدارک توسط شناسنامه Retrieving documents by IDs

  • جستجوهای محدوده Range searches

  • پیشوندها، حروف عام و عبارات منظم Prefixes, wildcards & regular expressions

  • پرس و جو بر اساس وجود میدان Querying by field existence

  • پرس و جوهای سطح ترم Term level queries

  • مقدمه ای بر پرس و جوهای متن کامل Introduction to full text queries

  • پرس و جوی مسابقه The match query

  • مقدمه ای بر امتیازدهی مرتبط Introduction to relevance scoring

  • جستجو در چندین فیلد Searching multiple fields

  • جستجوهای عبارت Phrase searches

  • سوالات متن کامل Full text queries

  • پرس و جوهای برگ و مرکب Leaf and compound queries

  • پرس و جو با منطق بولی Querying with boolean logic

  • زمینه های اجرای پرس و جو Query execution contexts

  • تقویت پرس و جو Boosting query

  • حداکثر تفکیک (dis_max) Disjunction max (dis_max)

  • پرس و جو از اشیاء تو در تو Querying nested objects

  • ضربه های درونی تو در تو Nested inner hits

  • محدودیت های فیلدهای تو در تو Nested fields limitations

  • پرس و جوهای ترکیبی و تودرتو Compound & nested queries

جستجو برای داده ها Searching for Data

  • مقدمه ای برای جستجو Introduction to searching

  • مقدمه ای بر پرس و جوهای سطح ترم Introduction to term level queries

  • جستجوی اصطلاحات Searching for terms

  • بازیابی مدارک توسط شناسنامه Retrieving documents by IDs

  • جستجوهای محدوده Range searches

  • پیشوندها، حروف عام و عبارات منظم Prefixes, wildcards & regular expressions

  • پرس و جو بر اساس وجود میدان Querying by field existence

  • پرس و جوهای سطح ترم Term level queries

  • مقدمه ای بر پرس و جوهای متن کامل Introduction to full text queries

  • پرس و جوی مسابقه The match query

  • مقدمه ای بر امتیازدهی مرتبط Introduction to relevance scoring

  • جستجو در چندین فیلد Searching multiple fields

  • جستجوهای عبارت Phrase searches

  • سوالات متن کامل Full text queries

  • پرس و جوهای برگ و مرکب Leaf and compound queries

  • پرس و جو با منطق بولی Querying with boolean logic

  • زمینه های اجرای پرس و جو Query execution contexts

  • تقویت پرس و جو Boosting query

  • حداکثر تفکیک (dis_max) Disjunction max (dis_max)

  • پرس و جو از اشیاء تو در تو Querying nested objects

  • ضربه های درونی تو در تو Nested inner hits

  • محدودیت های فیلدهای تو در تو Nested fields limitations

  • پرس و جوهای ترکیبی و تودرتو Compound & nested queries

پیوستن به پرس و جوها Joining Queries

  • معرفی این بخش Introduction to this section

  • داده های آزمون بخش ها را اضافه کنید Add departments test data

  • نگاشت روابط اسناد Mapping document relationships

  • افزودن اسناد Adding documents

  • درخواست با شناسه والدین Querying by parent ID

  • استعلام اسناد فرزند توسط والدین Querying child documents by parent

  • استعلام والدین توسط مدارک فرزند Querying parent by child documents

  • روابط چند سطحی Multi-level relations

  • ضربات درونی والدین/کودک Parent/child inner hits

  • مکانیسم جستجوی شرایط Terms lookup mechanism

  • به محدودیت ها بپیوندید Join limitations

  • به ملاحظات عملکرد میدانی بپیوندید Join field performance considerations

پیوستن به پرس و جوها Joining Queries

  • معرفی این بخش Introduction to this section

  • داده های آزمون بخش ها را اضافه کنید Add departments test data

  • نگاشت روابط اسناد Mapping document relationships

  • افزودن اسناد Adding documents

  • درخواست با شناسه والدین Querying by parent ID

  • استعلام اسناد فرزند توسط والدین Querying child documents by parent

  • استعلام والدین توسط مدارک فرزند Querying parent by child documents

  • روابط چند سطحی Multi-level relations

  • ضربات درونی والدین/کودک Parent/child inner hits

  • مکانیسم جستجوی شرایط Terms lookup mechanism

  • به محدودیت ها بپیوندید Join limitations

  • به ملاحظات عملکرد میدانی بپیوندید Join field performance considerations

کنترل نتایج پرس و جو Controlling Query Results

  • یک کلمه در مورد انواع سند A word on document types

  • تعیین فرمت نتیجه Specifying the result format

  • فیلتر کردن منبع Source filtering

  • تعیین اندازه نتیجه Specifying the result size

  • تعیین افست Specifying an offset

  • صفحه بندی Pagination

  • مرتب سازی نتایج Sorting results

  • مرتب سازی بر اساس فیلدهای چند مقداری Sorting by multi-value fields

  • فیلترها Filters

کنترل نتایج پرس و جو Controlling Query Results

  • یک کلمه در مورد انواع سند A word on document types

  • تعیین فرمت نتیجه Specifying the result format

  • فیلتر کردن منبع Source filtering

  • تعیین اندازه نتیجه Specifying the result size

  • تعیین افست Specifying an offset

  • صفحه بندی Pagination

  • مرتب سازی نتایج Sorting results

  • مرتب سازی بر اساس فیلدهای چند مقداری Sorting by multi-value fields

  • فیلترها Filters

تجمعات Aggregations

  • مقدمه ای بر تجمیع Introduction to aggregations

  • تجمعات متریک Metric aggregations

  • مقدمه ای بر تجمعات سطلی Introduction to bucket aggregations

  • تعداد اسناد تقریبی است Document counts are approximate

  • تجمعات تو در تو Nested aggregations

  • فیلتر کردن اسناد Filtering out documents

  • تعریف قوانین سطل با فیلترها Defining bucket rules with filters

  • تجمعات محدوده Range aggregations

  • هیستوگرام ها Histograms

  • تجمیع جهانی Global aggregation

  • مقادیر فیلد از دست رفته است Missing field values

  • جمع کردن اشیاء تو در تو Aggregating nested objects

تجمعات Aggregations

  • مقدمه ای بر تجمیع Introduction to aggregations

  • تجمعات متریک Metric aggregations

  • مقدمه ای بر تجمعات سطلی Introduction to bucket aggregations

  • تعداد اسناد تقریبی است Document counts are approximate

  • تجمعات تو در تو Nested aggregations

  • فیلتر کردن اسناد Filtering out documents

  • تعریف قوانین سطل با فیلترها Defining bucket rules with filters

  • تجمعات محدوده Range aggregations

  • هیستوگرام ها Histograms

  • تجمیع جهانی Global aggregation

  • مقادیر فیلد از دست رفته است Missing field values

  • جمع کردن اشیاء تو در تو Aggregating nested objects

بهبود نتایج جستجو Improving Search Results

  • معرفی این بخش Introduction to this section

  • جستجوهای نزدیکی Proximity searches

  • تأثیرگذاری بر امتیاز ربط با نزدیکی Affecting relevance scoring with proximity

  • جستجوی تطابق فازی (بررسی اشتباهات املایی) Fuzzy match query (handling typos)

  • پرس و جو فازی Fuzzy query

  • اضافه کردن مترادف Adding synonyms

  • اضافه کردن مترادف از فایل Adding synonyms from file

  • برجسته کردن مسابقات در زمینه ها Highlighting matches in fields

  • ساقه Stemming

بهبود نتایج جستجو Improving Search Results

  • معرفی این بخش Introduction to this section

  • جستجوهای نزدیکی Proximity searches

  • تأثیرگذاری بر امتیاز ربط با نزدیکی Affecting relevance scoring with proximity

  • جستجوی تطابق فازی (بررسی اشتباهات املایی) Fuzzy match query (handling typos)

  • پرس و جو فازی Fuzzy query

  • اضافه کردن مترادف Adding synonyms

  • اضافه کردن مترادف از فایل Adding synonyms from file

  • برجسته کردن مسابقات در زمینه ها Highlighting matches in fields

  • ساقه Stemming

نتیجه Conclusion

  • سخنرانی پاداش: تخفیف به دوره های دیگر من Bonus Lecture: Discounts to my other courses

نتیجه Conclusion

  • سخنرانی پاداش: تخفیف به دوره های دیگر من Bonus Lecture: Discounts to my other courses

نمایش نظرات

آموزش راهنمای کامل Elasticsearch
جزییات دوره
12.5 hours
132
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
108,342
- از 5
دارد
دارد
دارد
Bo Andersen
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Bo Andersen Bo Andersen

توسعه دهنده اصلی