用户指南

特性

师成师成· 更新于 2026-09-28· 阅读 6 分钟· 0 次阅读

登录后可跨设备保存划线和私人笔记登录

功能特性

通用

  • SQL 解析器
  • SQL 查询规划器
  • DataFrame API
  • 并行查询执行
  • 流式执行

优化

  • 查询优化器
  • 常量折叠
  • 连接重排序
  • LIMIT 下推
  • 投影下推
  • 谓词下推

SQL 支持

  • 类型强制转换

  • 投影(SELECT)

  • 过滤(WHERE)

  • 聚合后过滤(HAVING)

  • 排序(ORDER BY)

  • 限制返回行数(LIMIT)

  • 聚合(GROUP BY)

  • cast /try_cast

  • VALUES 列表

  • 字符串函数

  • 条件函数

  • 时间与日期函数

  • 数学函数

  • 聚合函数(SUM、MEDIAN 等等)

  • 元数据查询

    • SHOW TABLES
    • SHOW COLUMNS FROM <table/view>
    • SHOW CREATE TABLE <view>
    • 基础 SQL 信息模式(TABLES、VIEWS、COLUMNS)
    • 完整的 SQL 信息模式 支持
  • 支持嵌套类型(ARRAY/LIST 和 STRUCT)

  • 子查询

  • 公用表表达式(CTE)

  • 集合运算(UNION [ALL]、INTERSECT [ALL]、EXCEPT[ALL])

  • 连接(INNER、LEFT、RIGHT、FULL、CROSS)

  • 窗口函数

    • 空窗口(OVER())
    • 分区与排序:(OVER(PARTITION BY <..> ORDER BY <..>))
    • 自定义窗口(ORDER BY time ROWS BETWEEN 2 PRECEDING AND 0 FOLLOWING))
    • 用户自定义窗口与聚合函数
  • 目录(Catalog)

    • 模式(CREATE / DROP SCHEMA)
    • 表(CREATE / DROP TABLE、CREATE TABLE AS SELECT)
  • 数据插入

    • INSERT INTO
    • COPY .. INTO ..
    • CSV
    • JSON
    • Parquet
    • Avro

运行时

  • 流式分组
  • 流式窗口计算
  • 强制内存限制
  • 溢出(写入磁盘)排序
  • 溢出(写入磁盘)分组
  • 溢出(写入磁盘)归并连接
  • 溢出(写入磁盘)哈希连接

数据源

除了通过 TableProvider 特性支持任意数据源之外,DataFusion 还内置了对以下格式的支持:

  • CSV

  • Parquet

    • 原始类型与嵌套类型
    • 基于最小值/最大值统计信息的行组与数据页裁剪
    • 基于布隆过滤器的行组裁剪
    • 谓词下推(延迟物化)默认未启用
  • JSON

  • Avro

  • Arrow

评论

登录后参与评论

正在加载评论…