Зачем использовать DuckDB в ваших конвейерах данных (при участии Нильса Клэйса)
MotherDuck
0:00 / 0:00
Зачем использовать DuckDB в ваших конвейерах данных (при участии Нильса Клэйса)
35 120 просмотров · 2 года назад
MotherDuck
12,9 тыс. подписчиков
35 120 просмотров · 2 года назад
Доклад Нильса Клейса (@Dataminded) на одной из встреч MotherDuck/DuckDB, состоявшейся в сентябре в Левене, Бельгия.
Спасибо @dataroots за организацию!
☁️🦆 Начните использовать DuckDB в облаке БЕСПЛАТНО с MotherDuck: https://hubs.la/Q02QnFR40
Ссылки Нильса:
LinkedIn: / nielsclaeys
Medium: / niels.claeys
➡️ Подписывайтесь на нас
LinkedIn: / 8192. .
Twitter: / motherduck
Блог: https://motherduck.com/blog/
#duckdb #motherduckdb #motherduckduckdb #dataengineering
В этой презентации рассматривается использование DuckDB в ваших конвейерах обработки данных как современная и эффективная альтернатива традиционным инструментам обработки данных. Начнем с описания типичной архитектуры платформы пакетной обработки данных, где данные загружаются в озеро данных (например, S3 или Azure Blob Storage) и обрабатываются с помощью Spark для всех задач ETL. Это создает предпосылки для распространенной проблемы: неэффективность использования распределенного механизма, такого как Spark, для 80-90% случаев, связанных с небольшими или средними объемами данных, определяемыми здесь как до 100 ГБ.
Мы предлагаем более эффективный технологический стек, объединяющий DBT и DuckDB, для замены Spark в большинстве задач обработки данных. Такой подход позволяет аналитикам данных, владеющим SQL, создавать собственные конвейеры обработки данных, освобождая специализированные команды инженеров данных. DBT внедряет лучшие практики разработки программного обеспечения, такие как модульность и документирование, в SQL, в то время как DuckDB выступает в качестве высокопроизводительного, встроенного механизма SQL, который отлично подходит для запросов данных непосредственно из файлов Parquet в вашем озере данных, что делает его идеальным решением для аналитической инженерии.
Узнайте о практической реализации с использованием адаптера `dbt-duckdb`, который обеспечивает бесперебойный рабочий процесс. Ключевой особенностью является возможность чтения с внешнего хранилища, что делает DBT с DuckDB прямой заменой существующих заданий Spark без изменения входных или выходных интерфейсов. Эта совместимость позволяет осуществлять постепенную миграцию в зависимости от конкретного случая, предлагая аналогичный опыт разработки как локально, так и в удаленных средах, таких как Kubernetes.
Наконец, мы подробно рассмотрим сравнительный тест производительности DuckDB, Spark и Trino на наборе данных TPCDS объемом 100 ГБ. Результаты показывают, что для данных среднего размера DuckDB значительно быстрее и экономичнее, выполняя более половины запросов до того, как Spark завершит свой первый запрос, благодаря меньшим накладным расходам. Этот анализ подтверждает, что использование DBT с DuckDB является мощным и производительным решением для многих конвейеров обработки данных, оставляя Spark для действительно крупномасштабных или сложных задач обработки.
Смотрите видео с полной расшифровкой и дополнительными материалами: https://motherduck.com/videos/why-use...