use_adaptive_write_buffer_for_dynamic_subcolumns
use_async_block_ids_cache
use_compact_variant_discriminators_serialization
use_const_adaptive_granularity
index_granularity_bytes القيمة 0) على
حجم الحبيبات ثابتًا بالبايت، لذا يختلف عدد صفوفها. فلكل
كتلة مكتوبة، يساوي عدد الصفوف في الحبيبة index_granularity_bytes مقسومًا على
متوسط حجم الصف في تلك الكتلة، بحد أقصى قدره index_granularity. ونظرًا إلى اختلاف ذلك
من حبيبة إلى أخرى، يجب الاحتفاظ بعدد الصفوف لكل حبيبة في الجزء
في الذاكرة، بمقدار 8 بايت لكل حبيبة، وهو ما قد يتراكم في الجداول الكبيرة إلى عشرات الغيغابايت.
عند تمكين الحبيبية التكيفية الثابتة (هذا الإعداد)، يبقى عدد الصفوف في الحبيبات ثابتًا بدلًا من ذلك،
لذا يختلف حجمها بالبايت. ويُحسب هذا العدد مرة واحدة استنادًا إلى متوسط حجم
الصف في الجزء الجاري كتابته، ويخزن الجزء هذه القيمة الوحيدة
بدلًا من قيمة لكل حبيبة. وبما أن جميع الحبيبات تحتوي على العدد نفسه من الصفوف،
فلا حاجة إلى تخزين عدد صفوف إضافي لكل حبيبة.
يُبلّغ عن مقدار الذاكرة المستخدمة حاليًا لهذه القيم عبر
المقياس TotalIndexGranularityBytesInMemory في system.asynchronous_metrics،
ولكل جزء عبر system.parts.index_granularity_bytes_in_memory.
يُطبّق الإعداد على الأجزاء المكتوبة بعد تغييره فقط. استخدم
ALTER TABLE … REWRITE PARTS
لتطبيقه على الأجزاء الحالية. تستخدم أجزاء Compact دائمًا الحبيبية التكيفية.