Elasticsearch的JDBC驱动sql4es

Elasticsearch的JDBC驱动sql4es

  • 开源协议:Apache
  • 操作系统: Windows Linux OS X
  • 开发语言:Java
  • 项目所有者:Anchormen
  • 收录时间:2017-01-18
  • 分享:
编辑评级
3

项目详细介绍

sql4es,即 Sql-for-Elasticsearch,是 Elasticsearch 的 JDBC 驱动程序。用于 Elasticsearch 2.0 - 2.4 版本实现大多数 JDBC 接口:Connection、Statement、PreparedStatment、ResultSet、Batch 和 DataBase- / ResultSetMetadata。


用法

可以通过将jar文件(位于项目的releases目录中)添加到所使用的工具/应用中并加载名为 “nl.anchormen.sql4es.jdbc.ESDriver” 的驱动程序来使用 sql4es 驱动。驱动程序需要具有以下格式的URL:jdbc:sql4es:// host:port / index?params。

host:es主机的主机名或ip主机(必需)
port:可选传输客户端使用的端口号(默认为9300)
index:在驱动程序中设置活动的可选索引。
params:用于影响驱动程序内部的可选参数集(指定其他主机,在单个请求中获取的最大文档数等)。

// register the driver and get a connection for index 'myidx'
Class.forName("nl.anchormen.sql4es.jdbc.ESDriver");
Connection con = DriverManager.getConnection("jdbc:sql4es://localhost:9300/myidx?cluster.name=your-cluster-name");
Statement st = con.createStatement();
// execute a query on mytype within myidx
ResultSet rs = st.executeQuery("SELECT * FROM mytype WHERE something >= 42");
ResultSetMetaData rsmd = rs.getMetaData();
int nrCols = rsmd.getColumnCount();
// get other column information like type
while(rs.next()){
    for(int i=1; i<=nrCols; i++){
        System.out.println(rs.getObject(i));
    }
}
rs.close();
con.close();

标签:sql4es