我曾经传递以下格式的文件路径,以将数据文件从s3存储桶导入到H2O流(版本3.18.0.10):
importFiles ["s3a://ACCESS KEY:SECRET KEY@parvin-us-west1-data/Prod/154351418084_train/"]
更新到版本 3.22.0.2 后,出现以下错误,并且文件路径相同。
Error calling GET /3/ImportFiles?path=s3a%3A%2F%2ACCESS KEY%3SECRET KEY%40parvin-us-west1-data%2FProd%2F154351418084_train%2F
--------------------
HTTP connection failure: status=error, code=500, error=Server Error
--------------------
现在看来,它期望使用不同的s3文件路径格式,是否有任何有关如何将带有凭据的s3文件路径传递到最新版本的h2o的文档?
更改配置后,我可以导入文件。运行importfile单元后,将显示以下内容。
但是,当我按“解析这些文件”时,它将显示具有以下内容的新单元格,但没有任何进展:
页面底部也显示“ Requesting / 3 / ParseSetup”,但什么也没有发生。即使20分钟后它也没有给出超时错误。
终端日志的最后一行是: 1283#71051-12信息:发布/ 3 / ParseSetup,参数:{source_frames = [“ s3a://parvin-us-west1-data/Prod/154351418084_train/data.csv”]}
有关版本(3.18.0.10)的注释,没有出现此问题:
在按下“解析这些文件”之后: 它会在单元格中提示以下信息:
setupParse source_frames:[“ s3a://访问密钥:秘密密钥@ parvin-us-west1-data / Prod / 154351418084_train / data.csv”]
区别在于它还包含url的凭据部分。
更新:
我还尝试了以独立模式启动h2o(使用core-site.xml传递凭据)。 即使在这种情况下,导入文件后也无法解析文件。
答案 0 :(得分:1)
文件格式应该相同(请参阅文章底部的选项3),我进行了快速测试,并使用importFiles [ "s3a://<AWS_ACCESS_KEY>:<AWS_SECRET_KEY>@bucket/path/to/file.csv" ]
对我有用。
我会检查您的连接是否良好,群集状态以及是否可以通过其他任何方式访问文件。
这是H2O running in standalone mode当前文档的内容,您也可以转到此链接查看多节点模式:
使用简单的Java启动命令以独立模式运行H2O时,我们可以通过两种方式传递S3凭据。
您可以通过创建core-site.xml文件并使用-hdfs_config标志将其以独立模式传递。有关示例core-site.xml文件,请参阅Core-site.xml。
<property>
<name>fs.s3.awsAccessKeyId</name>
<value>[AWS SECRET KEY]</value>
</property>
<property>
<name>fs.s3.awsSecretAccessKey</name>
<value>[AWS SECRET ACCESS KEY]</value>
</property>
通过在命令行中输入以下内容来启动配置文件core-site.xml:
java -jar h2o.jar -hdfs_config core-site.xml
使用importFile
和S3 URL路径s3://bucket/path/to/file.csv
导入数据。您可以在Flow,R或Python的S3 URL中传递Minio Access Key和Secret Access Key(其中AWS_ACCESS_KEY代表您的用户名,AWS_SECRET_KEY代表您的密码)。
要从Flow API导入数据,请执行以下操作:
importFiles [ "s3://<AWS_ACCESS_KEY>:<AWS_SECRET_KEY>@bucket/path/to/file.csv" ]