我们可以将Teradata迁移到DynamoDB吗?

时间:2017-07-11 05:32:24

标签: amazon-web-services amazon-dynamodb

我们可以将Teradata迁移到Amazon DynamoDB吗?

比如我在Teradata中有table_1,我需要在DynamoDB中创建相同的表table_1,我需要将数据从Teradata table_1移动到dynamodb table_1。这是我能做到的吗?

说我在Teradata下面有这个表。我可以在DynamoDB中创建它吗?我可以将数据从Teradata移动到DynamoDB吗?

CREATE SET TABLE FDM_TABLES_DB.OA3NF_CUSTOMER ,
NO FALLBACK ,
     NO BEFORE JOURNAL,
     NO AFTER JOURNAL,
     CHECKSUM = DEFAULT,
     DEFAULT MERGEBLOCKRATIO
     (
      CUSTOMER_ID DECIMAL(18,0) NOT NULL,
      CUSTOMER_NAME VARCHAR(360) CHARACTER SET LATIN CASESPECIFIC,
      CUSTOMER_TYPE_CD VARCHAR(30) CHARACTER SET LATIN CASESPECIFIC NOT NULL,
      OA_LAST_UPDATE_DTTM TIMESTAMP(6) FORMAT 'YYYY-MM-DDHH:MI:SS',
      OA_YEAR_ESTABLISHED DECIMAL(4,0),
      OA_CUSTOMER_STATUS_CD VARCHAR(10) CHARACTER SET LATIN CASESPECIFIC NOT NULL,
      OA_CUST_FISCAL_YEAREND_MONTH VARCHAR(30) CHARACTER SET LATIN CASESPECIFIC,
      CUSTOMER_NUMBER VARCHAR(30) CHARACTER SET LATIN CASESPECIFIC)
PRIMARY INDEX OA3NF_CUSTOMER_1 ( CUSTOMER_ID );

我们之前做过CBS(哥伦比亚广播系统)项目。

在此项目中,我们使用Informatica PowerCenter将数据从Oracle迁移到Teradata。客户端现在正在寻求将数据移动到AWS,我的经理要求我检查是否可以将数据从Teradata迁移到DynamoDB?如果是,我们如何才能实现它?

例如,我在Teradata中有3个表:

  1. 客户名下的客户

    • Customer_id,customer_name
  2. 我们在列以下产品下的产品

    • product_id,product_name,customer_name
  3. 3.地址表下的地址我们在列

    之下
    • customer_id,customer_address,customer_name

    在customer_ID或Customer_name的帮助下,我可以一次从所有三个表中获取数据。

    你说我们无法在DynamoDB中实现这一点,因为它是NoSQL数据库。那么,如果我想从DynamoDB中的所有三个表中获取数据,我需要做什么?

    根据我们开发的项目,我们有维度表和事实表,如果我们想要从Teradata加载数据我们需要将它加载到DynamoDB我的问题是否可能?

    幸运的是我们也需要报告。

1 个答案:

答案 0 :(得分:0)

Amazon DynamoDB是NoSQL数据库。

虽然您肯定可以将数据迁移到DynamoDB,但您无法对DynamoDB运行SQL命令。

传统上,SQL数据库(例如Teradata)用于报告。这是通过简单命令来处理大量数据的好方法。但是,查询可能需要几秒钟到几分钟的时间。

NoSQL数据库(如DynamoDB)不接受SQL。它通常以编程方式访问。然而,好处是它具有高度可扩展性并且可以提供有保证的查询速度 - 但查询只是Get / Put而不是复杂的查询。

所以......是的,你可以迁移它。但是,您是否希望这样做取决于您的用例。