红移光谱 - 更新外部光谱 table 列类型

Redshift spectrum - Updating external spectrum table column type

我创建了一个具有 4 列的外部 table。 其中一列是自定义数据类型。

create EXTERNAL table public.test_table_1(
uuid varchar(36),
event_id varchar(36),
last_updated_timestamp bigint,
user_app struct<starttime : int, endtime : int, id_1 : struct<value : float>>

我想将列 user_app 更新为新的格式数据类型:

struct<starttime : int, endtime : int, id_1 : struct<value : float>, id_2 : struct<value : float>>

如何删除 table,然后使用正确的列类型重新创建它?

由于它是外部 table,您不会在删除它时丢失任何日期。

DROP TABLE public.test_table_1;

create EXTERNAL table public.test_table_1(
    uuid varchar(36),
    event_id varchar(36),
    last_updated_timestamp bigint,
    user_app struct<
        starttime : int, 
        endtime : int, 
        id_1 : struct<value : float>, 
        id_2 : struct<value : float>
     >
);

您可以使用 Glue 数据目录来完成。

导航到 Glue 数据目录 --> 表 --> 编辑架构

单击列 user_map 的结构数据类型并更新定义。

As shown in screenshot