Hadoop 如何为DynamoDb Amazon控制台导出映射配置单元中的字段?
我正在尝试将DynamoDb导出文件加载到配置单元中,该文件是使用“导入/导出”工具从AmazonDynamodbWeb控制台获取的。但我无法正确映射字段,因为DynamoDB Web控制台“导出”工具使用的是“ETX”“STX”。Hadoop 如何为DynamoDb Amazon控制台导出映射配置单元中的字段?,hadoop,hive,amazon-dynamodb,elastic-map-reduce,amazon-emr,Hadoop,Hive,Amazon Dynamodb,Elastic Map Reduce,Amazon Emr,我正在尝试将DynamoDb导出文件加载到配置单元中,该文件是使用“导入/导出”工具从AmazonDynamodbWeb控制台获取的。但我无法正确映射字段,因为DynamoDB Web控制台“导出”工具使用的是“ETX”“STX”。 下面是以[LF]结尾的示例行 Elapsed[ETX]{"n":"1477"}[STX]Device[ETX]{"n":"3"}[STX]Date[ETX]{"s":"2014-03-05T12:13:00.852Z"}[STX]Duration[ETX]{"n":
下面是以[LF]结尾的示例行
Elapsed[ETX]{"n":"1477"}[STX]Device[ETX]{"n":"3"}[STX]Date[ETX]{"s":"2014-03-05T12:13:00.852Z"}[STX]Duration[ETX]{"n":"8075"}[LF]
对此的查询应该是什么
CREATE EXTERNAL TABLE IF NOT EXISTS TableNameHere (creationDate string, device bigint, duration bigint, elapsed bigint)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' ???This is where i got stuck???
LOCATION 's3://abcdefg/ino/2015-05-28_12.22';
更新
我已更新了查询,但它再次不起作用
用于STX的“\002”“\012”表示LF
CREATE EXTERNAL TABLE IF NOT EXISTS TableNameHere (creationDate string, device bigint, duration bigint, elapsed bigint)
ROW FORMAT DELIMITED FIELDS TERMINATED BY '\002'
LINES TERMINATED BY '\012'
LOCATION 's3://abcdefg/ino/2015-05-28_12.22';
查询的结果:
Elapsed{"n":"0"} Device{"n":"3"} Duration{"n":"1073876"} Date{"s":"2014-01-27T00:52:25.491Z"}
那么,现在我如何解析这些数据呢?我需要绘制地图。
我应该使用自定义SerDe吗?我想已经有了一个SerDe:这是我试图在hive中映射字段的格式:可以使用自定义SerDe吗?