文档

导出至数据湖

更新时间:

本文为您介绍基于DLF通过使用SQL方式将数据从Hologres内部表回写至OSS,并在外部引擎通过SQL直接查询写入的数据。

前提条件

您已完成DLF数据湖的构建和环境配置并通过Hologres外部表能正常读取OSS数据湖,详情请参见OSS数据湖使用说明

导出数据至数据湖

在数据更新的场景下,需要将数据回写至OSS,之后再由EMR等外部引擎进行处理,此时,您可以直接通过SQL向外部表插入数据。

  1. 回写数据至OSS。

    使用如下SQL,将Hologres内部表的数据回写入OSS。

    INSERT INTO <foreign_table_name>(<col_name>,......) SELECT <col_name>,...... FROM <holo_table_name>;

    参数说明如下:

    参数

    说明

    foreign_table_name

    创建的外部表名称。

    holo_table_name

    导出数据的Hologres内部表名称。

    col_name

    表中的数据列名称。

  2. 查询回写数据。

    写入完成后,您可以在EMR(Hive或Spark)中运行如下SQL查询到写入的数据。

    SELECT * FROM <foreign_table_name> WHERE <col_name> = value;

    返回成功则表示:Hologres已经成功将数据回写到OSS,并且EMR也可以顺利读取。