Elasticsearch & Full Text Search Systems · درس

تحليل الأداء وسجلات الاستعلامات البطيئة

شخّص مشكلات الأداء عبر تحليل الاستعلامات الفردية وتسجيل العمليات البطيئة باستخدام السجل البطيء، لتتمكن من العثور على عنق الزجاجة الحقيقي وإصلاحه.

الدرس 4 من 413 خطوة

تحليل الأداء وسجلات الاستعلامات البطيئة درس مجاني في Elasticsearch & Full Text Search Systems على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Elasticsearch & Full Text Search Systems، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Elasticsearch & Full Text Search Systems 4 دروس في المجموع.

بعض أجزاء هذا الدرس لم تُترجم بعد وتظهر باللغة الإنجليزية.

Measure Before You Optimize

Guessing at performance fixes wastes time. Elasticsearch gives you two precise tools: the Profile API for dissecting a single query, and slow logs for catching expensive operations in production.

The Profile API

Add "profile": true to any search request. Elasticsearch returns a detailed timing breakdown of how the query executed on each shard.

GET my_index/_search
{
  "profile": true,
  "query": { "match": { "title": "elasticsearch" } }
}

Reading Query Timings

The profile output lists each Lucene query and the time spent in phases like build_scorer, next_doc, and score. A surprisingly slow phase points you straight to the culprit.

Rewrite Time

Watch the rewrite_time. Wildcard, prefix, and range queries can rewrite into thousands of terms, inflating this number. If rewrite dominates, reconsider the query type or use a keyword/edge-ngram field.

Profiling Aggregations

The profile output also has an aggregations section. It shows initialize, collect, and build_aggregation times, helping you spot a costly high-cardinality terms aggregation.

Profile API Caveats

Profiling adds overhead and does not capture network or coordination time. Use it for relative comparison between query versions, not as an absolute production latency figure.

The Search Slow Log

The slow log records queries that exceed configurable time thresholds, per shard. It separates the query phase from the fetch phase and uses warn/info/debug/trace levels.

PUT my_index/_settings
{
  "index.search.slowlog.threshold.query.warn": "1s",
  "index.search.slowlog.threshold.fetch.warn": "500ms"
}

The Indexing Slow Log

A parallel indexing slow log catches documents that take too long to index, useful for spotting expensive pipelines or oversized documents.

PUT my_index/_settings
{
  "index.indexing.slowlog.threshold.index.warn": "1s"
}

Per-Shard Logging

Slow log thresholds apply per shard, not per request. A query slow on one shard but fast overall will still be logged for that shard, helping you find a single hot or unbalanced shard.

Acting on Findings

Once you identify a slow pattern, common fixes are: add a filter to narrow the dataset, replace heavy wildcard queries, increase shard count for hot indices, or pre-aggregate data. Always re-profile to confirm the gain.

A Workflow

Production loop: slow log surfaces a bad query, you reproduce it with the Profile API, identify the costly phase, apply a fix, and verify. This data-driven cycle beats guesswork every time.

Quick Check

Test your understanding of performance diagnostics.

Recap

You learned to diagnose performance:

  • The Profile API breaks down query and aggregation timings phase by phase.
  • Watch rewrite_time for expanding wildcard/range queries.
  • Search and indexing slow logs catch expensive operations per shard in production.
  • Follow a measure-fix-verify loop instead of guessing.
البدء مجانًا

تعلم Elasticsearch & Full Text Search Systems مع معلم ذكاء اصطناعي — مجانًا

اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.

الدورات
12
الدروس
48

الأسئلة الشائعة

هل درس «تحليل الأداء وسجلات الاستعلامات البطيئة» مجاني؟

نعم — نص درس «تحليل الأداء وسجلات الاستعلامات البطيئة» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Elasticsearch & Full Text Search Systems، انتقل إلى CoddyKit PRO. تتضمن دورة Elasticsearch & Full Text Search Systems 4 دروس في المجموع.

ماذا ستتعلم في «تحليل الأداء وسجلات الاستعلامات البطيئة»؟

شخّص مشكلات الأداء عبر تحليل الاستعلامات الفردية وتسجيل العمليات البطيئة باستخدام السجل البطيء، لتتمكن من العثور على عنق الزجاجة الحقيقي وإصلاحه. تتمرن على Elasticsearch & Full Text Search Systems مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Elasticsearch & Full Text Search Systems؟

لا تُشترط خبرة سابقة. Elasticsearch & Full Text Search Systems على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.

كم من الوقت يستغرق درس «تحليل الأداء وسجلات الاستعلامات البطيئة»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Elasticsearch & Full Text Search Systems هذا؟

نعم. كل درس في Elasticsearch & Full Text Search Systems يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. استراتيجيات تحسين الاستعلامات
  2. أفضل ممارسات أداء الفهرسة
  3. التخزين المؤقت والتزامن
  4. تحليل الأداء وسجلات الاستعلامات البطيئة
← العودة إلى Elasticsearch & Full Text Search Systems