如何使用Ruby连接Amazon Athena并通过Amazon Athena执行查询并获得结果。
我们无法找到任何宝石或示例,帮助我们在ruby中连接Amazon Athena。
请提供我们可以用来与Amazon Athena建立连接的任何refrance,并在ruby中构建自定义查询exector。
只是为了将我的应用程序用于生产,所以将SDK更改为Ruby到JRuby不适合我。
答案 0 :(得分:1)
Per May 19th 2017,Amazon Athena支持通过SDK和CLI执行查询。我已经用Python试过了。升级到最新的SDK后,Ruby也应该可用。
http://docs.aws.amazon.com/sdkforruby/api/Aws/Athena/Client.html
答案 1 :(得分:0)
JRuby是必需的。 Athena仅提供JDBC驱动程序。它仅适用于JRE。
答案 2 :(得分:0)
如果使用JRuby是不可接受的,还有另一种选择可行 - 但要注意它不是100%Ruby!
您可以设置一个Java Lambda function,它封装查询逻辑,接收搜索参数,然后使用JDBC驱动程序直接连接到Athena。
然后从Ruby调用Lambda函数 - 通过HTTP或通过Ruby client。
答案 3 :(得分:0)
使用Lambda函数是一个不错的选择,但是如果有人不喜欢支付额外的服务金额,那么使用Java中的休息服务使用sql查询作为参数和响应文本作为输出(您的首选格式)将使用jetty来实现小应用程序你可以继续前进。
答案 4 :(得分:0)
我发现雅典娜的官方Amazon SDK有点复杂,所以我制作了一个名为Athens的新宝石,将SDK封装在一个更好的界面中:
conn = Athens::Connection.new(database: 'sample')
query = conn.execute("SELECT * FROM mytable")