【问题标题】:Not able to read HDF5 file present in S3 in sagemaker notebook instance无法读取 sagemaker 笔记本实例中 S3 中存在的 HDF5 文件
【发布时间】:2022-02-25 20:31:35
【问题描述】:

我的目录结构如下:bucket-name/training/file.hdf5

我尝试通过此代码单元在 sagemaker 笔记本实例中读取此文件:

bucket='bucket-name'
data_key = 'training/file.hdf5'
data_location = 's3://{}/{}'.format(bucket, data_key)
hf = h5py.File(data_location, 'r')

但它给了我错误:

Unable to open file (unable to open file: name = 's3://bucket-name/training/file.hdf5', errno = 2, error message = 'No such file or directory', flags = 0, o_flags = 0)

我也尝试过pd.read_hdf(data_location),但没有成功。

尝试从同一键将 csv 文件读入数据帧不会引发错误。

感谢任何帮助。谢谢

【问题讨论】:

    标签: amazon-s3 hdf5 amazon-sagemaker


    【解决方案1】:

    感谢您在这里提问!

    您的文件位于远程存储服务 Amazon S3 上。字符串data_location 不是本地文件的名称,因此您的数据阅读器无法打开它。它为了读取 S3 文件,有 2 个选项:

    • 使用可以从 S3 读取文件的库。好像是h5py can do that,如果你指定driver='ros3'

    • 或者,您也可以将文件从 S3 带到您的机器,然后从机器中读取。例如,使用 AWS CLI 将文件从 S3 带到本地 aws s3 cp s3://<your bucket>/<your file on s3> /home/ec2-user/SageMaker/ 然后 File(data_location='/home/ec2-user/SageMaker/your-file-name.hdf5') 应该可以工作

    【讨论】:

      猜你喜欢
      • 2018-10-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-21
      • 2021-08-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多