Завтра стрим с Владимиром Перепелицей
Уже завтра, 6-го ноября в 18:00 MSK состоится очередная Q&A сессия. На этот раз у нас в гостях Владимир Перепелица, эксперт в больших проектах, cоздатель S3 в облаке VK, Solution Architect в Exness, бессменный автор и ведущий одного их самых популярных курсов Devhands - интенсива по очередям (Kafka, NATS и др.).
Обсудим:
- Kafka 4: какие принципиальные изменения принес этот релиз? Поменялось ли что-то в Кафке в плане HA и катастрофо-устойчивости?
- Действительно ли с ростом производительности железа и возможностей облаков наступает конец хайлоада as we know it? Какие инженерные знания сейчас наиболее востребованы?
А так же многие другие вопросы (преимущественно по брокерам и очередям), которые мы собираем в клубе выпускников Devhands и в комментариях к этому посту.
Встреча состоится в Zoom в четверг 6-ноября 18:00 MSK. Встреча свободна, но нужно быть авторизованным в Zoom.
Можно добавить ics в календарь.
Приходите, приводите друзей! И присылайте ваши вопросы в комментарии.
Уже завтра, 6-го ноября в 18:00 MSK состоится очередная Q&A сессия. На этот раз у нас в гостях Владимир Перепелица, эксперт в больших проектах, cоздатель S3 в облаке VK, Solution Architect в Exness, бессменный автор и ведущий одного их самых популярных курсов Devhands - интенсива по очередям (Kafka, NATS и др.).
Обсудим:
- Kafka 4: какие принципиальные изменения принес этот релиз? Поменялось ли что-то в Кафке в плане HA и катастрофо-устойчивости?
- Действительно ли с ростом производительности железа и возможностей облаков наступает конец хайлоада as we know it? Какие инженерные знания сейчас наиболее востребованы?
А так же многие другие вопросы (преимущественно по брокерам и очередям), которые мы собираем в клубе выпускников Devhands и в комментариях к этому посту.
Встреча состоится в Zoom в четверг 6-ноября 18:00 MSK. Встреча свободна, но нужно быть авторизованным в Zoom.
Можно добавить ics в календарь.
Приходите, приводите друзей! И присылайте ваши вопросы в комментарии.
Полезные ссылки про данные, технологии и не только:
- A Deep Dive into DuckDB for Data Scientists о том как дата сайентистам использовать DuckDB. Если коротко, то всё довольно просто и понятно.
- ClickHouse welcomes LibreChat: Introducing the open-source Agentic Data Stack Clickhouse поглотил LibreChat, инструмент с открытым кодом для создания ИИ чатботов. Инструмент был хороший, надеюсь таким и останется.
- Hannes Muhleisen - Data Architecture Turned Upside Down отличное выступление Hannes Muhleisen про ключевые изменения в архитектуре данных последних лет. Полезно и по смыслу и по визуальному представлению хорошо
- agor: Next-gen agent orchestration for AI coding ИИ агент для управления ИИ кодированием, автор его создатель Superset и позиционирует этот проект как думай об асситентах для кодирования как о Figma. С открытым. кодом. Любопытно, но ИМХО автор плохо объясняет преимущества, как подхода, так и интерфейса.
- A Deep Dive into DuckDB for Data Scientists о том как дата сайентистам использовать DuckDB. Если коротко, то всё довольно просто и понятно.
- ClickHouse welcomes LibreChat: Introducing the open-source Agentic Data Stack Clickhouse поглотил LibreChat, инструмент с открытым кодом для создания ИИ чатботов. Инструмент был хороший, надеюсь таким и останется.
- Hannes Muhleisen - Data Architecture Turned Upside Down отличное выступление Hannes Muhleisen про ключевые изменения в архитектуре данных последних лет. Полезно и по смыслу и по визуальному представлению хорошо
- agor: Next-gen agent orchestration for AI coding ИИ агент для управления ИИ кодированием, автор его создатель Superset и позиционирует этот проект как думай об асситентах для кодирования как о Figma. С открытым. кодом. Любопытно, но ИМХО автор плохо объясняет преимущества, как подхода, так и интерфейса.
CodeCut
A Deep Dive into DuckDB for Data Scientists
Discover how DuckDB simplifies data querying with zero configuration and outperforms pandas for large datasets.
- quackstore расширение для DuckDB для кеширования облачных дата файлов, позволяет сильно ускорить выполнение запросов к облачным файлам благодаря их частичному сохранению. Полезная штука, её можно бы и сразу внутрь DuckDB ибо логично
- Catalog of Patterns of Distributed Systems для тех разработчиков кто хотят не только кодировать, но и двигаться в сторону архитектуры ПО.
- The Data Engineering Agent is now in preview Гугл запустили ИИ агента для дата инженеров внутри BigQuery, конечно же на базе Gemini. Дайте мне такой же только с открытым кодом и без инфраструктуры Google и с поддержкой всех основных инструментов и СУБД!
- Catalog of Patterns of Distributed Systems для тех разработчиков кто хотят не только кодировать, но и двигаться в сторону архитектуры ПО.
- The Data Engineering Agent is now in preview Гугл запустили ИИ агента для дата инженеров внутри BigQuery, конечно же на базе Gemini. Дайте мне такой же только с открытым кодом и без инфраструктуры Google и с поддержкой всех основных инструментов и СУБД!
GitHub
GitHub - coginiti-dev/QuackStore
Contribute to coginiti-dev/QuackStore development by creating an account on GitHub.
Если хотели поиграться с trino iceberg и minio, тот вот репозиторий с docker compose настройками.
Можно провалиться в кишки таблицы iceberg на s3, ну и посмотреть на логику работы trino в ui.
Для развертывания трино необходим новый тип CPU, не везде может запуститься. Но в крайнем случае можно VPS арендовать на время 😉
https://github.com/ivanshamaev/trino-iceberg-minio
#trino #iceberg #minio
Можно провалиться в кишки таблицы iceberg на s3, ну и посмотреть на логику работы trino в ui.
Для развертывания трино необходим новый тип CPU, не везде может запуститься. Но в крайнем случае можно VPS арендовать на время 😉
https://github.com/ivanshamaev/trino-iceberg-minio
#trino #iceberg #minio
GitHub
GitHub - ivanshamaev/trino-iceberg-minio: Тестовый проект по Trino + Iceberg + Rest Catalog + Minio s3
Тестовый проект по Trino + Iceberg + Rest Catalog + Minio s3 - ivanshamaev/trino-iceberg-minio
Основные идеи Apache Iceberg одной картинкой
1 Метаданные важнее данных. Может лежать много паркетов, но если нет их описания в манифестах, то никто их читать не будет
2 Древовидная структура данных и метаданных, сходящаяся к одному корневому файлу. Записать и удалить много файлов - не-атомарная операция, но заменить один главный файл можно атомарно всегда в любой системе хранения. Отсюда почти-транзакционность.
3 Хранение предыдущих состояний, таблица превращается в лог состояний с возможностью прочитать любую точку в истории. Но только старые версии надо потом подчищать через обсуживающие процедуры.
4 (Мета)Каталог как вспомогательный сервис. Для MVCC и честного ACID, для хранения статистики, RBAC и других обслуживающих функций
1 Метаданные важнее данных. Может лежать много паркетов, но если нет их описания в манифестах, то никто их читать не будет
2 Древовидная структура данных и метаданных, сходящаяся к одному корневому файлу. Записать и удалить много файлов - не-атомарная операция, но заменить один главный файл можно атомарно всегда в любой системе хранения. Отсюда почти-транзакционность.
3 Хранение предыдущих состояний, таблица превращается в лог состояний с возможностью прочитать любую точку в истории. Но только старые версии надо потом подчищать через обсуживающие процедуры.
4 (Мета)Каталог как вспомогательный сервис. Для MVCC и честного ACID, для хранения статистики, RBAC и других обслуживающих функций
Как устроена работа Iceberg на примере Trino и Rest Catalog?
Iceberg - это табличный формат хранения данных в datalake, который управляется через библиотеку на Java (есть также реализации на Go, Rust, C++ и Python). Но базово работает через Java.
В статье кратко рассматривается как устроено Trino и как устроен Iceberg Java API (без погружения в разработку).
Ну и ссылочки на deepwiki по Iceberg/Trino/Rest Catalog.
https://ivan-shamaev.ru/how-iceberg-works-using-trino-and-rest-catalog/
Iceberg - это табличный формат хранения данных в datalake, который управляется через библиотеку на Java (есть также реализации на Go, Rust, C++ и Python). Но базово работает через Java.
В статье кратко рассматривается как устроено Trino и как устроен Iceberg Java API (без погружения в разработку).
Ну и ссылочки на deepwiki по Iceberg/Trino/Rest Catalog.
https://ivan-shamaev.ru/how-iceberg-works-using-trino-and-rest-catalog/
Персональный блог Data Engineer | Ex-TeamLead BI Developer
Как устроена работа Iceberg на примере Trino и Rest Catalog?
В статье 5 Things in Data Engineering That Have Changed In The Last 10 Years автор поделился как поменялась индустрия (западная) за последние 10 лет.
1) Компании хотят только сеньоров
Команды сильно сократились, и бизнес требует быстрых результатов → поэтому нанимают в основном опытных инженеров + AI-копилоты усилили продуктивность сеньоров. Джуниорам сложнее входить.
Это произошло в последние 2-3 года. Никому не нужны малыши без опыта. Все хотят опытных людей, чтобы пришли и сразу решали конкретные задачи. В больших компаниях еще сохранилась возможность пройти стажировку и прийти сразу с универа. Но надо, чтобы универ был топчик. Все кто ходят на курсы - мимо. Поэтому мой подход прийти seniorом без опыта выглядит особенно привлекательно в текущих реалиях. Улучшений в будущем для данной ситуации не видно. Специалисты и эксперты в ИТ появляются как грибы. Доступность образования и реклама успешных айтишников в Дубаях и на Патриках делает свое дело.🚶♀️ Все хотят хорошую зарплату и удаленную работу, но места на всех не хватит.😞
2) Cloud стал дефолтом
Раньше облако было опцией, сейчас — стандарт. Все мигрируют: Snowflake, BigQuery, Databricks. Почти никто не строит аналитику он-прем.
Полностью согласен. Я могу открыть любую вакансию в Северной Америке, Южной Америке, Европе, Австралии и тп, и там будет облако и MPP облачное хранилище с вероятностью 95%. Хотя недавно познакомился с инженером, кто пришел к нам из Comcast. Он рассказал, что у них был свой дата центр и он ставил Kafka на bare metal. Ну красавчик, только получает в несколько раз меньше.🏆
3) Перестали писать кастомные пайплайны
10 лет назад везде были самописные ETL на cron/SSIS/python скриптах. Сейчас сразу используют готовые инструменты: Airflow, dbt, EventBridge, Coalesce, etc. Нужно быстрее приносить ценность, а не строить платформу с нуля.
Доступность инструментов low-code/no-code очень сильно упрощают работу. Можно фокусироваться на бизнес проблемах и ценностях, а не трабалшуить legacy/technical debt код. Хотя уже с развитием AI IDE уже все превращается в no-code/low code. Главное базу знать и понимать основу и свою ценность для бизнеса.
4) SQL победил
Споры между SQL vs что-то ещё закончились — SQL стал универсальным стандартом. Job-market требует SQL практически везде. dbt усилил этот тренд.
Если ваш продукт не поддерживает SQL, то у вас плохой продукт. SQL наше все. Хотя некоторые аналитики обожают Pandas, и пишут что-то в своих ноутбуках. А потом инженерам нужно все это разгребать.🙅♂️
5) AI изменил рабочие процессы
AI ускоряет работу, но создаёт риск «движения вместо прогресса»: люди меньше понимают код, больше копипастят из LLM. Выигрывают те, кто умеет совмещать AI + инженерное мышление.
100% все поменялось. Я общаюсь со многими командами и вижу, что люди на самом деле не очень сильно используют все возможности. Большинство не любят перемен и не умеют учиться быстро и эффективно. Когда говорят, что AI заменит людей, чаще всего имеют в виду тех, кто не хочет или не умеет учиться. Сейчас настоящий FOMO в AI и очень важно смотреть куда дует ветер и стараться использовать в работе AI и собирать полезные use cases для вашей индустрии и вашей специализации.
Самое главное, что произошло за 10 лет, то это обесценивание денег, повышение налогов, снижение покупательной способности, отмена job security, и отсутствие стабильности.
1) Компании хотят только сеньоров
Команды сильно сократились, и бизнес требует быстрых результатов → поэтому нанимают в основном опытных инженеров + AI-копилоты усилили продуктивность сеньоров. Джуниорам сложнее входить.
Это произошло в последние 2-3 года. Никому не нужны малыши без опыта. Все хотят опытных людей, чтобы пришли и сразу решали конкретные задачи. В больших компаниях еще сохранилась возможность пройти стажировку и прийти сразу с универа. Но надо, чтобы универ был топчик. Все кто ходят на курсы - мимо. Поэтому мой подход прийти seniorом без опыта выглядит особенно привлекательно в текущих реалиях. Улучшений в будущем для данной ситуации не видно. Специалисты и эксперты в ИТ появляются как грибы. Доступность образования и реклама успешных айтишников в Дубаях и на Патриках делает свое дело.
2) Cloud стал дефолтом
Раньше облако было опцией, сейчас — стандарт. Все мигрируют: Snowflake, BigQuery, Databricks. Почти никто не строит аналитику он-прем.
Полностью согласен. Я могу открыть любую вакансию в Северной Америке, Южной Америке, Европе, Австралии и тп, и там будет облако и MPP облачное хранилище с вероятностью 95%. Хотя недавно познакомился с инженером, кто пришел к нам из Comcast. Он рассказал, что у них был свой дата центр и он ставил Kafka на bare metal. Ну красавчик, только получает в несколько раз меньше.
3) Перестали писать кастомные пайплайны
10 лет назад везде были самописные ETL на cron/SSIS/python скриптах. Сейчас сразу используют готовые инструменты: Airflow, dbt, EventBridge, Coalesce, etc. Нужно быстрее приносить ценность, а не строить платформу с нуля.
Доступность инструментов low-code/no-code очень сильно упрощают работу. Можно фокусироваться на бизнес проблемах и ценностях, а не трабалшуить legacy/technical debt код. Хотя уже с развитием AI IDE уже все превращается в no-code/low code. Главное базу знать и понимать основу и свою ценность для бизнеса.
4) SQL победил
Споры между SQL vs что-то ещё закончились — SQL стал универсальным стандартом. Job-market требует SQL практически везде. dbt усилил этот тренд.
Если ваш продукт не поддерживает SQL, то у вас плохой продукт. SQL наше все. Хотя некоторые аналитики обожают Pandas, и пишут что-то в своих ноутбуках. А потом инженерам нужно все это разгребать.
5) AI изменил рабочие процессы
AI ускоряет работу, но создаёт риск «движения вместо прогресса»: люди меньше понимают код, больше копипастят из LLM. Выигрывают те, кто умеет совмещать AI + инженерное мышление.
100% все поменялось. Я общаюсь со многими командами и вижу, что люди на самом деле не очень сильно используют все возможности. Большинство не любят перемен и не умеют учиться быстро и эффективно. Когда говорят, что AI заменит людей, чаще всего имеют в виду тех, кто не хочет или не умеет учиться. Сейчас настоящий FOMO в AI и очень важно смотреть куда дует ветер и стараться использовать в работе AI и собирать полезные use cases для вашей индустрии и вашей специализации.
Самое главное, что произошло за 10 лет, то это обесценивание денег, повышение налогов, снижение покупательной способности, отмена job security, и отсутствие стабильности.
Please open Telegram to view this post
VIEW IN TELEGRAM
Substack
5 Things in Data Engineering That Have Changed In The Last 10 Years
What Will Change Next?
👍1
Forwarded from Evgeniy Rasyuk
Всем привет .
небольшая полезняшка для тех кто делает в вебе self-bi
- sqlite + wasm+ все файловые форматы + общее пространство для загруженных датасетов
https://habr.com/ru/articles/972646/
небольшая полезняшка для тех кто делает в вебе self-bi
- sqlite + wasm+ все файловые форматы + общее пространство для загруженных датасетов
https://habr.com/ru/articles/972646/
Хабр
Запускаем C++ SQL-движок в браузере: как парсить Excel, CSV и Parquet через WebAssembly (без сервера)
Современный фронтенд давно перестал быть просто "лицом" приложения. Мы переносим в браузер нейросети, обработку видео и криптографию. Но когда дело доходит до банальной аналитики файлов — например,...
👍1🔥1
Google обновили Magika инструмент для идентификации типов файлов в зависимости от содержимого. Пишут что теперь он поддерживает более 200 форматов файлов (ранее было 100), полностью переписан на Rust и работает существенно быстрее. Можно обратить внимание что многие из упомянутых новыз форматов файлов это файлы с данными npz, pytorch, parquet, h5 и файлы кода zig, dart, kotlin и тд. Фактически Magika это альтернатива идентификации типа файла по расширению и альтернатива magic (утилита идентификации файлов в Unix-подобных операционных системах) и утилитам Siegfried и DROID используемых цифровыми архивистами.
Выглядит полезно, надо пробовать. Прошлая версия, как я помню, давала какое-то количество ложнопозитивных результатов, возможно в этом направлении тоже есть прогресс.
Как минимум области применения тут в задачах цифровой архивации, работы с разного рода унаследованными материалами, в цифровой форенсике и еще много в чем.
Что характерно Magika занимается команда Security research в Google, а то есть можно предполагать что основное применение это, все же, цифровая форенсика.
Из интересного, разработчики пишут что чтобы обучить Magika они использовали 3-х террабайтный несжатый датасет.
В целом видно что над проектом работает группа ИИ инженеров, но не методистов и это сопутствующий продукт их работы потому что иначе они бы начали с реестра типов mime и расширений в который собрали бы метаданные из PRONOM и пары других крупных реестров форматов файлов.
Выглядит полезно, надо пробовать. Прошлая версия, как я помню, давала какое-то количество ложнопозитивных результатов, возможно в этом направлении тоже есть прогресс.
Как минимум области применения тут в задачах цифровой архивации, работы с разного рода унаследованными материалами, в цифровой форенсике и еще много в чем.
Что характерно Magika занимается команда Security research в Google, а то есть можно предполагать что основное применение это, все же, цифровая форенсика.
Из интересного, разработчики пишут что чтобы обучить Magika они использовали 3-х террабайтный несжатый датасет.
В целом видно что над проектом работает группа ИИ инженеров, но не методистов и это сопутствующий продукт их работы потому что иначе они бы начали с реестра типов mime и расширений в который собрали бы метаданные из PRONOM и пары других крупных реестров форматов файлов.
Googleblog
Announcing Magika 1.0: now faster, smarter, and rebuilt in Rust
Data Ingestion Patterns: When to Use Push, Pull, and Poll (With Real Examples)
Полезный пост в блоге Dagster о трёх фундаментальных паттернах ingest, которые должен знать каждый data engineer:
Push: Когда source-системы сами присылают данные тебе
Pull: Когда ты контролируешь извлечение
Poll: Когда нужно near real-time без полноценного стриминга
У каждого свои trade-offs по контролю, сложности и операционным нагрузкам.
В посте разбирают, когда какой использовать, с рабочими примерами кода на Dagster.
Также есть проект, где все три паттерна работают вживую.
Полезный пост в блоге Dagster о трёх фундаментальных паттернах ingest, которые должен знать каждый data engineer:
Push: Когда source-системы сами присылают данные тебе
Pull: Когда ты контролируешь извлечение
Poll: Когда нужно near real-time без полноценного стриминга
У каждого свои trade-offs по контролю, сложности и операционным нагрузкам.
В посте разбирают, когда какой использовать, с рабочими примерами кода на Dagster.
Также есть проект, где все три паттерна работают вживую.
dagster.io
Data Ingestion Patterns: Push, Pull & Poll Explained | Dagster
Learn when to use push, pull, and poll data ingestion patterns with practical code examples in Dagster. Build reliable, scalable data pipelines with the right pattern for your use case.
Всем привет !
Небольшой анонс (я знаю вам давно не хватало очередного BI 😂😇)
Есть очень интересный повод для того что бы попробовать табличный редактор Р7- Офис , сейчас только для него существует решение , которое реализует концепцию не SelfBi, a Personal Bi
- Слайдер Данные
Здесь есть сочетания функциональных возможностей, которые обычно можно встретить только для серверных решений
и в различных продуктах
видео
windows trial
Небольшой анонс (я знаю вам давно не хватало очередного BI 😂😇)
Есть очень интересный повод для того что бы попробовать табличный редактор Р7- Офис , сейчас только для него существует решение , которое реализует концепцию не SelfBi, a Personal Bi
- Слайдер Данные
Здесь есть сочетания функциональных возможностей, которые обычно можно встретить только для серверных решений
и в различных продуктах
Подключаться и выполнять запросы / выгрузки и к реляционным и многомерным базам данных
Консолидировать информацию из различнх файлов табличного формата (от CSV до Avro )
Создавать OLAP модели данных над реляционными источниками c поддержкой MDX
Организовывать виртуальную федеративную базу данных для гетерогенных объединяющих SQL запросов
Анализировать потоки данных (Data Linage) между подзапросами
Создавать SQL запросы , используя визуальные конструктуры
Параметризовать SQL и MDX/DAX выгрузки
Выгружать данные во внешние файлы , минуя табличный редактор
Сравнивать и анализировать XLS файлы
* а вы еще не видели наш роадмап )
видео
windows trial
Rosetta DBT Studio
The Open Source IDE for dbt Core
Создавайте, тестируйте и управляйте проектами dbt Core с лёгкостью.
Rosetta DBT Studio предлагает мощный графический интерфейс для запуска трансформаций, интеграции с Git и поддержки нескольких баз данных — всё в одном месте.
The Open Source IDE for dbt Core
Создавайте, тестируйте и управляйте проектами dbt Core с лёгкостью.
Rosetta DBT Studio предлагает мощный графический интерфейс для запуска трансформаций, интеграции с Git и поддержки нескольких баз данных — всё в одном месте.
rosettadb.io
RosettaDB - Software company
RosettaDB The open source bridge for data migration and warehousing.
В чем устройство LakeHouse и отличие от баз данных?
В этом году чаще слышу о LakeHouse и мыслях его внедрить.
В чем основная суть:
1. Слой хранения выносим отдельно от слоя вычисления -> в s3
2. Формат хранения - универсальный (parquet например)
3. Поверх одного хранилища запускаем разные табличные движки
Похожее произошло с вычислениями пару лет назад с приходом связки kubernetes/s3. Компании смогли динамически аллоцировать ресурсы и за счет этого снизить требования к индивидуальным серверам (правда потом LLM все опять перевернули с ног на голову из-за требований к nvlink и infiniband)
Решил написать пост, наткнувшись на видео от сооснователя DuckLake (для нас интересно до 24 минуты, дальше про DuckLake).
Об естественных особенностях такого решения:
➕ Удобно и гибко
1. Много движков, да и свой обработчик легко написать
2. Если движок поддерживает s3/parquet - не нужно писать коннекторы
3. Вычислительные ресурсы можно переиспользовать в рамках кластера (serverless для вычислений)
4. Наверное, будет устаревать плавнее, за счет модульности. То есть заменили движок/инструмент и вроде снова в тренде, не выкидывая всю систему целиком.
➕ Дешевле
1. Не нужно закупать вычислительные сервера под хранение
2. Ниже цена ошибки. Можно заранее думать только о серверах хранения, а для вычислений переиспользовать общие пулы ресурсов
3. Если движок поддерживает s3/parquet - не нужно перекладывать и дублировать данные между инструментами команд
➖ Сильно медленнее чем классические базы данных
Да, именно так, а что вы хотели?
1. Ходите всегда по сети за данными*, у вас буквально абстракция s3 и нет возможностей выполнить условный map локально на сервере хранения. А значит всегда ограничены 10-20Gbit/s сети.
2. Вынуждены каждый раз парсить файл заново. А обычная база может хранить на диске layout как в памяти и просто делать memmap.
➖ Тяжело
Раньше вы поднимали один продукт и настраивали. Тут продукт растащили на несколько независимых инструментов. На масштабе выгодно, для старта - тяжело (тут ситуация на kubernetes похожа)
*Да, вы можете оптимизировать формат хранения (parquet -> Vortex, F3, FastLanes, Nimble) и минимизировать s3 чтения.
Да, вы можете придумать кэши, но тогда появится база под метаданные. Туда в итоге и движемся. Но, повторю, это не то же самое, что прочитать с локального диска и пройтись по файлу. Джордан в видео заявляет х2-10 замедление от баз.
В этом году чаще слышу о LakeHouse и мыслях его внедрить.
В чем основная суть:
1. Слой хранения выносим отдельно от слоя вычисления -> в s3
2. Формат хранения - универсальный (parquet например)
3. Поверх одного хранилища запускаем разные табличные движки
Похожее произошло с вычислениями пару лет назад с приходом связки kubernetes/s3. Компании смогли динамически аллоцировать ресурсы и за счет этого снизить требования к индивидуальным серверам (правда потом LLM все опять перевернули с ног на голову из-за требований к nvlink и infiniband)
Решил написать пост, наткнувшись на видео от сооснователя DuckLake (для нас интересно до 24 минуты, дальше про DuckLake).
Об естественных особенностях такого решения:
1. Много движков, да и свой обработчик легко написать
2. Если движок поддерживает s3/parquet - не нужно писать коннекторы
3. Вычислительные ресурсы можно переиспользовать в рамках кластера (serverless для вычислений)
4. Наверное, будет устаревать плавнее, за счет модульности. То есть заменили движок/инструмент и вроде снова в тренде, не выкидывая всю систему целиком.
1. Не нужно закупать вычислительные сервера под хранение
2. Ниже цена ошибки. Можно заранее думать только о серверах хранения, а для вычислений переиспользовать общие пулы ресурсов
3. Если движок поддерживает s3/parquet - не нужно перекладывать и дублировать данные между инструментами команд
Да, именно так, а что вы хотели?
1. Ходите всегда по сети за данными*, у вас буквально абстракция s3 и нет возможностей выполнить условный map локально на сервере хранения. А значит всегда ограничены 10-20Gbit/s сети.
2. Вынуждены каждый раз парсить файл заново. А обычная база может хранить на диске layout как в памяти и просто делать memmap.
Раньше вы поднимали один продукт и настраивали. Тут продукт растащили на несколько независимых инструментов. На масштабе выгодно, для старта - тяжело (тут ситуация на kubernetes похожа)
*Да, вы можете оптимизировать формат хранения (parquet -> Vortex, F3, FastLanes, Nimble) и минимизировать s3 чтения.
Да, вы можете придумать кэши, но тогда появится база под метаданные. Туда в итоге и движемся. Но, повторю, это не то же самое, что прочитать с локального диска и пройтись по файлу. Джордан в видео заявляет х2-10 замедление от баз.
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
DuckLake: Learning from Cloud Data Warehouses to Build a Robust “Lakehouse” (Jordan Tigani)
CMU Database Group - Future Data Systems Seminar Series (Fall 2025)
Speaker: Jordan Tigani (https://www.linkedin.com/in/jordantigani)
October 6, 2025
https://db.cs.cmu.edu/seminars/fall2025/#db3
Sponsors: Google DAPA Team (https://google.com)
Speaker: Jordan Tigani (https://www.linkedin.com/in/jordantigani)
October 6, 2025
https://db.cs.cmu.edu/seminars/fall2025/#db3
Sponsors: Google DAPA Team (https://google.com)