селект и к нему нужно заджоинить столбец из таблицы B 15гб. В теории выглядело просто учитывая, что обе таблицы имеют одинаковые ключи сортировки, но на практике не хватает памяти и очень долго по времени. Получается что джоинить вообще всегда плохая идея и нужно все нужные данные в одной таблице иметь?
Джойн это концептуально плохая идея при построении dwh. Но Я бы не был так резок в таких выводах на самом деле. Иногда нужно разносить данные, делать сильно разреженную таблицу это антипаттерн, читали статью badoo? и клике
Касаемо памяти, в последних версиях появился merge join, он не падает по памяти. Но работает дольше.
ключи не используются (ключи используются алгоритмом merge join, его нету в КХ)
Разве не добавили?
его очень тяжело впихнуть в pipeline КХ, даже нету в ближайших планах этого. >Касаемо памяти, в последних версиях появился merge join, он не падает по памяти. Но работает дольше. это не merge-join, добавлен partial merge join , он не испольует индексы (сортированность)
Пнл, спасибо что поправили.
Обсуждают сегодня