【问题标题】:Query DynamoDB Data with EMR使用 EMR 查询 DynamoDB 数据
【发布时间】:2017-10-12 16:15:41
【问题描述】:

我正在寻找一种使用 amazon EMR 使用 SQL 语法查询 AWS DynamoDB 数据的方法。

我的 DynamoDB 表已设置好并准备就绪。如何使用 Hue 导入/查询数据? DynamoDB 中的表大小约为 8GB。

【问题讨论】:

    标签: amazon-web-services amazon-dynamodb elastic-map-reduce


    【解决方案1】:

    请按照以下步骤操作:-

    Hive 查询非实时 DynamoDB 数据:-

    1) 将数据从 DynamoDB 导出到 Hive

    请参阅下面的部分:在 EMR Hive 命令链接中从 DynamoDB 导出数据

    2) 使用 Amazon EMR 查询存储在 DynamoDB 中的数据

    请参阅以下部分:在 EMR Hive 命令中查询 DynamoDB 中的数据链接

    3) 使用 Hue 运行查询(即从 Hue 工作台运行 Hive 查询)

    EMR Hive Commands

    Hue Supported

    Hive 查询实时 DynamoDB:-

    1) 创建 Hive 表以映射到 DynamoDB 表

    http://docs.aws.amazon.com/emr/latest/ReleaseGuide/EMR_Interactive_Hive.html

    2) 创建 Hive 表并对其运行查询后,它将引用实时 DynamoDB 表以获取数据

    缺点:每次执行都会消耗 DynamoDB 读取或写入单元。换句话说,每次执行查询都会花费您。

    示例代码:-

    CREATE EXTERNAL TABLE hivetable1 (col1 string, col2 bigint, col3 array<string>)
    STORED BY 'org.apache.hadoop.hive.dynamodb.DynamoDBStorageHandler' 
    TBLPROPERTIES ("dynamodb.table.name" = "dynamodbtable1", 
    "dynamodb.column.mapping" = "col1:name,col2:year,col3:holidays"); 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-10-13
      • 1970-01-01
      • 2019-12-26
      • 1970-01-01
      • 2023-02-20
      • 2016-12-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多