有多个配置单元表,每个配置单元都有1米以上的记录。
通过连接多个表来运行相当复杂的查询。
希望使用logstash的输入插件将结果推送到弹性堆栈。
查询在ssh之后启动到其中一个边缘节点,因此不需要db用户名或密码。
在logstash教程中,我所能找到的只是如何在关系数据库中使用
jdbc
输入插件。
你知道如何为蜂巢做以上的工作吗?
配置单元查询:
/usr/bin/hive -S -i ~/hive/hiverc -f [file contains long query ]
Logstash配置:
input {
jdbc {
jdbc_driver_library => "mysql-connector-java-5.1.36-bin.jar"
#jdbc_driver_class => "com.mysql.jdbc.Driver"
#jdbc_connection_string => "jdbc:mysql://localhost:3306/mydb"
#jdbc_user => "mysql"
#parameters => { "favorite_artist" => "Beethoven" }
#schedule => "* * * * *"
statement => "[file contains long query ]"
}
}
引发的第一个错误是未声明JDBC用户名/输入。我没有。
第二,我非常肯定,如果没有一个合适的蜂巢驱动程序库,这将无法工作,我无法在Logstash网站上找到。
找到了一种方法,该方法使用创建一个ES表并将数据直接推送到它,但该方法完全绕过了logstash。
将在边缘节点上的本地目录下运行logstash