数据源管理
数据源是将外部数据系统(如数据库、存储服务)的连接信息统一注册到DataWorks的平台对象。创建数据源后,您即可在DataWorks平台内引用该数据源,进行数据读写操作。DataWorks支持多种数据源类型,覆盖了主流数据库、大数据存储及消息队列等。为保障数据安全,标准模式的工作空间支持数据源环境隔离功能。您可以为开发环境和生产环境分别配置独立的数据源。开发环境数据源仅用于节点的开发与调试,而生产环境数据源则专用于已发布节点的周期性调度,两者严格分离,可有效防止测试操作影响生产数据。
功能介绍
数据源使用
DataWorks的数据源在工作空间的
中进行统一管理和维护。创建完成并测试连接通过后,便可以在DataWorks的各个模块中使用,以下是数据源使用场景的举例:功能模块 | 使用场景 | 支持的数据源类型 |
数据集成 | 执行数据同步任务,支持不同数据源间(如MySQL到MaxCompute)的数据迁移,支持单表、整库、离线、实时等多种形式。 | |
数据开发 | 支持节点的开发调试与周期性调度。若工作空间为标准模式,任务执行时将根据环境自动区分开发与生产数据源配置。 | |
数据地图 | 采集数据源元数据,用户可查看表结构及血缘信息。 | |
数据分析 | 连接数据库进行数据处理、分析、加工及可视化操作。 | |
数据服务 | 基于数据源表结构生成API服务,提供数据查询接口。 |
数据源环境隔离
为保障数据安全,标准模式的工作空间支持数据源环境隔离功能。您可以为开发环境和生产环境分别配置独立的数据源。开发环境数据源仅用于节点的开发与调试,而生产环境数据源则专用于已发布节点的周期性调度,两者严格分离,可有效防止测试操作影响生产数据。详情请参见:数据源环境说明。
前提条件
在开始配置数据源前,请确保您已满足以下条件:
注意事项
使用限制:通过跨地域、跨账号、AccessID和AccessKey方式创建的数据源,无法用于数据开发、任务调度,仅可用于数据同步。
模块创建差异:在标准模式下,管理中心创建的数据源包括开发环境和生产环境信息;数据集成创建的数据源只有生产环境信息,建议统一在管理中心创建和维护数据源。
数据源创建方式
自动创建
当您在工作空间中绑定一个计算资源(如MaxCompute、Hologres等)时,系统会自动为您创建并管理对应的数据源。这些数据源会随着计算资源的绑定/解绑而自动创建/删除,配置也会同步更新;同时,数据源的权限也会完全继承自其绑定的计算资源。若需对权限进行单独设置,可使用手动创建的数据源。
自动创建配置指导:计算资源管理。
支持的数据源:
新版数据开发:MaxCompute、AnalyticDB MySQL、AnalyticDB PostgreSQL、AnalyticDB for Spark、ClickHouse、Hologres、Lindorm、StarRocks、OpenSearch。
旧版数据开发:MaxCompute、AnalyticDB MySQL、AnalyticDB PostgreSQL、ClickHouse、Hologres。
上述数据源如用于数据开发场景,建议使用通过绑定计算资源的方式自动创建,否则数据开发任务无法运行。
手动创建
用户需手动填写数据源的实例/连接信息、数据库、账号密码等配置参数。适用所有数据源类型,您可以自主控制数据源的新增、变更、删除以及权限分配。
手动创建配置指导:创建数据源。
功能入口
进入管理中心页面。
登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的 ,在下拉框中选择对应工作空间后单击进入管理中心。
单击左侧导航栏的
,进入数据源页面。单击页面左上角的新增数据源。
创建数据源
步骤一:选择连接模式
DataWorks支持实例模式和连接串模式方式配置数据源的连接信息。
场景1:实例模式(当前云账号)
若您的数据源为阿里云产品(如RDS、PolarDB),且实例归属于当前主账号,可选择实例模式创建,只需指定地域与实例,系统自动获取最新数据源信息,无需设置地址与端口。
若当前没有合适的实例,需要购买新实例时,推荐指定其专有网络(VPC)与DataWorks资源组使用相同VPC,可以减少网络配置操作。
若已有数据源实例,且该数据源的VPC与DataWorks资源组使用的VPC不一致,请务必配置网络连通,以保证数据源可正常使用。
场景2:实例模式(其他云账号)
添加数据源选择实例模式时,若需要访问其他云账号的实例,可以通过配置其他云账号主账号ID和RAM账号授权角色名称来实现跨云账号创建数据源。
跨账号创建的数据源需要确保:
使用的RAM角色对目标数据源有访问权限,跨账号授权参见:跨账号授权(RDS、Hive或Kafka)、跨账号授权(MaxCompute、Hologres)。
使用方账号(当前账号)的资源组与资源方账号(其他账号)的数据源之间的网络连通。
场景3:连接串模式
对于部署在ECS、本地IDC或公网环境的自建数据源,或使用阿里云实例但内网无法访问数据源,可使用连接串模式。您可以手动配置网络地址(Endpoint/JDBC URL)、端口、数据库名及认证凭证(用户名/密码/AccessKey)。
使用连接串模式配置数据源,需确保使用的IP地址和端口与DataWorks资源组的网络是否连通,请根据需要确定是否开通公网访问以及安全组和白名单等配置。详情参见:网络连通方案。
如果您的数据源IP经常变动,或无法通过IP直接访问,例如:数据源通过Host的域名托管,需通过域名被外部访问时,您可以通过为独享数据集成资源组绑定Host或者为Serverless资源组配置内网DNS解析 (PrivateZone)来解决此问题。
使用连接串模式时,DataWorks 将自动解析 JDBC URL。若 URL 包含不支持参数,系统会自动移除该参数。如需保留特殊参数,请通过提交工单联系技术支持处理。
步骤二:填写连接信息
在标准模式下,您需要分别为开发环境和生产环境配置连接信息。您可以选择两个环境使用相同或不同的配置。
数据源名称:在工作空间内保持唯一,建议使用可清晰识别业务和环境的命名,例如
rds_mysql_order_dev
。数据源描述:简要说明数据源的用途。
连接信息:根据上文描述的连接模式,填写数据源的实例或者URL地址、端口等信息。
步骤三:设置账号密码
DataWorks支持多种数据源的认证方式,您可根据数据源类型和配置界面的参数提示,设置数据源的认证凭据。请确保使用的凭据具备对数据库的访问权限,否则后续使用会出错。
认证方式 | 使用场景 |
账号密码 | 适用于大部分数据库类型(如RDS、StarRocks等),DataWorks可通过账号密码验证机制访问数据源,相关凭证需由数据源方提供。 |
RAM账号 | 支持以下多种指定方式。适用于支持RAM账号认证的阿里云产品,如MaxCompute,Hologres等。您可以根据账号所需权限进行设置。
|
Kerberos认证 | 第三方身份认证机制。适用于Hive、HDFS和HBase等大数据组件,使用Kerberos认证需上传Keytab、krb5.conf等认证文件,配置指南:第三方认证文件管理。 |
AccessKey | 访问密钥管理(AccessKey)(简称 AK)是阿里云提供的一种永久访问凭据,由AccessKey ID和AccessKey Secret组成。适用于OSS、TableStore等数据源。AccessKey的安全性较低,需妥善保管。若有其他登录方式,如RAM角色授权模式,建议优先采用。 |
若您的数据库开启了SSL认证,创建数据源时也需要开启SSL认证,操作流程可参考:PostgreSQL数据源增加SSL认证。
步骤四:测试连通性
在页面下方,针对工作空间绑定的资源组,单击测试连通性。此步骤至关重要,可确保DataWorks能成功访问您的数据源。
如果显示可连通,则表示配置无误。
如果显示无法连通,系统会弹出诊断工具辅助排查。常见原因包括凭证错误、网络不通(IP白名单未配置)或NAT网关缺失等。
标准模式下,请务必保证开发环境和生产环境均为可连通,否则后续使用将出错。
您可根据数据源的配置模式以及数据源的地域信息、实例归属和部署位置等情况配置网络,以下是常见场景的配置方案:
场景 | 操作说明 |
数据源是阿里云产品,且与DataWorks工作空间归属于同一阿里云主账号、同一地域。 | |
数据源是阿里云产品,与DataWorks工作空间归属于同一阿里云主账号,但不同地域。 | |
数据源是阿里云产品,但与DataWorks工作空间归属于不同阿里云主账号。 | |
数据源部署在阿里云ECS中。 | |
数据源部署在本地IDC中。 | |
数据源具备公网链接地址。 |
管理数据源
在数据源管理页面,您可根据数据源类型、数据源名称筛选需要查看的数据源。同时,支持您对目标数据源执行如下管理操作:
编辑、克隆与权限
删除数据源及影响
在数据源列表,单击数据源的删除按钮,可以进行删除操作。但在计算资源管理中绑定计算资源时自动创建的数据源无法直接删除。您可以在管理中心左侧导航栏单击计算资源,找到待删除的计算资源,然后单击解绑。解绑完成后会同步删除该数据源。
删除数据源对数据集成模块的影响如下:
前置操作:在执行删除前,请务必确认该数据源是否关联了任何生产环境的同步任务。
解决方案:若存在关联任务,请先通过批量操作修改任务归属的数据源,并重新提交、发布。
删除场景 | 操作影响 |
删除【开发】和【生产】两个环境 | • 生产任务将彻底失败,无法运行。 • 在开发环境配置新任务时,该数据源不可见。 |
仅【开发】环境 | • 生产任务可正常运行。 • 但编辑该任务时,无法获取元数据(如表结构)。 • 在开发环境配置新任务时,该数据源不可见。 |
仅【生产】环境 | • 生产任务将彻底失败,无法运行。 •在开发环境使用此数据源的任务,将无法提交发布到生产环境。 |
对其他模块的影响如下:
功能模块 | 风险等级 | 核心影响及解决方案 |
运维中心 | 高 | 影响:所有依赖该数据源的周期计算/数据集成任务将运行失败。 方案:通过批量操作修改任务的数据源,并重新发布。 |
数据服务API | 高 | 影响:所有基于该数据源生成的生成API及服务编排将调用失败。 方案:为受影响的API更换数据源。 |
数据分析 | 中 | 影响:在数据分析模块中,针对该数据源的查询任务将执行失败。 方案:在执行SQL查询时,更换为其他可用数据源。 |
数据质量 | 中 | 影响:已配置的数据质量监控规则的任务将检查异常。 方案:前往运维中心,将任务与DQC规则取消关联,或修改规则。 |
若数据源已授权跨工作空间的用户使用,删除数据源后,跨工作空间使用该数据源的任务也会执行失败。
进阶说明
数据源环境说明
工作空间模式:简单 VS 标准
为提供不同安全管控要求的用户生产数据,DataWorks为您提供简单模式和标准模式两种工作空间模式。详见:必读:简单模式和标准模式的区别。
简单模式:只有一个环境,所有开发操作直接作用于生产,适合快速验证或个人测试使用。
标准模式:标准模式(企业级推荐),内置开发环境与生产环境。您可以为两个环境配置不同的数据源(如测试库与生产库)或不同的访问权限,实现数据隔离。
数据源环境隔离
标准模式的工作空间支持数据源环境隔离。同一个名称的数据源可存在开发环境和生产环境两套配置,设置两个不同的数据库/实例,使任务在测试和生产调度时操作的数据隔离,确保生产环境数据的安全。如:执行数据开发或离线同步任务时,系统自动根据任务当前所在环境,访问对应的数据库,避免生产库的数据被节点调试等操作污染。
数据集成模块中仅标准模式工作空间下的单表离线同步任务支持数据源开发、生产隔离,其他类型同步任务均使用生产环境数据源。
仅配置生产环境,未配置开发环境信息的数据源,在数据开发配置节点时,无法选择该数据源。
若简单模式升级为标准模式,会将原有的一个数据源拆分为生产环境和开发环境隔离的两个数据源。详情请参见场景:工作空间模式升级(简单模式升级标准模式)。
与数据集成模块数据源的关系
简单模式:
工作空间为简单模式时,仅拥有一个环境,在数据集成侧创建的数据源与管理中心侧创建的数据源之间无区别。
标准模式:
在管理中心创建数据源,会自动在数据集成侧创建的同名数据源,两者共享数据源的生产环境配置。
在数据集成侧创建数据源,也会自动在管理中心创建同名数据源。但该数据源仅具备生产环境信息,开发环境会显示信息缺失。此类数据源需补全开发环境信息后才可以在数据开发中使用。
为保证数据源信息完整,建议您始终在“管理中心”统一创建和管理所有数据源。
常见问题
标准模式工作空间中配置了数据源的任务,在开发环境执行成功,在生产调度时执行失败?
分别排查数据源的开发环境和生产环境测试连接是否成功。
分别排查开发环境和生产环境的数据库数据内容是否一致,且符合业务现状。
开发环境数据源和生产环境数据源有什么用?
您可以为开发环境和生产环境分别配置独立的数据源。开发环境数据源仅用于节点的开发与调试,而生产环境数据源则专用于已发布节点的周期性调度,两者严格分离,可有效防止测试操作影响生产数据。
为什么数据源连通性测试失败?
通常由以下原因导致,请逐一排查。网络联通配置可参考:网络连通。
凭证错误:检查您填写的用户名、密码是否正确 。
访问对象:检查您填写的数据库、Bucket等连接对象名称是否正确,以及所使用的账号密码是否有访问权限。
地址或端口错误:检查数据源的连接地址和端口号是否填写无误。若地址填写的是HOST域名,确保域名可被正常解析,参见:内网DNS解析 (PrivateZone)。
网络不通:确检查数据源与资源组的网络是否连通,如果数据源有白名单控制,检查资源组已绑定的交换机网段是否已添加到白名单中;若使用Serverless资源组连接公网数据源,请检查是否已按要求配置NAT网关。
计算资源和数据源有什么区别?
计算资源是指DataWorks中可用于执行数据处理和分析任务的资源实例,具有计算操作能力。它通常指代底层的计算引擎,例如MaxCompute、Hologres、AnalyticDB等,主要用于执行数据开发和调度任务。
数据源在DataWorks中可用于连接不同的数据存储服务,具有存储和管理数据的功能。数据源的作用是提供数据读取和写入的接口,主要用于同步和集成任务。除此之外,数据源也可以支持如数据库节点、数据服务API、查询分析等功能。