连接弹性搜索,如jdbc url

时间:2017-10-24 10:15:09

标签: elasticsearch jdbc

我可以管理这个:
以类似于jdbc的方式连接到我的elasticsearch服务器,如:

url="jdbc:mysql://192.168.11.11:6673/my_db?characterEncoding=utf8"

3 个答案:

答案 0 :(得分:1)

Connection conn = 
    DriverManager.getConnection("jdbc:elasticsearch:user=myuseraccount;password=mypassword;");

boolean ret = stat.execute("SELECT * FROM DocumentDB");
ResultSet rs=stat.getResultSet();
while(rs.next()){
  for(int i=1;i<=rs.getMetaData().getColumnCount();i++)
  {
    System.out.println(rs.getMetaData().getColumnName(i) +"="+rs.getString(i));
  }
}

这是一个例子 参阅(&#39; https://www.cdata.com/drivers/elasticsearch/jdbc/&#39)

答案 1 :(得分:0)

不,你原来不能,elasticsearch只有HTTP API或传输API。

有一些驱动程序允许这样做,或者你可以使用类似Spark Thrift的东西作为JDBC网关使用官方插件elastic4hadoop,这样你就可以通过Spark查询针对elasticsearch的SQL。

答案 2 :(得分:0)

  

Elasticsearch's SQL JDBC driver   是用于Elasticsearch的丰富,功能齐全的JDBC驱动程序。它是一种   4驱动程序,这意味着它是独立于平台的,独立的,直接   数据库,用于将JDBC调用转换为Elasticsearch的纯Java驱动程序   SQL。

     

安装

     

可以从以下位置获取JDBC驱动程序:

     

专用页面
  elastic.co   提供通常用于手动下载的链接。
  Maven依赖
  Maven兼容   工具可以自动将其作为依赖项进行检索:

<dependency>
  <groupId>org.elasticsearch.plugin</groupId>
  <artifactId>x-pack-sql-jdbc</artifactId>
  <version>7.0.0-alpha2</version>
</dependency>
     

从artifacts.elastic.co/maven中添加到存储库列表中:

<repositories>
  <repository>
    <id>elastic.co</id>
    <url>https://artifacts.elastic.co/maven</url>
  </repository>
</repositories>

来源: SQL JDBC Elasticsearch | Reference