从 Amazon Ion 文件中提取“数据”

Nos*_*uma 5 python amazon-s3 amazon-qldb amazon-ion

有人使用过 Amazon Quantum Ledger Database (QLDB) Amazon ion文件吗?如果是这样,您知道如何提取“数据”部分来制定表格吗?也许使用 python 来抓取数据?\n我试图从存储在 s3 中的这些文件中获取“数据”信息(我无权访问 QLDB,因此无法直接查询),然后将结果上传到 Glue 。

\n

我正在尝试使用 GLue 执行 ETL 作业,但 Glue 不喜欢 Amazon Ion 文件,因此我需要从这些文件中查询数据或抓取文件以获取相关信息。

\n

谢谢。\n\xc2\xa0\n PS \xc2\xa0:通过“数据”信息我的意思是:

\n
{\n    PersonId:"4tPW8xtKSGF5b6JyTihI1U",\n    LicenseNumber:"LEWISR261LL",\n    LicenseType:"Learner",\n    ValidFromDate:2016\xe2\x80\x9312\xe2\x80\x9320,\n    ValidToDate:2020\xe2\x80\x9311\xe2\x80\x9315\n}\n
Run Code Online (Sandbox Code Playgroud)\n

参考\xc2\xa0:https://docs.aws.amazon.com/qldb/latest/developerguide/working.userdata.html

\n

Aur*_*jee 7

您是否尝试过使用Amazon Ion库?

假设问题中提到的数据存在于名为“myIonFile.ion”的文件中,并且如果该文件中仅包含 ion 对象,我们可以按如下方式从文件中读取数据:

from amazon.ion import simpleion

file = open("myIonFile.ion", "rb")                    # opening the file
data = file.read()                                    # getting the bytes for the file
iondata = simpleion.loads(data, single_value=False)   # Loading as ion data
print(iondata['PersonId'])                            # should print "4tPW8xtKSGF5b6JyTihI1U"
Run Code Online (Sandbox Code Playgroud)

Ion Cookbook中提供了有关使用 ion 库的更多指导

此外,我不确定您的用例,但与 QLDB 交互也可以通过 QLDB驱动程序完成,该驱动程序直接依赖于 Ion 库。