ClickHouse/docs/fa/sql-reference/dictionaries/external-dictionaries/external-dicts-dict-lifetime.md

93 lines
4.5 KiB
Markdown
Raw Normal View History

2020-04-04 09:15:31 +00:00
---
machine_translated: true
machine_translated_rev: 72537a2d527c63c07aa5d2361a8829f3895cf2bd
2020-04-04 09:15:31 +00:00
toc_priority: 42
toc_title: "\u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06CC \u0641\u0631\
\u0647\u0646\u06AF \u0644\u063A\u062A"
---
# به روز رسانی فرهنگ لغت {#dictionary-updates}
خانه کلیک دوره به روز رسانی لغت نامه. فاصله به روز رسانی برای لغت نامه به طور کامل دانلود و فاصله ابطال لغت نامه کش در تعریف `<lifetime>` برچسب در ثانیه.
به روز رسانی فرهنگ لغت (به غیر از بارگذاری برای استفاده اول) نمایش داده شد را مسدود کند. در طول به روز رسانی, نسخه های قدیمی از یک فرهنگ لغت استفاده شده است. اگر یک خطا در طول به روز رسانی رخ می دهد, خطا به ورود به سیستم سرور نوشته شده, و نمایش داده شد ادامه استفاده از نسخه های قدیمی از لغت نامه.
مثال تنظیمات:
``` xml
<dictionary>
...
<lifetime>300</lifetime>
...
</dictionary>
```
``` sql
CREATE DICTIONARY (...)
...
LIFETIME(300)
...
```
تنظیم `<lifetime>0</lifetime>` (`LIFETIME(0)`) جلوگیری از لغت نامه از به روز رسانی .
شما می توانید یک بازه زمانی برای ارتقا تنظیم, و تاتر یک زمان یکنواخت تصادفی در این محدوده را انتخاب کنید. این به منظور توزیع بار بر روی منبع فرهنگ لغت در هنگام به روز رسانی در تعداد زیادی از سرور لازم است.
مثال تنظیمات:
``` xml
<dictionary>
...
<lifetime>
<min>300</min>
<max>360</max>
</lifetime>
...
</dictionary>
```
یا
``` sql
LIFETIME(MIN 300 MAX 360)
```
اگر `<min>0</min>` و `<max>0</max>`, کلیک می کند فرهنگ لغت توسط ایست بارگذاری مجدد نیست.
در این مورد, تاتر می توانید فرهنگ لغت زودتر بارگذاری مجدد اگر فایل پیکربندی فرهنگ لغت تغییر یافت و یا `SYSTEM RELOAD DICTIONARY` فرمان اعدام شد.
هنگام به روز رسانی لغت نامه, سرور کلیک اعمال منطق مختلف بسته به نوع [متن](external-dicts-dict-sources.md):
هنگام به روز رسانی لغت نامه, سرور کلیک اعمال منطق مختلف بسته به نوع [متن](external-dicts-dict-sources.md):
2020-04-04 09:15:31 +00:00
- برای یک فایل متنی زمان اصلاح را بررسی می کند. اگر زمان از زمان قبلا ثبت شده متفاوت, فرهنگ لغت به روز شده است.
- برای جداول میثم, زمان اصلاح بررسی می شود با استفاده از یک `SHOW TABLE STATUS` پرس و جو.
- واژهنامهها از منابع دیگر در هر زمان به طور پیش فرض به روز شد.
برای خروجی زیر (دیگر), ان بی سی و منابع فاحشه خانه, شما می توانید راه اندازی یک پرس و جو است که لغت نامه تنها در صورتی که واقعا تغییر به روز رسانی, به جای هر زمان. برای انجام این کار این مراحل را دنبال کنید:
- جدول فرهنگ لغت باید یک میدان است که همیشه تغییر زمانی که داده های منبع به روز شده است.
- تنظیمات منبع باید پرس و جو که بازیابی زمینه در حال تغییر را مشخص کنید. سرور کلیک تفسیر نتیجه پرس و جو به عنوان یک ردیف, و اگر این ردیف نسبت به حالت قبلی خود تغییر کرده است, فرهنگ لغت به روز شده است. مشخص کردن پرسوجو در `<invalidate_query>` درست در تنظیمات برای [متن](external-dicts-dict-sources.md).
2020-04-04 09:15:31 +00:00
مثال تنظیمات:
``` xml
<dictionary>
...
<odbc>
...
<invalidate_query>SELECT update_time FROM dictionary_source where id = 1</invalidate_query>
</odbc>
...
</dictionary>
```
یا
``` sql
...
SOURCE(ODBC(... invalidate_query 'SELECT update_time FROM dictionary_source where id = 1'))
...
```
[مقاله اصلی](https://clickhouse.tech/docs/en/query_language/dicts/external_dicts_dict_lifetime/) <!--hide-->