本篇主要介绍了一种使用Rust语言编写的查询引擎——DataFusion,其使用了基于Arrow格式的内存模型,结合Rust语言本身的优势,达成了非常优秀的性能指标DataFusion是一个查询引擎而非数据库,因此其本身不具备存储数据的能力。但正因为不依赖底层存储的格式,使其成为了一个灵活可扩展的查询引擎。它原生支持了查询CSV,Parquet,Avro,Json等存储格式,也支持了本地,AWS S3,Azure Blob Storage,Google Cloud Storage等多种数据源。同时还提供了丰富的扩展接口,可以方便的让我们接入自定义的数据格式和数据源。
主要涉及DFParser和SqlToRel这两个struct
主要涉及LogicalPlan和Expr这两个枚举类
主要涉及PyhsicalPlanner这个trait实现的逻辑计划到物理计划的转换,其中主要的关键点是ExecutionPlan和PhysicalExpr
主要涉及所有执行算子,如GroupedHashAggregateStream扩展点
欢迎光临 IT评测·应用市场-qidao123.com (https://dis.qidao123.com/) | Powered by Discuz! X3.4 |