[英]Does Apache Calcite provide a way to add custom clauses or statements?
我目前正在開發一個項目來擴展SQL的功能,以支持基於Apache Flink的更多流計算功能。
經過廣泛的搜索后,我發現Calcite是一個很好的工具,可以幫助我解析,驗證和優化這些SQL查詢,但是Calcite的流支持仍然不成熟,所以我必須根據自己的需要進行改進。
因此,我想知道是否有一種方法可以添加自定義子句
CREATE TABLE my_table (
id bigint,
user varchar(20)
) PARAMS (
connector 'kafka',
topic 'my_topic'
)
它使用PARAMS定義如何從Kafka連接器接收數據,並將其視為動態表作為Flink的數據源。
由於關於此的信息很少,如果有人能提供一些提示,我將不勝感激。
謝謝 : )
在最新版本(2017年12月11日,1.15.0)之前,Apache Calcite不支持DDL語句,例如CREATE TABLE
或DROP TABLE
。 原因是
SELECT和DML是標准化的,但DDL往往是特定於數據庫的,因此我們的策略是在Calcite之外進行DDL擴展。
(參見Calcite dev郵件列表 )。
使用Calcite 1.15.0,社區添加了對DDL語句的基本支持 。 該功能作為可選模塊實現,並顯示了如何自定義DDL語句(請參閱文檔 )。 因此,仍然期望使用Calcite的系統根據需要自定義解析器和DDL語法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.