数据发现(DataScan)

重要

当前功能处于邀测阶段,请用户通过提交工单方式开通。

功能简介

MaxCompute能够快速发现并纳管湖上存储的结构化、半结构化数据文件,帮助识别数据的文件格式、表格式并自动注册为外部表。满足使用SQL、MaxFrame快速分析湖上数据的需求,同时提供企业级访问控制、脱敏及行级权限能力保障用湖安全。

功能规格

功能项

说明

支持数据源

OSS

支持数据文件格式

支持以下的数据文件格式:

  • Parquet(无压缩、SNAPPY、ZSTD、GZIP)

  • ORC(无压缩、SNAPPY、ZLIB)

  • JSON(无压缩、BZIP2、GZIP、LZ4、DEFLATE)

  • CSV(无压缩、SNAPPY、GZIP)

发现频率

5分钟/15分钟/60分钟/1天/7

发现结果

根据数据文件分布,依据识别规则oss://<LOCATION路径>/<外部表>/<分区(可选)>/<文件>,自动将匹配的表、分区、数据结构注册为外部表。

发现任务数

阿里云主账号下发现任务数上限是100个。

应用场景

湖上日志与事件数据自动化分析

海量应用日志按日期分区持续写入OSS。MaxCompute数据发现任务识别分区与数据文件结构,如JSON、CSV,生成可供SQL查询的外部表,从而实现日志数据的自动化接入,让分析师能立即使用SQL进行新分区数据分析和数仓生产。

适用范围

  • 地域限制:目前仅华北2(北京)、华南1(深圳)地域支持数据发现(DataScan)。

  • 权限限制:阿里云账号或者具备租户级Datascan_Admin角色的用户可以管理和创建数据发现任务。

    角色

    权限

    Datascan_Admin

    列出、查看、创建、更新、删除数据发现任务。

角色授权

  1. 如果以RAM用户身份创建和管理数据发现任务,请先获得租户级Datascan_Admin角色。授权方式参考:租户级别角色授权

  2. 阿里云账号或者具备租户级Super_AdministratorAdmin角色的用户可执行Datascan_Admin角色授权。

    1. 登录MaxCompute控制台,在左上角选择地域。

    2. 在左侧导航栏,选择管理配置 > 租户管理 。

    3. 租户管理页面,单击角色管理页签。

    4. 角色管理页签,选择Datascan_Admin,单击对应的操作列的新增授权

    5. 在弹出的新增授权对话框,添加需要授权的用户,单击确定完成授权。

创建数据发现任务

  1. 登录MaxCompute控制台,在左上角选择地域。

  2. 在左侧导航栏,选择MaxLake > 数据发现

  3. 数据发现页面,单击创建数据发现任务

  4. 在弹出的创建任务对话框,填写如下参数,然后单击创建

    • 基本配置

      参数名称

      说明

      任务名称

      任务名称,在租户内命名唯一。

      任务描述

      任务描述。

      任务周期

      5分钟/15分钟/60分钟/1天/7天。

    • 湖数据配置

      参数名称

      说明

      数据湖连接

      选择数据湖连接(CONNECTION)作为外部存储访问凭证。

      LOCATION

      填写数据文件所在OSS路径。

      • 格式oss://<Bucket名称>/<OSS 路径>/

        OSS Bucket必须和MaxCompute数据发现任务归属于同一阿里云主账号的相同Region下。

      • 数据发现规则

        oss://<LOCATION路径>/<外部表>/<分区(可选)>/<文件>

      • 示例

        • OSS中数据分布是oss://maxlake/ods_vehicle_gps_raw/dt=2025-09-16/hh=01/vin1_2025-09-16_01.parquet

        • LOCATION填写oss://maxlake/

        • 发现数据结果:

          • 外部表:ods_vehicle_gps_raw

          • 分区:dthh

          • 表结构根据vin1_2025-09-16_01.parquet中的数据格式定义。

      发现格式

      支持Parquet、ORC、JSON、CSV。

      CSV 格式说明

      • 元数据发现默认将CSV原始文件第一行作为外部表列名,并自动为外部表设置skip.header.line.count=1;在数据读取时跳过首行;

      • CSV文件的默认引用符号为双引号("),当CSV某个字段中包含换行、双引号(需要在"前再加"转义)或英文逗号时,整个字段必须用双引号("")括起来作为列分隔符。

    • Catalog配置

      参数名称

      说明

      项目

      选择开启Schema级语法开关的项目。

      Schema

      选择Schema。

      建议选择和将要发现的外部表表名不冲突的Schema ,如果新发现的外部表和Schema中用户创建的表同名,发现任务将不会继续创建同名的外部表。

浏览数据发现结果

  1. 登录MaxCompute控制台,在左上角选择地域。

  2. 在左侧导航栏,选择MaxLake > 数据发现

  3. 数据发现页面,单击目标数据发现任务对应操作列的浏览结果,进入详情页。

  4. 在详情页可以查看以下信息:

    • 基本信息

      • 查看任务发现名称发现配置最近发现时间等。

    • 最近发现结果

      • 查看发现的表名表分区等信息。

      • 用户可以用 SQL 查询对应表的结构和数据。

    • 历史发现记录

      • 查看发现任务周期性运行的历史记录,保留发现时间、发现表数等。

      • 任务日志会保留最新的2000条或最近180天内的记录,超出上述条件的任务日志将被删除。

管理数据发现任务

  1. 登录MaxCompute控制台,在左上角选择地域。

  2. 在左侧导航栏,选择MaxLake > 数据发现

  3. 数据发现页面,查看数据发现任务信息。

  4. 单击目标数据发现任务对应状态列的调度开关,暂停/启动发现任务。

  5. 单击目标数据发现任务对应操作列的立即触发一次,立即触发一次数据发现任务。

  6. 单击目标数据发现任务对应操作列的修改,修改任务名称、描述、任务周期。

  7. 单击目标数据发现任务对应操作列的删除,删除任务。

    数据发现任务删除后,已经注册的外部表不会被同步删除,也将不再继续根据湖上数据结构更新表结构。