1个不稳定版本

0.0.1 2020年9月19日

#16 in #poc

自定义许可

1MB
2.5K SLoC

这是用Rust重写OctoSQL的正在进行中的实验性原型,因为我看到了使用更优化的设计带来的10-100倍的性能提升。

路线图

当前的路线图是实现与OctoSQL的Go版本的功能一致性。当完成这项工作后,我们将决定保留哪一个。

  • 投影
  • 过滤器
  • 分组
    • 抛光
  • 触发器
    • 计数
    • 延迟
  • 撤回
    • 将撤回添加到投影(不允许用户删除撤回列)
  • 流连接
    • 浮点支持(目前未测试,可能存在问题)
  • 表达式
    • 在记录上下文中进行评估。
    • 在变量的执行上下文中进行评估(如果我们处于子查询中,我们需要理解当前的记录以及来自上方记录流的变量)
  • 映射(评估表达式,这是在OctoSQL中评估表达式的唯一地方,其他所有内容都通过名称从这里传递表达式)
  • 水印
    • 元数据和处理
    • 水印触发器
    • 水印生成器
      • 从最大差异开始
  • 洗牌
  • 子查询
    • 处理所有原始类型
    • 处理多列/多行(元组值)
  • 查找连接
  • 物理计划(适用于模式匹配)
    • 基本优化器
    • 向下推投影
    • 向下推过滤器
  • 逻辑计划
  • SQL
    • 时间扩展
  • 漂亮的输出打印
  • 数据源
    • CSV
    • MySQL
    • PostgreSQL
    • JSON
    • Parquet
    • Excel
    • Kafka
  • 支持持续时间日期

贡献

欢迎贡献!

请当您想要尝试贡献时打开一个问题或亲自联系我,这样就不会有重复的工作或被丢弃的工作。

依赖关系

~31MB
~694K SLoC