Size: a a a

2021 May 22

AZ

Anton Zadorozhniy in Data Engineers
Это легко посмотреть, ULID хранится как логический тип UUID (это тоже 16 байт), а для UUID паркет вроде умеет min max
источник

AZ

Anton Zadorozhniy in Data Engineers
Все эти монотонные штуки нужны для генерации ключей в онлайне, в батче только лукапить если; для чистого батч UUID достаточно
источник

SS

Sergey Sheremeta in Data Engineers
для батча - да. сделать репартишон dim-таблицы и fact-таблицы по натуральному ключу и сджойнить.
но мне нужно выжать максимальную производительность для ad-hoc запросов в Star Schema Model
источник

AZ

Anton Zadorozhniy in Data Engineers
Максимальную производительность и спарк?) денормализуйте
источник

SS

Sergey Sheremeta in Data Engineers
поправьте если ошибаюсь, пожалуйста:
1) хочу генерировать в dim-таблицах монотонные суррогатные ключи, сортируя по наиболее употребимым в запросах полям (country_code/language/etc)
2) при генерации fact-таблиц хочу сортировать записи по суррогатным ключам
3) тем самым помимо очевидного partition pruning по датам могу получить dynamic file pruning
источник

AZ

Anton Zadorozhniy in Data Engineers
Я правильно понимаю что вы на датабриксе? Там zordering для пропускания файлов работает, он вроде может на uuid колонках работать
источник

AZ

Anton Zadorozhniy in Data Engineers
монотонность тут вообще не нужна, у вас понятия "времени" же нет
источник

AZ

Anton Zadorozhniy in Data Engineers
сортировать можно и бинарные данные, и строчки
источник

SS

Sergey Sheremeta in Data Engineers
да, ДатаБрикс. предлагаете наплевать на потенциальные коллизии и на бОльший размер?
источник

SS

Sergey Sheremeta in Data Engineers
да, монотонность неверное не требуется
источник

AZ

Anton Zadorozhniy in Data Engineers
коллизий с UUID?
источник

YI

Yukari I in Data Engineers
Суррогатные ключи можно хоть хеш-функцией, хоть uuid генерить. Коллизии там случатся с ничтожной вероятностью.
источник

SS

Sergey Sheremeta in Data Engineers
это абсолютно невозможно?
источник

AZ

Anton Zadorozhniy in Data Engineers
почему, возможно
> Only after generating 1 billion UUIDs every second for the next 100 years, the probability of creating just one duplicate would be about 50%. Or, to put it another way, the probability of one duplicate would be about 50% if every person on earth owned 600 million UUIDs.
источник

AZ

Anton Zadorozhniy in Data Engineers
обычно эту возможность игнорируют
источник

AZ

Anton Zadorozhniy in Data Engineers
ну и потом если у вас случайный UUID кладется в мапинговую таблицу, даже если вы поймаете коллизию - просто генерите новый UUID
источник

AZ

Anton Zadorozhniy in Data Engineers
если у вас хэш несоленый, без маппинговой таблицы, тогда мб проблема, но вы берите хэш побольше
источник

AK

Andrew Konstantinov in Data Engineers
а что такое , Pythin, ?
источник

OA

Oleksandr Averchenko in Data Engineers
Я тоже задавал этот вопрос.
источник

R

Ruslan in Data Engineers
Это Путин
источник