2017-07-11 78 views
0

我們可以將Teradata遷移到Amazon DynamoDB嗎?我們可以將Teradata遷移到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.address我們有下面列

  • CUSTOMER_ID,customer_address,CUSTOMER_NAME

隨着CUSTOMER_ID或CUSTOMER_NAME的幫助我可以一次從所有三個表中獲取數據。

您是說我們無法在DynamoDB中實現此目的,因爲它是NoSQL數據庫。所以,如果我想從DynamoDB的所有三個表中獲取數據,我需要做什麼?

基於我們開發的項目,如果我們要從Teradata加載數據,我們需要將其加載到DynamoDB中,我們有維度表和事實表。我的問題是否可能?

幸運的是,我們也需要報告。

+0

你可能想要加載到Redshift中,不是嗎? – Henry

+0

是的,團隊正在研究@Henry,但我的任務是尋找第二個可以通過dynamodb實現的選項。 – sethu

+1

這就像要求替代飛機,但涉及一輛自行車。它根本不可行。是的,從技術上講,您可以在DynamoDB中擁有數據倉庫,但是您不必爲其構建遠程數據倉庫。非Redshift的替代方案是Athena,EMR/Hive,並且可能在DynamoDB上有一個EMR/Hive。 – Henry

回答

0

Amazon DynamoDB是NoSQL數據庫。

儘管您肯定可以將數據遷移到DynamoDB,但您無法對DynamoDB運行SQL命令。

傳統上,SQL數據庫(例如Teradata)用於報告。這是用簡單的命令翻閱大量數據的好方法。但是,查詢可能需要時間,從幾秒到幾分鐘不等。

NoSQL數據庫(如DynamoDB)不接受SQL。它通常以編程方式訪問。但是,它的好處是它具有高度可擴展性,並且可以提供有保證的查詢速度 - 但查詢只是簡單的Get/Put而不是複雜的查詢。

所以...是的,你可以遷移它。但是,你是否希望這樣做取決於你的用例。

+0

感謝你的回覆@john Rotenstein,需要小小的幫助..我有幾個更多的問題請好好回答我,這將幫助我很多.. – sethu

+0

1.so我們可以遷移teradata以dynamodb你能解釋我怎麼能夠遷移2.我們需要哪個工具喜歡將數據從teradata遷移到dynamo db 3.在dynamodb中是否存在連接...?如果沒有,我們需要如何定義一個表與另一個表之間的關係?假設我有「customer」表和「product」表,那麼我可以從dynamodb中的兩個表中獲取數據,就像我可以在sql中獲得的數據一樣? – sethu

+0

SQL數據庫是*關係數據庫*。 Amazon DynamoDB不是關係數據庫。因此,您無法定義表格之間的關係,並且一次只能從一個表格訪問數據。我可以問......爲什麼您要考慮遷移到DynamoDB?你能告訴我們更多關於你的用例嗎? (隨意編輯問題以添加詳細信息,而不是將其添加爲註釋。) –

相關問題