TGViewer
В мире больших данных В мире больших данных @big_data_systems_analysis · 300 subscribers
Post #30 106
Распределение (distribution) в Greenplum

В GP данные физически хранятся на разных сегментах, поэтому указывать распределение при создании таблицы обязательно.

Правила выбора хорошего ключа дистрибьюции
— Поле не должно иметь null-значений.
— Тип поля – integer.
— Не использовать в качестве ключа поля с типами: date, timestamp, boolean, decimal, большие строки.
— Значения поля должны быть уникальными.
— Поле чаще всего используется для соединения с большими таблицами.
— Максимум 2 поля, но лучше использовать 1.
— Поле не должно использоваться в качестве поля для партиционирования.
— Не нужно использовать поля, которые используются при фильтрации запросов в where, так как нагрузка при выполнении запроса будет распределена неравномерно.

Можно использовать случайное распределение, если не получается подобрать подходящие поля, но необходимо учитывать, что такое распределение хорошо работает только при вставке данных большими пакетами, так как GP распределяет данные по циклическому алгоритму, который запускается заново для каждой операции вставки, начиная с первого сегмента. Мелкие вставки приведут к неравномерному распределению данных по сегментам (перекосу).

#greenplum
More from @big_data_systems_analysis
  1. Jul 28, 2026Продолжая тему тех самых SQL-скриптов на 1200 строк, хочу напомнить одну важную вещь, кото…
  2. Jul 15, 2026Борьба с ветряными мельницами Думаю, многим из вас уже набили оскомину разговоры об ИИ. Мн…
  3. Mar 8, 2026В этот день желаю женской части аудитории верить в себя и позволять быть себе любой без ог…
  4. Mar 6, 2026Этот мем — точная копия одного рабочего дня, который я, кажется, прожила уже раз двести 😄…
  5. Mar 4, 2026Знаете, какая фраза чаще всего дорого обходится компании? "Работает — и ладно" 🥂 Результа…
  6. Feb 26, 2026Дисциплина, конечно, прошла мимо меня 😄 в черновиках 1000 и 1 пост, но ни один из них не…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →