2017-09-04 6 views
0

EU地域でHive & DynamoDBを使用しているときに問題が発生します。Hive - DynamoDBのエクスポートはヨーロッパでは機能しませんか?

私のテストケースは、次のとおり

  • ハイブバージョン - 2.3.0 EU-中央1
  • DynamoDBのテーブル - test_input EU-中央1

ハイブスクリプト:

CREATE EXTERNAL TABLE raw_data (id STRING, parent_id STRING, value STRING) 
    STORED BY "org.apache.hadoop.hive.dynamodb.DynamoDBStorageHandler" 
    TBLPROPERTIES (
     "dynamodb.table.name" = "test_input", 
     "dynamodb.region"="eu-central-1", 
     "dynamodb.column.mapping" = "id:id,value:value,parent_id:parent_id" 
    ); 

実行スクリプトの後に私は得る:

FAILED:実行エラー、org.apache.hadoop.hive.ql.exec.DDLTaskからコード1を返します。 java.lang.RuntimeException:DynamoDBでtest_inputテーブルを参照できませんでした。

古いトレッドhttps://forums.aws.amazon.com/thread.jspa?messageID=326618によると、私はそれを解決するために多くのステップを試みました。 追加後: SET dynamodb.endpoint = dynamodb.eu-central-1.amazonaws.com。 再度同じエラーが発生します。

私も追加してみました:

<property> 
    <name>dynamodb.endpoint</name> 
    <value>dynamodb.eu-central-1.amazonaws.com</value> 
    <description>DynamoDB endpoint</description> 
</property> 

を/etc/hive/conf/hive-default.xmlと/etc/hive/conf/hive-site.xmlするには。それでも同じ結果が出ます。 私は成功せず、解決策を見つけるためにインターネットを検索:(

任意のアイデアそれを解決する方法を/etc/hadoop/conf/core-site.xmlに追加することで解決

答えて

1

:?

<property> 
    <name>fs.s3.awsAccessKeyId</name> 
    <value>Key</value> 
</property> 
<property> 
    <name>fs.s3.awsSecretAccessKey</name> 
    <value>Secret</value> 
</property> 

これだけが必要ですが、EMRでは役割の代わりにこのアカウントを使用します。

関連する問題