group-telegram.com/data_math/785
Create:
Last Update:
Last Update:
🦆 Как использовать DuckDB с Python: практическое руководство по аналитике
DuckDB — это современная in-process аналитическая СУБД, разработанная как “SQLite для аналитики”. Она идеально подходит для обработки больших объёмов данных на локальной машине без необходимости поднимать сервер или использовать тяжёлые хранилища.
📦 Что делает DuckDB особенной?
- Работает как библиотека внутри Python (через `duckdb`)
- Поддерживает SQL-запросы напрямую к pandas DataFrame, CSV, Parquet, Arrow и другим источникам
- Оптимизирована под аналитические запросы: агрегации, группировки, фильтрации
- Мгновенно работает с большими файлами без предварительной загрузки
🧪 Пример рабочего сценария:
1️⃣ Чтение и анализ Parquet-файла:
import duckdb
duckdb.sql("SELECT COUNT(*), AVG(price) FROM 'data.parquet'")
2️⃣ Интеграция с pandas:
import pandas as pd
df = pd.read_csv("data.csv")
result = duckdb.sql("SELECT category, AVG(value) FROM df GROUP BY category").df()
3️⃣ Объединение нескольких источников:
duckdb.sql("""
SELECT a.user_id, b.event_time
FROM 'users.parquet' a
JOIN read_csv('events.csv') b
ON a.user_id = b.user_id
""")
🧠 Почему это важно:
- 📊 Вы можете использовать SQL и pandas одновременно
- 🚀 DuckDB быстрее pandas в большинстве аналитических задач, особенно на больших данных
- 🧩 Поддержка стандартов данных (Parquet, Arrow) даёт нативную интеграцию с экосистемой Data Science
- 🔧 Не требует настройки: просто установите через
pip install duckdb
🎯 Применения:
- Локальный анализ данных (до десятков ГБ) — без Spark
- Объединение таблиц из разных форматов (Parquet + CSV + DataFrame)
- Прототипирование ETL-пайплайнов и построение дашбордов
- Быстрая агрегация и отчёты по логам, BI-данным, IoT-стримам и пр.
📌 Советы:
- Используйте
read_parquet
, read_csv_auto
и from_df()
для гибкой загрузки данных - Результаты запросов можно конвертировать обратно в pandas через
.df()
- DuckDB поддерживает оконные функции,
GROUP BY
, JOIN
, UNION
, LIMIT
, подзапросы и многое другое — это полноценный SQL-движок🔗 Подробный гайд:
https://www.kdnuggets.com/integrating-duckdb-python-an-analytics-guide
#DuckDB #Python #DataScience #Analytics #SQL #Pandas #Parquet #BigData
BY Математика Дата саентиста
Warning: Undefined variable $i in /var/www/group-telegram/post.php on line 260
Share with your friend now:
group-telegram.com/data_math/785