AWS Data Pipeline は新規顧客には利用できなくなりました。の既存のお客様は、通常どおりサービスを AWS Data Pipeline 引き続き使用できます。詳細はこちら
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon RDS から Amazon Redshift へのテンプレート
以下の 2 つのテンプレートでは、変換スクリプトを使用して、Amazon RDS MySQL から Amazon Redshift にテーブルをコピーします。変換スクリプトでは、ソーステーブルのスキーマを使用して Amazon Redshift テーブルが作成されます。以下の点に注意してください。
- 
                        
分散キーを指定しなかった場合は、Amazon RDS テーブルの最初のプライマリキーが分散キーとして設定されます。
 - 
                        
Amazon Redshift へのコピーを実行するときに、Amazon RDS MySQL のテーブルにある列を省略することはできません。
 - 
                        
(オプション) テンプレートに含まれるパラメータの 1 つとして、Amazon RDS MySQL から Amazon Redshift への列データ型マッピングを指定することができます。指定した場合、スクリプトではこれを使用して Amazon Redshift テーブルが作成されます。
 
Overwrite_Existing Amazon Redshift 挿入モードが使用されている場合、次のようになります。
- 
                        
分散キーを指定しなかった場合は、Amazon RDS MySQL テーブルのプライマリキーが使用されます。
 - 
                        
テーブルに複合プライマリキーが存在し、分散キーが指定されていない場合は、最初の複合プライマリキーが分散キーとして使用されます。Amazon Redshift テーブルでは、最初の複合キーのみがプライマリキーとして設定されます。
 - 
                        
分散キーが指定されず、Amazon RDS MySQL テーブルにプライマリキーが存在しない場合、コピー操作は失敗します。
 
Amazon Redshift の詳細については、次のトピックを参照してください。
- 
                        
Amazon Redshift COPY
 
次の表では、スクリプトでデータ型がどのように変換されるかを示しています。
| MySQL のデータ型 | Amazon Redshift のデータ型 | Notes (メモ) | 
|---|---|---|
| 
                                     TINYINT, TINYINT (size)  | 
                                SMALLINT | 
                                     MySQL: -128 ~ 127。最大桁数を括弧内に指定できます。 Amazon Redshift: INT2。符号付き 2 バイト整数  | 
                            
| 
                                     TINYINT UNSIGNED、 TINYINT (size) UNSIGNED  | 
                                SMALLINT | 
                                     MySQL: 0 ~ 255 UNSIGNED。最大桁数を括弧内に指定できます。 Amazon Redshift: INT2。符号付き 2 バイト整数  | 
                            
| 
                                     SMALLINT, SMALLINT(size)  | 
                                SMALLINT | 
                                     MySQL: -32768 ~ 32767 normal。最大桁数を括弧内に指定できます。 Amazon Redshift: INT2。符号付き 2 バイト整数  | 
                            
| 
                                     SMALLINT UNSIGNED、 SMALLINT(size) UNSIGNED、  | 
                                INTEGER | 
                                     MySQL: 0 ~ 65535 UNSIGNED*。最大桁数を括弧内に指定できます。 Amazon Redshift: INT4。符号付き 4 バイト整数  | 
                            
| 
                                     MEDIUMINT、 MEDIUMINT(size)  | 
                                INTEGER | 
                                     MySQL: 388608 ~ 8388607。最大桁数を括弧内に指定できます。 Amazon Redshift: INT4。符号付き 4 バイト整数  | 
                            
| 
                                     MEDIUMINT UNSIGNED、 MEDIUMINT(size) UNSIGNED  | 
                                
                                     INTEGER  | 
                                
                                     MySQL: 0 ~ 16777215。最大桁数を括弧内に指定できます。 Amazon Redshift: INT4。符号付き 4 バイト整数  | 
                            
| 
                                     INT, INT(size)  | 
                                INTEGER | 
                                     MySQL: 147483648 ~ 2147483647 Amazon Redshift: INT4。符号付き 4 バイト整数  | 
                            
| 
                                     INT UNSIGNED、 INT(size) UNSIGNED  | 
                                BIGINT | 
                                     MySQL: 0 ~ 4294967295 Amazon Redshift: INT8。符号付き 8 バイト整数  | 
                            
| 
                                     BIGINT BIGINT(size)  | 
                                BIGINT | 
                                     Amazon Redshift: INT8。符号付き 8 バイト整数  | 
                            
| 
                                     BIGINT UNSIGNED BIGINT(size) UNSIGNED  | 
                                VARCHAR(20*4) | 
                                     MySQL: 0 ~ 18446744073709551615 Amazon Redshift: 同等のネイティブ型がないため、char 配列を使用します。  | 
                            
| 
                                     FLOAT FLOAT(size,d) FLOAT(size,d) UNSIGNED  | 
                                REAL | 
                                     最大桁数を size パラメータで指定できます。小数点以下の最大桁数は d パラメータで指定します。 Amazon Redshift: FLOAT4。  | 
                            
| 
                                     DOUBLE(size,d)  | 
                                DOUBLE PRECISION | 
                                     最大桁数を size パラメータで指定できます。小数点以下の最大桁数は d パラメータで指定します。 Amazon Redshift: FLOAT8。  | 
                            
| DECIMAL(size,d) | 
                                     DECIMAL(size,d)  | 
                                
                                     固定小数点数を使用するための、文字列として格納される DOUBLE。最大桁数を size パラメータで指定できます。小数点以下の最大桁数は d パラメータで指定します。 Amazon Redshift: 同等のネイティブ型はありません。  | 
                            
| 
                                     CHAR(size)  | 
                                VARCHAR(size*4) | 
                                     固定長の文字列を格納します。これには、文字、数字、特殊文字を含めることができます。固定サイズは括弧内パラメータで指定します。255 文字まで格納できます。 右側にスペースが埋め込まれます。 Amazon Redshift: CHAR データ型ではマルチバイト文字がサポートされていないため、VARCHAR が使用されます。 1 文字あたりの最大バイト数は 4(RFC3629  | 
                            
| VARCHAR(size) | VARCHAR(size*4) | 
                                     255 文字まで格納できます。 VARCHAR では、以下の無効な UTF-8 コードポイントがサポートされていません: 0xD800 ~ 0xDFFF(バイトシーケンス: ED A0 80 ~ ED BF BF)、0xFDD0 ~ 0xFDEF、0xFFFE、0xFFFF(バイトシーケンス: EF B7 90 ~ EF B7 AF、EF BF BE、EF BF BF)  | 
                            
| TINYTEXT | VARCHAR(255*4) | 最大長 255 文字の文字列を格納します | 
| TEXT | VARCHAR(max) | 
                                     最大長 65,535 文字の文字列を格納します。  | 
                            
| MEDIUMTEXT | VARCHAR(max) | 
                                     0 ~ 16,777,215 文字  | 
                            
| LONGTEXT | VARCHAR(max) | 0 ~ 4,294,967,295 文字 | 
| 
                                     BOOLEAN BOOL TINYINT(1)  | 
                                BOOLEAN | 
                                     MySQL: これらの型は TINYINT(1)  | 
                            
| BINARY[(M)] | varCHAR(255) | 
                                     M は 0 ~ 255 バイト、FIXED  | 
                            
| VARBINARY(M) | VARCHAR(max) | 
                                     0 ~ 65,535 バイト  | 
                            
| TINYBLOB | VARCHAR(255) | 0 ~ 255 バイト | 
| BLOB | VARCHAR(max) | 
                                     0 ~ 65,535 バイト  | 
                            
| MEDIUMBLOB | VARCHAR(max) | 
                                     0 ~ 16,777,215 バイト  | 
                            
| LONGBLOB | VARCHAR(max) | 
                                     0 ~ 4,294,967,295 バイト  | 
                            
| ENUM | VARCHAR(255*2) | リテラル ENUM 文字列の長さではなく、テーブル定義に含まれる ENUM 値の数に制限があります。 | 
| SET | VARCHAR(255*2) | ENUM と同じ。 | 
| DATE | DATE | 
                                     (YYYY-MM-DD) 「1000-01-01」から「9999-12-31」  | 
                            
| TIME | VARCHAR(10*4) | 
                                     (hh:mm:ss) "-838:59:59" ~ "838:59:59"  | 
                            
| DATETIME | TIMESTAMP | 
                                     (YYYY-MM-DD hh:mm:ss) "1000-01-01 00:00:00" ~ "9999-12-31 23:59:59"  | 
                            
| TIMESTAMP | TIMESTAMP | 
                                     (YYYYMMDDhhmmss) 19700101000000 ~ 2037+  | 
                            
| YEAR | VARCHAR(4*4) | 
                                     (YYYY) 1900 ~ 2155  | 
                            
| 
                                     column SERIAL  | 
                                
                                     ID 生成 / この列はコピーされるため、この属性は OLAP データウェアハウスでは必要ありません。 変換時に SERIAL キーワードは追加されません。  | 
                                
                                     SERIAL は、実際には SEQUENCE というエンティティです。テーブルの残りの部分からは独立して存在しています。 column GENERATED BY DEFAULT これは下記と同等です: CREATE SEQUENCE name; CREATE TABLE table ( column INTEGER NOT NULL DEFAULT nextval(name) );  | 
                            
| column BIGINT UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE | 
                                     ID 生成 / この列はコピーされるため、この属性は OLAP データウェアハウスでは必要ありません。 このため、変換時に SERIAL キーワードは追加されません。  | 
                                
                                     SERIAL は、実際には SEQUENCE というエンティティです。テーブルの残りの部分からは独立して存在しています。 column GENERATED BY DEFAULT これは下記と同等です: CREATE SEQUENCE name; CREATE TABLE table ( column INTEGER NOT NULL DEFAULT nextval(name) );  | 
                            
| ZEROFILL | 変換時に ZEROFILL キーワードは追加されません。 | 
                                     INT UNSIGNED ZEROFILL NOT NULL ZEROFILL では、フィールドに表示される値に、列定義で指定された表示幅までゼロが埋め込まれます。値の桁数が表示幅を超えても、切り捨ては行われません。ZEROFILL の使用は、UNSIGNED を暗黙に示しています。  |