Apache Calcite原理解析(2):Avatica服务层
1、Avatica概述
Avatica是一个数据库服务管理框架,用户可以通过实现它提供的接口,接入不同的数据库。Avatica的实现主要分为两个方面:1、实现JDBC协议;2、实现对RPC通信协议的管理。Avatica是 Apache Calcite 的一个子项目,支持通过 HTTP 协议进行数据库操作。在Calcite中Avatica组件的作用主要分为四点:
1、接受客户端的SQL请求;
2、校验提交用户的配置信息(用户名和密码、权限校验);
3、将SQL请求转发给Calcite-core模块;
4、封装结果请求并返回;
Avatica的提交方式如下图所示: