داده های سری زمانی باعث افزایش هزینه های ذخیره سازی ، سلامت خوشه ای سویه ها می شود و به مرور زمان تجمع را کاهش می دهد. Index Rollup به شما امکان می دهد با استفاده از داده های قدیمی به شاخص های خلاصه ، دانه بندی داده ها را کاهش دهید.
شما زمینه هایی را انتخاب می کنید که به شما علاقه مند هستند و از فهرست فهرست استفاده می کنند تا یک شاخص جدید با آن قسمت هایی که در سطل های زمان درشت جمع می شوند ، ایجاد کنید. شما می توانید ماهها یا سالها داده های تاریخی را در کسری از هزینه با همان عملکرد پرس و جو ذخیره کنید.
به عنوان مثال ، بگویید که داده های مصرف CPU را هر پنج ثانیه جمع می کنید و آن را روی یک گره داغ ذخیره می کنید. به جای اینکه داده های قدیمی تر را به یک گره گرم فقط خواندنی منتقل کنید ، می توانید این داده ها را فقط با متوسط مصرف CPU در روز یا با کاهش 10 ٪ در فاصله آن هر هفته جمع کنید.
شما می توانید از سه روش از فهرست فهرست استفاده کنید:
- از index Rollup API برای یک کار شغلی در صورت تقاضا استفاده کنید که بر روی یک شاخص کار می کند که به طور فعال مانند یک شاخص نورد مصرف نمی شود. به عنوان مثال ، شما می توانید یک عملیات Rollup شاخص را برای کاهش داده های جمع آوری شده در فاصله 5 دقیقه ای به میانگین هفتگی برای تجزیه و تحلیل روند انجام دهید.
- از UI Dashboards OpenSearch برای ایجاد یک کار Rollup Index که در یک برنامه تعریف شده اجرا می شود ، استفاده کنید. شما همچنین می توانید آن را تنظیم کنید تا شاخص های خود را به عنوان فعال به طور جدی تنظیم کنید. به عنوان مثال ، شما می توانید به طور مداوم شاخص های Logstash را از یک فاصله پنج ثانیه به یک بازه یک ساعته بپیچید.
- کار Rollup Index را به عنوان یک اقدام ISM برای مدیریت کامل شاخص مشخص کنید. این امر به شما امکان می دهد تا بعد از یک رویداد خاص مانند یک چرخش ، سن شاخص که به یک نقطه خاص می رسد ، به یک فهرست خاص تبدیل شود ، و به این ترتیب یک شاخص را انتخاب کنید. همچنین می توانید مشاغل Rollover و Index را به صورت توالی اجرا کنید ، جایی که Rollover ابتدا شاخص فعلی را به یک گره گرم منتقل می کند و سپس کار Rollup Index یک شاخص جدید با داده های به حداقل رساندن در گره داغ ایجاد می کند.
ایجاد یک کار Rollup Index
برای شروع ، مدیریت فهرست را در داشبورد OpenSearch انتخاب کنید. مشاغل Rollup را انتخاب کنید و ایجاد کار Rollup را انتخاب کنید.
مرحله 1: شاخص ها را تنظیم کنید
- در بخش نام شغلی و توضیحات ، یک نام منحصر به فرد و توضیحات اختیاری را برای کار Rollup Index مشخص کنید.
- در بخش شاخص ها ، فهرست منبع و هدف را انتخاب کنید. شاخص منبع یکی از مواردی است که می خواهید به آن بپردازید. شاخص منبع همانطور که هست باقی مانده است ، شاخص شاخص شاخص جدید ایجاد می کند که از آن به عنوان یک شاخص هدف استفاده می شود. شاخص هدف در جایی است که نتایج فهرست شاخص ذخیره می شود. برای فهرست هدف ، می توانید یک نام برای یک فهرست جدید تایپ کنید یا یک فهرست موجود را انتخاب کنید.
- بعدی را انتخاب کنید
بعد از ایجاد یک کار Rollup Index ، نمی توانید انتخاب شاخص خود را تغییر دهید.
مرحله 2: تجمع ها و معیارها را تعریف کنید
ویژگی ها را با مصالح (اصطلاحات و هیستوگرام) و معیارها (AVG ، SUM ، MAX ، MIN و COUNT) انتخاب کنید که می خواهید به آن بپردازید. اطمینان حاصل کنید که بسیاری از ویژگی های بسیار دانه ای را اضافه نمی کنید ، زیرا فضای زیادی را صرفه جویی نمی کنید.
به عنوان مثال ، یک مجموعه داده از شهرها و جمعیتی را در آن شهرها در نظر بگیرید. شما می توانید بر اساس شهرها جمع شوید و جمعیتی را در یک شهر به عنوان معیارها مشخص کنید. ترتیب انتخاب ویژگی ها بسیار مهم است. شهری که به دنبال آن جمعیتی است با یک جمعیت جمعیتی و به دنبال آن یک شهر متفاوت است.
- در بخش جمع آوری زمان ، یک قسمت Timestamp را انتخاب کنید. بین یک نوع فاصله ثابت یا تقویم را انتخاب کنید و فاصله و منطقه زمانی را مشخص کنید. کار Rollup Index از این اطلاعات برای ایجاد هیستوگرام تاریخ برای قسمت Timestamp استفاده می کند.
- (اختیاری) برای هر زمینه جمع های اضافی اضافه کنید. شما می توانید اصطلاحات جمع آوری اصطلاحات را برای انواع میدانی و تجمع هیستوگرام فقط برای زمینه های عددی انتخاب کنید.
- (اختیاری) برای هر زمینه معیارهای اضافی اضافه کنید. شما می توانید بین همه ، حداقل ، حداکثر ، جمع ، avg یا تعداد مقدار انتخاب کنید.
- بعدی را انتخاب کنید.
مرحله 3: برنامه را مشخص کنید
برنامه ای را برای جمع آوری شاخص های خود در هنگام مصرف آن مشخص کنید. کار Rollup به طور پیش فرض فعال است.
- مشخص کنید که آیا داده ها مداوم هستند یا خیر.
- برای فرکانس اجرای Roll Up ، Define را با فاصله ثابت انتخاب کنید و فاصله رول و واحد زمان را مشخص کنید یا با بیان CRON تعریف کنید و در یک عبارت CRON اضافه کنید تا فاصله را انتخاب کنید. برای یادگیری نحوه تعریف یک بیان کرون ، به هشدار مراجعه کنید.
- تعداد صفحات در هر فرآیند اجرای را مشخص کنید. تعداد بیشتر به معنای اجرای سریعتر و هزینه بیشتر برای حافظه است.
- (اختیاری) تاخیر را به اعدام های رول اضافه کنید. این مدت زمانی است که شغل منتظر است تا در هر زمان پردازش ، مصرف داده ها را در خود جای دهد. به عنوان مثال ، اگر این مقدار را 10 دقیقه تنظیم کنید ، یک فهرست شاخص که ساعت 2 بعد از ظهر اجرا می شود تا 1 بعد از ظهر به 2 بعد از ظهر داده ها از ساعت 2:10 بعد از ظهر شروع شود.
- بعدی را انتخاب کنید.
مرحله 4: بررسی و ایجاد
پیکربندی خود را مرور کنید و ایجاد را انتخاب کنید.
مرحله 5: فهرست هدف را جستجو کنید
می توانید از API _search استاندارد برای جستجوی شاخص هدف استفاده کنید. اطمینان حاصل کنید که پرس و جو با محدودیت های شاخص هدف مطابقت دارد. برای مثال، اگر تجمیع شرایط را در یک فیلد تنظیم نکنید، نتایجی را برای تجمیع شرایط دریافت نمیکنید. اگر حداکثر تجمیعها را تنظیم نکنید، نتایجی برای حداکثر تجمیعها دریافت نمیکنید.
شما نمی توانید به ساختار داخلی داده ها در فهرست هدف دسترسی داشته باشید زیرا افزونه به طور خودکار پرس و جو را در پس زمینه بازنویسی می کند تا متناسب با شاخص هدف باشد. این برای اطمینان از این است که می توانید از همان پرس و جو برای فهرست منبع و هدف استفاده کنید.
برای پرس و جو از شاخص هدف، اندازه را روی 0 تنظیم کنید:
سناریویی را در نظر بگیرید که در آن دادههای جمعآوریشده را از ساعت 1 بعد از ظهر تا 9 بعد از ظهر در فواصل ساعتی و دادههای زنده از ساعت 7 عصر تا 11 بعد از ظهر در فواصل دقیقه جمعآوری میکنید. اگر یک ادغام را روی اینها در همان جستار اجرا کنید، برای 7 بعد از ظهر تا 9 بعد از ظهر، همپوشانی دادههای جمعشده و دادههای زنده را مشاهده میکنید زیرا آنها دو بار در انبوهها شمارش میشوند.
نمونه راهنما
این راهنما از داده های تجارت الکترونیک نمونه داشبوردهای OpenSearch استفاده می کند. برای افزودن آن دادههای نمونه، وارد داشبوردهای OpenSearch شوید، صفحه اصلی را انتخاب کنید و دادههای نمونه ما را امتحان کنید. برای نمونه سفارشات تجارت الکترونیک، افزودن داده را انتخاب کنید.
سپس یک جستجو را اجرا کنید:
نمونه پاسخ
یک کار جمع آوری فهرست ایجاد کنید. این مثال فیلدهای order_date، customer_gender، geoip. city_name، geoip. region_name، و day_of_week را انتخاب میکند و آنها را در یک فهرست هدف example_rollup قرار میدهد:
میتوانید از نمایه example_rollup برای تجمیع اصطلاحات در فیلدهای تنظیمشده در کار جمعآوری پرس و جو کنید. شما همان پاسخی را دریافت می کنید که در نمایه منبع opensearch_dashboards_sample_data_ecommerce اصلی دریافت می کردید.
نمونه پاسخ
فیلد doc_count
فیلد doc_count در مجموعههای سطلی حاوی تعداد اسناد جمعآوریشده در هر سطل است. هنگام محاسبه تعداد اسناد سطل، تعداد اسناد به تعداد اسناد از پیش تجمیع شده در هر سند خلاصه افزایش می یابد. doc_count برگردانده شده از جستجوهای جمعآوری شده، تعداد کل اسناد منطبق از فهرست منبع را نشان میدهد. بنابراین، تعداد اسناد برای هر سطل یکسان است، چه در فهرست منبع جستجو کنید و چه در فهرست هدف جمعآوری.
شاخص هدف پویا
In ISM rollup, the target_index field may contain a template that is compiled at the time of each rollup indexing. For example, if you specify the target_index field as rollup_ndx->، فهرست منبع log-000001 به یک نمایه هدف rollup_ndx-log-000001 جمع می شود. این به شما امکان می دهد داده ها را در چندین شاخص مبتنی بر زمان جمع آوری کنید، با یک کار جمع آوری برای هر فهرست منبع ایجاد می شود.
The source_index parameter in >نمی تواند شامل حروف عام باشد.
جستجوی چند شاخص جمعآوری
When data is rolled up into multiple target indices, you can run one search across all of the rollup indices. To search multiple target indices that have the same rollup, specify the index names as a comma-separated list or a wildcard pattern. For example, with target_index as rollup_ndx->و شاخص های منبع که با ورود به سیستم شروع می شوند ، الگوی Rollup_ndx-log* را مشخص کنید. یا برای جستجوی شاخص های Log-000001 و Log-000002 ، لیست ROLLUP_NDX-LOG-000001 ، ROLLUP_NDX-LOG-000002 را مشخص کنید.
شما نمی توانید ترکیبی از شاخص های Rollup و Non-Rollup را با همان پرس و جو جستجو کنید.
مثال
مثال زیر قسمت DOC_COUNT ، نام شاخص پویا و جستجوی چندین شاخص رولپ را با همان رولپ نشان می دهد.
مرحله 1: یک الگوی شاخص را برای ISM اضافه کنید تا بتواند شاخص های مربوط به ورود به سیستم را مدیریت کند.
مرحله 2: یک خط مشی Rollover ISM را تنظیم کنید تا از هر فهرست که نام آن با ورود به سیستم شروع می شود* پس از بارگذاری یک سند در آن ، و سپس فهرست پشتیبان فردی را جمع کنید. نام شاخص هدف به صورت پویا از نام فهرست منبع با پیشبرد رشته RollUP_NDX- به نام فهرست منبع تولید می شود.
مرحله 3: یک شاخص به نام log-000001 ایجاد کنید و یک log alias را برای آن تنظیم کنید.
مرحله 4: فهرست چهار اسناد را به فهرست ایجاد شده در بالا نشان دهید. دو مورد از اسناد پیام "موفقیت" دارند و دو نفر پیام "خطا" دارند.