云服务器内容精选

  • 创建OBS委托 操作场景 创建OBS数据源前需要用户提前创建好授权给GaussDB(DWS)具有OBS OperateAccess或OBS Administrator权限的委托。 操作步骤 鼠标移动至页面右上角账号,单击“统一身份认证”,进入统一身份认证服务页面。 在左侧导航栏单击“委托”,在委托页面右上角单击“创建委托”。 创建委托时委托类型选择“云服务”,云服务选择“DWS”。 单击“下一步”,对委托授予OBS服务的“OBS OperateAccess”或“OBS Administrator”权限。 单击“下一步”,选择授权资源范围为“所有资源”或需要访问的资源,然后确认无误后提交。
  • 使用OBS数据源 GaussDB(DWS)使用外表方式访问OBS上的数据。委托方式与非委托方式,在外表上体现出来的差异仅在于指定了不同的SERVER。 对于非委托方式,控制台提供的SERVER包含access_key和secret_access_key参数,分别对应OBS访问协议的AK和SK值。 对于委托方式,控制台提供的SERVER包含access_key、secret_access_key和security_token参数,分别对应OBS访问协议的临时AK、临时SK和统一身份认证服务IAM中临时安全凭证的SecurityToken值。 在创建好OBS委托和OBS数据源之后,用户从控制台获得相应的包含委托信息的SERVER,假设为obs_server。用户创建和使用外表与非委托方式无差异。关于如何使用OBS数据源,具体请参见从OBS导入数据。 如下示例为通过外表读取OBS上的数据。 建立OBS外表customer_address,不包含分区列。obs_server上的文件,其格式为‘orc’,对应的存储目录为'/user/obs/region_orc11_64stripe1/'。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 CREATE FOREIGN TABLE customer_address ( ca_address_sk integer not null, ca_address_id char(16) not null, ca_street_number char(10) , ca_street_name varchar(60) , ca_street_type char(15) , ca_suite_number char(10) , ca_city varchar(60) , ca_county varchar(30) , ca_state char(2) , ca_zip char(10) , ca_country varchar(20) , ca_gmt_offset decimal(36,33) , ca_location_type char(20) ) SERVER obs_server OPTIONS ( FOLDERNAME '/user/obs/region_orc11_64stripe1/', FORMAT 'ORC', ENCODING 'utf8', TOTALROWS '20' ) DISTRIBUTE BY roundrobin; 通过外表查询OBS上的数据。 1 2 3 4 5 SELECT COUNT(*) FROM customer_address; count ------- 20 (1row)
  • 相关操作 编辑数据连接:在数据连接页面的连接列表中,找到所需编辑的连接,然后单击“编辑”。根据需要修改连接参数,参数描述可参考表1。 编辑时如果不涉及修改密码,可不填写此项,系统会自动带入上次连接创建时的密码。 完成修改后,单击“测试”测试数据连接是否可以正常连接,如果可以正常连接,单击“保存”。如果测试连接无法连通,数据连接将无法创建,请根据错误提示重新修改连接参数后再进行重试。 删除数据连接:在数据连接页面的连接列表中,找到所需删除的连接,然后单击“删除”。在删除确认对话框中,了解删除连接的影响后,若要删除,单击“确定”。 如果待删除的连接已被引用,则不可直接删除。删除前需要根据删除提示窗口中的数据连接引用列表,到各组件中解除对该连接的引用,然后再尝试重新删除。 若删除数据连接,此数据连接下的数据表信息也会被删除,请谨慎操作。
  • 创建数据连接 参考访问DataArts Studio实例控制台登录DataArts Studio管理控制台。 在DataArts Studio控制台首页,选择对应工作空间的“管理中心”模块,进入管理中心页面。 在管理中心页面,单击“数据连接”,进入数据连接页面并单击“创建数据连接”。 图1 创建数据连接 在创建连接页面中,选择“数据连接类型”,并参见表1配置相关参数。 对于集群化的数据源(例如MRS、DWS、RDS、MySQL、Oracle、DIS、ECS),如果使用两套集群,DataArts Studio通过管理中心的创建数据连接区分开发环境和生产环境的数据湖服务,在开发和生产流程中自动切换对应的数据湖。因此您需要准备两套数据湖服务,且两套数据湖服务的版本、规格、组件、区域、VPC、子网以及相关配置等信息,均应保持一致。创建数据连接的详细操作请参见新建数据连接。 对于Serverless服务(例如DLI),DataArts Studio通过管理中心的环境隔离来配置生产环境和开发环境数据湖服务的对应关系,在开发和生产流程中自动切换对应的数据湖。因此您需要在Serverless数据湖服务中准备两套队列、数据库资源,建议通过名称后缀进行区分,详细操作请参见配置企业模式环境隔离。 对于DWS、MRS Hive和MRS Spark这三种数据源,如果在创建数据连接时选择同一个集群,则需要配置数据源资源映射的DB数据库映射关系进行开发生产环境隔离,详细操作请参见DB配置。 表1 数据连接 数据连接类型 参数说明 DWS 请参见配置DWS数据连接。 DLI 请参见配置DLI数据连接。 MRS Hive 请参见配置MRS Hive数据连接。 MRS HBase 请参见配置MRS HBase数据连接。 MRS Kafka 请参见配置MRS Kafka数据连接。 MRS Spark 请参见配置MRS Spark数据连接。 MRS Clickhouse 请参见配置MRS Clickhouse数据连接。 MRS Hetu 请参见配置MRS Hetu数据连接。 MRS Impala 请参见配置MRS Impala数据连接。 MRS Ranger 请参见配置MRS Ranger数据连接。 MRS Presto 请参见配置MRS Presto数据连接。 MRS Doris 请参见配置MRS Doris数据连接。 RDS 请参见配置RDS数据连接。 RDS连接类型支持连接RDS中的MySQL/PostgreSQL/达梦数据库 DM/SQL Server/SAP HANA等关系型数据库。 MySQL(待下线) 不建议使用MySQL(待下线)连接器,推荐使用RDS连接MySQL数据源,请参见配置RDS数据连接。 ORACLE 请参见配置ORACLE数据连接。 DIS 请参见配置DIS数据连接。 主机连接 请参见配置主机连接。 单击“测试”,测试数据连接的连通性。如果无法连通,数据连接将无法创建。 测试通过后,单击“保存”,完成数据连接的创建。
  • 前提条件 在创建数据连接前,请确保您已创建所要连接的数据湖(如DataArts Studio所支持的数据库、云服务等)。 在创建DWS类型的数据连接前,您需要先在DWS服务中创建集群,并且具有KMS密钥的查看权限。 在创建MRS HBase、MRS Hive等MRS类型的数据连接前,需确保您已购买MRS集群,并且在创建数据连接时已购买选择所需要的组件。 在创建数据连接前,请确保待连接的数据湖与DataArts Studio实例之间网络互通。 如果数据湖为云下的数据库,则需要通过公网或者专线打通网络,确保数据源所在的主机可以访问公网,并且防火墙规则已开放连接端口。 如果数据湖为云上服务(如DWS、MRS等),则网络互通需满足如下条件: DataArts Studio实例(指DataArts Studio实例中的CDM集群)与云上服务处于不同区域的情况下,需要通过公网或者专线打通网络。 DataArts Studio实例(指DataArts Studio实例中的CDM集群)与云上服务同区域情况下,同虚拟私有云、同子网、同安全组的不同实例默认网络互通;如果同虚拟私有云但是子网或安全组不同,还需配置路由规则及安全组规则,配置路由规则请参见如何配置路由规则章节,配置安全组规则请参见如何配置安全组规则章节。 此外,您还必须确保该云服务的实例与DataArts Studio工作空间所属的企业项目必须相同,如果不同,您需要修改工作空间的企业项目。 如果使用企业模式,您还需要注意以下事项: 由于企业模式下需要区分开发环境和生产环境,因此您需要分别准备对应生产环境和开发环境的两套数据湖服务,用于隔离开发和生产环境: 对于集群化的数据源(例如MRS、DWS、RDS、MySQL、Oracle、DIS、ECS),如果使用两套集群,DataArts Studio通过管理中心的创建数据连接区分开发环境和生产环境的数据湖服务,在开发和生产流程中自动切换对应的数据湖。因此您需要准备两套数据湖服务,且两套数据湖服务的版本、规格、组件、区域、VPC、子网以及相关配置等信息,均应保持一致。创建数据连接的详细操作请参见新建数据连接。 对于Serverless服务(例如DLI),DataArts Studio通过管理中心的环境隔离来配置生产环境和开发环境数据湖服务的对应关系,在开发和生产流程中自动切换对应的数据湖。因此您需要在Serverless数据湖服务中准备两套队列、数据库资源,建议通过名称后缀进行区分,详细操作请参见配置企业模式环境隔离。 对于DWS、MRS Hive和MRS Spark这三种数据源,如果在创建数据连接时选择同一个集群,则需要配置数据源资源映射的DB数据库映射关系进行开发生产环境隔离,详细操作请参见DB配置。 例如,当您的数据湖服务为MRS集群时,需要准备两套MRS集群,且版本、规格、组件、区域、VPC、子网等保持一致。如果某个MRS集群修改了某些配置,也需要同步到另一套MRS集群上。
  • 响应参数 表2 参数说明 参数 参数类型 描述 users Array of objects 列表中每个元素表示一个数据库用户,详情参见表3。 total_count Integer 数据库用户总数。 表3 users字段数据结构说明 参数 参数类型 描述 name String 用户名称。 attribute Object 用户的权限属性,详情参见表4。 memberof String 用户的默认权限。 lock_status Boolean 用户是否被锁,取值为“true”或“false”。 表4 attribute字段数据结构说明 参数 参数类型 描述 rolsuper Boolean 用户是否具有管理员权限,取值为“true”或“false”。 rolinherit Boolean 用户是否自动继承其所属角色的权限,取值为“true”或“false”。 rolcreaterole Boolean 用户是否支持创建其他子用户,取值为“true”或“false”。 rolcreatedb Boolean 用户是否可以创建数据库,取值为“true”或“false”。 rolcanlogin Boolean 用户是否可以登录数据库,取值为“true”或“false”。 rolconnlimit Integer 用户连接实例的最大并发连接数。-1表示没有限制。 rolreplication Boolean 用户是否属于复制角色,取值为“true”或“false”。 rolbypassrls Boolean 用户是否绕过每个行级安全策略,取值为“true”或“false”。 rolpassworddeadline String 用户密码过期时间。
  • 响应示例 查询数据库用户列表成功。 { "users": [ { "name": "root", "attributes": { "rolsuper": false, "rolinherit": true, "rolcreaterole": true, "rolcreatedb": true, "rolcanlogin": true, "rolconnlimit": -1, "rolreplication": false, "rolbypassrls": false, "rolpassworddeadline": "" }, "memberof": "{gs_role_copy_files,gs_role_signal_backend,gs_role_tablespace,gs_role_replication,gs_role_account_lock}", "lock_status": false } ], "total_count": 1 }
  • URI GET https://{Endpoint}/v3/{project_id}/instances/{instance_id}/db-users 表1 参数说明 参数 是否必选 参数类型 描述 project_id 是 String 租户在某一Region下的项目ID。 获取方法请参见获取项目ID。 instance_id 是 String 实例ID。 offset 否 Integer 分页符。从第一条数据偏移offset页数据后开始查询,默认为0(偏移0页数据,表示从第一条数据开始查询),必须为数字,不能为负数。例如:该参数指定为1,limit指定为10,则只展示第11-20条数据。 limit 否 Integer 每页显示的条目数量,取值范围[1, 100],默认10。
  • URI GET https://{Endpoint}/v3/{project_id}/instances/{instance_id}/databases 表1 参数说明 参数 是否必选 参数类型 描述 project_id 是 String 租户在某一Region下的项目ID。 获取方法请参见获取项目ID。 instance_id 是 String 实例ID。 offset 否 Integer 分页符。从第一条数据偏移offset页数据后开始查询,默认为0(偏移0页数据,表示从第一条数据开始查询),必须为数字,不能为负数。例如:该参数指定为1,limit指定为10,则只展示第11~20条数据。 limit 否 Integer 每页显示的条目数量,取值范围[1, 100],默认10。
  • 响应示例 查询数据库列表成功。 { "databases": [ { "name": "gaussdb_test", "owner": "root", "size": "25 MB", "datctype": "en_US.UTF-8", "character_set": "UTF8", "collate_set": "en_US.UTF-8", "compatibility_type": "GaussDB" }, { "name": "gaussdb_test1", "owner": "root", "size": "25 MB", "datctype": "en_US.UTF-8", "character_set": "UTF8", "collate_set": "en_US.UTF-8", "compatibility_type": "GaussDB" }, { "name": "gaussdb_test2", "owner": "root", "size": "25 MB", "datctype": "en_US.UTF-8", "character_set": "UTF8", "collate_set": "en_US.UTF-8", "compatibility_type": "GaussDB" } ], "total_count": 3 }
  • 响应参数 表2 参数说明 参数 参数类型 描述 databases Array of objects 列表中每个元素表示一个数据库。详情参见表3。 total_count Integer 总记录数。 表3 databases字段数据结构说明 参数 参数类型 描述 name String 数据库名称。 owner String 数据库所属用户。 character_set String 数据库使用的字符集,例如UTF8。 collate_set String 数据库排序集,例如en_US.UTF-8等。 size String 数据库大小。 datctype String 数据库使用的字符分类,例如en_US.UTF-8等。 compatibility_type String 数据库兼容的类型,如GaussDB,M。
  • 前提条件 有可用的LakeFormation实例。详情请参见《湖仓构建使用指南》中的“创建LakeFormation实例”章节。 创建包含LakeFormation权限的委托(需包含最小权限),可参见《湖仓构建使用指南》中的“数据权限授权”章节配置权限,如果不配置在使用时将会报错。 DWS调用LakeFormation管控面API时,账号如果为子账号则需要包含LakeFormation权限(至少包含lakeformation:instance:access、lakeformation:instance:describe)。
  • 前提条件 已参考元数据迁移完成元数据迁移。 当前用户具有OBS相关操作权限,且已创建用于存储数据的OBS并行文件系统。 需将待迁移的权限策略文件导出,并上传至OBS并行文件系统中。权限导出操作可联系对应服务支持人员。 权限策略中授权主体(除角色外)需要提前创建,且名称需保持一致;权限策略中包含的元数据已存在,且名称一致。 如果迁移类型为DLF,其对应关系及迁移策略如下: RAM用户:IAM用户(如果对应的IAM用户不存在,该权限策略不进行迁移) RAM角色:IAM用户组(如果对应的IAM用户组不存在,该权限策略不进行迁移) DLF角色:LakeFormation角色(不存在会自动创建) 如果迁移类型为Ranger,则仅支持Ranger的allow权限迁移,不支持deny权限迁移。
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 job_id String 任务ID。 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误消息。 状态码: 500 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误消息。
  • 请求示例 清除指定DB的数据 PUT https://{endpoint}/v3/0549b4a43100d4f32f51c01c2fe4acdb/instances/e73893ef73754465a8bd2e0857bbf13ein12/databases { "action" : "flush", "db_id" : 1 } 清除所有数据 PUT https://{endpoint}/v3/0549b4a43100d4f32f51c01c2fe4acdb/instances/e73893ef73754465a8bd2e0857bbf13ein12/databases { "action" : "flush" }