我正在尝试在AWS计算集群上使用Julia处理来自Amazon S3存储桶的数据。
如何在Julia中使用AWSS3.jl
打开与S3存储桶的连接?
特别是我想知道配置连接的最佳方法,以及随后如何从Julia使用该配置。
我正在尝试在AWS计算集群上使用Julia处理来自Amazon S3存储桶的数据。
如何在Julia中使用AWSS3.jl
打开与S3存储桶的连接?
特别是我想知道配置连接的最佳方法,以及随后如何从Julia使用该配置。
创建一个带有S3访问权限(尤其是PutObject
、GetObject
等)的AWS策略。
创建一个面向EC2的IAM角色,并将第一步中的策略添加到该角色中。
将IAM角色分配给EC2实例(或在为您的集群创建EC2实例时配置使用实例配置文件)。
现在您已准备好在Julia中完成工作。以下是一个简单的示例,将任何Julia对象序列化和反序列化到S3存储桶中。
using AWS, AWSS3, Serialization
struct SampleData
a::Int
b::String
end
d=SampleData(1,"sss")
aws = global_aws_config(; region="us-east-1")
b = IOBuffer()
serialize(b, d)
s3_put(aws, "your-s3-bucket-name","myfile.bin", b.data)
ddat = s3_get(aws, "your-s3-bucket-name","myfile.bin")
d2 = deserialize(IOBuffer(ddat))
@assert d == d2