Daft s3 集成试用
daft 支持不少存储数据的访问,以下是关于s3的一个简单试用
环境准备
- docker-compose
services:
minio:
image: minio/minio
command: server /data --console-address ":9001"
ports:
- 9000:9000
- 9001:9001
environment:
MINIO_ACCESS_KEY: minio
MINIO_SECRET_KEY: minio123
代码集成
- app.py
import daft
from daft.io import IOConfig, S3Config
from daft.sql import SQLCatalog
# 此处基于了IOConfig自定义s3 io 配置
io_config = IOConfig(s3=S3Config(key_id="minio",region_name="us-east-1",access_key="minio123", endpoint_url="http://localhost:9000",num_tries=10))
df = daft.read_csv("s3://demo/demo.csv",io_config=io_config)
# 通过SQLCatalog 配置catalog 信息
sql_catalog = SQLCatalog({"mydemo":df})
# 基于sql 查询
result_df = daft.sql("SELECT * FROM mydemo where age>22",catalog=sql_catalog)
print(result_df.collect())
- 效果
说明
daft 提供的不少能力实际与duckdb 是类似的,但是相比duckdb 来说有多了集群能力,当前sql 能力暂时还不如duckdb 强大,但是值得学习试用下
参考资料
https://github.com/Eventual-Inc/Daft
https://15721.courses.cs.cmu.edu/spring2024/slides/
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
2024-02-01 dremio vectorized Parquet Reader v2 支持
2024-02-01 nginx-go-crossplane nginx 配置解析包试用
2023-02-01 mtools mongo 日志分析的利器
2023-02-01 nginx agent 来自官方的nginx 配置管理&监控方案
2022-02-01 Building a Sync Engin
2022-02-01 grouparoo 基于nodejs 的开源反向ETL 工具
2022-02-01 Castled 源码解析 - container 模块说明