使用Java库执行Elasticsearch SQL查询
Elasticsearch官方提供了一个名为JDBC的Java库,可以用来执行SQL查询。
使用该库,需要先在项目的pom.xml文件中添加以下依赖:
<dependency>
<groupId>org.elasticsearch.plugin</groupId>
<artifactId>x-pack-sql-jdbc</artifactId>
<version>7.14.1</version>
</dependency>
然后,可以使用JDBC连接字符串来连接Elasticsearch集群,并执行SQL查询。
例如:
import java.sql.*;
public class ElasticsearchSQLDemo {
public static void main(String[] args) {
String url = 'jdbc:es://http://localhost:9200/';
String sql = 'SELECT * FROM my_index WHERE age > 30';
try (Connection conn = DriverManager.getConnection(url);
Statement stmt = conn.createStatement()) {
ResultSet rs = stmt.executeQuery(sql);
while (rs.next()) {
String name = rs.getString('name');
int age = rs.getInt('age');
System.out.println(name + ', ' + age);
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
该程序会连接到本地的Elasticsearch集群,并执行一个SQL查询,输出满足条件的文档的姓名和年龄。
原文地址: https://www.cveoy.top/t/topic/mun0 著作权归作者所有。请勿转载和采集!