python - Julia 可以连接到 S3/Athena 并使用 SQL 吗?
问题描述
是否可以运行一个类似 SQL 的脚本来从 AWS 的 S3/Athena 中提取 Julia 中的数据?我的 Julia 实例位于 AWS Sagemaker Jupyter Notebook 上。
在 SageMaker 中轻松使用 python:
import boto3
region = boto3.Session().region_name
from pyathena import connect
import pandas as pd
conn = connect(s3_staging_dir='s3://sagemaker-examplebucket/',
region_name = region)
df = pd.read_sql("""SELECT
something1,
something2
FROM "customer_data"."sagemaker_data"
WHERE
something = 0;""", conn)
对于我使用 Julia 的 SageMaker Notebook 实例,我可以连接并放置/获取现有文件,但我找不到任何允许新查询的东西,例如 Python 的 pyathena 库:
using AWS, AWSS3, Serialization
struct SampleData
a::Int
b::String
end
d=SampleData(1,"sss")
aws = global_aws_config(; region="us-west-2")
b = IOBuffer()
serialize(b, d)
s3_put(aws, "sagemaker-examplebucket","myfile.bin", b.data)
ddat = s3_get(aws, "sagemaker-examplebucket","myfile.bin")
d2 = deserialize(IOBuffer(ddat))
@assert d == d2
解决方案
推荐阅读
- python - 在列上滚动总和,同时按其他列和相对位置加权
- ios - iOS 14.2 将应用程序音频输出定向到耳机而不是底部扬声器
- google-maps - 将地址转换为 Google Maps Local Context 的坐标(地理编码 + Local Context Maps)
- javascript - jQuery-循环按钮在单击时添加活动类
- javascript - Javascript异步函数返回字符串而不是承诺
- javascript - onClick 函数需要两次点击才能更新状态
- flutter - SingleChildScrollView 的内容没有变成全高
- c - 如何用一个字符替换两个字符?
- sql - Sql ER图:产品与父母关系
- python - 如何使用python获得给定显着性水平的拒绝区域