powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / UPSERT данных в Azure Data Lake
9 сообщений из 9, страница 1 из 1
UPSERT данных в Azure Data Lake
    #40050391
T87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет!

Есть вроде простая задача, но как лучше решить не знаю.

Дано:
1. Фактовая таблица on premise в несколько млрд строк
2. Загрузка инкремента в Azure Data Lake в виде отдельных файлов в слой Raw Data
3. Загрузка инкремента из Azure Data Lake в Azure Synapse через COPY INTO и MERGE фактов на T-SQL

Необходимо:
1. Иметь в Data Lake слой Curated Data, в котором уже будет не история инкрементов, а только актуальные значения.
2. Делать загрузку в Curated Data достаточно быстро.

Вопросы:
1. Каким образом хранить данные в Curated Data? В виде одно большого файла?
2. Каким образом делать UPSERT в Curated Data быстро?

P.S.: про Delta Lake в курсе
...
Рейтинг: 0 / 0
UPSERT данных в Azure Data Lake
    #40050416
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
T87,

главный вопрос, что такое у вас инкремент. он может модифицировать всю "базу" или только какую-то активную часть ?
как я понимаю большинство делют партиции, какие-то партиии никогда уже не меняются, а те что меняются - перезаписывают целиком.

если понятия активной части нет, то имхо быстрых путей нет. самое разумное из вашего же synapsys выгружать на ADSL целиком витрину.
альтернатива имхо только опен соурс вариант delta от датабрикса - делать MERGE в delta фолдеры, которые лежат на ADSL и если нужно кому-то внешнему, то делать vacum или вовсе перестраивать витрину. после vacum в фолдере с delta будут обычные parquet файлики с актуальным снепшотом.
...
Рейтинг: 0 / 0
UPSERT данных в Azure Data Lake
    #40050430
ShIgor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
T87,
сорри за оффтоп, но вопрос который меня мучает с детства:
это сильно дорого в плане денег?
...
Рейтинг: 0 / 0
UPSERT данных в Azure Data Lake
    #40050447
T87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1,

Да, активной части нет. Обновления задним числом теоретически могут быть на всю глубину назад. Но и данные у нас с 2015г.
...
Рейтинг: 0 / 0
UPSERT данных в Azure Data Lake
    #40050448
T87
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShIgor
T87,
сорри за оффтоп, но вопрос который меня мучает с детства:
это сильно дорого в плане денег?

Если использовать synapse для DWH, Azure Analysis Services и Датабрикс, по порядка 1млн рублей в мес.
DWH ~5Tb
...
Рейтинг: 0 / 0
UPSERT данных в Azure Data Lake
    #40050457
Фотография vikkiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кто как в Synapse решает вопросы с широкими таблицами?
ежедневно ADF-ом тащим SAP-овские экстракты десятками гигабайт из Oracle
напрямую через BulkInsert (т.е. без ADLS как промежуточное звено, чтобы не
возится с разделителями которые могут попадаться с самом тексте колонны)
шириной по 700+ текстовых колонн - так постоянно приходится
усекать на половину (не сами колонны до varchar(8000), а их количество)
из-за ColumnStore требований перейти на более высокий DWU

п.с. у нас dedicated, а не serverless
...
Рейтинг: 0 / 0
UPSERT данных в Azure Data Lake
    #40050490
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vikkiv
Кто как в Synapse решает вопросы с широкими таблицами?
ежедневно ADF-ом тащим SAP-овские экстракты десятками гигабайт из Oracle
напрямую через BulkInsert (т.е. без ADLS как промежуточное звено, чтобы не
возится с разделителями которые могут попадаться с самом тексте колонны)

тащите в parquet на ADSL, его кто угодно прочтет.
...
Рейтинг: 0 / 0
UPSERT данных в Azure Data Lake
    #40050917
Фотография vikkiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1,

Если чисто из-за них в ADLS/Parquet тащить - то там разделители дело вторичное
(и пока везёт - никто на исключение полей с длинными описаниями не жаловался)
так что легче исключить чем копаться в не-приоритетной задаче..
Основная проблема именно в нюансах работы Synapse с текстовыми полями и особенно когда их так много
nvarchar в varchar конвертировать не проблема - хотя и муторно конечно динамическую конвертацию
писать для сотен таблиц, даже trim() для надёжности можно, самый затык почему Ярославна плачет - именно
в том что Synapse для таких широких текстовых данных не предназначен, т.е. интересуют идеи по решению
таких ситуаций (кроме как банального - не тащи в Synapse)
Жалуется что не хватает ресурса (памяти) для расчёта ColumnStore (а varchar поля с описаниями повсюду)
...
Рейтинг: 0 / 0
UPSERT данных в Azure Data Lake
    #40063265
Владимир Штепа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
T87
ShIgor
T87,
сорри за оффтоп, но вопрос который меня мучает с детства:
это сильно дорого в плане денег?

Если использовать synapse для DWH, Azure Analysis Services и Датабрикс, по порядка 1млн рублей в мес.
DWH ~5Tb


Ходят ли у вас бизнес юзеры в ДВХ или только в ААС?
Каков процент почасового использования ДВХ?
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / UPSERT данных в Azure Data Lake
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]