本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
將資料新增至來源資料RDS庫,並在 Amazon Redshift 中進行查詢
若要完成將資料從 Amazon Amazon Redshift 的零ETL整合的建立,您必須在亞馬 Amazon Redshift 中建立一個目的地資料庫。
首先,連線到您的 Amazon Redshift 叢集或工作群組,並建立參考整合識別碼的資料庫。然後,您可以將資料新增到來源資料RDS庫 ,並在 Amazon Redshift 中查看已複寫的資料。
在 Amazon Redshift 中建立目的地資料庫
在建立整合之後,您必須在目標資料倉儲中建立目的地資料庫,然後才能開始將資料複寫到 Amazon Redshift。此目的地資料庫必須包含整合識別符的參考。您可以使用 Amazon Redshift 主控台或查詢編輯器第 2 版來建立資料庫。
如需建立目的地資料庫的指示,請參閱在 Amazon Redshift 中建立目的地資料庫。
將資料新增至來源資料庫資料
設定整合之後,您可以將一些資料新增至要複寫到 Amazon Redshift 資料倉儲的資料RDS庫 。
注意
Amazon Amazon Redshift 數據類型之間存在差異。如需資料類型映射的資料表,請參閱 RDS之間的資料類型差異。
首先,使用您選擇的 My SQL 用SQL戶端連線到來源資料庫資料庫。如需說明,請參閱 連線至執行 MySQL 資料庫引擎的資料庫執行個體。
然後,建立資料表並插入一列範例資料。
重要
請確定資料表具有主索引鍵。否則,無法將其複寫到目標資料倉儲。
下列範例使用 SQL「我的工作台」公用程式
CREATE DATABASE
my_db
; USEmy_db
; CREATE TABLEbooks_table
(ID int NOT NULL, Title VARCHAR(50) NOT NULL, Author VARCHAR(50) NOT NULL, Copyright INT NOT NULL, Genre VARCHAR(50) NOT NULL, PRIMARY KEY (ID)); INSERT INTObooks_table
VALUES (1, 'The Shining', 'Stephen King', 1977, 'Supernatural fiction');
在 Amazon 紅移中查詢您的亞馬遜 RDS 數據
將資料新增至資料RDS庫 之後,資料就會複寫到 Amazon Redshift,並可供查詢。
查詢複製的資料
-
導覽至 Amazon Redshift 主控台,然後從左側導覽窗格中選擇查詢編輯器第 2 版。
-
連線到您的叢集或工作群組,然後從下拉式功能表中選擇您已從整合中建立的目的地資料庫 (在此範例中為 destination_database)。如需建立目的地資料庫的指示,請參閱在 Amazon Redshift 中建立目的地資料庫。
-
使用SELECT陳述式來查詢您的資料。在此範例中,您可以執行下列命令,從您在來源資料RDS庫 中建立的表格中選取所有資料:
SELECT * from
my_db
."books_table
";-
是 RDS 資料庫結構描述名稱。my_db
-
是 A RDS 表名。books_table
-
您也可以使用命令列用戶端查詢資料。例如:
destination_database=# select * from
my_db
."books_table
"; ID | Title | Author | Copyright | Genre | txn_seq | txn_id ----+–------------+---------------+-------------+------------------------+----------+--------+ 1 | The Shining | Stephen King | 1977 | Supernatural fiction | 2 | 12192
注意
如需區分大小寫,請針對結構描述、資料表和資料欄名稱使用雙引號 (" ")。如需詳細資訊,請參閱 enable_case_sensitive_identifier。
RDS之間的資料類型差異
下表顯示「我的」SQL 表格的對應顯示「我」SQL 資料類型與對應的 Amazon Redshift 資料類型的對應。RDSRDSAmazon 目前僅支援這些資料類型進行零ETL整合。
如果來源資料庫資料庫中的資料表包含不受支援的資料類型,則表格不同步且不會被 Amazon Redshift 目標消耗。從來源到目標的串流會繼續進行,但是無法使用其中資料類型不受支援的資料表。若要修正資料表並使其可在 Amazon Redshift 中使用,您必須手動還原重大變更,然後執行 ALTER DATABASE...INTEGRATION
REFRESH
以重新整理整合。
RDS我的 SQL
RDS我的 SQL Aurora 我資料類型 | Amazon Redshift 資料類型 | 描述 | 限制 |
---|---|---|---|
INT | INTEGER | 帶正負號的 4 位元組整數 | |
SMALLINT | SMALLINT | 帶正負號的 2 位元組整數 | |
TINYINT | SMALLINT | 帶正負號的 2 位元組整數 | |
MEDIUMINT | INTEGER | 帶正負號的 4 位元組整數 | |
BIGINT | BIGINT | 帶正負號的 8 位元組整數 | |
INT UNSIGNED | BIGINT | 帶正負號的 8 位元組整數 | |
TINYINT UNSIGNED | SMALLINT | 帶正負號的 2 位元組整數 | |
MEDIUMINT UNSIGNED | INTEGER | 帶正負號的 4 位元組整數 | |
BIGINT UNSIGNED | DECIMAL(二零零) | 可選擇精確度 (有效位數) 的精確數值 | |
DECIMAL(p, s) = NUMERIC (p, s) | DECIMAL(p, s) | 可選擇精確度 (有效位數) 的精確數值 |
不支援大於 38 且大於 37 的精確度 |
DECIMAL(p, s) UNSIGNED = NUMERIC (p, s) UNSIGNED | DECIMAL(p, s) | 可選擇精確度 (有效位數) 的精確數值 |
不支援大於 38 且大於 37 的精確度 |
FLOAT4/REAL | REAL | 單精度浮點數 | |
FLOAT4/REAL UNSIGNED | REAL | 單精度浮點數 | |
DOUBLE/REAL/FLOAT8 | DOUBLE PRECISION | 雙精度浮點數 | |
DOUBLE/REAL/FLOAT8 UNSIGNED | DOUBLE PRECISION | 雙精度浮點數 | |
BIT(n) | VARBYTE(八) | 可變長度二進位值 | |
BINARY(n) | VARBYTE(n) | 可變長度二進位值 | |
VARBINARY(n) | VARBYTE(n) | 可變長度二進位值 | |
CHAR(n) | VARCHAR(n) | 可變長度字串值 | |
VARCHAR(n) | VARCHAR(n) | 可變長度字串值 | |
TEXT | VARCHAR(65535) | 可變長度字串值最多 65535 個位元組 | |
TINYTEXT | VARCHAR | 可變長度字串值最多 255 個位元組 | |
MEDIUMTEXT | VARCHAR(65535) | 可變長度字串值最多 65535 個位元組 | |
LONGTEXT | VARCHAR(65535) | 可變長度字串值最多 65535 個位元組 | |
ENUM | VARCHAR(1020) | 可變長度字串值最多 1020 個位元組 | |
SET | VARCHAR(1020) | 可變長度字串值最多 1020 個位元組 | |
DATE | DATE | 日曆日期 (年、月、日) | |
DATETIME | TIMESTAMP | 日期和時間 (未使用時區) | |
TIMESTAMP(p) | TIMESTAMP | 日期和時間 (未使用時區) | |
TIME | VARCHAR(十八) | 可變長度字串值最多 18 個位元組 | |
YEAR | VARCHAR(四) | 可變長度字串值最多 4 個位元組 | |
JSON | SUPER | 半結構化資料或文件作為值 |