DeepSeek AI представила Smallpond — облегчённую платформу для обработки данных на базе DuckDB и 3FS

Новости

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

DeepSeek AI releases Smallpond

DeepSeek AI недавно выпустила Smallpond, облегчённую платформу для обработки данных, построенную на базе DuckDB и 3FS. Smallpond стремится расширить эффективные, in-process SQL аналитики DuckDB в распределённой среде. Сочетая DuckDB с 3FS — высокопроизводительной распределённой файловой системой, оптимизированной для современных SSD и RDMA сетей, Smallpond предлагает практическое решение для обработки больших наборов данных без сложности долгосрочных сервисов или значительных инфраструктурных затрат.

Технические детали и преимущества

Smallpond разрабатывалась для бесшовной работы с Python, поддерживая версии от 3.8 до 3.12. Её принцип основывается на простоте и модульности. Пользователи могут быстро установить фреймворк через pip и начать обработку данных с минимальной настройкой. Важной особенностью является возможность ручного разделения данных. Независимо от того, разбивка происходит по количеству файлов, количеству строк или конкретному хешу столбца, эта гибкость позволяет пользователям адаптировать обработку к данным и инфраструктуре.

Под капотом Smallpond использует DuckDB для своей надёжной, нативной производительности выполнения SQL-запросов. Фреймворк также интегрируется с Ray для обеспечения параллельной обработки на распределённых вычислительных узлах. Это сочетание не только упрощает масштабирование, но и гарантирует, что рабочие нагрузки могут быть эффективно выполнены across multiple nodes. Кроме того, избегая постоянных сервисов, Smallpond снижает операционные затраты, обычно связанные с распределёнными системами.

Установка Smallpond

  • Поддерживается Python версии с 3.8 по 3.12.
  • Установка: pip install smallpond

Начало работы со Smallpond

  • Скачайте пример данных: wget https://duckdb.org/data/prices.parquet
  • Импортируйте Smallpond и инициализируйте сеанс: import smallpond и sp = smallpond.init()
  • Загрузите данные: df = sp.read_parquet("prices.parquet")
  • Обработайте данные:
    • Перераспределение данных: df = df.repartition(3, hash_by="ticker")
    • Выполнение SQL-запросов: df = sp.partial_sql("SELECT ticker, min(price), max(price) FROM {0} GROUP BY ticker", df)
    • Сохранение результатов: df.write_parquet("output/")
    • Вывод результатов: print(df.to_pandas())

Производительность и откровения

В тестах производительности с использованием бенчмарка GraySort, Smallpond продемонстрировала свою способность сортировать 110,5 ТиБ данных за чуть более 30 минут, достигая среднего пропускного показателя 3,66 ТиБ в минуту. Эти результаты иллюстрируют, насколько эффективно фреймворк использует комбинированные сильные стороны DuckDB и 3FS как для вычислений, так и для хранения. Такие показатели производительности обеспечивают уверенность в том, что Smallpond может удовлетворить потребности организаций, работающих с терабайтами и до петабайтов данных. Открытость проекта также подразумевает, что пользователи и разработчики могут сотрудничать в области дальнейших оптимизаций и адаптации фреймворка к различным случаям использования.

Заключение

Smallpond — это взвешенный, но значимый шаг вперёд в распределённой обработке данных. Она решает ключевые проблемы, расширяя доказанную эффективность DuckDB в распределённой среде с поддержкой высокоскоростных возможностей 3FS. С акцентом на простоту, гибкость и производительность, Smallpond предлагает практичный инструмент для учёных данных и инженеров, занимающихся обработкой больших наборов данных. Как открытый проект, он приглашает к участию и постоянному улучшению сообщества, что делает его ценным дополнением к современным наборам инструментов инженерии данных. Независимо от управления умеренными наборами данных или масштабирования до операций уровня петабайтов, Smallpond предоставляет надёжный фреймворк, который является как эффективным, так и доступным.

admin
Оцените автора
CheatGPT
Добавить комментарий