问题标签 [amazon-athena]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
5318 浏览

amazon-web-services - AWS Athena - 如何参数化 SQL 查询

我想在 Select & Create table 语句中为查询提供运行时值。参数化 Athena SQL 查询的方法有哪些?我尝试使用Presto 的PREPARE&EXECUTE语句,但它在 Athena 控制台中不起作用。我们需要像 Python 这样的外部脚本来调用它吗?

0 投票
1 回答
3947 浏览

sql - 数据库表中多列的 Presto MD5 哈希

经过两个小时的反复试验,我面临着一个让我发疯的挑战......

我需要使用 presto 对关系表的至少两列进行哈希处理(实际上是使用使用 presto 引擎的 Amazon Athena)。

我现在的状态是这样的:

这样做的问题是,它首先对列进行哈希处理,然后将它们连接起来,最终看起来像这样,因为它连接了哈希:

而不是先连接字符串然后散列它应该像这样结束:

对于如何解决此问题的任何想法,我将不胜感激。

编辑:

我有一个解决方案,但仅在不使用 trim() 函数的情况下,查询不起作用并导致错误消息

INVALID_FUNCTION_ARGUMENT:必须有两个或多个串联参数

当前查询:

对此有什么想法吗?

0 投票
3 回答
11570 浏览

amazon-web-services - 如何从 Athena 获得过去一周的结果?

我正在使用 Amazon Athena 获取过去一周发生的所有控制台登录,现在无论数据如何,我都能够获取所有控制台登录。我需要修改以下查询,以便该查询始终获取上周发生的所有 aws 控制台登录。

事件时间看起来像“: 在此处输入图像描述

0 投票
2 回答
9849 浏览

amazon-web-services - Amazon Athena - S3 位置错误

在 S3 存储桶上运行 Amazon Athena 查询时出现以下错误。

我正在对 CloudFront 访问日志运行此查询。

返回错误:

0 投票
1 回答
140 浏览

python - PyAthenaJDBC 查询字符串格式问题

我正在尝试使用 PyAthenaJDBC 库来制作一个 python 脚本,该脚本将使用 Athena 查询 S3 存储桶。该库非常棒,但我遇到了格式问题。

我将查询构造为单独函数中的字符串,并将查询字符串传递回cursor.execute(query).

查询字符串中包含引号,如下所示:

这将导致 `LIKE '5%' 语句中的第二个单引号出现错误。

我可以通过更改库中的这一行来避免错误并成功执行查询https://github.com/laughingman7743/PyAthenaJDBC/blob/master/pyathenajdbc/formatter.py#L115

return (operation % kwargs).strip()return (operation).strip()代码中的这一点,operation == query(粘贴在上面)和kwargs == {}

我的具体问题是,我的查询结构是否不正确?或者这是我不了解本地字符串格式的东西,尝试用空字典替换是一个坏主意?

0 投票
1 回答
1220 浏览

node.js - 使用 Node Lambda 通过 JDBC 连接到 AWS Athena 时遇到问题

我的目标

我正在尝试使用AWS 的 JDBC 驱动程序来允许运行 Node 6.10 的 Lambda 函数连接到 AWS Athena 并创建数据库。(我还希望能够创建和查询该数据库内的表)。

我试过的

我从一个类似问题的答案中尝试了以下代码:

我看到的错误

当我在我自己的机器(Mac OSX El Capitan 10.11.6)上运行它时,我看到了下图所示的弹出窗口,消息No Java runtime present, requesting install.打印到我的控制台。

流行音乐

当我将代码部署到 Lambda 并在那里运行时,它会失败并显示以下消息:

Error: /var/task/node_modules/java/build/Release/nodejavabridge_bindings.node: invalid ELF header

在本地运行时,我可以看到事情在该var hsqldb = new JDBC(config);行失败,但是在 Lambda 上运行时,在需要 JDBC 时立即发生错误(上面代码的第一行)。

更新

这个invalid ELF header问题似乎表明该node_modules/java/build/Release/nodejavabridge_bindings.node文件是为与运行 AWS Lambda 的架构(Linux x64)不兼容的架构编译的。

这解释了在本地运行与在 Lambda 上运行时的行为差异。

我尝试使用node-gyp专门为 x64 架构编译资源,发现问题发生了变化,但没有解决。

我成功运行的 node-gyp 命令是node-gyp configure --arch=x64(在node_modules/java/目录内运行)

invalid ELF header在 Lambda 上运行时,我们现在看到的不是错误,而是一个module initialization error(请参阅下面的日志)

0 投票
1 回答
6119 浏览

amazon-web-services - AWS Athena 将来自嵌套 JSON 源的数据展平

我想从 Athena 中的嵌套 JSON 创建一个表。此处描述的解决方案使用 hive Openx-JsonSerDe 等工具尝试在 SQL 语句中镜像 JSON 数据。我只想从 JSON 文件中获取一些字段并创建表。我似乎找不到任何关于如何做到这一点的资源。

例如 JSON 文件{"records": [{"a": "data1", "b": "data2", "c": "data3"}]} 我想创建的表只有列ab

0 投票
4 回答
4449 浏览

amazon-web-services - 如何在 Athena 中使用具有不同结构的多个文件

我在 s3 存储桶目录中有多个文件(所有文件都在同一目录中)。所有文件都有不同的结构,例如如果一个文件有 4 列,那么第二个文件有 6 个不同的列。如何使用这些文件创建 Athena 表?

0 投票
1 回答
3264 浏览

json - Amazon Athena 在解析嵌套 JSON 时出现内部错误

我正在尝试查询这个 JSON 文件(出于调试目的,它只包含一行!):

我在 Amazon Athena 中创建了一个表:

当我运行此查询时:
select eventname from RAAIR;
一切正常。

当我尝试使用嵌套 JSON(params 元素)时:
select params['AdIsReady'] from RAAIR;
我收到“内部错误”消息。

我在这里想念什么?

0 投票
1 回答
1106 浏览

amazon-s3 - 在 Apache ORC 或 Apache Parquet 中将数据从 Aurora 迁移到 S3 的最简单方法

雅典娜看起来不错。

要在我们的规模上使用它,我们需要让它更便宜、性能更高,这意味着将我们的数据保存为 ORC 或 Parquet 格式。

将整个 Aurora 数据库迁移到 S3 并将其转换为其中一种格式的最简单方法是什么?

DMS 和 Data Pipeline 似乎可以让您在减去转换步骤的情况下到达那里......