2
我在我的雲中的S3存儲桶中使用包含某些數據的CSV文件。使用Hive創建DynamoDB表
我想將這些數據導出到帶有「key」和「value」列的DynamoDB表中。
這裏是目前蜂巢劇本我寫了:
CREATE EXTERNAL TABLE FromCSV(key string, value string)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ', '
LOCATION 's3://mybucket/output/';
CREATE EXTERNAL TABLE hiveTransfer(col1 string, col2 string)
STORED BY 'org.apache.hadoop.hive.dynamodb.DynamoDBStorageHandler'
TBLPROPERTIES ("dynamodb.table.name" = "InvertedIndex",
"dynamodb.column.mapping" = "col1:key,col2:value");
INSERT OVERWRITE TABLE hiveTransfer SELECT * FROM FromCSV;
現在,基本上劇本的作品。儘管我想對此腳本做如下修改:
1)腳本只在DynamoDB中已存在表「InvertedIndex」的情況下有效,我希望腳本自行創建新表,然後將其數據就像它已經做的那樣。
2)在CSV中,鍵總是一個字符串,但我有2種值,字符串或整數。我希望腳本區分兩者並製作兩個不同的表格。
任何有關這兩項修改的幫助都將受到關注。 謝謝
迪諾,非常感謝你:)!你能給我寫一個我需要的第二種查詢的例子嗎? (也許根據我的腳本)... – DanielY
SELECT * from FromCSV WHERE value RLIKE'[0-9] +' –
聽起來不錯謝謝你dino :) – DanielY