第 4 步:将数据加载到 HDFS - Amazon DynamoDB
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

第 4 步:将数据加载到 HDFS

在此步骤中,将数据文件复制到 Hadoop Distributed File System(HDFS),然后创建映射到数据文件的外部 Hive 表。

下载示例数据

  1. 下载示例数据存档 (features.zip):

    wget https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/samples/features.zip
  2. 解压缩存档中的 features.txt 文件:

    unzip features.zip
  3. 查看 features.txt 文件的前几行:

    head features.txt

    结果应与如下类似:

    1535908|Big Run|Stream|WV|38.6370428|-80.8595469|794 875609|Constable Hook|Cape|NJ|40.657881|-74.0990309|7 1217998|Gooseberry Island|Island|RI|41.4534361|-71.3253284|10 26603|Boone Moore Spring|Spring|AZ|34.0895692|-111.410065|3681 1506738|Missouri Flat|Flat|WA|46.7634987|-117.0346113|2605 1181348|Minnow Run|Stream|PA|40.0820178|-79.3800349|1558 1288759|Hunting Creek|Stream|TN|36.343969|-83.8029682|1024 533060|Big Charles Bayou|Bay|LA|29.6046517|-91.9828654|0 829689|Greenwood Creek|Stream|NE|41.596086|-103.0499296|3671 541692|Button Willow Island|Island|LA|31.9579389|-93.0648847|98

    features.txt 文件包含来自美国地名委员会的数据子集 (http://geonames.usgs.gov/domestic/download_data.htm)。每行中的字段代表以下内容:

    • 地形 ID(唯一标识符)

    • 名称

    • 类(湖泊、森林、溪流等)

    • 纬度(度)

    • 经度(度)

    • 高度(英尺)

  4. 在命令提示符处,输入以下命令:

    hive

    命令提示符更改为 hive>

  5. 输入下面的 HiveQL 语句,创建本机 Hive 表:

    CREATE TABLE hive_features (feature_id BIGINT, feature_name STRING , feature_class STRING , state_alpha STRING, prim_lat_dec DOUBLE , prim_long_dec DOUBLE , elev_in_ft BIGINT) ROW FORMAT DELIMITED FIELDS TERMINATED BY '|' LINES TERMINATED BY '\n';
  6. 输入下面的 HiveQL 语句,为表加载数据:

    LOAD DATA LOCAL INPATH './features.txt' OVERWRITE INTO TABLE hive_features;
  7. 现在,您有一个本机 Hive 表,其中填充 features.txt 文件的数据。要验证,请输入下面的 HiveQL 语句:

    SELECT state_alpha, COUNT(*) FROM hive_features GROUP BY state_alpha;

    输出应显示州列表以及每个州中的地理特征的数量。

下一步

第 5 步:将数据复制到 DynamoDB