Привет, есть небольшой вопрос по Databricks. Ingestion Time Clustering. > Ingestion

Time Clustering is enabled by default on Databricks Runtime 11.2 and Databricks SQL (version 2022.35 and above). All unpartitioned tables will automatically benefit from ingestion time clustering when new data is ingested. We recommend customers to not partition tables under 1TB in size on date/timestamp columns and let ingestion time clustering automatically take effect.

1. Без разницы когда была создана табличка? Даже если на Runtime 9? То есть при чтении с клиентов 11.2 (кластер или SQL) типа он начнет как-то накапливать информацию по timestamp полю? и быстрее получать данные? Как она вообще узнает по какому timestamp полю ей начать оптимизацию, если я ничего не указал?
2. Или есть что прописать, чтобы зафорсить использование? Вот тут написано например:
> Databricks recommends running OPTIMIZE with ZORDER BY using a column that matches the ingestion order.
3. Если я сделаю ZORDER BY не только по ней, но и по другой колонке это сломает этот механизм?

В интернете как-то пусто на эту тему....
Я конечно попробую наверно, но там 1ТБ табличка, не хотелось бы сравнивать текущее кастомное партиционирование с чем-то вообще не понятным )

2 ответов

15 просмотров

Время ingestion можно брать к примеру из delta log. Да, даже если создана в предыдущем рантайме будет работать. Иногда новые фичи требуют table protocol update, но не в этом случае. Детальнее : https://docs.databricks.com/en/delta/feature-compatibility.html Форсить ничего не нужно, итак будет работать. Zorder ничего не ломает. Всегда лучше применять zorder к колонкам которая содержит много разных значений. Каждая дополнительная колонка описанная в zorder будет несколько замедлять запросы содержащие только одну из них в фильтрах, но ускорять те, где они упоминаются вместе. Поэтому надо думать когда zorder делать по одной, а когда брать несколько. Не рекомендуется использовать больше четырех.

Artem
Время ingestion можно брать к примеру из delta log...

Ну и статистика по ней должна собираться ;-)

Похожие вопросы

Обсуждают сегодня

Объясните, пожалуйста, почему компилятор ругается на использование в условии неинициализированной переменной: int x; Task.Run(async () => { x = await somefunc(); }).Wait...
Александр
5
Добрый вечер, Пока не совсем понимаю как наладить общение между телеграм ботом и ПО для работы с сим боксом. По самому боту так понял: - Нужен некий баланс, который можно поп...
Magic
6
Всем привет. Ребята, подскажите, пожалуйста. у ботов есть ограничение на отправку сообщений - 30 сообщений в секунду, эти ограничения накладываются на все сообщения? или на со...
Artem Stormageddon
4
Блин, ребята, сори за тупые вопросы. А можно ли как-то открыть вебапку по нажатию на кнопку в меню(которое появляется слева, команды)?
Artem Stormageddon
3
Коллеги, может знает кто, можно ли цвет бейджа счётчика в BackendMenu менять без бубнов?
Alex Blaze
3
Привет!) Кто как юзает переменные в строках?) Чисто ради интереса Вот так: echo "У меня {$bananasAmount} бананов"; Или вот так: echo "У меня ${bananasAmount} бананов";
Виталий
3
а плаксы из-под питона умеют только в комфортных условиях что-то выдавить из себя?)
Lencore
9
разработчик ботов скидывает портфолио, боты которые он уже создал. А вот как узнать что это именно он их создал?
Gosudar
4
Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
13
Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
Карта сайта