首页 > 解决方案 > 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

标签: pythonamazon-web-servicesamazon-s3julia

解决方案


推荐阅读