/*
resource "aws_redshift_cluster" "media-service-dw-prod-01" {
  allow_version_upgrade                = true
  apply_immediately                    = null
  automated_snapshot_retention_period  = 1
  availability_zone                    = "us-east-1a"
  availability_zone_relocation_enabled = false
  cluster_identifier                   = "media-service-dw-prod-01"
  cluster_parameter_group_name         = "ms-dw-config-prod-01"
  cluster_public_key                   = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDSyG+gyPvVjxggPcWMi1hhTUqh/ffT1TitQgZQU5hk5TwH6HbiJ29vx4X30feaO2i1xva8c/WcOWXjHMCtpsusGrzJn81sP2Rzxdez64E5MXqKmATRZQVAJZmF4JIfdf6GIuOZjPI+z/C6qViIsdHiPzOAKdQV1f/nyNy1wCR+65rRszI6peSgeb4H0xAIrg5utkwlZDROW5uhRpGFA+sDbZVNeRsnma4YYutgO5gy6v/VwOA9mzlYzGXavH5g13v165xtzxjq5f0d9Korn8kkhej2okh0SAgb/4pwmeruJTwAm5yF2NIIplFoYiXkc+XGg7oPfjuX3nME6CEIUlHJ Amazon-Redshift\n"
  cluster_revision_number              = "111040"
  cluster_subnet_group_name            = "msrvp-redshift-sng"
  cluster_type                         = "multi-node"
  cluster_version                      = "1.0"
  database_name                        = "media_service_dw"
  default_iam_role_arn                 = null
  elastic_ip                           = null
  encrypted                            = true
  endpoint                             = "media-service-dw-prod-01.cdxan1xrogso.us-east-1.redshift.amazonaws.com:5439"
  enhanced_vpc_routing                 = false
  final_snapshot_identifier            = null
  iam_roles                            = []
  kms_key_id                           = "arn:aws:kms:us-east-1:361463692799:key/d1156e82-5aff-44f4-9dfc-20ec03773e93"
  maintenance_track_name               = "current"
  manual_snapshot_retention_period     = -1
  master_password                      = null # sensitive
  master_username                      = "master_rds"
  node_type                            = "dc2.large"
  number_of_nodes                      = 2
  owner_account                        = null
  port                                 = 5439
  preferred_maintenance_window         = "sun:06:00-sun:06:30"
  publicly_accessible                  = false
  skip_final_snapshot                  = true
  snapshot_cluster_identifier          = null
  snapshot_identifier                  = null
  tags = {
    Business-Unit = "Delivery-Media-Services"
    Environment   = "Prod"
    Owner         = "Robert Dewilder"
    Project-Code  = "SME-2000-0306G"
    Project-Name  = "Delivery-Media-Services"
  }
  tags_all = {
    Business-Unit = "Delivery-Media-Services"
    Environment   = "Prod"
    Owner         = "Robert Dewilder"
    Project-Code  = "SME-2000-0306G"
    Project-Name  = "Delivery-Media-Services"
  }
  vpc_security_group_ids = ["sg-0b6b3cc46ee81bb93"]
  logging {
    bucket_name          = "sme-msrvp-redshift-use1"
    enable               = true
    log_destination_type = null
    log_exports          = []
    s3_key_prefix        = "media-service-dw-prod-01/"
  }
}
*/

resource "aws_redshift_parameter_group" "ms-dw-config-prod-01" {
  description = "MSDW Config"
  family      = "redshift-1.0"
  name        = "ms-dw-config-prod-01"
  tags        = {}
  tags_all    = {}
  parameter {
    name  = "require_ssl"
    value = "true"
  }
  parameter {
    name  = "search_path"
    value = "$user,media_service_dw,public"
  }
  parameter {
    name  = "wlm_json_configuration"
    value = "[{\"query_concurrency\":10,\"query_group\":[],\"query_group_wild_card\":0,\"user_group\":[],\"user_group_wild_card\":0,\"rules\":[{\"rule_name\":\"log_nested_loop\",\"predicate\":[{\"metric_name\":\"nested_loop_join_row_count\",\"operator\":\">\",\"value\":100}],\"action\":\"log\"},{\"rule_name\":\"log_high_rows_select\",\"predicate\":[{\"metric_name\":\"return_row_count\",\"operator\":\">\",\"value\":1000000}],\"action\":\"log\"},{\"rule_name\":\"log_high_rows_join\",\"predicate\":[{\"metric_name\":\"join_row_count\",\"operator\":\">\",\"value\":1000000000}],\"action\":\"log\"},{\"rule_name\":\"log_high_memory\",\"predicate\":[{\"metric_name\":\"query_temp_blocks_to_disk\",\"operator\":\">\",\"value\":100000}],\"action\":\"log\"},{\"rule_name\":\"log_high_execution\",\"predicate\":[{\"metric_name\":\"segment_execution_time\",\"operator\":\">\",\"value\":120},{\"metric_name\":\"io_skew\",\"operator\":\">\",\"value\":2}],\"action\":\"log\"},{\"rule_name\":\"log_high_cpu\",\"predicate\":[{\"metric_name\":\"query_cpu_usage_percent\",\"operator\":\">\",\"value\":50}],\"action\":\"log\"},{\"rule_name\":\"log_qury_cpu_time\",\"predicate\":[{\"metric_name\":\"query_cpu_time\",\"operator\":\">\",\"value\":60}],\"action\":\"log\"},{\"rule_name\":\"log_qury_time\",\"predicate\":[{\"metric_name\":\"query_execution_time\",\"operator\":\">\",\"value\":60}],\"action\":\"log\"}]},{\"short_query_queue\":true}]"
  }
}

resource "aws_redshift_subnet_group" "msrvp-redshift-sng" {
  description = "msrvp-redshift-sng"
  name        = "msrvp-redshift-sng"
  subnet_ids  = ["subnet-0d8cc627", "subnet-e9c3f99f"]
  tags        = {}
  tags_all    = {}
}
