powered by simpleCommunicator - 2.0.44     © 2025 Programmizd 02
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Data Lake как Staging Area
158 сообщений из 158, показаны все 7 страниц
Data Lake как Staging Area
    #39717728
Glebanski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сходил тут SQL Saturday в недавнюю..... кажется субботу(!)
Микрософт просто адски пушает Databrick, но речь не об этом.

Местные консалтеры уверены, если вы хотите современное Хранилище - то, где вместо унылых файлов и/или базы под Staging Аrea всем надо срочно внедрить Data Lakи
Что думаете?
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39717779
Ivan Durak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
унылый хадуп под стейджинг?
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39717799
Полковник.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GlebanskiСходил тут SQL Saturday в недавнюю..... кажется субботу(!)
Микрософт просто адски пушает Databrick, но речь не об этом.

Местные консалтеры уверены, если вы хотите современное Хранилище - то, где вместо унылых файлов и/или базы под Staging Аrea всем надо срочно внедрить Data Lakи
Что думаете?

Ахаха
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39717801
L_argo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторМикрософт....Дальше можно не читать... :)
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39717833
Glebanski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
L_argo,

Да если на Microsoft тусне такое вещают, то что на других происходит?
Вообще мрак наверно.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39717848
Barclay
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что Microsoft? Плохо что ли?
Или вы в прошлом еще с Win95?
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39717852
Andy_OLAP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GlebanskiМестные консалтеры уверены...всем надо срочно внедрить Data Lakи
Что думаете?
То есть умные ребята готовы осваивать шекели заказчиков. Много шекелей. Срочно осваивать.
А при чем же здесь Microsoft?
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39717862
Glebanski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andy_OLAP,

У L_argo спросите. Наверно что-то личное
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39717975
tarrus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GlebanskiСходил тут SQL Saturday в недавнюю..... кажется субботу(!)
Микрософт просто адски пушает Databrick, но речь не об этом.

Местные консалтеры уверены, если вы хотите современное Хранилище - то, где вместо унылых файлов и/или базы под Staging Аrea всем надо срочно внедрить Data Lakи
Что думаете?

Учитывая, что половина консалтеров не понимает, что такое полуаддитивные меры, отношения m2m, ничего другого им и не остается.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39718001
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39718019
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarrusGlebanskiСходил тут SQL Saturday в недавнюю..... кажется субботу(!)
Микрософт просто адски пушает Databrick, но речь не об этом.

Местные консалтеры уверены, если вы хотите современное Хранилище - то, где вместо унылых файлов и/или базы под Staging Аrea всем надо срочно внедрить Data Lakи
Что думаете?

Учитывая, что половина консалтеров не понимает, что такое полуаддитивные меры, отношения m2m, ничего другого им и не остается.
что-то мне подсказывает что эти консалтеры хоть и с нулевыми знаниями, но наголову выше местной публики. хотя бы даташыты по англицки прочесть могут.

https://databricks.com/blog/2017/11/15/a-technical-overview-of-azure-databricks.html

нет там хадупов, пропихивают какого-то франкинштейна, где у спарка вместо hdfs какой-то dbfs и прочая ажурная муть.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39718201
Glebanski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
churupaha,

отличный рассказ.
От себя добавлю, что пара местных консалтеров толкающих Azure Data Lake Analytics после посещения microsoft ignite очень расстроились.
Они рассказали, что Microsoft явно пушает Databricks в ущерб их любимому Analytics. Просто сравнивая кол-во воркшопов и упоминаний.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39721113
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторWell with Data Flow Microsoft have done something really special. The JSON output from the graphic ADF-DF user interface is used to write the Scala for us! This then gets compiled into the Jar file and passed to Azure Databricks to execute as a job on a given cluster (defined via ADF linked services as normal).


Azure Data Flow (ADF-DF)
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39721261
Кэптен
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Помню, еще года три назад Оракл толкал тему выноса предрасчета агрегатов в Хадуп. И различных трудоемких трансформаций.
Мол, например, у телекома офигезно много данных с базовых станций, и А) - хранить это в реляционке тупо дорого, и Б) большое количество мощных серверов (конечно Oracle BigData Appliance) легче и быстрее справятся с очисткой-подготовкой данных.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39721307
Ivan Durak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну так уже все доперли что хранить сырье в реляционке дорого.
А вот расчеты это уже по возможностям.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39721309
Полковник.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КэптенПомню, еще года три назад Оракл толкал тему выноса предрасчета агрегатов в Хадуп. И различных трудоемких трансформаций.
Мол, например, у телекома офигезно много данных с базовых станций, и А) - хранить это в реляционке тупо дорого, и Б) большое количество мощных серверов (конечно Oracle BigData Appliance) легче и быстрее справятся с очисткой-подготовкой данных.

У Инмона есть статья почему даталайк не хранилище данных. В двух словах 1 пользователям нужны понятные им структуры данных для анализа - это хранилище данных, данные структурированы, разложены по таблицам и колонкам 2 даталайк это технология обработки больших массивов данных параллельным процессом.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39721386
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Полковник.
У Инмона есть статья почему даталайк не хранилище данных. В двух словах 1 пользователям нужны понятные им структуры данных для анализа - это хранилище данных, данные структурированы, разложены по таблицам и колонкам 2 даталайк это технология обработки больших массивов данных параллельным процессом.
а можно точнее что за книга? а то как-то не понятно на кой пользователю хранилище, если даталейк витрины пользователям строит. вполне структурированные.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39721397
.Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня есть архив ХД, в который складываются входящие XML. Но сделать это центральным элементом ХД и обозвать DataLake мне в голову не пришло...
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39721415
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
из корп. чатикаWe should NOT use Data lake analytics and USQL. Instead Databricks with Python and Spark SQL
We just learned that Data Lake Analytics will be discontinued and USQL will not be supported any longer by Microsoft
Data Lake Store Gen1 will be replaced by Data Lake store Gen2 end of this year, and migration will be easier from Blob
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39721481
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.ЕвгенийУ меня есть архив ХД, в который складываются входящие XML. Но сделать это центральным элементом ХД и обозвать DataLake мне в голову не пришло...
и никому не приходит. далейком называют то во что эти xml трансформировали . orc, parquet, hbase и прочие файлики на hdfs.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39721551
Полковник.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1Полковник.У Инмона есть статья почему даталайк не хранилище данных. В двух словах 1 пользователям нужны понятные им структуры данных для анализа - это хранилище данных, данные структурированы, разложены по таблицам и колонкам 2 даталайк это технология обработки больших массивов данных параллельным процессом.
а можно точнее что за книга? а то как-то не понятно на кой пользователю хранилище, если даталейк витрины пользователям строит. вполне структурированные.

Я выше написал - статья. Года три назад Инмон раз в неделю писал по статье, где обличал любителей свалить все в кучу и назвать это даталайк.

Витрины поверх даталайк появились именно потому что пользователям нужны структурированные данные.

А теперь вопрос - зачем эта прослойка, которую все упорно пытаются варить называя это изделие красивым словосочетанием - озеро данных?
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39721553
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1,

я считал, что Data Lake это все это в одном месте,
то есть такая мегамусорка
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39721595
.Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1и никому не приходит. далейком называют то во что эти xml трансформировали . orc, parquet, hbase и прочие файлики на hdfs.
А-аа, все понятно! Datalake по определению бывает только поверх Hadoop, поэтому мне надо запихать xml-ки в хадуп и вот тогда озеро украсит мой повседневный пейзаж ИТ-систем! Не было у меня ни малейшей нужды в хадупе - а вот появилась!
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39721604
Бумбараш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сейчас все хранилища делают с предбанником из хадуп, который в разной степени пытаются натянуть на всё хранилище

поэтому удивление автора темы непонятно

А Inmon это outdated дед. Есть сомнение, что он может что-то решать сейчас по теме.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39721654
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Полковник.Я выше написал - статья. Года три назад Инмон раз в неделю писал по статье, где обличал любителей свалить все в кучу и назвать это даталайк.

ну вот хотелось бы ссылочку, что бы не вышло как в той истории, где рабинович напел

Полковник.Витрины поверх даталайк появились именно потому что пользователям нужны структурированные данные.

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

Полковник. А теперь вопрос - зачем эта прослойка, которую все упорно пытаются варить называя это изделие красивым словосочетанием - озеро данных?
- что бы эффективно обрабатывать данные там где они лежат, а не таскать без конца данные из субд во всякие питоны, R и sas data майнеры. в обычной субд нет даже базовых алгоритмов анализа, все что сложне AVG() требует перекачки данных.
- что бы пользователь получил привычные данные в человеческом виде, а не набор мутных фактов, которые еще толпа инженеров нужна, что бы правильно заджоинить.
- имея резиновые ресурсы, многие вещи можно тупо и в лоб проворачивать. там где рсубд хранилище будет выдумывать мутные алгоритмы исправлений косяка, на хадупах просто перестроят витрину, не вникая даже в суть проблемы.
- что бы с какой-нить ESB в реалтайме данные читать, а не по старинке батчами
- с консистентностью на хадупах все сделано удобней, в рдбмс же exchange partition на всю бд не сделать.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39721657
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Критикя считал, что Data Lake это все это в одном месте,
то есть такая мегамусорка
дикие вы какие-то там, за мкадом. неужели в ваших краях нет ни банков ни страховщиков ? как бы те кто считает деньги с мегамусорками деньги считали ?

.ЕвгенийА-аа, все понятно! Datalake по определению бывает только поверх Hadoop, поэтому мне надо запихать xml-ки в хадуп и вот тогда озеро украсит мой повседневный пейзаж ИТ-систем! Не было у меня ни малейшей нужды в хадупе - а вот появилась!
нет уж, делай как делал раньше. и желательно на какой-нить экзадате. иначе людям не понятно зачем мне платить в пятеро больше
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39721748
.Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1сомневаюсь. даталейки из ентерпрайза и банков пошли, а там все данные хорошо структурированы. подозреваю банку в принципе что-то не структурированное грузить смертный приговор.
"In broad terms, data lakes are marketed as enterprisewide data management platforms for analyzing disparate sources of data in its native format," said Nick Heudecker, research director at Gartner. "The idea is simple: instead of placing data in a purpose-built data store, you move it into a data lake in its original format. This eliminates the upfront costs of data ingestion, like transformation. Once data is placed into the lake, it's available for analysis by everyone in the organization."
Что такое "native", "original format", когда этих форматов - много, по числу источников?
H5N1- что бы эффективно обрабатывать данные там где они лежат, а не таскать без конца данные из субд во всякие питоны, R и sas data майнеры. в обычной субд нет даже базовых алгоритмов анализа, все что сложне AVG() требует перекачки данных.
Во-первых, я затрудняюсь представить эффективную обработку грязных данных без их предварительной очистки. Во-вторых, мне сложно называть эффективным многократное выполнение одних и тех же трансформаций.
H5N1- что бы пользователь получил привычные данные в человеческом виде, а не набор мутных фактов, которые еще толпа инженеров нужна, что бы правильно заджоинить.
Это денормализация, а не Data Lake.
H5N1- имея резиновые ресурсы, многие вещи можно тупо и в лоб проворачивать. там где рсубд хранилище будет выдумывать мутные алгоритмы исправлений косяка, на хадупах просто перестроят витрину, не вникая даже в суть проблемы.
Черт побери, как эта "резина" должна развращать и отбивать желание думать...
H5N1- что бы с какой-нить ESB в реалтайме данные читать, а не по старинке батчами
У меня есть скромный сервер ETL на виртуальной машине, который среди прочего обрабатывает поток из кролика в 200 сообщений за секунду, максимально тянет почти тысячу. Обрабатывает поток - это значит читает сообщения, пишет в БД xml, затем пишет в БД теги параллельно с отправкой кролику подтверждений. Задержка - несколько секунд, реалтайм ненастоящий, но достаточно похоже. И никакого хадупа, только SSIS и немного умения им пользоваться.
H5N1нет уж, делай как делал раньше. и желательно на какой-нить экзадате. иначе людям не понятно зачем мне платить в пятеро больше
Пальцем в небо: я предпочитаю минимальные средства с максимальным выхлопом. Не то, чтобы я пугался большого энтерпрайза - работал в сбере с Терадатой, с DB2 for i - в другом банке. Но предпочитаю все же маленький энтерпрайз.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39721803
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.Евгений "In broad terms, data lakes are marketed as enterprisewide data management platforms for analyzing disparate sources of data in its native format," said Nick Heudecker, research director at Gartner. "The idea is simple: instead of placing data in a purpose-built data store, you move it into a data lake in its original format. This eliminates the upfront costs of data ingestion, like transformation. Once data is placed into the lake, it's available for analysis by everyone in the organization."
Что такое "native", "original format", когда этих форматов - много, по числу источников?

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

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

анализировать грязные данные запрещает закон, в любом случае прежде чем кому либо показать данные будут обработаны и загружены во что-то типа хранилища.

.ЕвгенийЧерт побери, как эта "резина" должна развращать и отбивать желание думать...

это то что позволяет использовать типичного сотрудника энтерпраза, не отвлекая тех кто имеет мозг. нет никакого смысла привлекать инженера, если задачу в лоб решит манагер и индус совершенно штатной перестройкой витрины

.ЕвгенийУ меня есть скромный сервер ETL на виртуальной машине, который среди прочего обрабатывает поток из кролика в 200 сообщений за секунду, максимально тянет почти тысячу. Обрабатывает поток - это значит читает сообщения, пишет в БД xml, затем пишет в БД теги параллельно с отправкой кролику подтверждений. Задержка - несколько секунд, реалтайм ненастоящий, но достаточно похоже. И никакого хадупа, только SSIS и немного умения им пользоваться.

да, распарсить xml и еще и записать в субд за несколько секунд это несомненно успех. только это убило риалтайм аналитику. теперь данные похоронены в тупом сторидже, из которого их теперь снова нужно доставать и гнать на скоринги, фрауд детекшен и прочий анализ. реалтайм аналитика все таки немного о другом.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39721858
.Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1это булшит от маркеторлога, для маркетолога. данные энтерпрайза это персональные данные, сенсетив фин данные, показывать их в полученном виде любому сотруднику попросту уголовное преступление.
Вы знаете, у меня нарождается подозрение, что вы под даталейком подразумеваете что-то свое, принципиально отличное от понимания авторов термина и от общепринятого понимания. Прошу, развейте это подозрение.
H5N1анализировать грязные данные запрещает закон,
Гы. Хотел бы я такой закон... Простите, а что вы понимаете под грязными данными?
H5N1в любом случае прежде чем кому либо показать данные будут обработаны и загружены во что-то типа хранилища.
Еще интереснее. Получается, что в вашем личном понимании Datalake нечто вроде ODS?
H5N1это то что позволяет использовать типичного сотрудника энтерпраза, не отвлекая тех кто имеет мозг. нет никакого смысла привлекать инженера, если задачу в лоб решит манагер и индус совершенно штатной перестройкой витрины
С одной стороны это так, с другой - это поощряет уход от проблемы вместо ее решения, заметание тараканов под скатерть. Главное - успеть отскочить до момента, когда они попрут наружу неудержимым потоком.
H5N1да, распарсить xml и еще и записать в субд за несколько секунд это несомненно успех. только это убило риалтайм аналитику.
Никто ее не убивал. Эта аналитика вполне неплохо ложится на поток данных, которым оперируют ETL решения. Далее нужно либо самому реализовать окна и агрегацию, либо слать данные во что-нибудь стороннее типа StreamInsight.

Моя позиция заключается в следующем: есть СУБД, которые транзакционно работают с пачками. Когда размер пачек начал выходить из-под контроля, большинство разработчиков начало шардировать данные. Я же предпочел обратиться за помощью к средствам ETL, которые нетранзакционно работают с потоком. На мой взгляд, СУБД и ETL компенсируют слабые стороны и потому хорошо дополняют друг друга, когда есть возможность допилить их функционал.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39721865
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а мне вот пофиг - куда рынок, туда и я... (коммент ко всем комментам)
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39721873
Полковник.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Даталайк пытаются создать там, где кривыми руками построено хоронилеще данных, от которого пользователям никакого толку. Преподносится это так - хранилища данных себя не оправдали, будем строить даталайк. От того, что кривые руки будут теперь строить даталайк ничего не меняется.
Ахаха
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39721893
.Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Полковник.Даталайк пытаются создать там, где кривыми руками построено хоронилеще данных, от которого пользователям никакого толку. Преподносится это так - хранилища данных себя не оправдали, будем строить даталайк. От того, что кривые руки будут теперь строить даталайк ничего не меняется.
Ахаха
Стоит отметить, что "хоронилище" есть неофициальный, нечасто используемый термин.
В то же время наряду с Datalake существует устоявшийся термин Dataswamp. Это «ж-ж-ж» — неспроста!
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39721941
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.ЕвгенийВы знаете, у меня нарождается подозрение, что вы под даталейком подразумеваете что-то свое, принципиально отличное от понимания авторов термина и от общепринятого понимания. Прошу, развейте это подозрение.

ваша проблема в том что вы хаваете маркетинговый булшит, от людей которые энтерпрайза не видели. поверьте, в реальных мире ни один банк не сможет "move it into a data lake in its original format"

.ЕвгенийH5N1анализировать грязные данные запрещает закон,
Гы. Хотел бы я такой закон... Простите, а что вы понимаете под грязными данными?

в европе это GDPR. он в принципе запрещает хранить некоторые данные типа медицинских, данные о расе. если с клиентом работа завершена, ты обязан анонимизировать его персональные данные. если прошли года, ты обязан уничтожить часть данных. это требование закона.

.ЕвгенийЕще интереснее. Получается, что в вашем личном понимании Datalake нечто вроде ODS?

ODS это субд, она не хранит истории. даталейк это файлики. просто файлики на S3, hdfs, но уже более менее обработанные, зачастую колончатой структуры типа parquet формата. по ним можно гонять SQL квери из спарка или импалы.

.ЕвгенийНикто ее не убивал. Эта аналитика вполне неплохо ложится на поток данных, которым оперируют ETL решения. Далее нужно либо самому реализовать окна и агрегацию, либо слать данные во что-нибудь стороннее типа StreamInsight.

угу. стандартный подход - забить на риалтайм, записать в субд и потом тащить копию данных из субд сторонним питонам, R и прочему ML.


Полковник.Даталайк пытаются создать там, где кривыми руками построено хоронилеще данных, от которого пользователям никакого толку. Преподносится это так - хранилища данных себя не оправдали, будем строить даталайк. От того, что кривые руки будут теперь строить даталайк ничего не меняется.
Ахаха
топовые банки и фин институты давно мигрировали на даталейки, в европе второго эшелона канторы запускают. можно хихикать, но у них как бы все получается.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39721968
.Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1ваша проблема в том что вы хаваете маркетинговый булшит, от людей которые энтерпрайза не видели. поверьте, в реальных мире ни один банк не сможет "move it into a data lake in its original format"
Прошу, не надо переводить стрелки на мои проблемы, действительные или мнимые. Я задал просто вопрос: на чем основано ваше понимание Datalake? Документы, стандарты, статьи классиков? Или обычная жизнь, когда вы сотворили нечто и решили назвать это даталейком?
H5N1в европе это GDPR. он в принципе запрещает хранить некоторые данные типа медицинских, данные о расе. если с клиентом работа завершена, ты обязан анонимизировать его персональные данные. если прошли года, ты обязан уничтожить часть данных. это требование закона.
Понятия персональных и грязных данных не соотносятся никак. Пожалуйста, прочтите общепринятые определения грязных данных.
H5N1ODS это субд, она не хранит истории. даталейк это файлики. просто файлики на S3, hdfs, но уже более менее обработанные, зачастую колончатой структуры типа parquet формата. по ним можно гонять SQL квери из спарка или импалы.
Даталейк - это ODS на основе хадуповских файликов?
H5N1угу. стандартный подход - забить на риалтайм, записать в субд и потом тащить копию данных из субд сторонним питонам, R и прочему ML.
Еще раз обращаю внимание на отличие ETL от СУБД. А именно: процесс ETL не скован транзакциями и не обязан синхронно записывать данные в БД (если не имеется соответствующих требований по консистентности, надежности получения/хранения и т.п.) В частности, у меня синхронность ограничена обменом с шиной, вся остальная обработка ведется асинхронно. Если я добавлю к парсингу xml отправку на интерфейс аналитического решения (на какой-нибудь сервис), то ничего принципиально не изменится.
H5N1топовые банки и фин институты давно мигрировали на даталейки, в европе второго эшелона канторы запускают. можно хихикать, но у них как бы все получается.
Прежде всего я не уверен, что в европе под даталейком понимают то же, что и вы.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39722019
Полковник.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1,

Предпочитаю всяким даталайкам гибридные решения ,- если у меня структурированные данные, то они идут в хранилище данных на уровень RDW если у меня есть связанные с ним не структурированные данные, то пусть лежат рядом в Hadoop. Как то так.

А валить в кучу все три вида данных - структурированные, слабоструктурировпнные и неструктурированные , без обработки и контроля, гордо зазвать эту помойку даталайкам, потом запилить сверху обычное хранилище по Кимбалу. Это, извините, плохо пахнет.

По этому то я с bi и ушел, когда прочитал постановку задачи - "парадигма ХД не оправдала ожиданий , поэтому необходимо переходить на гибкую парадигму даталайк" Понял, что нормально й работы в этой области больше нет.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39722026
Ivan Durak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторПрежде всего я не уверен, что в европе под даталейком понимают то же, что и вы
да тоже самое понимают - хадупо-свалка
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39722094
Фотография Alex_496
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1,

авторв европе это GDPR. он в принципе запрещает хранить некоторые данные типа медицинских, данные о расе. если с клиентом работа завершена, ты обязан анонимизировать его персональные данные. если прошли года, ты обязан уничтожить часть данных. это требование закона.


согласно требованиям FDA пациенты в прикладных информационных системах анонимизируются изначально.
На рандомизационный номер пациента записываются данные о дате рождения, поле, расе и т.п.
Данные хранятся десятилетиями, причем на электронных носителях в разных зданиях (защита от пожара).
А в прошлом году при прохождении зарубежного аудита нам был задан вопрос: помимо CD-дисков на чем архив есть? Оказалось, что аудитор имел ввиду, что спустя годы, когда CD-приводов уже не будет в обиходе, то как вы сможете предоставить архивные данные для прочтения.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39722287
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.ЕвгенийПрошу, не надо переводить стрелки на мои проблемы, действительные или мнимые. Я задал просто вопрос: на чем основано ваше понимание Datalake? Документы, стандарты, статьи классиков? Или обычная жизнь, когда вы сотворили нечто и решили назвать это даталейком?

пошел почитать, первое что выдал поиск упомянутый ужо Инмон. на классика тянет? пишет конечно мутно, но в целом здраво. предлагает raw data грузить в три data ponds после чего raw data в утиль. собственно то о чем я и говорю, серьезная кантора просто по полиси и законодательству сырые данные хранить не может


Data Lake Architecture: Designing the Data Lake and Avoiding the Garbage Dump
by Bill Inmon
Published by Technics Publications, 2016

Chapter 4 Data Ponds

An interesting architectural question is: once raw data flows from the raw data pond into the data pond, should the raw data remain in the raw data pond? The answer is no. Once raw data passes from the raw data pond to the analog data pond, the application data pond, or the textual data pond, it is best to remove the source data from the raw data pond. The raw data has already served its purpose and it would be extremely rare for analytical processing to ever be performed in the raw data pond.
...
Chapter 7
Application Data Pond

It is normal for application-based data to be entered into the application data pond in a standard relational database format. Most applications have data stored in a row and column format. So application data will usually be stored and transported into the application data pond in this standard database format.


.ЕвгенийЕще раз обращаю внимание на отличие ETL от СУБД. А именно: процесс ETL не скован транзакциями и не обязан синхронно записывать данные в БД (если не имеется соответствующих требований по консистентности, надежности получения/хранения и т.п.) В частности, у меня синхронность ограничена обменом с шиной, вся остальная обработка ведется асинхронно. Если я добавлю к парсингу xml отправку на интерфейс аналитического решения (на какой-нибудь сервис), то ничего принципиально не изменится.

да молодцы, молодцы. гарантируете мне стабильный доход выше рынка. я одобряю.
просто был вопрос, на кой прослойка. а вот у нее есть сугубо технические фичи. в том числе возможность подключить серьезные либы типа гугло тензорфлоу прямо в том в том же процессе, что и etl процесс, при этом запись результата на hdfs тоже все тот же процеc. вся магия происходит в одной в одной и той же jvm.
я в курсе, что можно по другому, но если вопрос зачем прокладка, есть сугубо технический ответ. и фич там много.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39722295
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_496согласно требованиям FDA пациенты в прикладных информационных системах анонимизируются изначально.
На рандомизационный номер пациента записываются данные о дате рождения, поле, расе и т.п.
Данные хранятся десятилетиями, причем на электронных носителях в разных зданиях (защита от пожара).
А в прошлом году при прохождении зарубежного аудита нам был задан вопрос: помимо CD-дисков на чем архив есть? Оказалось, что аудитор имел ввиду, что спустя годы, когда CD-приводов уже не будет в обиходе, то как вы сможете предоставить архивные данные для прочтения.
ну те кто хранит данные пациентов думаю дата лейки не заводят. лично я видел как аудит натянул финкантору за хранение счетов, выставленные от каких-то клиник. в счетах были какие-то сенсетив данные по диагнозу, процедурам. GDPR за такое расстреливает на месте. подозреваю какие-нить страховые выплаты GDPR требует как-то особо обрабатывать
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39722321
tarrus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1ODS это субд, она не хранит истории. даталейк это файлики. просто файлики на S3, hdfs, но уже более менее обработанные, зачастую колончатой структуры типа parquet формата. по ним можно гонять SQL квери из спарка или импалы.


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


Ну-ну. Давайте опять сказки про прогрессивную Европу, где половина банков работает на системах из 80х и 90х с обертками из веб-сервисов.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39722339
tarrus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1Alex_496согласно требованиям FDA пациенты в прикладных информационных системах анонимизируются изначально.
На рандомизационный номер пациента записываются данные о дате рождения, поле, расе и т.п.
Данные хранятся десятилетиями, причем на электронных носителях в разных зданиях (защита от пожара).
А в прошлом году при прохождении зарубежного аудита нам был задан вопрос: помимо CD-дисков на чем архив есть? Оказалось, что аудитор имел ввиду, что спустя годы, когда CD-приводов уже не будет в обиходе, то как вы сможете предоставить архивные данные для прочтения.
ну те кто хранит данные пациентов думаю дата лейки не заводят. лично я видел как аудит натянул финкантору за хранение счетов, выставленные от каких-то клиник. в счетах были какие-то сенсетив данные по диагнозу, процедурам. GDPR за такое расстреливает на месте. подозреваю какие-нить страховые выплаты GDPR требует как-то особо обрабатывать

Когда успели? Правила GDPR вступили в силу в мае и то не для всей Европы. Первые наказания начнуться не скоро. Вы свой опыт на все Европу экстраполировать пытаетесь.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39722355
Бумбараш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну в банках в хадупах большинство данные структурированы. Потому что там все источники структурированы. Это такой ods только в hdfs.
Почему при перекладке odsа из реляционной базы в хдфс у многих начинает рваться пукан - непонятно.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39722360
tarrus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Бумбарашну в банках в хадупах большинство данные структурированы. Потому что там все источники структурированы. Это такой ods только в hdfs.
Почему при перекладке odsа из реляционной базы в хдфс у многих начинает рваться пукан - непонятно.

Наоборот, многие были бы и рады что-то новое поковырять, но вот экономическое обоснование супер шаткое получается. Где бенефит до сих пор не ясно. Наверняка он есть на каких-то проектах, но где чек лист по которому можно проверить, что лучше в данной ситуации БД или файлики.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39722406
.Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1пошел почитать, первое что выдал поиск упомянутый ужо Инмон. на классика тянет? пишет конечно мутно, но в целом здраво. предлагает raw data грузить в три data ponds после чего raw data в утиль. собственно то о чем я и говорю, серьезная кантора просто по полиси и законодательству сырые данные хранить не может
Это все относилось бы к теме, не будь (по Инмону) все data ponds частями DataLake. Raw data pond - просто промежуточный слой, аналог Staging для ХД. Другие авторы предлагают другие принципы разделения (например, governed, lightly governed и ungoverned). Никто (вроде бы) не отрицает нужды в метаданных, но все (опять же вроде бы) избегают упоминания о трансформации данных (хотя грань между этими процессами довольно зыбка).
H5N1да молодцы, молодцы. гарантируете мне стабильный доход выше рынка. я одобряю.
просто был вопрос, на кой прослойка. а вот у нее есть сугубо технические фичи. в том числе возможность подключить серьезные либы типа гугло тензорфлоу прямо в том в том же процессе, что и etl процесс, при этом запись результата на hdfs тоже все тот же процеc. вся магия происходит в одной в одной и той же jvm.
я в курсе, что можно по другому, но если вопрос зачем прокладка, есть сугубо технический ответ. и фич там много.
Действительно, зачем идти по прямому пути - подключать либы и передавать им прогружаемые данные напрямую из оперативной памяти? Нет, надо обязательно разлить озеро и поставить в него слона, попутно закупив уйму железа и наняв команду консультантов со стабильным доходом выше рынка.

P.S. Хранение данных в БД (особенно блобов) действительно сильно ограничивает скорость чтения. Однако никто не говорил, что архив принципиально невозможно хранить в файлах. Средства ETL умеют работать и с тем, и с другим. Главное, чтобы задача решалась потоковой обработкой.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39722443
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarrusКогда успели? Правила GDPR вступили в силу в мае и то не для всей Европы. Первые наказания начнуться не скоро. Вы свой опыт на все Европу экстраполировать пытаетесь.
GDPR это про европу. там принято приглашать аудит до того как власти натянут и пока есть время исправить.

tarrusНаоборот, многие были бы и рады что-то новое поковырять, но вот экономическое обоснование супер шаткое получается. Где бенефит до сих пор не ясно. Наверняка он есть на каких-то проектах, но где чек лист по которому можно проверить, что лучше в данной ситуации БД или файлики.
24 ядра экзадаты стоят пол миллионна зеленых. реально нужны еще какие-то обоснования?

.ЕвгенийЭто все относилось бы к теме, не будь (по Инмону) все data ponds частями DataLake. Raw data pond - просто промежуточный слой, аналог Staging для ХД. Другие авторы предлагают другие принципы разделения (например, governed, lightly governed и ungoverned). Никто (вроде бы) не отрицает нужды в метаданных, но все (опять же вроде бы) избегают упоминания о трансформации данных (хотя грань между этими процессами довольно зыбка).

ложечки нашлись, но осадочек остался. кто как и что называет дел десятое, важно что даталейк не про сырые дампы. серьезной канторе их попросту запрещено хранить.

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

заинтриговал. давай, рассказывай, как ты собрался своему SSIS прикручивать тензорфлоу "и передавать им прогружаемые данные напрямую из оперативной памяти", причем хотелось бы еще послушать как это должно работать в параллель и отказоустойчиво.
и еще интересно было бы послушать как результат записывать в субд ? по ODBC ? по нетворку ?
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39722460
tarrus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1
tarrusНаоборот, многие были бы и рады что-то новое поковырять, но вот экономическое обоснование супер шаткое получается. Где бенефит до сих пор не ясно. Наверняка он есть на каких-то проектах, но где чек лист по которому можно проверить, что лучше в данной ситуации БД или файлики.
24 ядра экзадаты стоят пол миллионна зеленых. реально нужны еще какие-то обоснования?



В скольких проектах всё это реально нужно? Может у вас тоже не нужно было, поэтому и заменили не понятно на что.

В Европе больше 90 процентов предприятий и соответственно проектов это малый и средний бизнес. В среднем бизнесе всё это не нужно, а в малом и BI не представлен почти.

Вы же утверждаете, что все, кто не в даталейке - те ретрограды. Я утверждаю, что рынок даталейков в количестве проектов ничтожен. Потому что те у кого данных до 1ТБ за десять дел и есть те самые 90-95% рынка. И этим 95% не нужна ни Экзодата ни даталейк.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39722486
.Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1.ЕвгенийЭто все относилось бы к теме, не будь (по Инмону) все data ponds частями DataLake. Raw data pond - просто промежуточный слой, аналог Staging для ХД. Другие авторы предлагают другие принципы разделения (например, governed, lightly governed и ungoverned). Никто (вроде бы) не отрицает нужды в метаданных, но все (опять же вроде бы) избегают упоминания о трансформации данных (хотя грань между этими процессами довольно зыбка).

ложечки нашлись, но осадочек остался. кто как и что называет дел десятое, важно что даталейк не про сырые дампы. серьезной канторе их попросту запрещено хранить.
Повторяю простым языком: Datalake - это сырые данные. Разделенные на несколько частей в зависимости от структурированности и актуальности, а также слегка обогащенные метаданными. Но все равно сырые, никак не поджаренные с корочкой, как в ХД.
Покажите, где Инмон написал иное?
H5N1заинтриговал. давай, рассказывай, как ты собрался своему SSIS прикручивать тензорфлоу "и передавать им прогружаемые данные напрямую из оперативной памяти", причем хотелось бы еще послушать как это должно работать в параллель и отказоустойчиво.
и еще интересно было бы послушать как результат записывать в субд ? по ODBC ? по нетворку ?
К SSIS я бы прикручивать тензорфлоу не стал. Попробовал бы Информатику, Таленд, Пентахо. Все они умеют выполнять произвольные (ну почти произвольные) скрипты на джаве с подключением сторонних библиотек, передавать и получать наборы данных как минимум со стандартными компонентами (источниками, приемниками, трансформациями), как максимум - напрямую.Честно скажу, что прямой обмен реализовывал только в SSIS. Параллельно работают несколько пакетов разного назначения, обмениваются данными друг с другом, с шиной и БД. Отказоустойчивость - в рамках требований маленького энтерпрайза.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39722487
Фотография Роман Дынник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Многие все еще не понимают что Staging Area и ODS в Data Lake это НЕ обязательно Hadoop-based решение, а сама концепция Data Lake это не тоже самое что Hadoop...
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39722513
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.ЕвгенийПовторяю простым языком: Datalake - это сырые данные. Разделенные на несколько частей в зависимости от структурированности и актуальности, а также слегка обогащенные метаданными. Но все равно сырые, никак не поджаренные с корочкой, как в ХД.
Покажите, где Инмон написал иное?

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

Chapter 7 Application Data PondIf data finds its way into the application data pond in an integrated state, the organization is lucky. If data finds its way into the application data pond in an unintegrated state (which is the normal case) the organization must transform the data after it has entered the application data pond. This transformation step is very similar to conditioning for the analog data pond. If data is to be meaningfully used for analysis in the application data pond, the transformation of data into an integrated state is absolutely necessary. There are many reasons for the transformation and integration of application data pond data. Consider the following set of transformations, as seen in Fig 7.5. The different applications have gender encoding. In order to make the analysis consistent, the application data needs to be transformed into a consistent definition of gender. The same considerations hold true for measurement of distance. Inches and feet and yards need to be converted to centimeters if consistent and meaningful analysis is to be done.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39722524
Бумбараш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarrusБумбарашну в банках в хадупах большинство данные структурированы. Потому что там все источники структурированы. Это такой ods только в hdfs.
Почему при перекладке odsа из реляционной базы в хдфс у многих начинает рваться пукан - непонятно.

Наоборот, многие были бы и рады что-то новое поковырять, но вот экономическое обоснование супер шаткое получается. Где бенефит до сих пор не ясно.
ээ. Это как бэ и делают только из экономических обоснований - потому что это хадуп бесплатный.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39722641
Полковник.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Бумбараш,

Он бесплатный только чтобы поиграться. За энтерпрайз нужно тоже платить.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39722682
.Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1твоя проблема в том что ты не инженер, тебе манагер гартнера сказал и все. ты веруешь в ерунду, поскольку это хорошо ложиться на твою картинку мира, где в даталейках плавают дураки. а техническую лит-ру ты открывать и не станешь. она же обрушить уютные представления может. ну нафиг нудятину Инмонов читать, манагер гартнера то лучше. с любой стороны.

Chapter 7 Application Data PondIf data finds its way into the application data pond in an integrated state, the organization is lucky. If data finds its way into the application data pond in an unintegrated state (which is the normal case) the organization must transform the data after it has entered the application data pond. This transformation step is very similar to conditioning for the analog data pond. If data is to be meaningfully used for analysis in the application data pond, the transformation of data into an integrated state is absolutely necessary. There are many reasons for the transformation and integration of application data pond data. Consider the following set of transformations, as seen in Fig 7.5. The different applications have gender encoding. In order to make the analysis consistent, the application data needs to be transformed into a consistent definition of gender. The same considerations hold true for measurement of distance. Inches and feet and yards need to be converted to centimeters if consistent and meaningful analysis is to be done.

Спасибо, теперь все стало на свои места. А именно: руководители продукта описывают даталейк как хранение данных в исходном виде, гуру-практики робко прячут тело жирное в утесах настаивают на целесообразности простейших трансформаций (хотя прекрасно понятно, что данные могут теряться и после сложных, и после простых трансформаций). Ну а рядовые консультанты вообще не заморачиваются и не рефлексируют: берут обычное ХД, прикручивают к нему Хадуп и искренне считают, что именно так и надо делать. "Идея, брошенная в массы, - это девка, брошенная в полк".

В отношении моих проблем я, боюсь, вынужден вас разочаровать. Я никогда не пытался сблизиться с даталейками, но скорее в силу чутья, чем из-за рациональных причин. Сейчас эти причины у меня появились. А внедренцы даталейков теперь вызывают у меня ощущение некоей... брезгливости, что ли? Как участники обмана, как компьютерщики по вызову, ставящие вместо оплаченной лицензионной винды сборку ZverCD. Действительно, зачем им знать, что такое грязные данные, когда можно получать деньги за одну только сопричастность к модному направлению?
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39722697
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GlebanskiСходил тут SQL Saturday в недавнюю..... кажется субботу(!)
Микрософт просто адски пушает Databrick, но речь не об этом.


Делюсь ощущениями: второй день с databricks (spark + python) на реальных тасках (пока что разгребаю помойку с xml на blob storage). Впечатления только положительные в сравнении с U-SQL...
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39722731
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Полковник.Он бесплатный только чтобы поиграться. За энтерпрайз нужно тоже платить.
не надо. платить можно ... за супорт. но никто не заставляет. у клоудеры один дистрибутив
https://www.cloudera.com/downloads/cdh/6-0-1.html
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39722882
tarrus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1Полковник.Он бесплатный только чтобы поиграться. За энтерпрайз нужно тоже платить.
не надо. платить можно ... за супорт. но никто не заставляет. у клоудеры один дистрибутив
https://www.cloudera.com/downloads/cdh/6-0-1.html

Так объясните наконец. Кто файлики-то подготавливает? Святой дух? Или всё таки тот самый ненавистный вам ETL?
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39722932
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarrusТак объясните наконец. Кто файлики-то подготавливает? Святой дух? Или всё таки тот самый ненавистный вам ETL?

сам ETL делает хадуп, а как в raw data pond доставляют сырые файлики это зависит скорее от источника. есть коннекторы, есть sqoop, сейчас модно через кафку.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39722944
tarrus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1tarrusТак объясните наконец. Кто файлики-то подготавливает? Святой дух? Или всё таки тот самый ненавистный вам ETL?

сам ETL делает хадуп, а как в raw data pond доставляют сырые файлики это зависит скорее от источника. есть коннекторы, есть sqoop, сейчас модно через кафку.

В том то и дело, что само все равно ничего не делается и онлайн-аналитика - лукавство, всё равно. Источников миллион, и подготовить данные к горизонтальному масштабированию ничуть не менее сложная задача чем написать ETL в какой-нибудь будь ODS. Скорее наоборот, если большинство источников это RDBMS, то может и более сложно будет.

Я кстати, ничего против не имею, в отличии от Евгения, но я участвовал в подобных проектах и ничего простого и дешевого там я не увидел. Под свои задачи отличная штука, но агульно все ODS переводить на эту технологию считаю неоправданным.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39723805
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarrusВ том то и дело, что само все равно ничего не делается и онлайн-аналитика - лукавство, всё равно.

делается. береться какойнить голденгейт, тот читает в риалтайме оракловый лог и пишет в кафку, хадуп/spark читает с кафки и на ходу spark ml модели считает, за одно переобучает модели. результат терминами Инмона интегрирует в application pond.

tarrusИсточников миллион, и подготовить данные к горизонтальному масштабированию ничуть не менее сложная задача чем написать ETL в какой-нибудь будь ODS. Скорее наоборот, если большинство источников это RDBMS, то может и более сложно будет.

терминами Инмона интегрируешь ты в application pond, причем модель application pond должна быть как можно ближе к сырым данным. в идеале у там мизерные трансформации.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39731187
Glebanski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarrus В том то и дело, что само все равно ничего не делается и онлайн-аналитика - лукавство, всё равно. Источников миллион

H5N1делается. береться какойнить голденгейт, тот читает в риалтайме оракловый лог и пишет в кафку,

tarrus +1
Бере т ся не просто так, а за 100500 евро. Пардон, ноль пропустил. За 1000500.
А если на один из источников не хватило бабла, или какие-нить греки/индусы решили не сдаваться и работать по старинке, то и весь риал-тайм накрылся.

ЗЫ: Мне голденгейт нравится, не подумайте ничего плохого :D
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39731270
Полковник.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нашел в сети небольшую статью об отличиях даталайка и ХД - и там и там данные для пользователей нужно структурироаать и обрабатывать в ХД данные обрабатываются на входе , в даталайке -на выходе. На мой взгляд простое и удачное пояснение различий.
По теме SA - это не только промежуточное хранение, но и обработка, подготовка данных. Поэтому ставить знак равенства между SA и даталайк не верно.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39731561
Фотография StarikNavy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Полковник.На мой взгляд простое и удачное пояснение различий.
вот, взяли , и в самый разгар священной войны, все... объяснили)
люди только начали длиной свеого dwh меряться
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39731623
tarrus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Полковник.Нашел в сети небольшую статью об отличиях даталайка и ХД - и там и там данные для пользователей нужно структурироаать и обрабатывать в ХД данные обрабатываются на входе , в даталайке -на выходе. На мой взгляд простое и удачное пояснение различий.
По теме SA - это не только промежуточное хранение, но и обработка, подготовка данных. Поэтому ставить знак равенства между SA и даталайк не верно.

Ссылочка сохранилась? Хочется добавить в копилку.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39731884
Гулин Федор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarrusСсылочка сохранилась? Хочется добавить в копилку.
+1 дайте то - а то шо ж так заинтересовать заинтересовали

зы сколько много новых слов то появилось
ща озера данных
скоро наверно моря появятся
потом Акияны - ну по логике биг даты.
маркетинг он такой :)
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39732006
Фотография George Nordic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, в Газпромнефти вовсю работает Datalake. Но там интереснее структура.

В Hadoop льются сырые данные, но только те, которые требуют обработки (записи разговоров, стримы с видеокамер и т.п.). Потом из этих данных извлекается значимая информация и уже эти данные проходят контроль качества данных, происходит их обогащение и расчет показателей, после чего эти обработанные данные летят в РСУБД а оттуда - в клик. Управление метаданными в Qlik - NodeGraph. ETL для Hadoop - Informatica. Обработка данных в Hadoop - R и Mahout. Кому интересно - вот ссылка на презентации , в папке WYV 2018 лежит.

Если про Qlik говорить, т.е. куда эти данные потом и извлекаются (с возможностью перехода непосредственно к "сырой" информации), то в департаменте, где работает спикер - ДРП: 250 Приложений, в одном их подразделений - 1100+ пользователей, 2300 Реализованных отчетов, 150 источников данных. Обрабатывается 20Тб данных:
2012 -> 2015 3Tb
2015 -> 2016 +6Tb
2017 + 5Tb
2018 + 8Tb + Промежуточная РСУБД к Hadoop.

Очень интересная презентация. Мало у кого подобное работает, да еще и в продуктиве на такое кол-во сотрудников. И это - один из департаментов ГПН.

С Уважением,
Георгий.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39732021
Полковник.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarrus,

Доберусь сегодня до компа дам ссылку.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39732058
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
George NordicКстати, в Газпромнефти вовсю работает Datalake. Но там интереснее структура.

В Hadoop льются сырые данные, но только те, которые требуют обработки (записи разговоров, стримы с видеокамер и т.п.). Потом из этих данных извлекается значимая информация и уже эти данные проходят контроль качества данных, происходит их обогащение и расчет показателей, после чего эти обработанные данные летят в РСУБД а оттуда - в клик. Управление метаданными в Qlik - NodeGraph. ETL для Hadoop - Informatica. Обработка данных в Hadoop - R и Mahout. Кому интересно - вот ссылка на презентации , в папке WYV 2018 лежит.
открыл файлик, вроде там есть шанс на нечто более вменяемое. на последних страницах они рисуют что у них все источники данные в озеро льют (стр. 46) и аналитика тоже в хадупе (стр. 48). на стр. 48 даже прямо надписи "экспорт транзакционных пакетов в экосистему HADOOP"
единственно не поятно что они обозвали рсубд внутри хадупа. я подозреваю это аля реляционные таблички impala, tez или sparkSQL.
врядли они копируют данные в хадуп потом в рсубд, потом в R, а потом еще и в клик. люди бы смеяться начали.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39732098
Бумбараш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну там взяли курс на диджитализаю, дали бабла вот люди и "работают во всю".
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39732146
Полковник.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tarrus,

Ссылки про различия:
1-я
2-я
3-я
4-я
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39732526
tarrus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Полковник.tarrus,

Ссылки про различия:
1-я
2-я
3-я
4-я

Спасибо!
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39732717
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
БумбарашНу там взяли курс на диджитализаю, дали бабла вот люди и "работают во всю".
если рсубд в хадупе у них это impala, tez или sparkSQL, то в вполне адекватный дизайн. причем еще раз подтверждающий мой поинт, что те кто не в бложик пишут, а поднимают реальные data lake проекты, те обрабатывают данные перед анализом. ковыряние в сырых данных бумага стерпит, реальный проект - нет.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39732784
Полковник.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1БумбарашНу там взяли курс на диджитализаю, дали бабла вот люди и "работают во всю".
если рсубд в хадупе у них это impala, tez или sparkSQL, то в вполне адекватный дизайн. причем еще раз подтверждающий мой поинт, что те кто не в бложик пишут, а поднимают реальные data lake проекты, те обрабатывают данные перед анализом. ковыряние в сырых данных бумага стерпит, реальный проект - нет.

Было бы странно не обрабатывать данные перед анализом. Ахахааа. Данные в ХД обрабатываются перед записью.
Подозреваю, что у вас нет реального опыта построения даталайк, все из презентаций берете?
Если есть ответьте на простой вопрос - что и как у вас с метаданными, можете описать структуру хранения метаданных?
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39732824
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Полковник.Было бы странно не обрабатывать данные перед анализом. Ахахааа. Данные в ХД обрабатываются перед записью.
Подозреваю, что у вас нет реального опыта построения даталайк, все из презентаций берете?

подозреваю вы не русский. иврит родной? отмотай чуть назад увидишь что и как я читаю. потом открой свои ссылки и посмотри какие данные в дата лейке предлагают там анализировать и чем это от описанного Инмоном отличается
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39732862
Полковник.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1,

Ты не знаешь что в даталайке тоже должны быть метаданные? Поздравляю, господин соврамши, произошло "полное разоблачение"
по Булгакову.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39732879
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Полковник.Ты не знаешь что в даталайке тоже должны быть метаданные? Поздравляю, господин соврамши, произошло "полное разоблачение"
по Булгакову.
ты упомянутою мной книгу Инмона открыл? прочел? чем его application pond или "рсубд" газпромнефти отличается от твоих ссылочек по бложикам осознал ? посмотри еще раз, что предлагает анализировать Инмон и что твои ссылочки
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39733446
Бумбараш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А какие есть стандартные модели дата лейков? Или всё бухается as is как в одс. Или есть правила организации данных в этом лейке.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39734297
Фотография George Nordic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Бумбараш, спасибо за вопрос. Помогите мне разобраться. Вообще, думаю, коллективно легче будет.. Я просто свои мысли накидаю, очень буду благодарен за комментарии и конструктивную критику, особенно по части хранилищ.

Начнем с общих определений, как информация доходит до конечного пользователя.
Пользователь <-> система визуализации <- ADWH <- Источники данных (т.ч. DWH / DataLake)

С "Системой визуализации", надеюсь, все понятно. PBI, Excel, ряд специализированных систем (Табло) и т.д.

Что я имею в виду под ADWH? Это "чистые" (достоверные) данные (прошедшие контроль качества) и рассчитанные показатели на их основе, пригодные и предназначенные для принятия управленческих решений. Обычно не он-лайн, есть лаг в несколько часов или даже дней.
Больше ничего там нет - только необходимые для аналитический отчетов данные.
Могут ли там лежать транзакции и прочие детальные данные? Да, если это необходимо для принятия управленческих решений (моделирования, прогнозирования и т.д.), но данная система категорически не предназначена для хранения исторических данных. Фактический, это слепок / выгрузка необходимых данных с заданным уровнем визуализации из систем хранения данных. Под ADWH я подразумеваю класс или подкласс систем, описывающих вышеуказанную задачу - это может быть и витрина / Datamart, или кубы / OLAP / специализированные системы для ускорения работы с данными и передачи их в визуализатор - Vertica, Greenplum и т.п. То есть основная задача - хранить подготовленные данные с приемлемым уровнем актуальности и достоверности и быстро выдавать их по запросу пользователю через интерфейс визуализатора (ну или прямым запросом, это на любителя).
Происходит ли подготовка данных в ADWH? Да, происходит. Рассчитываются агрегаты, показатели, можно посчитать общее и потом в отдельное поле проставить доли, чтобы система быстрее работала на типовых запросах можно обработать данные (при загрузке или сразу после загрузки), и ввести отдельные поля, дающие ответ на часто задаваемый вопрос - дней с последнего платежа или покупки, кол-во уникальных (лучше заранее просчитать, чем Distinct Count'ом потом систему мучить, а это может быть критично при работе с большим кол-вом данных), или флажок там взвести - sum по отфильтрованным всяко легче отработать чем тот же Distinct Count. Т.е. обработка данных там происходит.
Откуда же ADWH берет данные? В идеале - из DWH, а еще лучше если она является ее подмодулем. Кстати, сейчас все больше примеров подобных гибридов - реляционка DWH и ADWH поколонка: одна быстро пишет данные, вторая быстро их вытаскивает.
Но, как говориться, возможны варианты, особенно когда мы в сценарии начинаем рассматривать возможность использования DataLake.
Теперь давайте о том, что же необходимо хранить в DWH??
1. DWH ни в коем разе не должен быть "копией" транзакционной базы - это сисадминские дела, хранилище не для этого. Все-таки, DWH предназначен для построения отчетности. Следовательно, пихать туда "а это еще может пригодиться, вдруг понадобиться" - скоро получим кладбище данных, к 90% которых ни разу не обращались. В DWH должны попадать данные из разных систем и там же должен быть осуществлен процесс "чистки" данных. Возможно разделение на зоны "грязные" данные и "чистые" (с методологией очистки, чистки выбросов, насыщением необходимой аналитической информацией и т.д. Или только "чистые" при наличии доступа к транзакционным системам с "грязными" данными. Это говорит о том, что в DWH также происходит преобразование информации, как на уровне загрузки, так и процессинг загруженных данных.
2. Следовательно, состав данных в DWH - зависит от ADWH, и, соответственно, от задач пользователей. Возможно и избыточное хранение данных - ряд данных нужен для расчета сводных показателей и выгрузки в ADWH или даже для [возможного] прямого от пользователя.
3. И именно в DWH необходимо хранить исторические данные. Например, для расчета прогнозов. Или "разбора полетов". Или LFL или построения отчетов / выгрузки в ADWH исторических данных для расчета подобных показателей.

Таким образом мой посыл такой - уже на выходе из DWH мы имеем чистые данные, пригодные для дальнейшего анализа. ADWH - это надстройка, которая позволяет быстрее с ними работать - оперативный слепок. Да, ряд показателей рассчитывается, но только по этому слепку, чтобы не вносить лишние преобразования.

А вот теперь вопрос - что мы грузим в DataLake? И стоит ли туда грузить структурированные данные?
Мой личный ответ - нет, структурированные данные туда грузить не стоит. Их лучше сразу загонять в DWH.

Тут мы подходим к другим проблемам
1. Отсутствия необходимых данных. Т.е. если натравить ИИ / ML (да даже простой datamining) на нашу описанную выше DWH, то эти системы на найдут корреляции между спросом и структурой спроса и погодой и курсами доллара / Евро / стоимостью нефти. Почему? Да потому что их там нет! Мои проекты по DM на 80% состояли из поиска и загрузки релевантных данных, потом уже отсматривали корреляции, убирая случайные. <-здесь подробнее надо будет
2. Данные есть, Отсутствие знаний / алгоритмов / поиска ценности в этих данных. Например, проект в МЭС. Ну, например, есть данные по всем электросчетчикам г. Москвы. И что? Майнеров вычислять? Когда народ дома бывает и в отпуск / на дачу ездит? Что делать-то с ними?? Т.е. данные есть, а ценности (пока) не видно. [Ценность - в совокупности разных данных - раскрыть тему]

Я считаю, что в DL необходимо грузить сырые данные, но проводить над ними [пост]обработку. Причем результаты этой обработки могут быть как сохранены в DL (насыщение данных, тегирование, связывание данных с мастер-справочниками и с "чистыми" данными DHW), так и извлеченные знания необходимо уже переносить в DWH.
Т.е. пока мы туда кладем слабоструктурированные "сырцы" - видео, записи разговоров, тексты книг, датасатанисты извлекают ценность, которая уже идет в DWH/ADWH. А те же чеки - вот еще вопрос, стоит ли их хранить в DL, так как они хорошо структурированы! Вопрос, как их обратно правильно извлечь, учитывая что BigData - это, в первую очередь контекст и релавантность. Т.е. я по запросу "Чек номер 1 000 000" не ожидаю, кроме чека с №1000000 (есть он есть) получить чек с суммой 1000000 рублей или чек с книжкой "Миллион рецептов борща", "как завести миллион друзей" или "Как заработать первый миллион, тираж 2 000, стоимость 500 рублей" - а так и будет при неаккуратной работой с BigData!

Стоит ли "все" данные грузить в DL - большой вопрос. С одной стороны - нет, мы же не Плюшкины. С другой - а кто знает, какая ценность в них скрыта, и как они поведут себя при насыщении с имеющимися данными? Как я и говорил, Ценность - в совокупности разных данных. То есть сегодня мы просто храним записи камер, и потом подключили распознавание лиц. Сначала просто пол / возраст, а потом связали с кассой и временем. И получили корзину конкретного покупателя! а если он картой платил - то и ФИ. В общем, очень заманчивые для маркетинга возможности появляются. Надо просто знать, какую задачу решать, и как.

Кто что думает, кто чем дополнит?

С Уважением,
Георгий
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39734364
Фотография Alex_496
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
George Nordic,

насчет чистки. Что можно, то нужно чистить - были бы ресурсы, опыт и желание. А GIGO надо предотвращать в момент зарождения в исходных системах, если это не чужие внешние данные, на которые слабо влиять можем. Как правило, влиять на источники внутри компании - это административная борьба восходящая к Топ - менеджменту.
Никто не будет, например, править хлам в кредитных заявках годичной давности. Имеется ввиду дозаполнение атрибутов и устранение нелогизмов. Это нужно тогда повторный ввод с первичных документов. Да и первички уже может не быть.
Главное что - продажи! Продали и забыли, живем "сегодняшним днем". И тех уже спонсоров и разрабов нет.
А чтобы точкой зарождения классификаторов и справочников, равноудаленной от всех систем и запитывпющей все системы стал MDM - это та еще притча. Положим, есть MDM, но вместе с тем и локальные Экселя с доп. правильными атрибутами живут. А потом - многолетний MDM это изнурительный труд. И он тоже сходит на нет, т.к. движуха, текучка и опять же - главное - торгануть и свалить.

В DWH надо тянуть про запас, но не откровенный шлак. Ибо когда бизнес допрет, созреет, схватится - и понеслось скорей, скорей давайте закачивать то, чем пренебрегли ранее. Опять же историчные данные брать уже негде будет / GIGO / нет ресурсов.
Дорога ложка к обеду, и если у вас в DWH поболее чем только ложки, то и ценность другая.

Удалить ненужное не так долго, ломать - не строить.

Куда чаще встречаются дублирующиеся таблицы, платформы, дублирующиеся кланы отделы, строителей DWH, витрин, кубов и прочих слоев бескультурного наследия
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39734379
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
George NordicКто что думает, кто чем дополнит?

Билл Инмон дополнил в 2016. прочитайте, советую.

George NordicВопрос, как их обратно правильно извлечь, учитывая что BigData - это, в первую очередь контекст и релавантность. Т.е. я по запросу "Чек номер 1 000 000" не ожидаю, кроме чека с №1000000 (есть он есть) получить чек с суммой 1000000 рублей или чек с книжкой "Миллион рецептов борща", "как завести миллион друзей" или "Как заработать первый миллион, тираж 2 000, стоимость 500 рублей" - а так и будет при неаккуратной работой с BigData!

поверьте, в хадупе есть разные форматы хранения и в том числе те что на select * from table where field=1000000 в состоянии вернуть те же строки что и реляционная субд. и вы не сможете записать "борщ" в field, если поле нумерикал объявили. например в колончатые форматы parquet, orc. еще есть kudu - сторидж на хадупе практически со всеми атрибутами рсубд.

по мне так копирование структурированных данных с data lake, по нетворку, в настоящую реляционную DWH должно приносить серьезный бонус. если бонуса нет, нет смысла и копировать.
хадупы далеки до идеала, работа с файликами, в том числе структурированными имеет свою специфику, но очищенные и структурированные данные прямо в хадупе вполне рабочий вариант, который открывает дорогу и к реал-тайм аналитике и к более эффективным вариантам анализа, прямо там, где данные лежат.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39734389
Фотография Hunterik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В целом вроде все об одном и том же говорят, только немного разными словами и с разными акцентами.

Попытаюсь обобщить для себя:
- сваливать данные в DL без их "маркировки" и подготовки - это формирование свалки, в которой потом не разберёшься;
- до сих пор много активностей по DL (не все конечно) - это скорее дань маркетингу, чем осознанный шаг, связанный с необходимостью работы с большими объёмами данных и плохо структурированной информацией с применением соотв.аппарата по анализу накопленных данных (то есть сначала начнём накапливать и может пытаться анализировать, а потом посмотрим, что из этого выйдет);
- от реляционных СУБД и хранилищ данных бежать не стоит - просто так чуда с DL не случится - менять шило на мыло смысла нет для "стандартных" задач большинства Заказчиков, а для развития в сторону DL нужно осознание новых целей, с которыми устоявщийся подход не эффективен.

По теме...
Data Lake как Staging Area (именно Staging Area, а не хранилка впрок)... А нафига? Объёмы в SA сильно больше того, что пойдёт дальше в DWH?
В этом плане обратная выгрузка старых данных из традиционного DWH выглядит более привлекательной - освобождаем дорогую систему от старых данных, но выгрузка старых данных в Hadoop такую архивную систему Data Lake-ом не делает...
То же и со складированием информации впрок... Боевые системы могут значительно меняться, и разобраться в данных из прошлого, основываясь на знаниях сегодняшнего дня, может быть очень сложной задачей.
То есть дай человеку текущие данные, опиши, как система работает сегодня, а потом дай данные, скажем, двух летней давности, и можно встрять с их анализом, найдётся например какая-нибудь классификация, которая сегодня уже не нужна и не используется, которая просто умерла... И что, разбираться что там было и означало?

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

А вот делать действительно упорядоченную систему хранения и анализа больших объёмов, из которой что-то, возможно, можно докинуть в том числе и в стандартное DWH, работающее рядышком (пока и если оно не будет заменено полностью на DL поверх Hadoop) - это уже другое дело.
Только цель нужно видеть хотя бы примерно прежде, чем за это браться - нужно вот это и не могу сделать на том, что есть, с теми данными, что имею, в том виде, в котором они представлены.

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

Мне очень понравилась фраза про "отсутствие знаний / алгоритмов / поиска ценности в этих данных".

В интересное время живём. =)
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39735163
Ivan Durak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторData Lake как Staging Area (именно Staging Area, а не хранилка впрок)... А нафига? Объёмы в SA сильно больше того, что пойдёт дальше в DWH?
Фига и еще как. лично участвовал в DL где парсились соцсети. И объемы были гиганские - хотя и уже вполне структурированные в момент еще до заливки. Так вот кроме как в хадуп такой объем никуда не сложить изначально. А потом после обработки выжимка из него шла в РСУБД. Разница объемов примерно на порядок.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39735189
Фотография Hunterik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan DurakавторData Lake как Staging Area (именно Staging Area, а не хранилка впрок)... А нафига? Объёмы в SA сильно больше того, что пойдёт дальше в DWH?
Фига и еще как. лично участвовал в DL где парсились соцсети. И объемы были гиганские - хотя и уже вполне структурированные в момент еще до заливки. Так вот кроме как в хадуп такой объем никуда не сложить изначально. А потом после обработки выжимка из него шла в РСУБД. Разница объемов примерно на порядок.
В каком смысле выжимка - что с данными делали, если не секрет? =)
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39735248
Полковник.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan Durak,

Дурное дело - не хитрое. Это я про парсинг соцсетей и поиска там золота.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39735256
Фотография StarikNavy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HunterikВ каком смысле выжимка - что с данными делали, если не секрет? =)
агрегировали вестимо
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39735269
Фотография Hunterik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
StarikNavyHunterikВ каком смысле выжимка - что с данными делали, если не секрет? =)
агрегировали вестимо
Да мне скорее детали интересны, чем в общем, наверняка же не только агрегировались, но и фильтровались, и, наверное, сохранялись долгосрочно... Ну да ладно, захочет человек - поделится. =)
От конкретного использования, как мне кажется, зависит можно ли назвать такое использование просто использованием в качестве Staging Area, или обогощением одной аналитической системы другой.
Ну вполне возможно, что просто игра терминов и привычки, ну то такое...
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39735342
Ivan Durak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HunterikStarikNavyпропущено...

агрегировали вестимо
Да мне скорее детали интересны, чем в общем, наверняка же не только агрегировались, но и фильтровались, и, наверное, сохранялись долгосрочно... Ну да ладно, захочет человек - поделится. =)
От конкретного использования, как мне кажется, зависит можно ли назвать такое использование просто использованием в качестве Staging Area, или обогощением одной аналитической системы другой.
Ну вполне возможно, что просто игра терминов и привычки, ну то такое...
ну как-как использовали. Для скоринга :)
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39738315
Andy_OLAP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
George NordicКто что думает, кто чем дополнит?

С Уважением,
Георгий
Большие данные - это данные про людей. Точнее, про их взаимодействие. И нужны они исключительно для рекламы товаров и услуг. Любых товаров и любых услуг. Нужно заглянуть внутрь человека, чтобы ему что-либо продать по той цене, которая устраивает продавца и которую можно навязать покупателю. А как навязать. Двумя путями. Первый - "ведь ты этого достоин". А чтобы узнать, чего считает себя покупатель достойным - нужно его проанализировать. Его сообщения. Это первый источник Big Data (в широком смысле, не только текстовые, но и звонки в голосовом виде и записи видеокамер для распознавания мимики и эмоций).
Второй - "у всех твоих знакомых уже есть, ты что, собрался выделяться среди них, ты лох дрожащий или право купить имеешь?" Для этого нужно собрать его граф знакомых. Это второй источник Big Data.

А проблема в том, что на лету это не обработать. Чтобы правильно распознать эмоции с видеосъемки - нужно собрать информацию о том, на что была такая реакция. Может быть, покупатель шел по улице, увидел рекламу Pepsi и скривился в гримасе - все, таки готово, продаем ему кока-колу, пепси он пить не будет.

Так вот - поступление такой информации из разных источников не синхронно. Поэтому нужно сложить, подождать некой точки наполнения для восстановления контекста, по которому можно уже проанализировать покупателя, и только после этого продолжить анализ.

И Data Lake действительно Staging Area. Состоящий из разных кусков, пополняемых с некой разной задержкой, которая еще и плавает во времени.

И окончательный вывод - "он скривился при слове пепси, нужно пометить в DWH, что это покупатель кока-колы" будет по источнику 1 и 2 из этого озера. И другой окончательный вывод - "он носит кожаную куртку зимой, наверняка приехал на машине, из базы ГАИ получена информация, что за ним числится новенький вольво, ему нужно продавать зимнюю резину и кожаные мужские перчатки, причем очень дорогие, от кошерного бренда" будет по источнику 2 и 3 из этого озера.

И эти staging куски будут постоянно использоваться, чтобы в цикле все больше узнавать про покупателя и то, что он готов купить, заносить в DWH.

Вот такое дополнение. Все в этом мире ради шекелей, поэтому тот, кто тратит деньги на сервера и Data Lake, думает прежде всего о том - "где мои покупатели и их бездонные кошельки, что я им смогу продать и заработать на этом чуть-чуть немножко больше".
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39738369
Фотография Alex_496
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andy_OLAP,

какие-то сказки дивные излагаете. В бэнках унифицировать профессии, указываемые в кредитных заявках, а затем сгруппировать и проанализировать - и то не могут, не знают для чего
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39738374
Alexander Ryndin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_496Andy_OLAP,

какие-то сказки дивные излагаете. В бэнках унифицировать профессии, указываемые в кредитных заявках, а затем сгруппировать и проанализировать - и то не могут, не знают для чего человек ночью писал, сон у него хороший был. Не обламывайте
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39738415
L_argo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andy_OLAP,

Какой образцово-лютый маркетологический бред... В Голливуде сценарии блокбастеров пишете ?
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39738862
Andy_OLAP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
L_argoAndy_OLAP,
В Голливуде сценарии блокбастеров пишете ?
А откуда у Вас эта информация? На кого Вы работаете?
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39738864
Andy_OLAP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_496Andy_OLAP,

какие-то сказки дивные излагаете. В бэнках унифицировать профессии, указываемые в кредитных заявках, а затем сгруппировать и проанализировать - и то не могут, не знают для чего
Банкам (обычным, за исключением 4-х банков в отдельности и ФРС в целом) просто никто не разрешит заниматься такими вещами. Каждому по способностям, от каждого по потребностям того, кто контролирует этих "каждых".
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39738865
Andy_OLAP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander RyndinAlex_496Andy_OLAP,

какие-то сказки дивные излагаете. В бэнках унифицировать профессии, указываемые в кредитных заявках, а затем сгруппировать и проанализировать - и то не могут, не знают для чего человек ночью писал, сон у него хороший был. Не обламывайте
Я таки просто на достаточно неабстрактных примерах попробовал обобщить выше высказанное и пояснить участникам форума, которые забредут в эту ветку, что data lake сначала нужно собрать как staging, потом циклично пополнять, потом в какой-то момент использовать для анализа и агрегации вверх, в сторону DWH.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39741472
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в продолжении вот этой ветки может будет кому-то интересно (извиняюсь за ошибки, не перечитывал, всё писал на лету с головы)

Полтора месяца плотно использую Azure Databricks Premium (Spark, SQL, Scala, иногда Python):

- если коротко, то впечатления только положительные
- поскольку это Spark, то можно юзать 3 вида API: RDD, Data Frame, SQL, есть выбор, если надо микроменеджить всё что под капотом RDD, если не надо, то Data Frame или SQL
- читать данные можно с HDFS, Azure Blob Storage, S3 (вообще можно к чему угодно, если работаешь на уровне RDD API, в моем случае так и вышло)
- реально работающий интерактивный интерфейс, можно кверить и крутить данные (попробуй сделать тоже с U-SQL)
- в Databricks Notebook'e можно мешать код на Scala, Python, SQL. очень класно, когда нужно вытащить что-то с нестандартного источника/нестандартный формат, то делаешь этот кусок в c помощью Scala/RDD скидуешь в parquet, дальше читаешь его с помощью DataFrame API или SQL там же в Notebook...
- полученный Notebook можно легко зашедулить с помощью Data Factory
- Databricks Premium дает возможность создавать таблицы своего "формата" организованные в каталоги: parquet + tranlog/versionhistory. Это позволяет делать на них UPDATE/MERGE/DELETE :). SCD дименшны теперь можно пилить без гемора прямо здесь. По сути Databricks Premium дает всё: ETL, stage, DWH с колумнстором всё можете делать прямо здесь. писатели и читатели разруливаются на уровне версий (никто никого не блокирует, всё консистентно)
- всё скейлится на лету либо статично выделяется нужное число нод - как настроишь, можете задать число нод например 2-35, кластер стартанет с 2 нод, если будет реальная нагрузка, оно добавить неактивные ноды постепенно пока не упрется до 35, нагрузки не будет, уменьшит число нод, если вообще Idle в течении времени N - кластер потушится автоматом :). стартует кластер либо явно либо при первом запросе пользователя
- Power BI может коннектиться напрямую к DWH в Databricks'e Premium
- прост в использовании, аналитики вьезжают с первого раза, все довольные...
- Spark Streams поддерживается (не использовал пока)

вобщем-то DataLake чувствуется тут :)
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39741477
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
+ удобство работы:

- интегрировано с github/bitbucket (можно получше)
- хорошо организован worckspace, можно шарить друг с другом notebooks
- можно насоздавать кучу кластеров под разные нужды, которые будут автоматом подниматься джобом или запросом пользователя (говноскриптить ничего не надо), много кластеров может быть полезно под разные job'ы, в зависимости от потребности джоба, interactive querying etc)
- всё биллится pay as u go

- о! вспомнил, стандартный коннектор для Azure DWH - Polybase aware, т. е. если вам нужно перекачать много данных из DataBricks в Azure DWH, то юзаете в несколько строчек этот коннектор, он в несколько потоков (линейно скейлится) выгружает это на промежуточный blob storage в parquet файлы, и инициирует загрузку выгруженного в Azure DWH через Polybase (каждая дочерняя нода параллельно всасывает в себя файлы), что самое класное при этом на стороне Azure DWH поддерживается опции DISTRIBUTION = ROUND_ROBIN/REPLICATE/HASH + COLUMNSTORE, оно налету параллельно через DMS сервис раскидывается по дистрибюшнам и сразу летит в columnstore индексы на каждом distribution'e. И всё это в несколько высокоуровневых строчек...

- еще продумана работа с хранением кредов к стораджам, базам и прочим, можно юзать Azure Vault либо Databricks'овский scope...

- в Databricks Premium вроде есть RBAC security для notebooks, clusters, jobs, and tables (пока не тестили)
- техподдержка ажура работает быстро, помогают
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39741601
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
churupaha,

У вас же в профиле Краснодар, а не (условный) Ганновер.
Простой вопрос - что будете делать, если:
1) Роскомнадзор заблочит ваш сервис за компанию с кем-нибудь;
2) реализуются политические риски в виде санкций с обоих сторон?

Просто я знаю довольно крупную компанию, которая поставила на облака и осталась совершенно без отчетности в момент блокировки телеграма. И именно из-за этого летом они хотели стартовать локализованный проект.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39741610
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
churupaha- в Databricks Notebook'e можно мешать код на Scala, Python, SQL. очень класно, когда нужно вытащить что-то с нестандартного источника/нестандартный формат, то делаешь этот кусок в c помощью Scala/RDD скидуешь в parquet, дальше читаешь его с помощью DataFrame API или SQL там же в Notebook...

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

churupaha- Databricks Premium дает возможность создавать таблицы своего "формата" организованные в каталоги: parquet + tranlog/versionhistory. Это позволяет делать на них UPDATE/MERGE/DELETE :). SCD дименшны теперь можно пилить без гемора прямо здесь. По сути Databricks Premium дает всё: ETL, stage, DWH с колумнстором всё можете делать прямо здесь. писатели и читатели разруливаются на уровне версий (никто никого не блокирует, всё консистентно)

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

churupaha- Power BI может коннектиться напрямую к DWH в Databricks'e Premium

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


2Критик
завтра в сирии рзбомбят случайно амов, эмбарго, майкрософт точно так же отключит ваши майкрософт сервера. у вас такой же вендор лок.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39741622
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Критикchurupaha,

У вас же в профиле Краснодар, а не (условный) Ганновер.
Простой вопрос - что будете делать, если:
1) Роскомнадзор заблочит ваш сервис за компанию с кем-нибудь;
2) реализуются политические риски в виде санкций с обоих сторон?

Просто я знаю довольно крупную компанию, которая поставила на облака и осталась совершенно без отчетности в момент блокировки телеграма. И именно из-за этого летом они хотели стартовать локализованный проект.

А я на заграничную компанию работаю (по удаленке, не бодишоп, прямо напрямую), предыдущее место также.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39741665
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1года два назад смотрел датабрикс, ноутбуки были просто скрипты. т.е. все ошибки в рантайме. имхо если уж дают нормальный спарк, то логичней делать по взрослому, на чем то компилирующемся, с юнит тестами и прочая. плюс уход от вендор лок. спарк на любое облако перетянуть можно.


Скриптами они и остались Про время обнаружения ошибок - зависит от выбранного API . Ещё, если логика действительно не тривиальная, можно засунуть ее в jar'ы и зааплоадить в Databricks и указать к какому кластеру или ко всем ее атачить при старте, maven поддерживается. Python'овские eggs, pypi тоже поддерживаются и т. п..


H5N1churupahaDatabricks Premium...UPDATE/MERGE/DELETE...SCD дименшны
а есть где почитать подробности? мы тоже это проворачиваем писаниной в отдельный фолдер, но писать всю витрину приходиться. может они чего круче придуали?


Оно гуглится по словам Databricks Delta.
https://docs.databricks.com/delta/index.html
https://vimeo.com/274267634

Если коротко - они не перетирают весь датасет, а лишь добавляют delta файлы к существующему датасету, и ведут метаданные. Чуть попозже покажу пример, что там происходит с файлами.

H5N1churupaha- Power BI может коннектиться напрямую к DWH в Databricks'e Premium

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


Просто, как опция , коннектится Power BI к каталогу таблиц ("базе"), которые, учитывая DataBricks Delta и parquet может и быть полноценным DWH со всякими SCD и прочим... Плюс сам Power BI может работать в режиме Direct Query и генерит Spark SQL или в режиме import'a можно приготовить ему агрегированные таблицы и зашедулить Refresh в Power BI Online. Что выбирать - зависит.

При этом выгружать в Azure DWH можно также легко и параллельно в неск. строчек кода... На сторонние стораджи тоже, этоже Spark...

---
Еще прикольная фича Spark'a - можно начать что-то не стандартное с RDD, вытащить данные и плавно в середине перейти к Data Frame API... и т. д..
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39741694
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1,

Databricks Delta UPDATE/DELETE
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
193.
194.
195.
196.
197.
198.
199.
200.
201.
202.
203.
204.
205.
206.
207.
208.
209.
210.
211.
212.
213.
214.
215.
216.
217.
218.
219.
220.
221.
222.
223.
224.
225.
226.
227.
228.
229.
230.
231.
232.
233.
234.
235.
236.
237.
238.
239.
240.
241.
242.
243.
244.
245.
246.
247.
248.
249.
250.
251.
252.
253.
254.
255.
256.
257.
258.
259.
260.
261.
262.
263.
264.
265.
266.
267.
268.
269.
270.
271.
272.
273.
274.
275.
276.
277.
278.
279.
280.
281.
282.
283.
284.
285.
286.
%sql
drop database if exists test_db cascade;
create database test_db;

create table test_db.test_tbl using delta as
select * from xxx;

databricks fs ls -l dbfs:/user/hive/warehouse/test_db.db/test_tbl/

dir          0  _delta_log
file  51926603  part-00000-1426c3ce-b229-483a-b77e-758462e6431b-c000.snappy.parquet
file  51931083  part-00001-89279585-72ed-4a93-9332-33b992ba7dea-c000.snappy.parquet
file  51836760  part-00002-d7d44c81-bc00-4863-ae53-b13baf0a8ec6-c000.snappy.parquet
file  51765672  part-00003-fbdf50d1-8166-4909-aaa4-4c41bb6a28e0-c000.snappy.parquet
file  51645701  part-00004-46fd54a1-c958-4f7b-b4f1-720cca087dbc-c000.snappy.parquet
file  51636215  part-00005-6bc7aa3a-9bca-4ec3-8a95-9fe5c7bcadd7-c000.snappy.parquet
file  51574509  part-00006-b9c010e6-9017-4a0e-853c-887dec591b73-c000.snappy.parquet
file  51673471  part-00007-31d54d8c-99a5-45a8-82ce-875e3d822b4c-c000.snappy.parquet
file  51712654  part-00008-a5dc71ac-69dc-4ebf-b317-55f8bfc275bb-c000.snappy.parquet
file  51574726  part-00009-261340a5-fcec-406d-98a0-83146ad47189-c000.snappy.parquet
file  51616103  part-00010-3ad706be-f215-4c81-8ee5-4d6834714f65-c000.snappy.parquet
file  51176632  part-00011-a4b84205-a59e-400a-975f-70c9f6c3de12-c000.snappy.parquet
file  51619480  part-00012-80c19ac4-e812-46a0-9507-d042bcd34110-c000.snappy.parquet
file  51482600  part-00013-5d9de6ce-fb01-418f-ae6f-6181e65bed66-c000.snappy.parquet
file  51552115  part-00014-2e547729-6858-49d1-a3b1-4b6b335a8da2-c000.snappy.parquet
file  51568260  part-00015-2e5696b9-9f6d-4f0c-bc9c-e1b63cd587c3-c000.snappy.parquet
file  51544169  part-00016-02edd1f4-ee78-413e-a0af-0f2b906d2a27-c000.snappy.parquet
file  51550346  part-00017-a28f200c-53c3-4646-9588-6e91643726a9-c000.snappy.parquet
file  51147934  part-00018-2d20ae02-2819-469c-b291-77312ba2938d-c000.snappy.parquet
file  51557341  part-00019-cc2c0e47-58ca-4c91-b783-7ee247f5e993-c000.snappy.parquet
file  51324794  part-00020-1627c301-a463-41d5-8c56-36f91eada362-c000.snappy.parquet
file  51470205  part-00021-3a193aeb-4e41-4dff-8a6d-d9d743bd401b-c000.snappy.parquet
file  51477655  part-00022-24d61281-d7ae-43b0-9ba1-e6e72e6fdf8f-c000.snappy.parquet
file  51536465  part-00023-ecca1e52-69c7-4494-b44c-eef7bf0c2a45-c000.snappy.parquet
file  51531138  part-00024-b88869d2-b679-47e6-a9ab-7a434920d7ff-c000.snappy.parquet
file  51502406  part-00025-3944d9b3-15bb-439e-b76c-ee7bf5f3f8a5-c000.snappy.parquet
file  51513942  part-00026-c36583b2-7d88-4958-bd26-f4e1760056bc-c000.snappy.parquet
file  51367886  part-00027-13d43c61-e980-476b-a537-f327a9893d36-c000.snappy.parquet
file  51478477  part-00028-5a8e0145-ada8-47ca-be92-b3dac8b18043-c000.snappy.parquet
file  51464162  part-00029-c7fc0a9a-9318-46eb-b130-e9a2209de1cd-c000.snappy.parquet
file  51471764  part-00030-21cc41eb-f27a-4e79-b943-89e55e6304be-c000.snappy.parquet
file  51529154  part-00031-f7460e47-557e-46cb-9ca5-273153f527a6-c000.snappy.parquet
file  51397207  part-00032-58710500-0a8c-4dff-bf76-0e3e414169cd-c000.snappy.parquet
file  51506234  part-00033-0e1d4307-c2c2-4280-8e8f-fac317b1abf7-c000.snappy.parquet
file  51413162  part-00034-71352935-c929-4aeb-8ed0-e843ca7b38e5-c000.snappy.parquet
file  50939362  part-00035-a8380fbd-20a0-4134-80bb-a42a092d519c-c000.snappy.parquet
file  51361043  part-00036-cd8c8e25-291f-4bad-89f5-36ccaaa3b303-c000.snappy.parquet
file  51269317  part-00037-2b588e22-ab2b-46e0-bc41-4dc6de23ca93-c000.snappy.parquet
file  51353055  part-00038-87aa3375-727c-43d5-a5fe-3a8f96f9a9de-c000.snappy.parquet
file  51359248  part-00039-b773f0bf-da86-4416-8e13-ac9b65b4fe6e-c000.snappy.parquet
file  51277753  part-00040-ab3b4492-d9e6-4422-8265-dea45b93cb81-c000.snappy.parquet
file  51461096  part-00041-8d54afc4-a461-4082-a498-841f30632b5e-c000.snappy.parquet
file  51369131  part-00042-0676f4e3-d324-481a-b219-8d947b827b7b-c000.snappy.parquet
file  51190015  part-00043-1801422a-acfe-4c80-9726-9bcc23e55a26-c000.snappy.parquet
file  51442688  part-00044-629fe344-921c-400a-9990-da75bef26a19-c000.snappy.parquet
file  51268063  part-00045-c866bd8d-a710-4aee-8afb-5e8025b222d8-c000.snappy.parquet
file  51195796  part-00046-a307d8d8-3d33-49c2-8db6-6696fa4eab55-c000.snappy.parquet
file  51163868  part-00047-f76157ee-4193-469f-a628-a8d6c6e3659b-c000.snappy.parquet
file  51230503  part-00048-e4f57059-7b5f-4f30-bf4d-15a35794025c-c000.snappy.parquet
file  59455581  part-00049-2850b901-2dbf-406c-8ffe-991c2479974d-c000.snappy.parquet
file  18663521  part-00050-137995d3-bd8e-434b-a2b1-d77b75611cef-c000.snappy.parquet
file   4988629  part-00051-64f8c21a-9ab8-4d0f-bbe6-a4774d9ffbbd-c000.snappy.parquet

databricks fs ls -l dbfs:/user/hive/warehouse/test_db.db/test_tbl/_delta_log

file     96  00000000000000000000.crc
file  23092  00000000000000000000.json

00000000000000000000.crc
{"tableSizeBytes":2605065694,"numFiles":52,"numMetadata":1,"numProtocol":1,"numTransactions":0}

00000000000000000000.json
{"commitInfo":{"timestamp":1543751811443,"userId":"6605856514319898","userName":"xxx@xxx","operation":"CREATE TABLE AS SELECT","operationParameters":{"isManaged":"true","description":null,"partitionBy":"[]","properties":"{}"},"notebook":{"notebookId":"2221810962482344"},"clusterId":"1126-094127-pods946"}}
{"protocol":{"minReaderVersion":1,"minWriterVersion":2}}
{"metaData":{"id":"2f1fd135-3b03-45ec-9075-12a7b8a79715","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"c1\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"c2\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"c3\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"c4\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"c5\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":[],"configuration":{},"createdTime":1543751736915}}
{"add":{"path":"part-00000-1426c3ce-b229-483a-b77e-758462e6431b-c000.snappy.parquet","partitionValues":{},"size":51926603,"modificationTime":1543751750000,"dataChange":true,"stats":"{\"numRecords\":5410014,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":3,\"c4\":79,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":567,\"c4\":13527760,\"c5\":3278},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273634,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00001-89279585-72ed-4a93-9332-33b992ba7dea-c000.snappy.parquet","partitionValues":{},"size":51931083,"modificationTime":1543751755000,"dataChange":true,"stats":"{\"numRecords\":5413461,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":58,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":543,\"c4\":13459440,\"c5\":706},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1274466,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00002-d7d44c81-bc00-4863-ae53-b13baf0a8ec6-c000.snappy.parquet","partitionValues":{},"size":51836760,"modificationTime":1543751749000,"dataChange":true,"stats":"{\"numRecords\":5405780,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":101,\"c5\":0},\"maxValues\":{\"c1\":3926010,\"c2\":10403,\"c3\":650,\"c4\":13525720,\"c5\":3561},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273352,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00003-fbdf50d1-8166-4909-aaa4-4c41bb6a28e0-c000.snappy.parquet","partitionValues":{},"size":51765672,"modificationTime":1543751755000,"dataChange":true,"stats":"{\"numRecords\":5409232,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":53,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":533,\"c4\":13514620,\"c5\":1328},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273808,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00004-46fd54a1-c958-4f7b-b4f1-720cca087dbc-c000.snappy.parquet","partitionValues":{},"size":51645701,"modificationTime":1543751750000,"dataChange":true,"stats":"{\"numRecords\":5409328,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":3926009,\"c2\":10403,\"c3\":533,\"c4\":13520940,\"c5\":3882},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273595,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00005-6bc7aa3a-9bca-4ec3-8a95-9fe5c7bcadd7-c000.snappy.parquet","partitionValues":{},"size":51636215,"modificationTime":1543751756000,"dataChange":true,"stats":"{\"numRecords\":5406456,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":95,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":700,\"c4\":13499120,\"c5\":3188},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273762,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00006-b9c010e6-9017-4a0e-853c-887dec591b73-c000.snappy.parquet","partitionValues":{},"size":51574509,"modificationTime":1543751750000,"dataChange":true,"stats":"{\"numRecords\":5409737,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":47,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":533,\"c4\":13527260,\"c5\":671},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1274070,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00007-31d54d8c-99a5-45a8-82ce-875e3d822b4c-c000.snappy.parquet","partitionValues":{},"size":51673471,"modificationTime":1543751756000,"dataChange":true,"stats":"{\"numRecords\":5411145,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":1,\"c4\":68,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":1305,\"c4\":13439940,\"c5\":3631},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273965,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00008-a5dc71ac-69dc-4ebf-b317-55f8bfc275bb-c000.snappy.parquet","partitionValues":{},"size":51712654,"modificationTime":1543751760000,"dataChange":true,"stats":"{\"numRecords\":5406436,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":77,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":650,\"c4\":13463900,\"c5\":763},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273554,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00009-261340a5-fcec-406d-98a0-83146ad47189-c000.snappy.parquet","partitionValues":{},"size":51574726,"modificationTime":1543751760000,"dataChange":true,"stats":"{\"numRecords\":5410257,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":500,\"c4\":13521480,\"c5\":634},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272442,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00010-3ad706be-f215-4c81-8ee5-4d6834714f65-c000.snappy.parquet","partitionValues":{},"size":51616103,"modificationTime":1543751760000,"dataChange":true,"stats":"{\"numRecords\":5404130,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":110,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":617,\"c4\":13499680,\"c5\":3882},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272247,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00011-a4b84205-a59e-400a-975f-70c9f6c3de12-c000.snappy.parquet","partitionValues":{},"size":51176632,"modificationTime":1543751760000,"dataChange":true,"stats":"{\"numRecords\":5409639,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":1,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":533,\"c4\":13517220,\"c5\":706},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1274284,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00012-80c19ac4-e812-46a0-9507-d042bcd34110-c000.snappy.parquet","partitionValues":{},"size":51619480,"modificationTime":1543751765000,"dataChange":true,"stats":"{\"numRecords\":5407717,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":46,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":617,\"c4\":13516720,\"c5\":777},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272600,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00013-5d9de6ce-fb01-418f-ae6f-6181e65bed66-c000.snappy.parquet","partitionValues":{},"size":51482600,"modificationTime":1543751765000,"dataChange":true,"stats":"{\"numRecords\":5406751,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":81,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":567,\"c4\":13525200,\"c5\":3380},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273890,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00014-2e547729-6858-49d1-a3b1-4b6b335a8da2-c000.snappy.parquet","partitionValues":{},"size":51552115,"modificationTime":1543751765000,"dataChange":true,"stats":"{\"numRecords\":5407423,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":3926010,\"c2\":10403,\"c3\":600,\"c4\":13526240,\"c5\":1446},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272667,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00015-2e5696b9-9f6d-4f0c-bc9c-e1b63cd587c3-c000.snappy.parquet","partitionValues":{},"size":51568260,"modificationTime":1543751765000,"dataChange":true,"stats":"{\"numRecords\":5405816,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":1,\"c4\":82,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":533,\"c4\":13529340,\"c5\":3437},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273089,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00016-02edd1f4-ee78-413e-a0af-0f2b906d2a27-c000.snappy.parquet","partitionValues":{},"size":51544169,"modificationTime":1543751770000,"dataChange":true,"stats":"{\"numRecords\":5409479,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":80,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":650,\"c4\":13398960,\"c5\":809},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1271769,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00017-a28f200c-53c3-4646-9588-6e91643726a9-c000.snappy.parquet","partitionValues":{},"size":51550346,"modificationTime":1543751771000,"dataChange":true,"stats":"{\"numRecords\":5408366,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":68,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":926,\"c4\":13500200,\"c5\":579},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273524,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00018-2d20ae02-2819-469c-b291-77312ba2938d-c000.snappy.parquet","partitionValues":{},"size":51147934,"modificationTime":1543751770000,"dataChange":true,"stats":"{\"numRecords\":5406016,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":104,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":533,\"c4\":13428660,\"c5\":3437},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273443,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00019-cc2c0e47-58ca-4c91-b783-7ee247f5e993-c000.snappy.parquet","partitionValues":{},"size":51557341,"modificationTime":1543751770000,"dataChange":true,"stats":"{\"numRecords\":5406483,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":3,\"c4\":107,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":500,\"c4\":13500700,\"c5\":1331},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272495,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00020-1627c301-a463-41d5-8c56-36f91eada362-c000.snappy.parquet","partitionValues":{},"size":51324794,"modificationTime":1543751774000,"dataChange":true,"stats":"{\"numRecords\":5410197,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":510,\"c4\":13496520,\"c5\":1385},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273504,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00021-3a193aeb-4e41-4dff-8a6d-d9d743bd401b-c000.snappy.parquet","partitionValues":{},"size":51470205,"modificationTime":1543751774000,"dataChange":true,"stats":"{\"numRecords\":5407396,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":500,\"c4\":13518820,\"c5\":898},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273349,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00022-24d61281-d7ae-43b0-9ba1-e6e72e6fdf8f-c000.snappy.parquet","partitionValues":{},"size":51477655,"modificationTime":1543751774000,"dataChange":true,"stats":"{\"numRecords\":5405801,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":3926010,\"c2\":10403,\"c3\":700,\"c4\":13494840,\"c5\":3106},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273468,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00023-ecca1e52-69c7-4494-b44c-eef7bf0c2a45-c000.snappy.parquet","partitionValues":{},"size":51536465,"modificationTime":1543751774000,"dataChange":true,"stats":"{\"numRecords\":5405150,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":56,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":567,\"c4\":13466680,\"c5\":1342},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1271905,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00024-b88869d2-b679-47e6-a9ab-7a434920d7ff-c000.snappy.parquet","partitionValues":{},"size":51531138,"modificationTime":1543751780000,"dataChange":true,"stats":"{\"numRecords\":5405258,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":1,\"c4\":85,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":637,\"c4\":13518320,\"c5\":3631},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272127,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00025-3944d9b3-15bb-439e-b76c-ee7bf5f3f8a5-c000.snappy.parquet","partitionValues":{},"size":51502406,"modificationTime":1543751779000,"dataChange":true,"stats":"{\"numRecords\":5405803,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":106,\"c5\":0},\"maxValues\":{\"c1\":3926009,\"c2\":10403,\"c3\":500,\"c4\":13501220,\"c5\":4098},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1271991,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00026-c36583b2-7d88-4958-bd26-f4e1760056bc-c000.snappy.parquet","partitionValues":{},"size":51513942,"modificationTime":1543751781000,"dataChange":true,"stats":"{\"numRecords\":5407824,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":94,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":500,\"c4\":13451700,\"c5\":750},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1271727,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00027-13d43c61-e980-476b-a537-f327a9893d36-c000.snappy.parquet","partitionValues":{},"size":51367886,"modificationTime":1543751780000,"dataChange":true,"stats":"{\"numRecords\":5408494,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":116,\"c5\":0},\"maxValues\":{\"c1\":3926010,\"c2\":10403,\"c3\":510,\"c4\":13528280,\"c5\":1391},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272980,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00028-5a8e0145-ada8-47ca-be92-b3dac8b18043-c000.snappy.parquet","partitionValues":{},"size":51478477,"modificationTime":1543751782000,"dataChange":true,"stats":"{\"numRecords\":5406713,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":72,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":915,\"c4\":13517760,\"c5\":3497},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273518,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00029-c7fc0a9a-9318-46eb-b130-e9a2209de1cd-c000.snappy.parquet","partitionValues":{},"size":51464162,"modificationTime":1543751783000,"dataChange":true,"stats":"{\"numRecords\":5408519,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":1,\"c4\":96,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":476,\"c4\":12926380,\"c5\":1411},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273446,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00030-21cc41eb-f27a-4e79-b943-89e55e6304be-c000.snappy.parquet","partitionValues":{},"size":51471764,"modificationTime":1543751783000,"dataChange":true,"stats":"{\"numRecords\":5406383,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":1,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":650,\"c4\":13489860,\"c5\":1640},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272321,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00031-f7460e47-557e-46cb-9ca5-273153f527a6-c000.snappy.parquet","partitionValues":{},"size":51529154,"modificationTime":1543751782000,"dataChange":true,"stats":"{\"numRecords\":5406612,\"minValues\":{\"c1\":62889,\"c2\":1,\"c3\":3,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":3926009,\"c2\":10403,\"c3\":500,\"c4\":13467240,\"c5\":3561},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273023,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00032-58710500-0a8c-4dff-bf76-0e3e414169cd-c000.snappy.parquet","partitionValues":{},"size":51397207,"modificationTime":1543751789000,"dataChange":true,"stats":"{\"numRecords\":5408934,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":500,\"c4\":13495980,\"c5\":3631},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1275291,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00033-0e1d4307-c2c2-4280-8e8f-fac317b1abf7-c000.snappy.parquet","partitionValues":{},"size":51506234,"modificationTime":1543751790000,"dataChange":true,"stats":"{\"numRecords\":5406492,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":56,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":567,\"c4\":13523080,\"c5\":3561},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273016,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00034-71352935-c929-4aeb-8ed0-e843ca7b38e5-c000.snappy.parquet","partitionValues":{},"size":51413162,"modificationTime":1543751790000,"dataChange":true,"stats":"{\"numRecords\":5407620,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":1,\"c4\":105,\"c5\":0},\"maxValues\":{\"c1\":3926009,\"c2\":10403,\"c3\":700,\"c4\":13515680,\"c5\":70},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1271535,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00035-a8380fbd-20a0-4134-80bb-a42a092d519c-c000.snappy.parquet","partitionValues":{},"size":50939362,"modificationTime":1543751791000,"dataChange":true,"stats":"{\"numRecords\":5405403,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":81,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":543,\"c4\":13494280,\"c5\":4098},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273197,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00036-cd8c8e25-291f-4bad-89f5-36ccaaa3b303-c000.snappy.parquet","partitionValues":{},"size":51361043,"modificationTime":1543751796000,"dataChange":true,"stats":"{\"numRecords\":5406991,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":84,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":500,\"c4\":13519880,\"c5\":1451},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273024,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00037-2b588e22-ab2b-46e0-bc41-4dc6de23ca93-c000.snappy.parquet","partitionValues":{},"size":51269317,"modificationTime":1543751794000,"dataChange":true,"stats":"{\"numRecords\":5406956,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":1,\"c4\":65,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":533,\"c4\":13528800,\"c5\":4229},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273087,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00038-87aa3375-727c-43d5-a5fe-3a8f96f9a9de-c000.snappy.parquet","partitionValues":{},"size":51353055,"modificationTime":1543751796000,"dataChange":true,"stats":"{\"numRecords\":5406147,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":1,\"c4\":115,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":500,\"c4\":13512440,\"c5\":3437},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272972,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00039-b773f0bf-da86-4416-8e13-ac9b65b4fe6e-c000.snappy.parquet","partitionValues":{},"size":51359248,"modificationTime":1543751795000,"dataChange":true,"stats":"{\"numRecords\":5408686,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":3,\"c4\":92,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":500,\"c4\":13460520,\"c5\":501},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272968,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00040-ab3b4492-d9e6-4422-8265-dea45b93cb81-c000.snappy.parquet","partitionValues":{},"size":51277753,"modificationTime":1543751801000,"dataChange":true,"stats":"{\"numRecords\":5401257,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":600,\"c4\":13469980,\"c5\":643},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1271216,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00041-8d54afc4-a461-4082-a498-841f30632b5e-c000.snappy.parquet","partitionValues":{},"size":51461096,"modificationTime":1543751802000,"dataChange":true,"stats":"{\"numRecords\":5403471,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":3,\"c4\":61,\"c5\":0},\"maxValues\":{\"c1\":3926010,\"c2\":10403,\"c3\":500,\"c4\":13298060,\"c5\":70},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1271898,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00042-0676f4e3-d324-481a-b219-8d947b827b7b-c000.snappy.parquet","partitionValues":{},"size":51369131,"modificationTime":1543751802000,"dataChange":true,"stats":"{\"numRecords\":5404791,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":85,\"c5\":0},\"maxValues\":{\"c1\":3926009,\"c2\":10403,\"c3\":510,\"c4\":13515160,\"c5\":1051},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272098,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00043-1801422a-acfe-4c80-9726-9bcc23e55a26-c000.snappy.parquet","partitionValues":{},"size":51190015,"modificationTime":1543751803000,"dataChange":true,"stats":"{\"numRecords\":5405648,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":100,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":533,\"c4\":13458400,\"c5\":70},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272386,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00044-629fe344-921c-400a-9990-da75bef26a19-c000.snappy.parquet","partitionValues":{},"size":51442688,"modificationTime":1543751802000,"dataChange":true,"stats":"{\"numRecords\":5400887,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":1,\"c4\":56,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":650,\"c4\":13493780,\"c5\":3380},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272601,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00045-c866bd8d-a710-4aee-8afb-5e8025b222d8-c000.snappy.parquet","partitionValues":{},"size":51268063,"modificationTime":1543751805000,"dataChange":true,"stats":"{\"numRecords\":5406849,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":84,\"c5\":0},\"maxValues\":{\"c1\":3926009,\"c2\":10403,\"c3\":500,\"c4\":13498600,\"c5\":1391},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273642,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00046-a307d8d8-3d33-49c2-8db6-6696fa4eab55-c000.snappy.parquet","partitionValues":{},"size":51195796,"modificationTime":1543751805000,"dataChange":true,"stats":"{\"numRecords\":5409172,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":3926009,\"c2\":10403,\"c3\":533,\"c4\":13529860,\"c5\":629},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272474,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00047-f76157ee-4193-469f-a628-a8d6c6e3659b-c000.snappy.parquet","partitionValues":{},"size":51163868,"modificationTime":1543751805000,"dataChange":true,"stats":"{\"numRecords\":5408311,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":1,\"c4\":86,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":606,\"c4\":13413120,\"c5\":1451},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273288,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00048-e4f57059-7b5f-4f30-bf4d-15a35794025c-c000.snappy.parquet","partitionValues":{},"size":51230503,"modificationTime":1543751810000,"dataChange":true,"stats":"{\"numRecords\":5405310,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":67,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":650,\"c4\":13522000,\"c5\":3278},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272922,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00049-2850b901-2dbf-406c-8ffe-991c2479974d-c000.snappy.parquet","partitionValues":{},"size":59455581,"modificationTime":1543751811000,"dataChange":true,"stats":"{\"numRecords\":6249227,\"minValues\":{\"c1\":2,\"c2\":1,\"c3\":2,\"c4\":71,\"c5\":0},\"maxValues\":{\"c1\":3926010,\"c2\":10403,\"c3\":580,\"c4\":13455500,\"c5\":3380},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1551238,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00050-137995d3-bd8e-434b-a2b1-d77b75611cef-c000.snappy.parquet","partitionValues":{},"size":18663521,"modificationTime":1543751807000,"dataChange":true,"stats":"{\"numRecords\":2542526,\"minValues\":{\"c1\":2,\"c2\":1,\"c3\":2,\"c4\":60,\"c5\":0},\"maxValues\":{\"c1\":62644,\"c2\":2244,\"c3\":500,\"c4\":4410640,\"c5\":66},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":830808,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00051-64f8c21a-9ab8-4d0f-bbe6-a4774d9ffbbd-c000.snappy.parquet","partitionValues":{},"size":4988629,"modificationTime":1543751806000,"dataChange":true,"stats":"{\"numRecords\":664689,\"minValues\":{\"c1\":40095,\"c2\":1,\"c3\":7,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":62644,\"c2\":2244,\"c3\":347,\"c4\":809320,\"c5\":66},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":220020,\"c4\":0,\"c5\":0}}"}}


update test_db.test_tbl set c3 = 0 where c1 = 2;

databricks fs ls -l dbfs:/user/hive/warehouse/test_db.db/test_tbl/

dir          0  _delta_log
file  51926603  part-00000-1426c3ce-b229-483a-b77e-758462e6431b-c000.snappy.parquet
file  59455585  part-00000-5357c4d4-dc80-4c16-87b3-a876da395d80-c000.snappy.parquet
file  18663525  part-00001-5eb0fcc7-183c-4078-81ae-558a35be932e-c000.snappy.parquet
file  51931083  part-00001-89279585-72ed-4a93-9332-33b992ba7dea-c000.snappy.parquet
file  51836760  part-00002-d7d44c81-bc00-4863-ae53-b13baf0a8ec6-c000.snappy.parquet
file  51765672  part-00003-fbdf50d1-8166-4909-aaa4-4c41bb6a28e0-c000.snappy.parquet
file  51645701  part-00004-46fd54a1-c958-4f7b-b4f1-720cca087dbc-c000.snappy.parquet
file  51636215  part-00005-6bc7aa3a-9bca-4ec3-8a95-9fe5c7bcadd7-c000.snappy.parquet
file  51574509  part-00006-b9c010e6-9017-4a0e-853c-887dec591b73-c000.snappy.parquet
file  51673471  part-00007-31d54d8c-99a5-45a8-82ce-875e3d822b4c-c000.snappy.parquet
file  51712654  part-00008-a5dc71ac-69dc-4ebf-b317-55f8bfc275bb-c000.snappy.parquet
file  51574726  part-00009-261340a5-fcec-406d-98a0-83146ad47189-c000.snappy.parquet
file  51616103  part-00010-3ad706be-f215-4c81-8ee5-4d6834714f65-c000.snappy.parquet
file  51176632  part-00011-a4b84205-a59e-400a-975f-70c9f6c3de12-c000.snappy.parquet
file  51619480  part-00012-80c19ac4-e812-46a0-9507-d042bcd34110-c000.snappy.parquet
file  51482600  part-00013-5d9de6ce-fb01-418f-ae6f-6181e65bed66-c000.snappy.parquet
file  51552115  part-00014-2e547729-6858-49d1-a3b1-4b6b335a8da2-c000.snappy.parquet
file  51568260  part-00015-2e5696b9-9f6d-4f0c-bc9c-e1b63cd587c3-c000.snappy.parquet
file  51544169  part-00016-02edd1f4-ee78-413e-a0af-0f2b906d2a27-c000.snappy.parquet
file  51550346  part-00017-a28f200c-53c3-4646-9588-6e91643726a9-c000.snappy.parquet
file  51147934  part-00018-2d20ae02-2819-469c-b291-77312ba2938d-c000.snappy.parquet
file  51557341  part-00019-cc2c0e47-58ca-4c91-b783-7ee247f5e993-c000.snappy.parquet
file  51324794  part-00020-1627c301-a463-41d5-8c56-36f91eada362-c000.snappy.parquet
file  51470205  part-00021-3a193aeb-4e41-4dff-8a6d-d9d743bd401b-c000.snappy.parquet
file  51477655  part-00022-24d61281-d7ae-43b0-9ba1-e6e72e6fdf8f-c000.snappy.parquet
file  51536465  part-00023-ecca1e52-69c7-4494-b44c-eef7bf0c2a45-c000.snappy.parquet
file  51531138  part-00024-b88869d2-b679-47e6-a9ab-7a434920d7ff-c000.snappy.parquet
file  51502406  part-00025-3944d9b3-15bb-439e-b76c-ee7bf5f3f8a5-c000.snappy.parquet
file  51513942  part-00026-c36583b2-7d88-4958-bd26-f4e1760056bc-c000.snappy.parquet
file  51367886  part-00027-13d43c61-e980-476b-a537-f327a9893d36-c000.snappy.parquet
file  51478477  part-00028-5a8e0145-ada8-47ca-be92-b3dac8b18043-c000.snappy.parquet
file  51464162  part-00029-c7fc0a9a-9318-46eb-b130-e9a2209de1cd-c000.snappy.parquet
file  51471764  part-00030-21cc41eb-f27a-4e79-b943-89e55e6304be-c000.snappy.parquet
file  51529154  part-00031-f7460e47-557e-46cb-9ca5-273153f527a6-c000.snappy.parquet
file  51397207  part-00032-58710500-0a8c-4dff-bf76-0e3e414169cd-c000.snappy.parquet
file  51506234  part-00033-0e1d4307-c2c2-4280-8e8f-fac317b1abf7-c000.snappy.parquet
file  51413162  part-00034-71352935-c929-4aeb-8ed0-e843ca7b38e5-c000.snappy.parquet
file  50939362  part-00035-a8380fbd-20a0-4134-80bb-a42a092d519c-c000.snappy.parquet
file  51361043  part-00036-cd8c8e25-291f-4bad-89f5-36ccaaa3b303-c000.snappy.parquet
file  51269317  part-00037-2b588e22-ab2b-46e0-bc41-4dc6de23ca93-c000.snappy.parquet
file  51353055  part-00038-87aa3375-727c-43d5-a5fe-3a8f96f9a9de-c000.snappy.parquet
file  51359248  part-00039-b773f0bf-da86-4416-8e13-ac9b65b4fe6e-c000.snappy.parquet
file  51277753  part-00040-ab3b4492-d9e6-4422-8265-dea45b93cb81-c000.snappy.parquet
file  51461096  part-00041-8d54afc4-a461-4082-a498-841f30632b5e-c000.snappy.parquet
file  51369131  part-00042-0676f4e3-d324-481a-b219-8d947b827b7b-c000.snappy.parquet
file  51190015  part-00043-1801422a-acfe-4c80-9726-9bcc23e55a26-c000.snappy.parquet
file  51442688  part-00044-629fe344-921c-400a-9990-da75bef26a19-c000.snappy.parquet
file  51268063  part-00045-c866bd8d-a710-4aee-8afb-5e8025b222d8-c000.snappy.parquet
file  51195796  part-00046-a307d8d8-3d33-49c2-8db6-6696fa4eab55-c000.snappy.parquet
file  51163868  part-00047-f76157ee-4193-469f-a628-a8d6c6e3659b-c000.snappy.parquet
file  51230503  part-00048-e4f57059-7b5f-4f30-bf4d-15a35794025c-c000.snappy.parquet
file  59455581  part-00049-2850b901-2dbf-406c-8ffe-991c2479974d-c000.snappy.parquet
file  18663521  part-00050-137995d3-bd8e-434b-a2b1-d77b75611cef-c000.snappy.parquet
file   4988629  part-00051-64f8c21a-9ab8-4d0f-bbe6-a4774d9ffbbd-c000.snappy.parquet

databricks fs ls -l dbfs:/user/hive/warehouse/test_db.db/test_tbl/_delta_log

file     96  00000000000000000000.crc
file  23092  00000000000000000000.json
file     96  00000000000000000001.crc
file   1372  00000000000000000001.json

00000000000000000001.crc
{"tableSizeBytes":2605065702,"numFiles":52,"numMetadata":1,"numProtocol":1,"numTransactions":0}

00000000000000000001.json
{"commitInfo":{"timestamp":1543752370946,"userId":"6605856514319898","userName":"xxx@xxx","operation":"UPDATE","operationParameters":{"predicate":"(c1#2309 = 2)"},"notebook":{"notebookId":"2221810962482344"},"clusterId":"1126-094127-pods946"}}
{"remove":{"path":"part-00049-2850b901-2dbf-406c-8ffe-991c2479974d-c000.snappy.parquet","deletionTimestamp":1543752352667,"dataChange":true}}
{"remove":{"path":"part-00050-137995d3-bd8e-434b-a2b1-d77b75611cef-c000.snappy.parquet","deletionTimestamp":1543752352667,"dataChange":true}}
{"add":{"path":"part-00000-5357c4d4-dc80-4c16-87b3-a876da395d80-c000.snappy.parquet","partitionValues":{},"size":59455585,"modificationTime":1543752370000,"dataChange":true,"stats":"{\"numRecords\":6249227,\"minValues\":{\"c1\":2,\"c2\":1,\"c3\":0,\"c4\":71,\"c5\":0},\"maxValues\":{\"c1\":3926010,\"c2\":10403,\"c3\":580,\"c4\":13455500,\"c5\":3380},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1551238,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00001-5eb0fcc7-183c-4078-81ae-558a35be932e-c000.snappy.parquet","partitionValues":{},"size":18663525,"modificationTime":1543752365000,"dataChange":true,"stats":"{\"numRecords\":2542526,\"minValues\":{\"c1\":2,\"c2\":1,\"c3\":0,\"c4\":60,\"c5\":0},\"maxValues\":{\"c1\":62644,\"c2\":2244,\"c3\":500,\"c4\":4410640,\"c5\":66},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":830808,\"c4\":0,\"c5\":0}}"}}


delete from test_db.test_tbl where c1 = 16;

databricks fs ls -l dbfs:/user/hive/warehouse/test_db.db/test_tbl/

dir          0  _delta_log
file  51926603  part-00000-1426c3ce-b229-483a-b77e-758462e6431b-c000.snappy.parquet
file  59455585  part-00000-5357c4d4-dc80-4c16-87b3-a876da395d80-c000.snappy.parquet
file  59430649  part-00000-7dddda62-8837-4909-9183-fa4075bc1c1b-c000.snappy.parquet
file  18663525  part-00001-5eb0fcc7-183c-4078-81ae-558a35be932e-c000.snappy.parquet
file  51931083  part-00001-89279585-72ed-4a93-9332-33b992ba7dea-c000.snappy.parquet
file  18664701  part-00001-91318462-059b-43ff-99da-12b9c187c465-c000.snappy.parquet
file  51836760  part-00002-d7d44c81-bc00-4863-ae53-b13baf0a8ec6-c000.snappy.parquet
file  51765672  part-00003-fbdf50d1-8166-4909-aaa4-4c41bb6a28e0-c000.snappy.parquet
file  51645701  part-00004-46fd54a1-c958-4f7b-b4f1-720cca087dbc-c000.snappy.parquet
file  51636215  part-00005-6bc7aa3a-9bca-4ec3-8a95-9fe5c7bcadd7-c000.snappy.parquet
file  51574509  part-00006-b9c010e6-9017-4a0e-853c-887dec591b73-c000.snappy.parquet
file  51673471  part-00007-31d54d8c-99a5-45a8-82ce-875e3d822b4c-c000.snappy.parquet
file  51712654  part-00008-a5dc71ac-69dc-4ebf-b317-55f8bfc275bb-c000.snappy.parquet
file  51574726  part-00009-261340a5-fcec-406d-98a0-83146ad47189-c000.snappy.parquet
file  51616103  part-00010-3ad706be-f215-4c81-8ee5-4d6834714f65-c000.snappy.parquet
file  51176632  part-00011-a4b84205-a59e-400a-975f-70c9f6c3de12-c000.snappy.parquet
file  51619480  part-00012-80c19ac4-e812-46a0-9507-d042bcd34110-c000.snappy.parquet
file  51482600  part-00013-5d9de6ce-fb01-418f-ae6f-6181e65bed66-c000.snappy.parquet
file  51552115  part-00014-2e547729-6858-49d1-a3b1-4b6b335a8da2-c000.snappy.parquet
file  51568260  part-00015-2e5696b9-9f6d-4f0c-bc9c-e1b63cd587c3-c000.snappy.parquet
file  51544169  part-00016-02edd1f4-ee78-413e-a0af-0f2b906d2a27-c000.snappy.parquet
file  51550346  part-00017-a28f200c-53c3-4646-9588-6e91643726a9-c000.snappy.parquet
file  51147934  part-00018-2d20ae02-2819-469c-b291-77312ba2938d-c000.snappy.parquet
file  51557341  part-00019-cc2c0e47-58ca-4c91-b783-7ee247f5e993-c000.snappy.parquet
file  51324794  part-00020-1627c301-a463-41d5-8c56-36f91eada362-c000.snappy.parquet
file  51470205  part-00021-3a193aeb-4e41-4dff-8a6d-d9d743bd401b-c000.snappy.parquet
file  51477655  part-00022-24d61281-d7ae-43b0-9ba1-e6e72e6fdf8f-c000.snappy.parquet
file  51536465  part-00023-ecca1e52-69c7-4494-b44c-eef7bf0c2a45-c000.snappy.parquet
file  51531138  part-00024-b88869d2-b679-47e6-a9ab-7a434920d7ff-c000.snappy.parquet
file  51502406  part-00025-3944d9b3-15bb-439e-b76c-ee7bf5f3f8a5-c000.snappy.parquet
file  51513942  part-00026-c36583b2-7d88-4958-bd26-f4e1760056bc-c000.snappy.parquet
file  51367886  part-00027-13d43c61-e980-476b-a537-f327a9893d36-c000.snappy.parquet
file  51478477  part-00028-5a8e0145-ada8-47ca-be92-b3dac8b18043-c000.snappy.parquet
file  51464162  part-00029-c7fc0a9a-9318-46eb-b130-e9a2209de1cd-c000.snappy.parquet
file  51471764  part-00030-21cc41eb-f27a-4e79-b943-89e55e6304be-c000.snappy.parquet
file  51529154  part-00031-f7460e47-557e-46cb-9ca5-273153f527a6-c000.snappy.parquet
file  51397207  part-00032-58710500-0a8c-4dff-bf76-0e3e414169cd-c000.snappy.parquet
file  51506234  part-00033-0e1d4307-c2c2-4280-8e8f-fac317b1abf7-c000.snappy.parquet
file  51413162  part-00034-71352935-c929-4aeb-8ed0-e843ca7b38e5-c000.snappy.parquet
file  50939362  part-00035-a8380fbd-20a0-4134-80bb-a42a092d519c-c000.snappy.parquet
file  51361043  part-00036-cd8c8e25-291f-4bad-89f5-36ccaaa3b303-c000.snappy.parquet
file  51269317  part-00037-2b588e22-ab2b-46e0-bc41-4dc6de23ca93-c000.snappy.parquet
file  51353055  part-00038-87aa3375-727c-43d5-a5fe-3a8f96f9a9de-c000.snappy.parquet
file  51359248  part-00039-b773f0bf-da86-4416-8e13-ac9b65b4fe6e-c000.snappy.parquet
file  51277753  part-00040-ab3b4492-d9e6-4422-8265-dea45b93cb81-c000.snappy.parquet
file  51461096  part-00041-8d54afc4-a461-4082-a498-841f30632b5e-c000.snappy.parquet
file  51369131  part-00042-0676f4e3-d324-481a-b219-8d947b827b7b-c000.snappy.parquet
file  51190015  part-00043-1801422a-acfe-4c80-9726-9bcc23e55a26-c000.snappy.parquet
file  51442688  part-00044-629fe344-921c-400a-9990-da75bef26a19-c000.snappy.parquet
file  51268063  part-00045-c866bd8d-a710-4aee-8afb-5e8025b222d8-c000.snappy.parquet
file  51195796  part-00046-a307d8d8-3d33-49c2-8db6-6696fa4eab55-c000.snappy.parquet
file  51163868  part-00047-f76157ee-4193-469f-a628-a8d6c6e3659b-c000.snappy.parquet
file  51230503  part-00048-e4f57059-7b5f-4f30-bf4d-15a35794025c-c000.snappy.parquet
file  59455581  part-00049-2850b901-2dbf-406c-8ffe-991c2479974d-c000.snappy.parquet
file  18663521  part-00050-137995d3-bd8e-434b-a2b1-d77b75611cef-c000.snappy.parquet
file   4988629  part-00051-64f8c21a-9ab8-4d0f-bbe6-a4774d9ffbbd-c000.snappy.parquet

databricks fs ls -l dbfs:/user/hive/warehouse/test_db.db/test_tbl/_delta_log
file     96  00000000000000000000.crc
file  23092  00000000000000000000.json
file     96  00000000000000000001.crc
file   1372  00000000000000000001.json
file     96  00000000000000000002.crc
file   1393  00000000000000000002.json

00000000000000000002.crc
{"tableSizeBytes":2605041942,"numFiles":52,"numMetadata":1,"numProtocol":1,"numTransactions":0}

00000000000000000002.json
{"commitInfo":{"timestamp":1543752787300,"userId":"6605856514319898","userName":"xxx@xxx","operation":"DELETE","operationParameters":{"predicate":"[\"(test_db.test_tbl.`c1` = 16)\"]"},"notebook":{"notebookId":"2221810962482344"},"clusterId":"1126-094127-pods946"}}
{"remove":{"path":"part-00001-5eb0fcc7-183c-4078-81ae-558a35be932e-c000.snappy.parquet","deletionTimestamp":1543752787298,"dataChange":true}}
{"remove":{"path":"part-00000-5357c4d4-dc80-4c16-87b3-a876da395d80-c000.snappy.parquet","deletionTimestamp":1543752787298,"dataChange":true}}
{"add":{"path":"part-00000-7dddda62-8837-4909-9183-fa4075bc1c1b-c000.snappy.parquet","partitionValues":{},"size":59430649,"modificationTime":1543752787000,"dataChange":true,"stats":"{\"numRecords\":6249127,\"minValues\":{\"c1\":2,\"c2\":1,\"c3\":0,\"c4\":71,\"c5\":0},\"maxValues\":{\"c1\":3926010,\"c2\":10403,\"c3\":580,\"c4\":13455500,\"c5\":3380},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1551191,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00001-91318462-059b-43ff-99da-12b9c187c465-c000.snappy.parquet","partitionValues":{},"size":18664701,"modificationTime":1543752782000,"dataChange":true,"stats":"{\"numRecords\":2542354,\"minValues\":{\"c1\":2,\"c2\":1,\"c3\":0,\"c4\":60,\"c5\":0},\"maxValues\":{\"c1\":62644,\"c2\":2244,\"c3\":500,\"c4\":4410640,\"c5\":66},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":830732,\"c4\":0,\"c5\":0}}"}}




Обратите внимание еще на статистику MIN/MAX для каждого файла... используется для pruning'a...

Ещё инфа
https://docs.databricks.com/delta/optimizations.html
https://databricks.com/blog/2018/07/31/processing-petabytes-of-data-in-seconds-with-databricks-delta.html
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39817297
Glebanski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
churupaha,

Databricks кооперируется с Информатикой
https://www.businesswire.com/news/home/20190521005827/en/Databricks-Informatica-Partner-Accelerate-Development-Intelligent-Data

Ну все, рынок энтерпрайза эти двое теперь точно подомнут.

ЗЫ: Юзаю Databricks пару недель. Пока впечатления хорошие. Щас пробую Datalake на нем сбацать.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39818484
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39818486
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Glebanskichurupaha,

Databricks кооперируется с Информатикой
https://www.businesswire.com/news/home/20190521005827/en/Databricks-Informatica-Partner-Accelerate-Development-Intelligent-Data

Ну все, рынок энтерпрайза эти двое теперь точно подомнут.

ЗЫ: Юзаю Databricks пару недель. Пока впечатления хорошие. Щас пробую Datalake на нем сбацать.

Ага, они много с кем уже кооперируются от известных до неизвестных, кажется даже Azure ADF Flow юзает сие (не пробовал).
Да они и сами по себе оооочень круты.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39845937
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
churupahaH5N1,

Databricks Delta UPDATE/DELETE
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
193.
194.
195.
196.
197.
198.
199.
200.
201.
202.
203.
204.
205.
206.
207.
208.
209.
210.
211.
212.
213.
214.
215.
216.
217.
218.
219.
220.
221.
222.
223.
224.
225.
226.
227.
228.
229.
230.
231.
232.
233.
234.
235.
236.
237.
238.
239.
240.
241.
242.
243.
244.
245.
246.
247.
248.
249.
250.
251.
252.
253.
254.
255.
256.
257.
258.
259.
260.
261.
262.
263.
264.
265.
266.
267.
268.
269.
270.
271.
272.
273.
274.
275.
276.
277.
278.
279.
280.
281.
282.
283.
284.
285.
286.
%sql
drop database if exists test_db cascade;
create database test_db;

create table test_db.test_tbl using delta as
select * from xxx;

databricks fs ls -l dbfs:/user/hive/warehouse/test_db.db/test_tbl/

dir          0  _delta_log
file  51926603  part-00000-1426c3ce-b229-483a-b77e-758462e6431b-c000.snappy.parquet
file  51931083  part-00001-89279585-72ed-4a93-9332-33b992ba7dea-c000.snappy.parquet
file  51836760  part-00002-d7d44c81-bc00-4863-ae53-b13baf0a8ec6-c000.snappy.parquet
file  51765672  part-00003-fbdf50d1-8166-4909-aaa4-4c41bb6a28e0-c000.snappy.parquet
file  51645701  part-00004-46fd54a1-c958-4f7b-b4f1-720cca087dbc-c000.snappy.parquet
file  51636215  part-00005-6bc7aa3a-9bca-4ec3-8a95-9fe5c7bcadd7-c000.snappy.parquet
file  51574509  part-00006-b9c010e6-9017-4a0e-853c-887dec591b73-c000.snappy.parquet
file  51673471  part-00007-31d54d8c-99a5-45a8-82ce-875e3d822b4c-c000.snappy.parquet
file  51712654  part-00008-a5dc71ac-69dc-4ebf-b317-55f8bfc275bb-c000.snappy.parquet
file  51574726  part-00009-261340a5-fcec-406d-98a0-83146ad47189-c000.snappy.parquet
file  51616103  part-00010-3ad706be-f215-4c81-8ee5-4d6834714f65-c000.snappy.parquet
file  51176632  part-00011-a4b84205-a59e-400a-975f-70c9f6c3de12-c000.snappy.parquet
file  51619480  part-00012-80c19ac4-e812-46a0-9507-d042bcd34110-c000.snappy.parquet
file  51482600  part-00013-5d9de6ce-fb01-418f-ae6f-6181e65bed66-c000.snappy.parquet
file  51552115  part-00014-2e547729-6858-49d1-a3b1-4b6b335a8da2-c000.snappy.parquet
file  51568260  part-00015-2e5696b9-9f6d-4f0c-bc9c-e1b63cd587c3-c000.snappy.parquet
file  51544169  part-00016-02edd1f4-ee78-413e-a0af-0f2b906d2a27-c000.snappy.parquet
file  51550346  part-00017-a28f200c-53c3-4646-9588-6e91643726a9-c000.snappy.parquet
file  51147934  part-00018-2d20ae02-2819-469c-b291-77312ba2938d-c000.snappy.parquet
file  51557341  part-00019-cc2c0e47-58ca-4c91-b783-7ee247f5e993-c000.snappy.parquet
file  51324794  part-00020-1627c301-a463-41d5-8c56-36f91eada362-c000.snappy.parquet
file  51470205  part-00021-3a193aeb-4e41-4dff-8a6d-d9d743bd401b-c000.snappy.parquet
file  51477655  part-00022-24d61281-d7ae-43b0-9ba1-e6e72e6fdf8f-c000.snappy.parquet
file  51536465  part-00023-ecca1e52-69c7-4494-b44c-eef7bf0c2a45-c000.snappy.parquet
file  51531138  part-00024-b88869d2-b679-47e6-a9ab-7a434920d7ff-c000.snappy.parquet
file  51502406  part-00025-3944d9b3-15bb-439e-b76c-ee7bf5f3f8a5-c000.snappy.parquet
file  51513942  part-00026-c36583b2-7d88-4958-bd26-f4e1760056bc-c000.snappy.parquet
file  51367886  part-00027-13d43c61-e980-476b-a537-f327a9893d36-c000.snappy.parquet
file  51478477  part-00028-5a8e0145-ada8-47ca-be92-b3dac8b18043-c000.snappy.parquet
file  51464162  part-00029-c7fc0a9a-9318-46eb-b130-e9a2209de1cd-c000.snappy.parquet
file  51471764  part-00030-21cc41eb-f27a-4e79-b943-89e55e6304be-c000.snappy.parquet
file  51529154  part-00031-f7460e47-557e-46cb-9ca5-273153f527a6-c000.snappy.parquet
file  51397207  part-00032-58710500-0a8c-4dff-bf76-0e3e414169cd-c000.snappy.parquet
file  51506234  part-00033-0e1d4307-c2c2-4280-8e8f-fac317b1abf7-c000.snappy.parquet
file  51413162  part-00034-71352935-c929-4aeb-8ed0-e843ca7b38e5-c000.snappy.parquet
file  50939362  part-00035-a8380fbd-20a0-4134-80bb-a42a092d519c-c000.snappy.parquet
file  51361043  part-00036-cd8c8e25-291f-4bad-89f5-36ccaaa3b303-c000.snappy.parquet
file  51269317  part-00037-2b588e22-ab2b-46e0-bc41-4dc6de23ca93-c000.snappy.parquet
file  51353055  part-00038-87aa3375-727c-43d5-a5fe-3a8f96f9a9de-c000.snappy.parquet
file  51359248  part-00039-b773f0bf-da86-4416-8e13-ac9b65b4fe6e-c000.snappy.parquet
file  51277753  part-00040-ab3b4492-d9e6-4422-8265-dea45b93cb81-c000.snappy.parquet
file  51461096  part-00041-8d54afc4-a461-4082-a498-841f30632b5e-c000.snappy.parquet
file  51369131  part-00042-0676f4e3-d324-481a-b219-8d947b827b7b-c000.snappy.parquet
file  51190015  part-00043-1801422a-acfe-4c80-9726-9bcc23e55a26-c000.snappy.parquet
file  51442688  part-00044-629fe344-921c-400a-9990-da75bef26a19-c000.snappy.parquet
file  51268063  part-00045-c866bd8d-a710-4aee-8afb-5e8025b222d8-c000.snappy.parquet
file  51195796  part-00046-a307d8d8-3d33-49c2-8db6-6696fa4eab55-c000.snappy.parquet
file  51163868  part-00047-f76157ee-4193-469f-a628-a8d6c6e3659b-c000.snappy.parquet
file  51230503  part-00048-e4f57059-7b5f-4f30-bf4d-15a35794025c-c000.snappy.parquet
file  59455581  part-00049-2850b901-2dbf-406c-8ffe-991c2479974d-c000.snappy.parquet
file  18663521  part-00050-137995d3-bd8e-434b-a2b1-d77b75611cef-c000.snappy.parquet
file   4988629  part-00051-64f8c21a-9ab8-4d0f-bbe6-a4774d9ffbbd-c000.snappy.parquet

databricks fs ls -l dbfs:/user/hive/warehouse/test_db.db/test_tbl/_delta_log

file     96  00000000000000000000.crc
file  23092  00000000000000000000.json

00000000000000000000.crc
{"tableSizeBytes":2605065694,"numFiles":52,"numMetadata":1,"numProtocol":1,"numTransactions":0}

00000000000000000000.json
{"commitInfo":{"timestamp":1543751811443,"userId":"6605856514319898","userName":"xxx@xxx","operation":"CREATE TABLE AS SELECT","operationParameters":{"isManaged":"true","description":null,"partitionBy":"[]","properties":"{}"},"notebook":{"notebookId":"2221810962482344"},"clusterId":"1126-094127-pods946"}}
{"protocol":{"minReaderVersion":1,"minWriterVersion":2}}
{"metaData":{"id":"2f1fd135-3b03-45ec-9075-12a7b8a79715","format":{"provider":"parquet","options":{}},"schemaString":"{\"type\":\"struct\",\"fields\":[{\"name\":\"c1\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"c2\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"c3\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"c4\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}},{\"name\":\"c5\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}}]}","partitionColumns":[],"configuration":{},"createdTime":1543751736915}}
{"add":{"path":"part-00000-1426c3ce-b229-483a-b77e-758462e6431b-c000.snappy.parquet","partitionValues":{},"size":51926603,"modificationTime":1543751750000,"dataChange":true,"stats":"{\"numRecords\":5410014,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":3,\"c4\":79,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":567,\"c4\":13527760,\"c5\":3278},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273634,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00001-89279585-72ed-4a93-9332-33b992ba7dea-c000.snappy.parquet","partitionValues":{},"size":51931083,"modificationTime":1543751755000,"dataChange":true,"stats":"{\"numRecords\":5413461,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":58,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":543,\"c4\":13459440,\"c5\":706},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1274466,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00002-d7d44c81-bc00-4863-ae53-b13baf0a8ec6-c000.snappy.parquet","partitionValues":{},"size":51836760,"modificationTime":1543751749000,"dataChange":true,"stats":"{\"numRecords\":5405780,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":101,\"c5\":0},\"maxValues\":{\"c1\":3926010,\"c2\":10403,\"c3\":650,\"c4\":13525720,\"c5\":3561},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273352,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00003-fbdf50d1-8166-4909-aaa4-4c41bb6a28e0-c000.snappy.parquet","partitionValues":{},"size":51765672,"modificationTime":1543751755000,"dataChange":true,"stats":"{\"numRecords\":5409232,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":53,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":533,\"c4\":13514620,\"c5\":1328},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273808,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00004-46fd54a1-c958-4f7b-b4f1-720cca087dbc-c000.snappy.parquet","partitionValues":{},"size":51645701,"modificationTime":1543751750000,"dataChange":true,"stats":"{\"numRecords\":5409328,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":3926009,\"c2\":10403,\"c3\":533,\"c4\":13520940,\"c5\":3882},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273595,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00005-6bc7aa3a-9bca-4ec3-8a95-9fe5c7bcadd7-c000.snappy.parquet","partitionValues":{},"size":51636215,"modificationTime":1543751756000,"dataChange":true,"stats":"{\"numRecords\":5406456,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":95,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":700,\"c4\":13499120,\"c5\":3188},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273762,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00006-b9c010e6-9017-4a0e-853c-887dec591b73-c000.snappy.parquet","partitionValues":{},"size":51574509,"modificationTime":1543751750000,"dataChange":true,"stats":"{\"numRecords\":5409737,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":47,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":533,\"c4\":13527260,\"c5\":671},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1274070,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00007-31d54d8c-99a5-45a8-82ce-875e3d822b4c-c000.snappy.parquet","partitionValues":{},"size":51673471,"modificationTime":1543751756000,"dataChange":true,"stats":"{\"numRecords\":5411145,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":1,\"c4\":68,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":1305,\"c4\":13439940,\"c5\":3631},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273965,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00008-a5dc71ac-69dc-4ebf-b317-55f8bfc275bb-c000.snappy.parquet","partitionValues":{},"size":51712654,"modificationTime":1543751760000,"dataChange":true,"stats":"{\"numRecords\":5406436,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":77,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":650,\"c4\":13463900,\"c5\":763},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273554,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00009-261340a5-fcec-406d-98a0-83146ad47189-c000.snappy.parquet","partitionValues":{},"size":51574726,"modificationTime":1543751760000,"dataChange":true,"stats":"{\"numRecords\":5410257,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":500,\"c4\":13521480,\"c5\":634},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272442,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00010-3ad706be-f215-4c81-8ee5-4d6834714f65-c000.snappy.parquet","partitionValues":{},"size":51616103,"modificationTime":1543751760000,"dataChange":true,"stats":"{\"numRecords\":5404130,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":110,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":617,\"c4\":13499680,\"c5\":3882},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272247,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00011-a4b84205-a59e-400a-975f-70c9f6c3de12-c000.snappy.parquet","partitionValues":{},"size":51176632,"modificationTime":1543751760000,"dataChange":true,"stats":"{\"numRecords\":5409639,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":1,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":533,\"c4\":13517220,\"c5\":706},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1274284,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00012-80c19ac4-e812-46a0-9507-d042bcd34110-c000.snappy.parquet","partitionValues":{},"size":51619480,"modificationTime":1543751765000,"dataChange":true,"stats":"{\"numRecords\":5407717,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":46,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":617,\"c4\":13516720,\"c5\":777},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272600,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00013-5d9de6ce-fb01-418f-ae6f-6181e65bed66-c000.snappy.parquet","partitionValues":{},"size":51482600,"modificationTime":1543751765000,"dataChange":true,"stats":"{\"numRecords\":5406751,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":81,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":567,\"c4\":13525200,\"c5\":3380},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273890,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00014-2e547729-6858-49d1-a3b1-4b6b335a8da2-c000.snappy.parquet","partitionValues":{},"size":51552115,"modificationTime":1543751765000,"dataChange":true,"stats":"{\"numRecords\":5407423,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":3926010,\"c2\":10403,\"c3\":600,\"c4\":13526240,\"c5\":1446},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272667,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00015-2e5696b9-9f6d-4f0c-bc9c-e1b63cd587c3-c000.snappy.parquet","partitionValues":{},"size":51568260,"modificationTime":1543751765000,"dataChange":true,"stats":"{\"numRecords\":5405816,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":1,\"c4\":82,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":533,\"c4\":13529340,\"c5\":3437},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273089,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00016-02edd1f4-ee78-413e-a0af-0f2b906d2a27-c000.snappy.parquet","partitionValues":{},"size":51544169,"modificationTime":1543751770000,"dataChange":true,"stats":"{\"numRecords\":5409479,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":80,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":650,\"c4\":13398960,\"c5\":809},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1271769,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00017-a28f200c-53c3-4646-9588-6e91643726a9-c000.snappy.parquet","partitionValues":{},"size":51550346,"modificationTime":1543751771000,"dataChange":true,"stats":"{\"numRecords\":5408366,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":68,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":926,\"c4\":13500200,\"c5\":579},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273524,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00018-2d20ae02-2819-469c-b291-77312ba2938d-c000.snappy.parquet","partitionValues":{},"size":51147934,"modificationTime":1543751770000,"dataChange":true,"stats":"{\"numRecords\":5406016,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":104,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":533,\"c4\":13428660,\"c5\":3437},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273443,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00019-cc2c0e47-58ca-4c91-b783-7ee247f5e993-c000.snappy.parquet","partitionValues":{},"size":51557341,"modificationTime":1543751770000,"dataChange":true,"stats":"{\"numRecords\":5406483,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":3,\"c4\":107,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":500,\"c4\":13500700,\"c5\":1331},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272495,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00020-1627c301-a463-41d5-8c56-36f91eada362-c000.snappy.parquet","partitionValues":{},"size":51324794,"modificationTime":1543751774000,"dataChange":true,"stats":"{\"numRecords\":5410197,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":510,\"c4\":13496520,\"c5\":1385},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273504,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00021-3a193aeb-4e41-4dff-8a6d-d9d743bd401b-c000.snappy.parquet","partitionValues":{},"size":51470205,"modificationTime":1543751774000,"dataChange":true,"stats":"{\"numRecords\":5407396,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":500,\"c4\":13518820,\"c5\":898},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273349,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00022-24d61281-d7ae-43b0-9ba1-e6e72e6fdf8f-c000.snappy.parquet","partitionValues":{},"size":51477655,"modificationTime":1543751774000,"dataChange":true,"stats":"{\"numRecords\":5405801,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":3926010,\"c2\":10403,\"c3\":700,\"c4\":13494840,\"c5\":3106},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273468,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00023-ecca1e52-69c7-4494-b44c-eef7bf0c2a45-c000.snappy.parquet","partitionValues":{},"size":51536465,"modificationTime":1543751774000,"dataChange":true,"stats":"{\"numRecords\":5405150,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":56,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":567,\"c4\":13466680,\"c5\":1342},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1271905,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00024-b88869d2-b679-47e6-a9ab-7a434920d7ff-c000.snappy.parquet","partitionValues":{},"size":51531138,"modificationTime":1543751780000,"dataChange":true,"stats":"{\"numRecords\":5405258,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":1,\"c4\":85,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":637,\"c4\":13518320,\"c5\":3631},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272127,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00025-3944d9b3-15bb-439e-b76c-ee7bf5f3f8a5-c000.snappy.parquet","partitionValues":{},"size":51502406,"modificationTime":1543751779000,"dataChange":true,"stats":"{\"numRecords\":5405803,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":106,\"c5\":0},\"maxValues\":{\"c1\":3926009,\"c2\":10403,\"c3\":500,\"c4\":13501220,\"c5\":4098},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1271991,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00026-c36583b2-7d88-4958-bd26-f4e1760056bc-c000.snappy.parquet","partitionValues":{},"size":51513942,"modificationTime":1543751781000,"dataChange":true,"stats":"{\"numRecords\":5407824,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":94,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":500,\"c4\":13451700,\"c5\":750},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1271727,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00027-13d43c61-e980-476b-a537-f327a9893d36-c000.snappy.parquet","partitionValues":{},"size":51367886,"modificationTime":1543751780000,"dataChange":true,"stats":"{\"numRecords\":5408494,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":116,\"c5\":0},\"maxValues\":{\"c1\":3926010,\"c2\":10403,\"c3\":510,\"c4\":13528280,\"c5\":1391},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272980,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00028-5a8e0145-ada8-47ca-be92-b3dac8b18043-c000.snappy.parquet","partitionValues":{},"size":51478477,"modificationTime":1543751782000,"dataChange":true,"stats":"{\"numRecords\":5406713,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":72,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":915,\"c4\":13517760,\"c5\":3497},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273518,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00029-c7fc0a9a-9318-46eb-b130-e9a2209de1cd-c000.snappy.parquet","partitionValues":{},"size":51464162,"modificationTime":1543751783000,"dataChange":true,"stats":"{\"numRecords\":5408519,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":1,\"c4\":96,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":476,\"c4\":12926380,\"c5\":1411},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273446,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00030-21cc41eb-f27a-4e79-b943-89e55e6304be-c000.snappy.parquet","partitionValues":{},"size":51471764,"modificationTime":1543751783000,"dataChange":true,"stats":"{\"numRecords\":5406383,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":1,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":650,\"c4\":13489860,\"c5\":1640},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272321,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00031-f7460e47-557e-46cb-9ca5-273153f527a6-c000.snappy.parquet","partitionValues":{},"size":51529154,"modificationTime":1543751782000,"dataChange":true,"stats":"{\"numRecords\":5406612,\"minValues\":{\"c1\":62889,\"c2\":1,\"c3\":3,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":3926009,\"c2\":10403,\"c3\":500,\"c4\":13467240,\"c5\":3561},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273023,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00032-58710500-0a8c-4dff-bf76-0e3e414169cd-c000.snappy.parquet","partitionValues":{},"size":51397207,"modificationTime":1543751789000,"dataChange":true,"stats":"{\"numRecords\":5408934,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":500,\"c4\":13495980,\"c5\":3631},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1275291,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00033-0e1d4307-c2c2-4280-8e8f-fac317b1abf7-c000.snappy.parquet","partitionValues":{},"size":51506234,"modificationTime":1543751790000,"dataChange":true,"stats":"{\"numRecords\":5406492,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":56,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":567,\"c4\":13523080,\"c5\":3561},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273016,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00034-71352935-c929-4aeb-8ed0-e843ca7b38e5-c000.snappy.parquet","partitionValues":{},"size":51413162,"modificationTime":1543751790000,"dataChange":true,"stats":"{\"numRecords\":5407620,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":1,\"c4\":105,\"c5\":0},\"maxValues\":{\"c1\":3926009,\"c2\":10403,\"c3\":700,\"c4\":13515680,\"c5\":70},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1271535,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00035-a8380fbd-20a0-4134-80bb-a42a092d519c-c000.snappy.parquet","partitionValues":{},"size":50939362,"modificationTime":1543751791000,"dataChange":true,"stats":"{\"numRecords\":5405403,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":81,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":543,\"c4\":13494280,\"c5\":4098},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273197,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00036-cd8c8e25-291f-4bad-89f5-36ccaaa3b303-c000.snappy.parquet","partitionValues":{},"size":51361043,"modificationTime":1543751796000,"dataChange":true,"stats":"{\"numRecords\":5406991,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":84,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":500,\"c4\":13519880,\"c5\":1451},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273024,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00037-2b588e22-ab2b-46e0-bc41-4dc6de23ca93-c000.snappy.parquet","partitionValues":{},"size":51269317,"modificationTime":1543751794000,"dataChange":true,"stats":"{\"numRecords\":5406956,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":1,\"c4\":65,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":533,\"c4\":13528800,\"c5\":4229},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273087,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00038-87aa3375-727c-43d5-a5fe-3a8f96f9a9de-c000.snappy.parquet","partitionValues":{},"size":51353055,"modificationTime":1543751796000,"dataChange":true,"stats":"{\"numRecords\":5406147,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":1,\"c4\":115,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":500,\"c4\":13512440,\"c5\":3437},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272972,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00039-b773f0bf-da86-4416-8e13-ac9b65b4fe6e-c000.snappy.parquet","partitionValues":{},"size":51359248,"modificationTime":1543751795000,"dataChange":true,"stats":"{\"numRecords\":5408686,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":3,\"c4\":92,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":500,\"c4\":13460520,\"c5\":501},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272968,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00040-ab3b4492-d9e6-4422-8265-dea45b93cb81-c000.snappy.parquet","partitionValues":{},"size":51277753,"modificationTime":1543751801000,"dataChange":true,"stats":"{\"numRecords\":5401257,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":600,\"c4\":13469980,\"c5\":643},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1271216,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00041-8d54afc4-a461-4082-a498-841f30632b5e-c000.snappy.parquet","partitionValues":{},"size":51461096,"modificationTime":1543751802000,"dataChange":true,"stats":"{\"numRecords\":5403471,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":3,\"c4\":61,\"c5\":0},\"maxValues\":{\"c1\":3926010,\"c2\":10403,\"c3\":500,\"c4\":13298060,\"c5\":70},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1271898,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00042-0676f4e3-d324-481a-b219-8d947b827b7b-c000.snappy.parquet","partitionValues":{},"size":51369131,"modificationTime":1543751802000,"dataChange":true,"stats":"{\"numRecords\":5404791,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":85,\"c5\":0},\"maxValues\":{\"c1\":3926009,\"c2\":10403,\"c3\":510,\"c4\":13515160,\"c5\":1051},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272098,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00043-1801422a-acfe-4c80-9726-9bcc23e55a26-c000.snappy.parquet","partitionValues":{},"size":51190015,"modificationTime":1543751803000,"dataChange":true,"stats":"{\"numRecords\":5405648,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":100,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":533,\"c4\":13458400,\"c5\":70},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272386,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00044-629fe344-921c-400a-9990-da75bef26a19-c000.snappy.parquet","partitionValues":{},"size":51442688,"modificationTime":1543751802000,"dataChange":true,"stats":"{\"numRecords\":5400887,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":1,\"c4\":56,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":650,\"c4\":13493780,\"c5\":3380},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272601,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00045-c866bd8d-a710-4aee-8afb-5e8025b222d8-c000.snappy.parquet","partitionValues":{},"size":51268063,"modificationTime":1543751805000,"dataChange":true,"stats":"{\"numRecords\":5406849,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":84,\"c5\":0},\"maxValues\":{\"c1\":3926009,\"c2\":10403,\"c3\":500,\"c4\":13498600,\"c5\":1391},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273642,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00046-a307d8d8-3d33-49c2-8db6-6696fa4eab55-c000.snappy.parquet","partitionValues":{},"size":51195796,"modificationTime":1543751805000,"dataChange":true,"stats":"{\"numRecords\":5409172,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":2,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":3926009,\"c2\":10403,\"c3\":533,\"c4\":13529860,\"c5\":629},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272474,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00047-f76157ee-4193-469f-a628-a8d6c6e3659b-c000.snappy.parquet","partitionValues":{},"size":51163868,"modificationTime":1543751805000,"dataChange":true,"stats":"{\"numRecords\":5408311,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":1,\"c4\":86,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":606,\"c4\":13413120,\"c5\":1451},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1273288,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00048-e4f57059-7b5f-4f30-bf4d-15a35794025c-c000.snappy.parquet","partitionValues":{},"size":51230503,"modificationTime":1543751810000,"dataChange":true,"stats":"{\"numRecords\":5405310,\"minValues\":{\"c1\":62886,\"c2\":1,\"c3\":0,\"c4\":67,\"c5\":0},\"maxValues\":{\"c1\":3926011,\"c2\":10403,\"c3\":650,\"c4\":13522000,\"c5\":3278},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1272922,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00049-2850b901-2dbf-406c-8ffe-991c2479974d-c000.snappy.parquet","partitionValues":{},"size":59455581,"modificationTime":1543751811000,"dataChange":true,"stats":"{\"numRecords\":6249227,\"minValues\":{\"c1\":2,\"c2\":1,\"c3\":2,\"c4\":71,\"c5\":0},\"maxValues\":{\"c1\":3926010,\"c2\":10403,\"c3\":580,\"c4\":13455500,\"c5\":3380},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1551238,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00050-137995d3-bd8e-434b-a2b1-d77b75611cef-c000.snappy.parquet","partitionValues":{},"size":18663521,"modificationTime":1543751807000,"dataChange":true,"stats":"{\"numRecords\":2542526,\"minValues\":{\"c1\":2,\"c2\":1,\"c3\":2,\"c4\":60,\"c5\":0},\"maxValues\":{\"c1\":62644,\"c2\":2244,\"c3\":500,\"c4\":4410640,\"c5\":66},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":830808,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00051-64f8c21a-9ab8-4d0f-bbe6-a4774d9ffbbd-c000.snappy.parquet","partitionValues":{},"size":4988629,"modificationTime":1543751806000,"dataChange":true,"stats":"{\"numRecords\":664689,\"minValues\":{\"c1\":40095,\"c2\":1,\"c3\":7,\"c4\":120,\"c5\":0},\"maxValues\":{\"c1\":62644,\"c2\":2244,\"c3\":347,\"c4\":809320,\"c5\":66},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":220020,\"c4\":0,\"c5\":0}}"}}


update test_db.test_tbl set c3 = 0 where c1 = 2;

databricks fs ls -l dbfs:/user/hive/warehouse/test_db.db/test_tbl/

dir          0  _delta_log
file  51926603  part-00000-1426c3ce-b229-483a-b77e-758462e6431b-c000.snappy.parquet
file  59455585  part-00000-5357c4d4-dc80-4c16-87b3-a876da395d80-c000.snappy.parquet
file  18663525  part-00001-5eb0fcc7-183c-4078-81ae-558a35be932e-c000.snappy.parquet
file  51931083  part-00001-89279585-72ed-4a93-9332-33b992ba7dea-c000.snappy.parquet
file  51836760  part-00002-d7d44c81-bc00-4863-ae53-b13baf0a8ec6-c000.snappy.parquet
file  51765672  part-00003-fbdf50d1-8166-4909-aaa4-4c41bb6a28e0-c000.snappy.parquet
file  51645701  part-00004-46fd54a1-c958-4f7b-b4f1-720cca087dbc-c000.snappy.parquet
file  51636215  part-00005-6bc7aa3a-9bca-4ec3-8a95-9fe5c7bcadd7-c000.snappy.parquet
file  51574509  part-00006-b9c010e6-9017-4a0e-853c-887dec591b73-c000.snappy.parquet
file  51673471  part-00007-31d54d8c-99a5-45a8-82ce-875e3d822b4c-c000.snappy.parquet
file  51712654  part-00008-a5dc71ac-69dc-4ebf-b317-55f8bfc275bb-c000.snappy.parquet
file  51574726  part-00009-261340a5-fcec-406d-98a0-83146ad47189-c000.snappy.parquet
file  51616103  part-00010-3ad706be-f215-4c81-8ee5-4d6834714f65-c000.snappy.parquet
file  51176632  part-00011-a4b84205-a59e-400a-975f-70c9f6c3de12-c000.snappy.parquet
file  51619480  part-00012-80c19ac4-e812-46a0-9507-d042bcd34110-c000.snappy.parquet
file  51482600  part-00013-5d9de6ce-fb01-418f-ae6f-6181e65bed66-c000.snappy.parquet
file  51552115  part-00014-2e547729-6858-49d1-a3b1-4b6b335a8da2-c000.snappy.parquet
file  51568260  part-00015-2e5696b9-9f6d-4f0c-bc9c-e1b63cd587c3-c000.snappy.parquet
file  51544169  part-00016-02edd1f4-ee78-413e-a0af-0f2b906d2a27-c000.snappy.parquet
file  51550346  part-00017-a28f200c-53c3-4646-9588-6e91643726a9-c000.snappy.parquet
file  51147934  part-00018-2d20ae02-2819-469c-b291-77312ba2938d-c000.snappy.parquet
file  51557341  part-00019-cc2c0e47-58ca-4c91-b783-7ee247f5e993-c000.snappy.parquet
file  51324794  part-00020-1627c301-a463-41d5-8c56-36f91eada362-c000.snappy.parquet
file  51470205  part-00021-3a193aeb-4e41-4dff-8a6d-d9d743bd401b-c000.snappy.parquet
file  51477655  part-00022-24d61281-d7ae-43b0-9ba1-e6e72e6fdf8f-c000.snappy.parquet
file  51536465  part-00023-ecca1e52-69c7-4494-b44c-eef7bf0c2a45-c000.snappy.parquet
file  51531138  part-00024-b88869d2-b679-47e6-a9ab-7a434920d7ff-c000.snappy.parquet
file  51502406  part-00025-3944d9b3-15bb-439e-b76c-ee7bf5f3f8a5-c000.snappy.parquet
file  51513942  part-00026-c36583b2-7d88-4958-bd26-f4e1760056bc-c000.snappy.parquet
file  51367886  part-00027-13d43c61-e980-476b-a537-f327a9893d36-c000.snappy.parquet
file  51478477  part-00028-5a8e0145-ada8-47ca-be92-b3dac8b18043-c000.snappy.parquet
file  51464162  part-00029-c7fc0a9a-9318-46eb-b130-e9a2209de1cd-c000.snappy.parquet
file  51471764  part-00030-21cc41eb-f27a-4e79-b943-89e55e6304be-c000.snappy.parquet
file  51529154  part-00031-f7460e47-557e-46cb-9ca5-273153f527a6-c000.snappy.parquet
file  51397207  part-00032-58710500-0a8c-4dff-bf76-0e3e414169cd-c000.snappy.parquet
file  51506234  part-00033-0e1d4307-c2c2-4280-8e8f-fac317b1abf7-c000.snappy.parquet
file  51413162  part-00034-71352935-c929-4aeb-8ed0-e843ca7b38e5-c000.snappy.parquet
file  50939362  part-00035-a8380fbd-20a0-4134-80bb-a42a092d519c-c000.snappy.parquet
file  51361043  part-00036-cd8c8e25-291f-4bad-89f5-36ccaaa3b303-c000.snappy.parquet
file  51269317  part-00037-2b588e22-ab2b-46e0-bc41-4dc6de23ca93-c000.snappy.parquet
file  51353055  part-00038-87aa3375-727c-43d5-a5fe-3a8f96f9a9de-c000.snappy.parquet
file  51359248  part-00039-b773f0bf-da86-4416-8e13-ac9b65b4fe6e-c000.snappy.parquet
file  51277753  part-00040-ab3b4492-d9e6-4422-8265-dea45b93cb81-c000.snappy.parquet
file  51461096  part-00041-8d54afc4-a461-4082-a498-841f30632b5e-c000.snappy.parquet
file  51369131  part-00042-0676f4e3-d324-481a-b219-8d947b827b7b-c000.snappy.parquet
file  51190015  part-00043-1801422a-acfe-4c80-9726-9bcc23e55a26-c000.snappy.parquet
file  51442688  part-00044-629fe344-921c-400a-9990-da75bef26a19-c000.snappy.parquet
file  51268063  part-00045-c866bd8d-a710-4aee-8afb-5e8025b222d8-c000.snappy.parquet
file  51195796  part-00046-a307d8d8-3d33-49c2-8db6-6696fa4eab55-c000.snappy.parquet
file  51163868  part-00047-f76157ee-4193-469f-a628-a8d6c6e3659b-c000.snappy.parquet
file  51230503  part-00048-e4f57059-7b5f-4f30-bf4d-15a35794025c-c000.snappy.parquet
file  59455581  part-00049-2850b901-2dbf-406c-8ffe-991c2479974d-c000.snappy.parquet
file  18663521  part-00050-137995d3-bd8e-434b-a2b1-d77b75611cef-c000.snappy.parquet
file   4988629  part-00051-64f8c21a-9ab8-4d0f-bbe6-a4774d9ffbbd-c000.snappy.parquet

databricks fs ls -l dbfs:/user/hive/warehouse/test_db.db/test_tbl/_delta_log

file     96  00000000000000000000.crc
file  23092  00000000000000000000.json
file     96  00000000000000000001.crc
file   1372  00000000000000000001.json

00000000000000000001.crc
{"tableSizeBytes":2605065702,"numFiles":52,"numMetadata":1,"numProtocol":1,"numTransactions":0}

00000000000000000001.json
{"commitInfo":{"timestamp":1543752370946,"userId":"6605856514319898","userName":"xxx@xxx","operation":"UPDATE","operationParameters":{"predicate":"(c1#2309 = 2)"},"notebook":{"notebookId":"2221810962482344"},"clusterId":"1126-094127-pods946"}}
{"remove":{"path":"part-00049-2850b901-2dbf-406c-8ffe-991c2479974d-c000.snappy.parquet","deletionTimestamp":1543752352667,"dataChange":true}}
{"remove":{"path":"part-00050-137995d3-bd8e-434b-a2b1-d77b75611cef-c000.snappy.parquet","deletionTimestamp":1543752352667,"dataChange":true}}
{"add":{"path":"part-00000-5357c4d4-dc80-4c16-87b3-a876da395d80-c000.snappy.parquet","partitionValues":{},"size":59455585,"modificationTime":1543752370000,"dataChange":true,"stats":"{\"numRecords\":6249227,\"minValues\":{\"c1\":2,\"c2\":1,\"c3\":0,\"c4\":71,\"c5\":0},\"maxValues\":{\"c1\":3926010,\"c2\":10403,\"c3\":580,\"c4\":13455500,\"c5\":3380},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1551238,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00001-5eb0fcc7-183c-4078-81ae-558a35be932e-c000.snappy.parquet","partitionValues":{},"size":18663525,"modificationTime":1543752365000,"dataChange":true,"stats":"{\"numRecords\":2542526,\"minValues\":{\"c1\":2,\"c2\":1,\"c3\":0,\"c4\":60,\"c5\":0},\"maxValues\":{\"c1\":62644,\"c2\":2244,\"c3\":500,\"c4\":4410640,\"c5\":66},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":830808,\"c4\":0,\"c5\":0}}"}}


delete from test_db.test_tbl where c1 = 16;

databricks fs ls -l dbfs:/user/hive/warehouse/test_db.db/test_tbl/

dir          0  _delta_log
file  51926603  part-00000-1426c3ce-b229-483a-b77e-758462e6431b-c000.snappy.parquet
file  59455585  part-00000-5357c4d4-dc80-4c16-87b3-a876da395d80-c000.snappy.parquet
file  59430649  part-00000-7dddda62-8837-4909-9183-fa4075bc1c1b-c000.snappy.parquet
file  18663525  part-00001-5eb0fcc7-183c-4078-81ae-558a35be932e-c000.snappy.parquet
file  51931083  part-00001-89279585-72ed-4a93-9332-33b992ba7dea-c000.snappy.parquet
file  18664701  part-00001-91318462-059b-43ff-99da-12b9c187c465-c000.snappy.parquet
file  51836760  part-00002-d7d44c81-bc00-4863-ae53-b13baf0a8ec6-c000.snappy.parquet
file  51765672  part-00003-fbdf50d1-8166-4909-aaa4-4c41bb6a28e0-c000.snappy.parquet
file  51645701  part-00004-46fd54a1-c958-4f7b-b4f1-720cca087dbc-c000.snappy.parquet
file  51636215  part-00005-6bc7aa3a-9bca-4ec3-8a95-9fe5c7bcadd7-c000.snappy.parquet
file  51574509  part-00006-b9c010e6-9017-4a0e-853c-887dec591b73-c000.snappy.parquet
file  51673471  part-00007-31d54d8c-99a5-45a8-82ce-875e3d822b4c-c000.snappy.parquet
file  51712654  part-00008-a5dc71ac-69dc-4ebf-b317-55f8bfc275bb-c000.snappy.parquet
file  51574726  part-00009-261340a5-fcec-406d-98a0-83146ad47189-c000.snappy.parquet
file  51616103  part-00010-3ad706be-f215-4c81-8ee5-4d6834714f65-c000.snappy.parquet
file  51176632  part-00011-a4b84205-a59e-400a-975f-70c9f6c3de12-c000.snappy.parquet
file  51619480  part-00012-80c19ac4-e812-46a0-9507-d042bcd34110-c000.snappy.parquet
file  51482600  part-00013-5d9de6ce-fb01-418f-ae6f-6181e65bed66-c000.snappy.parquet
file  51552115  part-00014-2e547729-6858-49d1-a3b1-4b6b335a8da2-c000.snappy.parquet
file  51568260  part-00015-2e5696b9-9f6d-4f0c-bc9c-e1b63cd587c3-c000.snappy.parquet
file  51544169  part-00016-02edd1f4-ee78-413e-a0af-0f2b906d2a27-c000.snappy.parquet
file  51550346  part-00017-a28f200c-53c3-4646-9588-6e91643726a9-c000.snappy.parquet
file  51147934  part-00018-2d20ae02-2819-469c-b291-77312ba2938d-c000.snappy.parquet
file  51557341  part-00019-cc2c0e47-58ca-4c91-b783-7ee247f5e993-c000.snappy.parquet
file  51324794  part-00020-1627c301-a463-41d5-8c56-36f91eada362-c000.snappy.parquet
file  51470205  part-00021-3a193aeb-4e41-4dff-8a6d-d9d743bd401b-c000.snappy.parquet
file  51477655  part-00022-24d61281-d7ae-43b0-9ba1-e6e72e6fdf8f-c000.snappy.parquet
file  51536465  part-00023-ecca1e52-69c7-4494-b44c-eef7bf0c2a45-c000.snappy.parquet
file  51531138  part-00024-b88869d2-b679-47e6-a9ab-7a434920d7ff-c000.snappy.parquet
file  51502406  part-00025-3944d9b3-15bb-439e-b76c-ee7bf5f3f8a5-c000.snappy.parquet
file  51513942  part-00026-c36583b2-7d88-4958-bd26-f4e1760056bc-c000.snappy.parquet
file  51367886  part-00027-13d43c61-e980-476b-a537-f327a9893d36-c000.snappy.parquet
file  51478477  part-00028-5a8e0145-ada8-47ca-be92-b3dac8b18043-c000.snappy.parquet
file  51464162  part-00029-c7fc0a9a-9318-46eb-b130-e9a2209de1cd-c000.snappy.parquet
file  51471764  part-00030-21cc41eb-f27a-4e79-b943-89e55e6304be-c000.snappy.parquet
file  51529154  part-00031-f7460e47-557e-46cb-9ca5-273153f527a6-c000.snappy.parquet
file  51397207  part-00032-58710500-0a8c-4dff-bf76-0e3e414169cd-c000.snappy.parquet
file  51506234  part-00033-0e1d4307-c2c2-4280-8e8f-fac317b1abf7-c000.snappy.parquet
file  51413162  part-00034-71352935-c929-4aeb-8ed0-e843ca7b38e5-c000.snappy.parquet
file  50939362  part-00035-a8380fbd-20a0-4134-80bb-a42a092d519c-c000.snappy.parquet
file  51361043  part-00036-cd8c8e25-291f-4bad-89f5-36ccaaa3b303-c000.snappy.parquet
file  51269317  part-00037-2b588e22-ab2b-46e0-bc41-4dc6de23ca93-c000.snappy.parquet
file  51353055  part-00038-87aa3375-727c-43d5-a5fe-3a8f96f9a9de-c000.snappy.parquet
file  51359248  part-00039-b773f0bf-da86-4416-8e13-ac9b65b4fe6e-c000.snappy.parquet
file  51277753  part-00040-ab3b4492-d9e6-4422-8265-dea45b93cb81-c000.snappy.parquet
file  51461096  part-00041-8d54afc4-a461-4082-a498-841f30632b5e-c000.snappy.parquet
file  51369131  part-00042-0676f4e3-d324-481a-b219-8d947b827b7b-c000.snappy.parquet
file  51190015  part-00043-1801422a-acfe-4c80-9726-9bcc23e55a26-c000.snappy.parquet
file  51442688  part-00044-629fe344-921c-400a-9990-da75bef26a19-c000.snappy.parquet
file  51268063  part-00045-c866bd8d-a710-4aee-8afb-5e8025b222d8-c000.snappy.parquet
file  51195796  part-00046-a307d8d8-3d33-49c2-8db6-6696fa4eab55-c000.snappy.parquet
file  51163868  part-00047-f76157ee-4193-469f-a628-a8d6c6e3659b-c000.snappy.parquet
file  51230503  part-00048-e4f57059-7b5f-4f30-bf4d-15a35794025c-c000.snappy.parquet
file  59455581  part-00049-2850b901-2dbf-406c-8ffe-991c2479974d-c000.snappy.parquet
file  18663521  part-00050-137995d3-bd8e-434b-a2b1-d77b75611cef-c000.snappy.parquet
file   4988629  part-00051-64f8c21a-9ab8-4d0f-bbe6-a4774d9ffbbd-c000.snappy.parquet

databricks fs ls -l dbfs:/user/hive/warehouse/test_db.db/test_tbl/_delta_log
file     96  00000000000000000000.crc
file  23092  00000000000000000000.json
file     96  00000000000000000001.crc
file   1372  00000000000000000001.json
file     96  00000000000000000002.crc
file   1393  00000000000000000002.json

00000000000000000002.crc
{"tableSizeBytes":2605041942,"numFiles":52,"numMetadata":1,"numProtocol":1,"numTransactions":0}

00000000000000000002.json
{"commitInfo":{"timestamp":1543752787300,"userId":"6605856514319898","userName":"xxx@xxx","operation":"DELETE","operationParameters":{"predicate":"[\"(test_db.test_tbl.`c1` = 16)\"]"},"notebook":{"notebookId":"2221810962482344"},"clusterId":"1126-094127-pods946"}}
{"remove":{"path":"part-00001-5eb0fcc7-183c-4078-81ae-558a35be932e-c000.snappy.parquet","deletionTimestamp":1543752787298,"dataChange":true}}
{"remove":{"path":"part-00000-5357c4d4-dc80-4c16-87b3-a876da395d80-c000.snappy.parquet","deletionTimestamp":1543752787298,"dataChange":true}}
{"add":{"path":"part-00000-7dddda62-8837-4909-9183-fa4075bc1c1b-c000.snappy.parquet","partitionValues":{},"size":59430649,"modificationTime":1543752787000,"dataChange":true,"stats":"{\"numRecords\":6249127,\"minValues\":{\"c1\":2,\"c2\":1,\"c3\":0,\"c4\":71,\"c5\":0},\"maxValues\":{\"c1\":3926010,\"c2\":10403,\"c3\":580,\"c4\":13455500,\"c5\":3380},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":1551191,\"c4\":0,\"c5\":0}}"}}
{"add":{"path":"part-00001-91318462-059b-43ff-99da-12b9c187c465-c000.snappy.parquet","partitionValues":{},"size":18664701,"modificationTime":1543752782000,"dataChange":true,"stats":"{\"numRecords\":2542354,\"minValues\":{\"c1\":2,\"c2\":1,\"c3\":0,\"c4\":60,\"c5\":0},\"maxValues\":{\"c1\":62644,\"c2\":2244,\"c3\":500,\"c4\":4410640,\"c5\":66},\"nullCount\":{\"c1\":0,\"c2\":0,\"c3\":830732,\"c4\":0,\"c5\":0}}"}}




Обратите внимание еще на статистику MIN/MAX для каждого файла... используется для pruning'a...

Ещё инфа
https://docs.databricks.com/delta/optimizations.html
https://databricks.com/blog/2018/07/31/processing-petabytes-of-data-in-seconds-with-databricks-delta.html

Delta теперь доступна на Databricks Standard да и на обычном Apache Spark'e. Переименовали в Delta Lake.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39917493
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Databricks Connect (Python, Scala, Java)
https://docs.databricks.com/dev-tools/databricks-connect.html

New Databricks Integration for Jupyter Bridges Local and Remote Workflows
https://databricks.com/blog/2019/12/03/jupyterlab-databricks-integration-bridge-local-and-remote-workflows.html
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39917496
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Databricks Connect

Дает возможность писать всё в привычной IDE, дебажить, нормальный sorce control с ветками, CI/CD etc...
Например, написать python-скрипт (много скриптов) миксующий обычный код с джобом Spark, упаковать все зависимости в контейнер, задеплоить/зашедулить куда надо.
Также добавили возможность кастомизации image'a самого спарка (гуглится у них в доке).
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39920634
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
churupaha,

попробовал на delta lake посмотреть и что-то не понял. смотрел локальный вариант, sql похоже вообще обрезан. ни DELETE ни UPDATE не работают. лишь SELECT сработал.
попробовал считать датасет, слегка поменять, записать. папка разбухла в двое. как я понял можно дергать .delete() .update() .merge() и работа с датафреймом теперь ими ограничена. т.е. я не могу взять существующий код, подсунуть ему датасет со сториджем delta и рассчитать, что он лишь измененную часть запишет.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39921493
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1
churupaha,

попробовал на delta lake посмотреть и что-то не понял. смотрел локальный вариант, sql похоже вообще обрезан. ни DELETE ни UPDATE не работают. лишь SELECT сработал.
попробовал считать датасет, слегка поменять, записать. папка разбухла в двое. как я понял можно дергать .delete() .update() .merge() и работа с датафреймом теперь ими ограничена. т.е. я не могу взять существующий код, подсунуть ему датасет со сториджем delta и рассчитать, что он лишь измененную часть запишет.


так рождаются легенды
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39932487
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
databricks docs (preview)Load data from a file location into a Delta table. This is a re-triable and idempotent operation—files in the source location that have already been loaded are skipped.

https://docs.databricks.com/spark/latest/spark-sql/language-manual/copy-into.html
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39932488
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
+ похоже имплементить инкрементальную загрузку станет еще проще.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39932489
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
churupaha,

и еще одна примочка для инкрементальщины...

авторAuto Loader incrementally and efficiently processes new data files as they arrive in Amazon S3 without any additional setup. Auto Loader provides a new Structured Streaming source called cloudFiles. Given an input directory path on the cloud file storage, the cloudFiles source automatically sets up file notification services that subscribe to file events from the input directory and processes new files as they arrive, with the option of also processing existing files in that directory. You can use it in the same way as other streaming sources:


https://docs.databricks.com/spark/latest/structured-streaming/auto-loader.html
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39932563
Бумбараш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В России это не особо акутально - ажуры вот эти все. Российские компании не идут в американские облака.

Хранилища делают в больших компаниях, а они или с госучастием или еще по каким-то причинам, но не лезут в американские облака от слова совсем. Даже та же пятерочка, которая зарегестрирована в нидерландах и со всеми бенефициарами в лондоне - не использует американские облака.

Так как переход в облака так или иначе неизбежен - это технологический тренд, думаю, всё будет в российских облаках. Облаках яндекса, майл ру, ростелекома. И стек там будет свой. Компании из последних двух, которые попроще, будут просто предоставлять гетерогенную инфраструктуру со всякими понатыканными постгре. А у Яндекса есть свои успешные продукты, как тот же Кликхаус. Ну и вообще у яши любая технология переписана с нуля в яндекс продукт, вместо хадупа у них YT, и так далее, с каждым продуктом.

я так вижу
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39932632
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
churupaha
databricks docs (preview)Load data from a file location into a Delta table. This is a re-triable and idempotent operation—files in the source location that have already been loaded are skipped.


https://docs.databricks.com/spark/latest/spark-sql/language-manual/copy-into.html
при строительстве дата лейков отфильтровать уже загруженные файлы мягко говоря не самая сложная задача.
ладно. допустим я выкину SQL и все свои наработки за несколько лет, переделаю на .delete() .update() .merge() но встает следующая проблема. cloudera вырезала из своей сборки spark этот дельта лейк, т.е. hive on spark прочесть не сможет результат.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39933874
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Бумбараш
В России...

это не про Россию... немного английского и всё становится актуальным, не ограничивайте себя ;)

H5N1при строительстве дата лейков отфильтровать уже загруженные файлы мягко говоря не самая сложная задача.


чем меньше рутины тем лучше, фич там масса на самом деле...

H5N1ладно. допустим я выкину SQL и все свои наработки за несколько лет, переделаю на .delete() .update() .merge()


а не нужно выкидывать: UPDATE, DELETE, INSERT, MERGE есть и в виде SQL

H5N1но встает следующая проблема. cloudera вырезала из своей сборки spark этот дельта лейк, т.е. hive on spark прочесть не сможет результат.


хз что сказать, я про Azure и AWS, после того, как Databricks ("начинатели" Spark'а) выкатили свую коммерческую поделку в AWS / Azure, ну пофиг на лм clouder'у... тем более, что скорее всего именно миграция с вашей clouder'ы в Databricks пройдет без пинков...
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39933875
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Бумбараш...
с тем стеком, что вы перечислили будет тяжело работу найти вне России...
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39933931
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
churupaha

а не нужно выкидывать: UPDATE, DELETE, INSERT, MERGE есть и в виде SQL

нету, посмотрите доки, только в их облаке.

H5N1хз что сказать, я про Azure и AWS, после того, как Databricks ("начинатели" Spark'а) выкатили свую коммерческую поделку в AWS / Azure, ну пофиг на лм clouder'у... тем более, что скорее всего именно миграция с вашей clouder'ы в Databricks пройдет без пинков...
а смысл от технологии на файликах в облаке ? в облаке я тогда уж полноценное решение возьму, где не апдейт/делит без акробатики происходит и SQL быстрее чем у spark.
по мне такая штука ценна на моем железе, где выбор сториджа ограничен.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39934027
Бумбараш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
churupaha
Бумбараш...

с тем стеком, что вы перечислили будет тяжело работу найти вне России...
я там стека то никакого не перечислял. Только сказал, что у Яндекса всё своё
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39934030
Бумбараш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
churupaha
Бумбараш
В России...

это не про Россию... немного английского и всё становится актуальным, не ограничивайте себя ;)

с английским у меня всё ок. Но я никуда уезжать не собираюсь. А ковыряться в ажуре с индусами по скайпу - тоже так себе варик. Меня вполне устраивает русский стек за 300к\сек.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39934162
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1
где не апдейт/делит без акробатики происходит


а где массовый update/delete происходит без "акробатики"? (с таблицей / индексами все нормуль потом в тех движках?)

по-моему не плохо в delta реализован update/delete...
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39934186
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
churupaha
H5N1
где не апдейт/делит без акробатики происходит


а где массовый update/delete происходит без "акробатики"? (с таблицей / индексами все нормуль потом в тех движках?)

по-моему не плохо в delta реализован update/delete...

амазон Redshift, google bigtable, у майкросфта там mpp вариант sql server, они его теперь synapse обызывают. еще есть grennplum.
у клоудеры тоже вроде есть kudu, без индексов, но оно сыровато пока.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39934200
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1
churupaha
пропущено...


а где массовый update/delete происходит без "акробатики"? (с таблицей / индексами все нормуль потом в тех движках?)

по-моему не плохо в delta реализован update/delete...

амазон Redshift, google bigtable, у майкросфта там mpp вариант sql server , они его теперь synapse обызывают. еще есть grennplum.
у клоудеры тоже вроде есть kudu, без индексов, но оно сыровато пока.


про остальные не скажу, но про Azure DWH скажу

Azure DWH docs тынц
"For unpartitioned tables, consider using a CTAS to write the data you want to keep in a table rather than using DELETE. If a CTAS takes the same amount of time, it is a much safer operation to run as it has minimal transaction logging and can be canceled quickly if needed."


странно что ничего не пишут про columnstore в этой же статье...

я честно говоря до сих пор не понимаю, что плохого в реализации delete/update/merge от databricks, в том что оно вам доступно вне databricks только через dataframe api?
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39934213
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати чтобы лить в Azure DWH через polybase прямо из Databricks есть либа ... Юзал Databricks +Azure DWH до того как его назвали Synaps Analytics... SQL очень кастрирован, будет работать быстро, если правильно заливать в columnstore (память в resource pool для на время заливки для columnstore компрессии должно быть достаточно, там формулы были чтобы оценить, rowgroups чтобы заполнялись нормально и т. п..), также постараться выровнять таблицы (distributions) чтобы при наиболее типичных джоинах не было re-shuffling'а, да как и везде видимо... чудес там нет...

из плохого помню geo-backup orphan, при отключении что-то под какотом ажура пошло не так, сторадж не освободился и нас чаржило. через месяц переписки признали ошибку - вернули деньги...
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39934220
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
churupaha
странно что ничего не пишут про columnstore в этой же статье...

хех, пишут и про него в конце...
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39934238
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
churupaha
про остальные не скажу, но про Azure DWH скажу

как любой другой рсубд. в оракле тоже ctas часто быстрее.

churupaha

я честно говоря до сих пор не понимаю, что плохого в реализации delete/update/merge от databricks, в том что оно вам доступно вне databricks только через dataframe api?

а как результатом воспользоваться ? аналитики/сатанисты хотят селектить из даталейка, чем теперь ?
ну и передать дельту витрин в вертику, получится что единственный вариант - из спарка подключатся и им писать, но это как я понимаю тормозной jdbc. вероятно он сильно проиграет коннектору вертики, что берет паркет файлики с hdfs

как и везде видимо... чудес там нет...

churupaha
чтобы при наиболее типичных джоинах не было re-shuffling'а, да как и везде видимо... чудес там нет...

это понятно, но там у них млн клиентов на одного в датабриксе, соответственно и манулов, бест практиз, доков. ну и возможностей все таки поболее. те же индексы есть если что.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39934262
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
churupahaа как результатом воспользоваться ?


не подойдет такое в вашем случае? https://docs.microsoft.com/en-us/azure/databricks/delta/delta-faq

Can I access Delta tables outside of Databricks Runtime?

There are two cases to consider: external writes and external reads.

External writes: Delta Lake maintains additional metadata in the form of a transaction log to enable ACID transactions and snapshot isolation for readers. In order to ensure the transaction log is updated correctly and the proper validations are performed, writes must go through Databricks Runtime.

External reads: Delta tables store data encoded in an open format (Parquet), allowing other tools that understand this format to read the data. However, since other tools do not support Delta Lake’s transaction log, it is likely that they will incorrectly read stale deleted data, uncommitted data, or the partial results of failed transactions.

In cases where the data is static (that is, there are no active jobs writing to the table), you can use VACUUM with a retention of ZERO HOURS to clean up any stale Parquet files that are not currently part of the table. This operation puts the Parquet files present in DBFS into a consistent state such that they can now be read by external tools.

However, Delta Lake relies on stale snapshots for the following functionality, which will break when using VACUUM with zero retention allowance:

Snapshot isolation for readers - Long running jobs will continue to read a consistent snapshot from the moment the jobs started, even if the table is modified concurrently. Running VACUUM with a retention less than length of these jobs can cause them to fail with a FileNotFoundException.
Streaming from Delta tables - Streams read from the original files written into a table in order to ensure exactly once processing. When combined with OPTIMIZE, VACUUM with zero retention can remove these files before the stream has time to processes them, causing it to fail.
For these reasons we recommend the above technique only on static data sets that must be read by external tools.



Без костыля вверху:
- Databricks морда для запросов
- Худо бедно Power BI умеет коннектиться к Databricks (может быть и к Спарк)
- Для сатанистов вот тут есть (один из наших прозрел недавно) https://docs.databricks.com/applications/mlflow/index.html а так тащят с блоб стораджа трансформированное/агрегированное в виде csv/jsonline...

churupahaну и передать дельту витрин в вертику, получится что единственный вариант - из спарка подключатся и им писать, но это как я понимаю тормозной jdbc. вероятно он сильно проиграет коннектору вертики, что берет паркет файлики с hdfs


А погуглите Databricks + Vertica parallel load есть чего? я не работал с Vertica. По крайней мере в Azure DWH через либу что кидал можно из Spark'а лить через polybase (через подчиненные ноды параллельно). Там jdbc коннект к головной ноде используется "драйвером" только для DDL создать EXTERNAL SOURCES и т. п.. и для оркестровки процесса. Данные экспортятся на промежуточный blob storage, а с него нодами-воркерами Azure DWH тянутся в Azure DWH... там не тупо заливка через голову... причем с вашей стороны это обычный spark.write....save()
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39934270
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39934272
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот что происходит при update/delete с delta, просто прорефрешу инфу... 21943077
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39934274
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39934297
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
churupaha
churupahaа как результатом воспользоваться ?


не подойдет такое в вашем случае? https://docs.microsoft.com/en-us/azure/databricks/delta/delta-faq

Can I access Delta tables outside of Databricks Runtime?

There are two cases to consider: external writes and external reads.

External writes: Delta Lake maintains additional metadata in the form of a transaction log to enable ACID transactions and snapshot isolation for readers. In order to ensure the transaction log is updated correctly and the proper validations are performed, writes must go through Databricks Runtime.

External reads: Delta tables store data encoded in an open format (Parquet), allowing other tools that understand this format to read the data. However, since other tools do not support Delta Lake’s transaction log, it is likely that they will incorrectly read stale deleted data, uncommitted data, or the partial results of failed transactions.

In cases where the data is static (that is, there are no active jobs writing to the table), you can use VACUUM with a retention of ZERO HOURS to clean up any stale Parquet files that are not currently part of the table. This operation puts the Parquet files present in DBFS into a consistent state such that they can now be read by external tools.

However, Delta Lake relies on stale snapshots for the following functionality, which will break when using VACUUM with zero retention allowance:

Snapshot isolation for readers - Long running jobs will continue to read a consistent snapshot from the moment the jobs started, even if the table is modified concurrently. Running VACUUM with a retention less than length of these jobs can cause them to fail with a FileNotFoundException.
Streaming from Delta tables - Streams read from the original files written into a table in order to ensure exactly once processing. When combined with OPTIMIZE, VACUUM with zero retention can remove these files before the stream has time to processes them, causing it to fail.
For these reasons we recommend the above technique only on static data sets that must be read by external tools.



+ для apache spark (non databricks)
https://docs.delta.io/0.4.0/delta-utility.html#enable-sql-commands-within-apache-spark
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39935373
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
churupaha

не подойдет такое в вашем случае?

подойдет, но vacum убьет большую часть преимущества и по сути мало чем отличается от того, что у нас уже есть. видимо для нас сексуальной технология станет когда hive on spark научат читать напрямую.
интересно, а ноутбуки типа juniper/apache zepeline, напрямую прочтут?

churupaha

- Для сатанистов вот тут есть (один из наших прозрел недавно) https://docs.databricks.com/applications/mlflow/index.html а так тащят с блоб стораджа трансформированное/агрегированное в виде csv/jsonline...

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


о, попробую.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39937134
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1


о, попробую.


а, так это стандартный параметр. не, UPDATE/DELETE не работают
at org.apache.spark.sql.catalyst.parser.ParserUtils$.operationNotAllowed(ParserUtils.scala:41)


это только для датабрикс облака
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39937474
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1
H5N1

пропущено...

о, попробую.


а, так это стандартный параметр. не, UPDATE/DELETE не работают
at org.apache.spark.sql.catalyst.parser.ParserUtils$.operationNotAllowed(ParserUtils.scala:41)


это только для датабрикс облака


это я кидал для vacuum (чтобы файлы напрямик потом читать можно было без side эффектов)
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39937477
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
churupaha
H5N1
пропущено...


а, так это стандартный параметр. не, UPDATE/DELETE не работают
at org.apache.spark.sql.catalyst.parser.ParserUtils$.operationNotAllowed(ParserUtils.scala:41)


это только для датабрикс облака


это я кидал для vacuum (чтобы файлы напрямик потом читать можно было без side эффектов)


docsApache Spark does not native support SQL commands that are specific to Delta Lake (e.g., VACUUM and DESCRIBE HISTORY). To enable such commands to be parsed, you have to configure the SparkSession to use our extension SQL parser which will parse only our SQL commands and fallback to Spark’s default parser for all other SQL commands. Here are the code snippets you should use to enable our parser.

хотя вам же можно и tbl.vacuum(), но вы говорили что всё на Spark SQL запиленно (если не путаю)
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #39937482
churupaha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а ноутбуки типа juniper/apache zepeline, напрямую прочтут

если ноутбуки, то люди в них читают либами всякими... delt-у с логом они конечно не прочтут правильно (без vacuum).

датабрикс можно юзать из юпитера (но у нас не делают так)...
https://databricks.com/blog/2019/12/03/jupyterlab-databricks-integration-bridge-local-and-remote-workflows.html
https://github.com/databrickslabs/Jupyterlab-Integration#1-prerequisites
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40037736
Glebanski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уж коли тут Databricks вовсю обсуждался, то и вопрос будет к месту.

Спросил у местого Databricks разработчика :
Databricks пытается вытеснить традиционный ETL, так? Вы поддерживаете кучу языков, notebooks вполне себе норм. среда для разработки. Но с т.зр. среднего BI- разработчика фигарить скрипты на python - это, если честно, back-to-the-80s подход. PowerCenter уже в 90е перешел на visual etl. Может я что-то пропустил, но планируете ли вы делать что-то в стиле классических etl-tools? В том числе и для оркестрирования всез процессов?

На что получил ответ:
Visual точно нет
Нафиг оно кому надо


Ну, мнение имеет право на жизнь :D
Но с т.зр. обленившегося ETL developera переходить снова на писанину когда, когда по сути уже в 90-е был пройденный этап - зачем? Потому что миллениалам так прикольнее и у них еще руки не болят?

Пытался найти нормальный app, чтоб можно было все high-level процессы не кодить как if ... then... else, а нарисовать как в PowerCenter, Datastage или, прости господи, SSIS (не к ночи будет).
DataFactory ? (ок, но Микрософт пока не бесплатен)
AWS Data Pipeline - убожество, "тфу на него"
Щас посмотрю на StreamSets в AWS, но в прошлый раз их AMI отказался работать сразу после инсталляции, что само по себе странно.
Может еще что-то есть?

ЗЫ: есть некий бюджет, чтоб крутить это дело в AWS
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40037743
Фотография vikkiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Glebanski,

тут не только в самом питоне дело
(всё равно больше скриптовый, а не компилируемый, соотв. ожидаемые проблемы с производительностью),
DataBricks используется в контекстах
[1] DataLake (прямым mount volume) который всё равно в облаках и полюбому не бесплатен
[2] ML / DS контекст где SQL Server явно не настолько продвинут по функционалу
(ML Services отдельный или встроенный - не настолько мощные чтобы кучу батчей в них кидать,
ну может только SQL Server Big Data Cluster который не так уж и сильно взлетает у MS как продукт из-за конкуренции).

Из SQL Server/Synapse можно mount делать файлам DL как external table для промежуточного ETL этапа (через Java/Polybase)
- но опять-же: вопрос неопределённости схемы из-за неизвестных пока требований..

Кроме того в ETL (для Data Lake) важен не собственно сам DataBricks сколько его масштабируемый Spark Clusters
именно поэтому к ETL на DataBricks идёт требование знаний Scala или хотя-бы PySpark (с его более эффективным API к Spark)
а не стандартные NumPy/Pandas/Matplotlib как для PowerBI
хорошо хоть mapreduce перестали требовать

А так-то в DataBricks есть и DashBoards (с динамическими интерактивными параметрами) для отчётности и свой оркестратор/планировщик

вообще-то да, как раньше писали - последние года 4 может создаться впечатление о шаге назад в прошлое когда сначала потребовались десятилетия чтобы перейти от работы с файлами на базы данных сo строками на миллионы/миллиарды, а теперь вдруг обратно на файловые системы, но на самом деле тут концепция немного другая т.е. данные хранятся в сыром виде, необязательно структурированные, да и какая структура понадобится пока неизвестно (поэтому для DL и schema on read подход)

так что проблема в основном в том что на фоне очередного технологического взрыва - стремительно начинают меняться источники (и форма данных, да и немного - что считать данными), а разработчики рисованного ETL софта начинают сдаваться пытаясь за всем этим угнаться, в том-же SSIS я в основном использовал свой custom code на C# где SSIS был чисто для галочки как формальная среда - элементарно не хватало функционала для решения задач без хождения по граблям их модулей.. для элементарных задач конечно SSIS может и хватает, вот только таких задач в общей массе ну очень мало.

Да, ADF тоже убожество (a года 3 назад вообще был ад), но свою работу вполне делает, понемногу догоняет..

п.с. для некоммерческого использования есть из бесплатных пробных (но ограниченных и тормознутых естественно) те-же kaggle или databricks community (хостится на AWS)
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40038070
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Glebanski,

из бесплатного вроде pentaho еще живо, но клепать визуальными штуковинами сайтики, воркфловы и etl последние лет 10 желающих нет. хотя в этом плане именно etl дольше других держались за GUI
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40038079
Glebanski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1
Glebanski,

из бесплатного вроде pentaho еще живо, но клепать визуальными штуковинами воркфловы и etl последние лет 10 желающих нет.

Мне кажется это заблуждение. У нас в НЛ вакансий на Powercenter столько же сколько на Databricks (19 vs 20)
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40038102
Фотография vikkiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Glebanski
Мне кажется это заблуждение...
Наверное потому что сам DataBricks вовсе не скил, ну разве что конфигурация кластеров, логи, дашборды
(есть некоторые нюансы, но они довольно просты в освоении чтобы выносить в отдельные требования)..
в вакансиях пишут или Spark/Scala или Python / Notebooks (даже можно без него напрямую указывая
только опыт с необходимыми модулями {к-рых больше 100К} по сфере деятельности: автоматизация
тестирования, бэк/фронт-энд, ML/DS, ETL работа с хранилищами файловыми DL или базами и пр.)
С ETL/ELT кстати немного похожая история - но сам скил намного больше привязан к платформе.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40038111
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Glebanski

Мне кажется это заблуждение. У нас в НЛ вакансий на Powercenter столько же сколько на Databricks (19 vs 20)

потому, что etl делают на spark, а запускать с плюшками датабрикса как я понимаю можно и в азуре и sql server big cluster
ну и 19-20 вакансий имхо это синоним нет вакансий.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40038614
Фотография George Nordic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Коллеги, день добрый!

Сама концепция Data Lake как Staging Area мне по нраву. Однако, обсуждение свелось к облачным решениям, а Data Lake в облаке мне кажется негуманным как по цене, там и точки зрения репликации данных в облако (временные затраты).

Насколько я понимаю, заказчики предпочитают DL все-таки в периметре делать, и на бесплатных технологиях (ну, или почти-бесплатных). А уже потом:
* или натравить на это кладбище данных MR / Phyton / R для получения структурированных данных и передачи данных в витрины / хранилище (в т.е. для ad-hoc анализа)
* или для отработки экспериментов / теорий на всем объеме данных, но при этом опять надо знать или Phyton или R.

Так что, кажется, здесь и без визуального ETL можно обойтись - значимые данные можно или MR выцепить, или все равно с Pyton / R / Mahout возится.

Кстати, а есть какой-либо рекомендованный стек не для облачных инсталляций?

С Уважением,
Георгий.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40038672
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
George Nordic,

со стандартизацией имхо все плохо. миф о том что DL это неструктурированная помойка сырых данных так и продолжает жить, единственно за последние годы Databriks чуть подрос и теперь вроде чаще в связке с DL звучат термины Gold, Silver, Bronze tables.

чего-то рекомендованного на своих серверах имхо нет, Cloudera объединилась с Hortonworks и продвигает свои стеки вокруг Impala. если ориентироваться на Databriks то на своих серверах самое "стандартное" видимо будет опенсорс delta.io формат и spark джобы, которые откуда-то читают и строят Gold/Silver таблицы в формате deltia.io. проблемка в том, что бесплатного хадупа теперь нет, в опенсоурс варианте delta.io вроде как нет важных оптимизаций и самое печальное, без облака Databriks эти delta.io структуры нечем показать пользователям.
но в принципе схема рабочая, мы тестируем сейчас DL хранилище на delta.io (staging + MERGE в delta.io) и постройку витрин на обычных parquet файлах, которые доступны пользователям через Impala. вот только не заметно, что бы это была популярная связка и из европы выглядит, что абсолютное большинство предпочитает брать продукты в облаке и подсаживаться на вендор лок.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40038696
Фотография George Nordic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1
большинство предпочитает брать продукты в облаке и подсаживаться на вендор лок.
Вот то-то. Вход - рубль, выход - нет. В принципе, не так сложно все потоки данных в облако загрузить. А вот выгрузить - об этом можно будет забыть. К тому же с подходом "тащи все, там разберемся" и "неструктурированная помойка сырых данных" - объем данных будет расти экспоненциально, вместе с расходами.
H5N1
чего-то рекомендованного на своих серверах имхо нет, Cloudera объединилась с Hortonworks и продвигает свои стеки вокруг Impala.
Зашел на их сайт. Вижу:

Как загрузить - понятно. А как вытаскивать для анализа, Sqoop / Kafka? В общем, мне не совсем понятно как это тот же pyton натравить, но так как стек апечевский, думаю, как-то можно.
H5N1
без облака Databriks эти delta.io структуры нечем показать пользователям. но в принципе схема рабочая, мы тестируем сейчас DL хранилище на delta.io (staging + MERGE в delta.io) и постройку витрин на обычных parquet файлах, которые доступны пользователям через Impala.
А через Apache Drill? не, в паркет много кто умеет, даже мой любимый продукт

С Уважением,
Георгий
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40038736
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
George Nordic
Вот то-то. Вход - рубль, выход - нет. В принципе, не так сложно все потоки данных в облако загрузить. А вот выгрузить - об этом можно будет забыть. К тому же с подходом "тащи все, там разберемся" и "неструктурированная помойка сырых данных" - объем данных будет расти экспоненциально, вместе с расходами.

тут не соглашусь. экспоненциально расти будут данные, которые на сторидже аля S3 лежат. в облачной базе, наверно данные не будут так быстро расти, т.к. нет смысла сырые и архивные данные там держать. на сколько я помню у аля S3 сториджей ценник что-то около $25/месяц за Тб. придется очень много затащить, что бы почувствовать расходы.

George Nordic
Как загрузить - понятно. А как вытаскивать для анализа, Sqoop / Kafka? В общем, мне не совсем понятно как это тот же pyton натравить, но так как стек апечевский, думаю, как-то можно.

так это Cloudera, просто картинка их хадупа. анализировать надо там, где данные, если данные на hdfs/cloudera kudu то там, на хадупе, MR jobs или Spark запускают. с питоном я не дружу, мне кажется типичные питонисты тянут к себе обычно файлики с hdfs, у себя пытаются затянуть в pandas, данные, которые как я понимаю в память обязаны уложится.
в современном ландшафте на Cloudera спарк джоб что-то там из кафки получает, очищает, гоняет по ML моделям. потом следующий в пайплайне джоб дальше строит silver, gold витрины, в том числе с результатами ML дребедени. т.е. все внутри хадуп кластера, внутри spark джобов, никуда выгружать ничего не надо. обычно спарк джобы это scala или java код, можно писать и на питоне и запускать как pySpark джоб, но говорят это заметно медленнее scala/java. хотя подозреваю запуск на кластере это при любой скорости next level на фоне обычного питон/pandas.

George Nordic
А через Apache Drill? не, в паркет много кто умеет, даже мой любимый продукт

что такое delta.io ? это parquet файлики накиданные в единую папочку и json который указывает какие файлики от какой транзакции появились. т.е. drill, impala, vertica, все кто умеют читать паркет увидят там кашу из дублей нескольких транзакций. если инструмент не знает про delta.io то надо делать vacum что бы в фолдере остались лишь файлики с актуальными данными.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40038743
Glebanski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
обычно спарк джобы это scala или java код, можно писать и на питоне и запускать как pySpark джоб, но говорят это заметно медленнее scala/java.

Нашел давнишнюю статью вот http://emptypipes.org/2015/01/17/python-vs-scala-vs-spark/
Вкратце, если у тебя есть доступ к вычислительным ресурсам (а не один 386DX комп), то PySpark отлично колбасит данные, на уровне Scala.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40039643
Ivan Durak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
статья за 15-й год,

вот посвежее
https://habr.com/ru/company/otus/blog/529684/

авторСегодня в Spark есть 3 API-интерфейса Scala/Java: RDD, Datasets и DataFrames (который теперь объединен с Datasets). как показывают тесты, переход на API-интерфейс Datasets может дать громадный прирост производительности за счет оптимизированного использования ЦП.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40039831
Фотография George Nordic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1, а не смотрели Apache Zeppelin под все это дело?

С Уважением,
Георгий
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40039878
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
George Nordic
H5N1, а не смотрели Apache Zeppelin под все это дело?

пытался на cdh5, но не смог запустить на боевом кластере. тогда колудера намудрила с версиями спарка, spark2 через spark-submit2 надо было запускать + каша в путях. не осилил.
на cdh6 должно взлететь, если подложить на каждую ноду либы от delta.io. я на cdh6 смотрел hive on spark, из коробки delta.io не заработала насколько помню. hive не знает про такой тип таблиц ...
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40040142
Фотография vikkiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор
...Сегодня в Spark есть 3 API-интерфейса Scala/Java...
Но при этом PySpark почему-то более популярен..
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40040144
Фотография vikkiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть конечно и для R API в Spark
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40040145
Фотография vikkiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Наверное из-за собственно распостранённости самого Python, т.е. не приходится учить новый язык
.. естественно в PySpark есть (разумнее использовать) только DataFrame , а DataSet там нет..
(перевожу на новую страницу)
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40040146
Фотография vikkiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
собственно теперь в начале новой страницы к самому важному:

by Bill Inmon / Published on January 28, 2021

DATA LAKE ARCHITECTURE
https://www.linkedin.com/pulse/data-lake-architecture-bill-inmon/
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40040222
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vikkiv
собственно теперь в начале новой страницы к самому важному:

by Bill Inmon / Published on January 28, 2021

DATA LAKE ARCHITECTURE
https://www.linkedin.com/pulse/data-lake-architecture-bill-inmon/

странные вещи пишет, у него там все в порядке, инсультов не было ? вроде сам же писал в 2016, что у даталейка должна быть архитектура, описывал свои data ponds, говорил что нельзя сваливать в помойку, надо структурированные данные интегрировать в application pond. интересно, он прочел свою книгу "Data Lake Architecture: Designing the Data Lake and Avoiding the Garbage Dump" ?
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40040320
Фотография vikkiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1,

ИМХО - он скорее всего потролил на "завести тему" чтобы было о чём порассуждать с коллегами,
на самом деле там достаточно осторожной критики в комментариях под статьёй и в др. источниках,
напр. на youtube за последние несколько дней есть обсуждения/мнения на эту тему,
пруф:
YouTube Video
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40040392
Фотография George Nordic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vikkiv
by Bill Inmon / Published on January 28, 2021
Спасибо!
H5N1
странные вещи пишет
Не, все норм. Он стебает тех, кто строил болота не читав его "Data Lake Architecture: Designing the Data Lake and Avoiding the Garbage Dump". И, кстати, он прав: в болоте найти гибель вернее, чем рыцаря или танк Хотя, конечно, можно найти и то, и то.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40067967
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в продолжение к клоунаде data lake - свалка сырых данных.
data lake газпромбанка
YouTube Video
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40073891
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vikkiv
собственно теперь в начале новой страницы к самому важному:

by Bill Inmon / Published on January 28, 2021

DATA LAKE ARCHITECTURE
https://www.linkedin.com/pulse/data-lake-architecture-bill-inmon/

снова разворот на 180
YouTube Video
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40073894
Полковник.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1,

Ну должен же он чем то развлекать себя на пенсии, еще и денег заработает.
...
Рейтинг: 0 / 0
Data Lake как Staging Area
    #40100872
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1


похожу дедуля будет топить за lake house как за замену data warehouse. книгу готовит ...

Building the Data Lakehouse
By Bill Inmon, father of the data warehouse
https://databricks.com/p/ebook/building-the-data-lakehouse

оказыается в lakehouse ACID есть, индусы-соавторы походу еще не поняли, что эти буковки означают.
надеюсь эту книгу дедуле дадут, прочесть до того как он пойдет в блог писать
...
Рейтинг: 0 / 0
158 сообщений из 158, показаны все 7 страниц
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Data Lake как Staging Area
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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