探究Presto SQL引擎(1)-巧用Antlr
Source :
mp.weixin.qq.com
Author :
Shuai Guangying
自2014年大数据首次写入政府工作报告,大数据已经发展7年。大数据的类型也从交易数据延伸到交互数据与传感数据。数据规模也到达了PB级别。 大数据的规模大到对数据的获取、存储、管理、分析超出了传统数据库软件工具能力范围。在这个背景下,各种大数据相关工具相继出现,用于应对各种业务场景需求。从Hadoop生态的Hive, Spark, Presto, Kylin, Druid到非Hadoop生态的ClickHouse, Elasticsearch,不一而足... 这些大数据处理工具特性不同,应用场景不同,但是对外提供的接口或者说操作语言都是相似的,即各个组件都是支持SQL语言。只是基于不同的应用场景和特性,实现了各自的SQL方言。这就要求相关开源项目自行实现SQL解析。在这个背景下,诞生于1989年的语法解析器生成器ANTLR迎来了黄金时代。