S3のデータを定期的に MySQL にもってきたいので
AWS DMS というのを使おうと思ってるのですが
S3 をソースにするドキュメントが
https://docs.aws.amazon.com/ja_jp/dms/latest/userguide/CHAP_Source.S3.html
これぐらいしかなく
/schemaName/tableName/LOAD001.csv
という形の取り込み方しか乗っていません
たとえば
/users/<YYYYMMDD>/<user_id>.csv
のような形でたまっているS3データはソースにすることはできないのでしょうか
追記:
テストのために新規バケットでCSVファイルは1つだけ公式ドキュメントと同じものをおいています
/users/201906/1.csv
101,Smith,Bob,4-Jun-14,New York 102,Smith,Bob,8-Oct-15,Los Angeles 103,Smith,Bob,13-Mar-17,Dallas 104,Smith,Bob,13-Mar-17,Dallas
JSONは
"TableName": "users_test", "TablePath": "users/*/", "TableOwner": "db_test",
の部分だけいろいろかえて試行錯誤してますがどれもうまくいきません
{ "TableCount": "1", "Tables": [ { "TableName": "users_test", "TablePath": "users/*/", "TableOwner": "db_test", "TableColumns": [ { "ColumnName": "Id", "ColumnType": "INT8", "ColumnNullable": "false", "ColumnIsPk": "true" }, { "ColumnName": "LastName", "ColumnType": "STRING", "ColumnLength": "20" }, { "ColumnName": "FirstName", "ColumnType": "STRING", "ColumnLength": "30" }, { "ColumnName": "HireDate", "ColumnType": "DATETIME" }, { "ColumnName": "OfficeLocation", "ColumnType": "STRING", "ColumnLength": "20" } ], "TableColumnsTotal": "5" } ] }
db_test 自体は存在していて
タスクの制御テーブル設定で db_test を指定すると
awsdms_apply_exceptions
とかは作られます
ログを見るとエラーとかは出てなくて
[TASK_MANAGER ]I: Loading finished for table 'db_test'.'users_test' (Id = 1) by subtask 1. 0 records transferred. (replicationtask.c:2278)
とずっとレコードが0になってターゲットにテーブル自体も作られません