diff --git a/resources/provider/migrations/postgres/30_v0.11.5.down.sql b/resources/provider/migrations/postgres/30_v0.11.5.down.sql index 23ae94f50..825886960 100644 --- a/resources/provider/migrations/postgres/30_v0.11.5.down.sql +++ b/resources/provider/migrations/postgres/30_v0.11.5.down.sql @@ -20,3 +20,16 @@ DROP TABLE IF EXISTS aws_xray_groups; -- Resource: xray.sampling_rules DROP TABLE IF EXISTS aws_xray_sampling_rules; + +-- Resource: athena.data_catalogs +DROP TABLE IF EXISTS aws_athena_data_catalog_database_table_columns; +DROP TABLE IF EXISTS aws_athena_data_catalog_database_table_partition_keys; +DROP TABLE IF EXISTS aws_athena_data_catalog_database_tables; +DROP TABLE IF EXISTS aws_athena_data_catalog_databases; +DROP TABLE IF EXISTS aws_athena_data_catalogs; + +-- Resource: athena.work_groups +DROP TABLE IF EXISTS aws_athena_work_group_prepared_statements; +DROP TABLE IF EXISTS aws_athena_work_group_query_executions; +DROP TABLE IF EXISTS aws_athena_work_group_named_queries; +DROP TABLE IF EXISTS aws_athena_work_groups; diff --git a/resources/provider/migrations/postgres/30_v0.11.5.up.sql b/resources/provider/migrations/postgres/30_v0.11.5.up.sql index 74bb3d3ae..25b320e38 100644 --- a/resources/provider/migrations/postgres/30_v0.11.5.up.sql +++ b/resources/provider/migrations/postgres/30_v0.11.5.up.sql @@ -149,7 +149,7 @@ CREATE TABLE IF NOT EXISTS "aws_athena_data_catalogs" ( "parameters" jsonb, CONSTRAINT aws_athena_data_catalogs_pk PRIMARY KEY (arn), UNIQUE (cq_id) - ); +); CREATE TABLE IF NOT EXISTS "aws_athena_data_catalog_databases" ( "cq_id" uuid NOT NULL, "cq_meta" jsonb, @@ -160,7 +160,7 @@ CREATE TABLE IF NOT EXISTS "aws_athena_data_catalog_databases" ( CONSTRAINT aws_athena_data_catalog_databases_pk PRIMARY KEY (cq_id), UNIQUE (cq_id), FOREIGN KEY (data_catalog_cq_id) REFERENCES aws_athena_data_catalogs(cq_id) ON DELETE CASCADE - ); +); CREATE TABLE IF NOT EXISTS "aws_athena_data_catalog_database_tables" ( "cq_id" uuid NOT NULL, "cq_meta" jsonb, @@ -173,7 +173,7 @@ CREATE TABLE IF NOT EXISTS "aws_athena_data_catalog_database_tables" ( CONSTRAINT aws_athena_data_catalog_database_tables_pk PRIMARY KEY (cq_id), UNIQUE (cq_id), FOREIGN KEY (data_catalog_database_cq_id) REFERENCES aws_athena_data_catalog_databases(cq_id) ON DELETE CASCADE - ); +); CREATE TABLE IF NOT EXISTS "aws_athena_data_catalog_database_table_columns" ( "cq_id" uuid NOT NULL, "cq_meta" jsonb, @@ -184,7 +184,7 @@ CREATE TABLE IF NOT EXISTS "aws_athena_data_catalog_database_table_columns" ( CONSTRAINT aws_athena_data_catalog_database_table_columns_pk PRIMARY KEY (cq_id), UNIQUE (cq_id), FOREIGN KEY (data_catalog_database_table_cq_id) REFERENCES aws_athena_data_catalog_database_tables(cq_id) ON DELETE CASCADE - ); +); CREATE TABLE IF NOT EXISTS "aws_athena_data_catalog_database_table_partition_keys" ( "cq_id" uuid NOT NULL, "cq_meta" jsonb, @@ -195,7 +195,7 @@ CREATE TABLE IF NOT EXISTS "aws_athena_data_catalog_database_table_partition_key CONSTRAINT aws_athena_data_catalog_database_table_partition_keys_pk PRIMARY KEY (cq_id), UNIQUE (cq_id), FOREIGN KEY (data_catalog_database_table_cq_id) REFERENCES aws_athena_data_catalog_database_tables(cq_id) ON DELETE CASCADE - ); +); -- Resource: athena.work_groups CREATE TABLE IF NOT EXISTS "aws_athena_work_groups" ( @@ -222,7 +222,7 @@ CREATE TABLE IF NOT EXISTS "aws_athena_work_groups" ( "state" text, CONSTRAINT aws_athena_work_groups_pk PRIMARY KEY (arn), UNIQUE (cq_id) - ); +); CREATE TABLE IF NOT EXISTS "aws_athena_work_group_prepared_statements" ( "cq_id" uuid NOT NULL, "cq_meta" jsonb, @@ -235,7 +235,7 @@ CREATE TABLE IF NOT EXISTS "aws_athena_work_group_prepared_statements" ( CONSTRAINT aws_athena_work_group_prepared_statements_pk PRIMARY KEY (cq_id), UNIQUE (cq_id), FOREIGN KEY (work_group_cq_id) REFERENCES aws_athena_work_groups(cq_id) ON DELETE CASCADE - ); +); CREATE TABLE IF NOT EXISTS "aws_athena_work_group_query_executions" ( "cq_id" uuid NOT NULL, "cq_meta" jsonb, @@ -271,7 +271,7 @@ CREATE TABLE IF NOT EXISTS "aws_athena_work_group_query_executions" ( CONSTRAINT aws_athena_work_group_query_executions_pk PRIMARY KEY (cq_id), UNIQUE (cq_id), FOREIGN KEY (work_group_cq_id) REFERENCES aws_athena_work_groups(cq_id) ON DELETE CASCADE - ); +); CREATE TABLE IF NOT EXISTS "aws_athena_work_group_named_queries" ( "cq_id" uuid NOT NULL, "cq_meta" jsonb, @@ -285,4 +285,4 @@ CREATE TABLE IF NOT EXISTS "aws_athena_work_group_named_queries" ( CONSTRAINT aws_athena_work_group_named_queries_pk PRIMARY KEY (cq_id), UNIQUE (cq_id), FOREIGN KEY (work_group_cq_id) REFERENCES aws_athena_work_groups(cq_id) ON DELETE CASCADE - ); +); diff --git a/resources/provider/migrations/timescale/30_v0.11.5.down.sql b/resources/provider/migrations/timescale/30_v0.11.5.down.sql index 80056148d..0681513e8 100644 --- a/resources/provider/migrations/timescale/30_v0.11.5.down.sql +++ b/resources/provider/migrations/timescale/30_v0.11.5.down.sql @@ -20,3 +20,16 @@ DROP TABLE IF EXISTS aws_xray_groups; -- Resource: xray.sampling_rules DROP TABLE IF EXISTS aws_xray_sampling_rules; + +-- Resource: athena.data_catalogs +DROP TABLE IF EXISTS aws_athena_data_catalog_database_table_columns; +DROP TABLE IF EXISTS aws_athena_data_catalog_database_table_partition_keys; +DROP TABLE IF EXISTS aws_athena_data_catalog_database_tables; +DROP TABLE IF EXISTS aws_athena_data_catalog_databases; +DROP TABLE IF EXISTS aws_athena_data_catalogs; + +-- Resource: athena.work_groups +DROP TABLE IF EXISTS aws_athena_work_group_prepared_statements; +DROP TABLE IF EXISTS aws_athena_work_group_query_executions; +DROP TABLE IF EXISTS aws_athena_work_group_named_queries; +DROP TABLE IF EXISTS aws_athena_work_groups; diff --git a/resources/provider/migrations/timescale/30_v0.11.5.up.sql b/resources/provider/migrations/timescale/30_v0.11.5.up.sql index 6e4a1251b..c5f74d58f 100644 --- a/resources/provider/migrations/timescale/30_v0.11.5.up.sql +++ b/resources/provider/migrations/timescale/30_v0.11.5.up.sql @@ -166,7 +166,7 @@ CREATE TABLE IF NOT EXISTS "aws_athena_data_catalogs"( "parameters" jsonb, CONSTRAINT aws_athena_data_catalogs_pk PRIMARY KEY(cq_fetch_date,arn), UNIQUE(cq_fetch_date,cq_id) - ); +); SELECT setup_tsdb_parent('aws_athena_data_catalogs'); CREATE TABLE IF NOT EXISTS "aws_athena_data_catalog_databases"( "cq_id" uuid NOT NULL, @@ -178,7 +178,7 @@ CREATE TABLE IF NOT EXISTS "aws_athena_data_catalog_databases"( "parameters" jsonb, CONSTRAINT aws_athena_data_catalog_databases_pk PRIMARY KEY(cq_fetch_date,cq_id), UNIQUE(cq_fetch_date,cq_id) - ); +); CREATE INDEX ON aws_athena_data_catalog_databases(cq_fetch_date,data_catalog_cq_id); SELECT setup_tsdb_child('aws_athena_data_catalog_databases','data_catalog_cq_id','aws_athena_data_catalogs','cq_id'); CREATE TABLE IF NOT EXISTS "aws_athena_data_catalog_database_tables"( @@ -193,7 +193,7 @@ CREATE TABLE IF NOT EXISTS "aws_athena_data_catalog_database_tables"( "table_type" text, CONSTRAINT aws_athena_data_catalog_database_tables_pk PRIMARY KEY(cq_fetch_date,cq_id), UNIQUE(cq_fetch_date,cq_id) - ); +); CREATE INDEX ON aws_athena_data_catalog_database_tables(cq_fetch_date,data_catalog_database_cq_id); SELECT setup_tsdb_child('aws_athena_data_catalog_database_tables','data_catalog_database_cq_id', 'aws_athena_data_catalog_databases','cq_id'); @@ -207,7 +207,7 @@ CREATE TABLE IF NOT EXISTS "aws_athena_data_catalog_database_table_columns"( "type" text, CONSTRAINT aws_athena_data_catalog_database_table_columns_pk PRIMARY KEY(cq_fetch_date,cq_id), UNIQUE(cq_fetch_date,cq_id) - ); +); CREATE INDEX ON aws_athena_data_catalog_database_table_columns(cq_fetch_date,data_catalog_database_table_cq_id); SELECT setup_tsdb_child('aws_athena_data_catalog_database_table_columns','data_catalog_database_table_cq_id', 'aws_athena_data_catalog_database_tables','cq_id'); @@ -221,7 +221,7 @@ CREATE TABLE IF NOT EXISTS "aws_athena_data_catalog_database_table_partition_key "type" text, CONSTRAINT aws_athena_data_catalog_database_table_partition_keys_pk PRIMARY KEY(cq_fetch_date,cq_id), UNIQUE(cq_fetch_date,cq_id) - ); +); CREATE INDEX ON aws_athena_data_catalog_database_table_partition_keys(cq_fetch_date,data_catalog_database_table_cq_id); SELECT setup_tsdb_child('aws_athena_data_catalog_database_table_partition_keys','data_catalog_database_table_cq_id', 'aws_athena_data_catalog_database_tables','cq_id'); @@ -252,7 +252,7 @@ CREATE TABLE IF NOT EXISTS "aws_athena_work_groups"( "state" text, CONSTRAINT aws_athena_work_groups_pk PRIMARY KEY(cq_fetch_date,arn), UNIQUE(cq_fetch_date,cq_id) - ); +); SELECT setup_tsdb_parent('aws_athena_work_groups'); CREATE TABLE IF NOT EXISTS "aws_athena_work_group_prepared_statements"( "cq_id" uuid NOT NULL, @@ -266,7 +266,7 @@ CREATE TABLE IF NOT EXISTS "aws_athena_work_group_prepared_statements"( "work_group_name" text, CONSTRAINT aws_athena_work_group_prepared_statements_pk PRIMARY KEY(cq_fetch_date,cq_id), UNIQUE(cq_fetch_date,cq_id) - ); +); CREATE INDEX ON aws_athena_work_group_prepared_statements(cq_fetch_date,work_group_cq_id); SELECT setup_tsdb_child('aws_athena_work_group_prepared_statements','work_group_cq_id','aws_athena_work_groups', 'cq_id'); @@ -305,7 +305,7 @@ CREATE TABLE IF NOT EXISTS "aws_athena_work_group_query_executions"( "work_group" text, CONSTRAINT aws_athena_work_group_query_executions_pk PRIMARY KEY(cq_fetch_date,cq_id), UNIQUE(cq_fetch_date,cq_id) - ); +); CREATE INDEX ON aws_athena_work_group_query_executions(cq_fetch_date,work_group_cq_id); SELECT setup_tsdb_child('aws_athena_work_group_query_executions','work_group_cq_id','aws_athena_work_groups', 'cq_id'); @@ -322,6 +322,6 @@ CREATE TABLE IF NOT EXISTS "aws_athena_work_group_named_queries"( "work_group" text, CONSTRAINT aws_athena_work_group_named_queries_pk PRIMARY KEY(cq_fetch_date,cq_id), UNIQUE(cq_fetch_date,cq_id) - ); +); CREATE INDEX ON aws_athena_work_group_named_queries(cq_fetch_date,work_group_cq_id); SELECT setup_tsdb_child('aws_athena_work_group_named_queries','work_group_cq_id','aws_athena_work_groups','cq_id');