华为云用户手册

  • 使用说明 在AstroZero中新添加的业务用户,若没有配置指定的权限,默认使用系统预置的Portal User Profile权限。若默认Portal User Profile权限不能满足需求,即业务用户需要额外的权限时,可参照本章节对业务用户进行权限配置。 在AstroZero中,修改业务用户权限有如下两种方式: 方式一:修改系统预置的权限Portal User Profile 权限配置Portal User Profile是全局的,修改Portal User Profile权限会影响系统所有的应用。 方式二:新建权限配置 在预置的Portal User Profile权限基础上,自定义业务用户的权限配置和拓展。在AstroZero的权限配置功能中,基于某个权限配置新建的Profile,将会继承原Profile的全部权限。
  • 配置应用菜单 参考如何进入业务配置中心中操作,登录AstroZero业务配置中心。 在“应用配置”页签中,选择应用所在的类别(例如App),单击具体的应用。 在左侧导航栏中,选择“菜单配置”。 右侧会出现已设置好的菜单以及运行态界面菜单显示效果。在运行环境安装的应用包中带有的菜单都是受保护的,不可直接编辑修改。 图1 菜单配置 在菜单树设置中,单击“菜单树”后的“+”,选择“添加页签”。 图2 添加页签 配置导航页签信息,单击“保存”。 表1 新建页签参数说明 参数 参数说明 页签类型 选择导航页签的类型。 主页页签:用于展示个人任务相关的信息。 对象页签:关联一个对象的布局,将展示指定对象的某个布局页面。 标准页面页签:用于关联并展示一个标准页面。 高级页面页签:用于关联并展示一个高级页面。 BPM页签:用于关联并展示一个BPM。 Web页签:用于关联一个URL,将展示URL对应的网页或页面。 状态机页签:用于关联并展示一个状态机。 报表页签:用于关联并展示一个报表。 仪表板页签:用于关联并展示一个仪表板。 “页签类型”选项配置不同,界面展示的参数也会有所不同。请根据“页签类型”具体选项,配置参数。 显示区域 导航页签的显示区域。 主页菜单:会按照配置应用菜单中选择的布局样式进行显示,例如显示在侧栏或者顶栏区域。 自定义菜单栏:选择该方式后,在应用的运行态Portal中,单击右上角用户名,会在下拉选项中显示导航页签。 打开方式 导航页签的打开方法。 当前窗口:选择该导航页签后,在当前窗口打开页面。 新窗口:选择该导航页签后,在新窗口打开页面。 标签 导航页签的展示名称。 名称 导航页签在系统中的存储标识,系统会根据“标签”取值自动生成。 图标 导航页签的展示图标。 页面 选择该导航页签后,展示的页面。 描述 导航页签的描述信息。
  • 操作步骤 单击伙伴发送的邀请链接。 阅读《客户关联华为云合作伙伴须知》,并勾选“我已经阅读并同意”。 关联合作伙伴。 注册新的华为云账号并关联。 单击“注册并关联”,进入注册账号页面。 设置密码、手机号等信息后,输入短信验证码,单击“注册”。 使用已注册的华为云账号关联。 单击“已有账号,登录后关联”。 在登录页面,输入账号名和密码,单击“登录”。 若您存在同名的华为云账号和华为账号,请您选择华为云账号进行登录。 勾选“我已阅读并同意《华为云用户协议》、《隐私政策说明》、《客户关联华为云合作伙伴须知》以及《关联伙伴条款》,同时我同意华为云从华为账号服务获取我的下述 个人信息:华为账号名、手机号、邮件地址、注册国家/地区、账号标识和状态信息。若不同意,可点击取消开通华为云。”后,单击“开通并关联”,成功开通华为云后方可关联成功。
  • 申请关联合作伙伴及关联的注意事项 客户线下联系合作伙伴,获取邀请链接或者二维码,通过复制链接到浏览器或者扫描二维码,完成注册和关联合作伙伴。 注意事项如下: 以下客户不能关联合作伙伴: 客户在国际站注册; 客户已关联其他合作伙伴; 客户是解决方案提供商或者云经销商伙伴; 客户已被华为云报备; 客户已经或者正在加入政府补贴类计划; 客户已加入华为云奖励推广计划; 客户为消费者云用户; 客户注册时间超过7天或者存在现金消费不能直接关联合作伙伴,需要先联系合作伙伴完成报备后再关联。 客户华为云账号有欠费,客户需充值还款后再关联伙伴; 以下客户不能以代售模式关联合作伙伴: 客户已与华为云签署指定合同(线下直签合同、电销授权合同折扣、直签特价商务、专业服务合同)等; 后付费客户(即申请了信用额度的客户); 客户存在未失效预留实例; 客户华为云账号有欠票金额; 客户账户中有未消费完的储值卡,客户需消费完储值卡后再关联伙伴; 客户账号为关联有企业子账号的企业主账号,若企业主账号想要以代售模式关联合作伙伴,需要先解除与企业子账号的关联关系才能以代售模式关联合作伙伴; 客户账号为企业子账号,且该企业子账号关联的企业主账号未以代售模式关联合作伙伴; 客户账号还有充值赠送的余额没有使用,客户需使用完充值赠送的余额后再关联伙伴; 客户以代售模式关联合作伙伴时,原账户余额及代金券、现金券处理规则如下: 客户可以自行申请提现操作。 客户名下的代金券在关联伙伴之后仍可继续使用,未用完的现金券将会被华为云回收。 父主题: 如何申请关联合作伙伴
  • 操作步骤 使用手机扫描伙伴发送的二维码。 阅读《客户关联华为云合作伙伴须知》,并勾选“我已经阅读并同意”。 仅关联合作伙伴成为代售模式客户需要执行此步骤。 关联合作伙伴。 注册新的华为云账号并关联。 单击“同意”。 输入手机号码,获取并输入短信验证码,单击“下一步”。 设置密码,单击“完成”。 勾选“我已阅读并同意《华为云用户协议》、《隐私政策说明》、《客户关联华为云合作伙伴须知》以及《伙伴关联条款》,同时我同意华为云从华为账号服务获取我的下述个人信息:华为账号名、手机号、邮件地址、注册国家/地区、账号标识和状态信息。若不同意,可点击取消开通华为云。”后,单击“开通”,成功开通华为云后方可关联成功。 使用已注册的华为云账号关联。 单击“已有账号,登录后关联”。 进入登录页面,输入用户名和密码,单击“登录”。
  • 修改华为账号手机号 进入“基本信息”页面。 在“华为账号信息”区域,单击“前往管理”。 在“账号与安全”页面,单击“手机号”后的“更改”。 进行身份验证。 通过手机号码进行身份验证 单击“短信验证码”后面的“获取验证码”,获取并输入短信验证码,单击“下一步”。 通过注册邮箱进行身份验证 单击“选择其他验证方式”,选择邮箱,单击“邮件验证码”后面上午“获取验证码”,获取并输入邮件验证码,单击“下一步”。 如果手机号或邮箱都无法验证身份,请提交工单处理或拨打客服电话4000-955-988反馈。参考FAQ准备好用于身份认证的相关材料。 输入新手机号码并单击“获取验证码”,获取并输入短信验证码。 单击“确定”。 系统提示修改手机号码成功。 华为账号修改绑定的手机号码时,系统会根据您当前的操作环境进行检测。如识别本次操作可能存在风险,则修改手机号码时将会触发新手机号码延迟3天生效。我们建议您在经常登录此账号的终端设备或受信任的浏览器上操作修改手机号码。 父主题: 修改手机号
  • 应用运维方式 云堡垒机通过应用运维方式管理数据库,支持对以下系统版本的应用进行管理: 支持对Windows Server2008 R2及以上的Windows系统版本的应用进行管理。 此时,需通过在一台支持远程桌面的Windows系统上部署数据库客户端。通过Web浏览器远程登录Windows桌面并调用数据库客户端,实现云堡垒机对数据库类型应用的运维。 云堡垒机支持直接配置并调用的Windows系统的数据库客户端如表2所示。Windows主机上的其他类型数据库应用,都可通过配置应用服务器类型为“Other”,实现应用运维。 表2 支持直接调用的Windows系统上部署的数据库客户端 应用类型 支持调用的客户端 MySQL Tool MySQL Administrator Oracle Tool PL/SQL Developer SQL Server Tool SSMS dbisql dbisql PostgreSQL Navicat for PostgreSQL 支持对Centos7.9系统的Linux服务器的数据库应用进行管理。 Linux服务器仅支持调用达梦数据库V8的应用。 云堡垒机支持直接配置并调用的Linux服务器的数据库客户端如表3所示。 表3 支持直接调用的Linux服务器的数据库客户端 应用类型 支持调用的客户端 达梦数据库 达梦管理工具V8
  • 主机运维方式 目前云堡垒机主机运维,支持管理以下协议类型的云上数据库,包括MySQL、SQL Server、Oracle、DB2、PostgreSQL、GaussDB协议类型。云堡垒机支持数据库协议类型、版本,以及支持调用的数据库客户端软件版本,请参见表1。 表1 支持数据库协议类型、版本和数据库客户端 数据库类型 版本 支持调用客户端 MySQL 5.5,5.6,5.7,8.0 Navicat 11、12、15、16 MySQL Administrator 1.2.17 MySQL CMD DBeaver22、23(堡垒机V3.3.48.0及以上版本支持) Microsoft SQL Server 2014、2016、2017、2019、2022 Navicat 11、12、15、16 SSMS 17.6 Oracle 10g、11g、12c、19c、21c Toad for Oracle 11.0、12.1、12.8、13.2 Navicat 11、12、15、16 PL/SQL Developer 11.0.5.1790 DBeaver22、23(堡垒机V3.3.48.0及以上版本支持) DB2 DB2 Express-C DB2 CMD命令行 11.1.0 PostgreSQL 11、12、13、14、15 DBeaver22、23 GaussDB 2、3 DBeaver22、23
  • 准备软件 制作Windows操作系统私有镜像需准备的软件如表1所示。 表1 所需软件包 软件包名称 软件包说明 获取方式 Workspace_HDP_WindowsDesktop_Installer_x.x.x.iso Windows镜像制作工具。 点此获取镜像制作工具 点此获取镜像工具校验文件 操作系统ISO文件 Windows Server 2016数据中心版本 64位(中文、英文) Windows Server 2019数据中心版本 64位(中文、英文) 请根据用户需求类型从微软或者其他合法渠道获取正规操作系统ISO镜像文件。 须知: 操作系统的ISO镜像文件需为从正规渠道获取的官方纯净镜像。非官方镜像或私有定制镜像,对操作系统做了很多未知的修改,可能导致模板制作失败,或者与HDP不兼容导致无法使用,请勿使用此类镜像。 AnyBurn 光驱制作工具。 点此获取 VMTools驱动包 VMTools驱动 点此获取 应用程序 请用户根据个人需求准备应用软件(如办公、实时通讯等软件)。 自备 7z1900-x64.exe 7-Zip压缩软件,用于压缩/解压缩的软件包。 点此获取 CloudbaseInitSetup_xxx.msi 在使用镜像创建云服务器时,可自定义设定云服务器的hostname、hosts文件以及用户名密码。 根据Windows操作系统的不同位数,您需要下载不同版本的Cloudbase-Init工具安装包。 Cloudbase-Init分为稳定版本和Beta版本两种。 稳定版本获取路径: 64位:点此获取 32位:点此获取 Beta版本获取路径: 64位:点此获取 32位:点此获取 CloudResetPwdAgent.zip 云服务器的密码重置插件。 点此获取 GPU驱动 仅在制作GPU镜像时需要。 云应用支持RTX5000型号的直通卡。 RTX5000请参考如下方式获取驱动: 使用Web浏览器,登录英伟达官网,在驱动程序下载页面,根据操作系统(包括Windows驱动程序类型、语言)及GPU卡类型,配置参数,选择最新版本驱动进行下载。 例如,需要Windows Server 2019数据中心版的中文操作系统的桌面、使用RTX 5000显卡,则信息配置如下: 产品类型:NVIDIA RTX / Quadro 产品系列:Quadro RTX Series 产品家族:Quadro RTX 5000 操作系统:Windows Server 2019 语言:Chinese (Simplified) 外设驱动程序 请用户根据个人需求准备外设驱动程序。 自备 HW.SysAgent.Installer_64.msi HW.SysPrep.Installer_64.msi 云应用服务器发放和HDA升级时使用。 安装方式:双击安装。 点此获取HW.SysAgent 点此获取HW.SysAgent校验工具 点此获取HW.SysPrep 点此获取HW.SysPrep校验工具 WKSAppDhcpd_windows-amd64.msi 创建云应用服务器分配虚拟IP时使用。 安装方式:双击安装。 点此获取 点此获取校验工具 WKSRStorageAgent_windows-amd64.msi 使用云存储功能时使用。 安装方式:双击安装。 点此获取 点此获取校验工具 Sandboxie 通过Sandboxie软件,可以使应用以沙箱的方式运行,如需安装请参考如何安装沙箱软件?章节。 点此获取 父主题: 制作Windows私有镜像(基础镜像)
  • 配置步骤 登录防火墙设备的命令行配置界面。 查看防火墙版本信息。 display version 17:20:502017/03/09 Huawei Versatile Security Platform Software Software Version: USG6600 V100R001C30SPC300(VRP (R) Software, Version 5.30) 创建ACL并绑定到对应的vpn-instance。 acl number 3065 vpn-instance vpn64 rule 1 permit ip source 192.168.3.0 0.0.0.255 destination 192.168.1.0 0.0.0.255 rule 2 permit ip source 192.168.3.0 0.0.0.255 destination 192.168.2.0 0.0.0.255 rule 3 permit ip source 192.168.4.0 0.0.0.255 destination 192.168.1.0 0.0.0.255 rule 4 permit ip source 192.168.4.0 0.0.0.255 destination 192.168.2.0 0.0.0.255 q 创建ike proposal。 ike proposal 64 dh group5 authentication-algorithm sha1 integrity-algorithm hmac-sha2-256 sa duration 3600 q 创建ike peer,并引用之前创建的ike proposal,其中对端IP地址是1.1.1.1。 ike peer vpnikepeer_64 pre-shared-key ******** (********为您输入的预共享密码) ike-proposal 64 undo version 2 remote-address vpn-instance vpn64 1.1.1.1 sa binding vpn-instance vpn64 q 创建IPsec协议。 IPsec proposal IPsecpro64 encapsulation-mode tunnel esp authentication-algorithm sha1 q 创建IPsec策略,并引用ike policy和IPsec proposal。 IPsec policy vpnIPsec64 1 isakmp security acl 3065 pfs dh-group5 ike-peer vpnikepeer_64 proposal IPsecpro64 local-address xx.xx.xx.xx q 将IPsec策略应用到相应的子接口上去。 interface GigabitEthernet0/0/2.64 IPsec policy vpnIPsec64 q 测试连通性。 在上述配置完成后,我们可以利用您在云中的主机和您数据中心的主机进行连通性测试,如下图所示:
  • 操作步骤 下载Easy-RSA。 下载后请解压缩软件压缩包。 打开Easy-RSA shell。 打开命令行窗口,切换到软件所在目录,执行“.\EasyRSA-Start.bat”命令。 图1 打开Easy-RSA shell 初始化PKI环境。 执行“./easyrsa init-pki”命令,生成PKI,自动创建名为“pki”的文件夹。 (可选)配置变量参数。 默认按配置模板“vars.example”中描述的参数值进行配置。如需自定义参数值,先将“vars.example”复制到“pki”文件夹下并重命名为“vars”,再按需设置参数值。 图2 配置变量参数 生成CA证书。 执行“ ./easyrsa build-ca nopass”命令生成CA证书,存放在“pki”文件夹中。 生成服务端证书和私钥。 执行 “./easyrsa build-server-full filename_base nopass”命令生成服务端证书和私钥。 此命令中,“filename_base”为证书的CN,请根据实际填写。 “filename_base”必须是域名格式,否则无法正常托管到云证书管理服务,示例如下: ./easyrsa build-server-full p2cvpn.server nopass 生成客户端证书和私钥。 执行“ ./easyrsa build-client-full filename_base nopass”命令生成客户端证书和私钥。 查看服务端、客户端证书和私钥。 生成的服务端和客户端证书默认存放在“issued”文件夹中,生成的服务端和客户端的私钥默认存放在“private”文件夹中。 图3 查看证书和私钥
  • 操作步骤 下载Easy-RSA。 下载后请解压缩软件压缩包。 打开Easy-RSA shell。 打开命令行窗口,切换到软件所在目录,执行“.\EasyRSA-Start.bat”命令。 图1 打开Easy-RSA shell 初始化PKI环境。 执行“./easyrsa init-pki”命令,生成PKI,自动创建名为“pki”的文件夹。 (可选)配置变量参数。 默认按配置模板“vars.example”中描述的参数值进行配置。如需自定义参数值,先将“vars.example”复制到“pki”文件夹下并重命名为“vars”,再按需设置参数值。 图2 配置变量参数 生成CA证书。 执行“ ./easyrsa build-ca nopass”命令生成CA证书,存放在“pki”文件夹中。 生成服务端证书和私钥。 执行 “./easyrsa build-server-full filename_base nopass”命令生成服务端证书和私钥。 此命令中,“filename_base”为证书的CN,请根据实际填写。 “filename_base”必须是域名格式,否则无法正常托管到云证书管理服务,示例如下: ./easyrsa build-server-full p2cvpn.server nopass 生成客户端证书和私钥。 执行“ ./easyrsa build-client-full filename_base nopass”命令生成客户端证书和私钥。 查看服务端、客户端证书和私钥。 生成的服务端和客户端证书默认存放在“issued”文件夹中,生成的服务端和客户端的私钥默认存放在“private”文件夹中。 图3 查看证书和私钥
  • 示例6 通过外表读取OBS上的json数据。 OBS上有如下json文件,json对象中存在嵌套、数组,部分对象的某些字段缺失,部分对象name重复。 {"A" : "simple1", "B" : {"C" : "nesting1"}, "D" : ["array", 2, {"E" : "complicated"}]} {"A" : "simple2", "D" : ["array", 2, {"E" : "complicated"}]} {"A" : "simple3", "B" : {"C" : "nesting3"}, "D" : ["array", 2, {"E" : "complicated3"}]} {"B" : {"C" : "nesting4"},"A" : "simple4", "D" : ["array", 2, {"E" : "complicated4"}]} {"A" : "simple5", "B" : {"C" : "nesting5"}, "D" : ["array", 2, {"E" : "complicated5"}]} 创建obs_server,对应的foreign data wrapper为DFS_FDW。 1 2 3 4 5 6 CREATE SERVER obs_server FOREIGN DATA WRAPPER DFS_FDW OPTIONS ( ADDRESS 'obs.xxx.xxx.com', ACCESS_KEY 'xxxxxxxxx', SECRET_ACCESS_KEY 'yyyyyyyyyyyyy', TYPE 'OBS' ); 认证用的AK和SK硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全。 ADDRESS是OBS的终端节点(Endpoint),请根据实际替换。也是使用region参数,通过指定regionCode在region_map文件中查找对应的域名。 ACCESS_KEY和SECRET_ACCESS_KEY 是云账号体系访问密钥。请根据实际替换。 TYPE表示创建的Server为OBS Server。请保持OBS取值不变。 创建OBS外表json_f ,定义字段名,以d#2_e为例,从命名可以看出该字段是数组d的第二个元素里嵌套的e对象。表关联的OBS服务器为obs_server。foldername为外表中数据源文件目录,即表数据目录在OBS上对应的文件目录。 认证用的AK和SK硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全。 1 2 3 4 5 6 7 8 9 10 11 CREATE FOREIGN TABLE json_f ( a VARCHAR(10), b_c TEXT, d#1 INTEGER, d#2_e VARCHAR(30) )SERVER obs_server OPTIONS ( foldername '/xxx/xxx/', format 'json', encoding 'utf8', force_mapping 'true' )distribute by roundrobin; 查询外表json_f。由于容错性参数force_mapping默认打开,json对象缺失的字段会填NULL;json对象name重复的以最后一次出现的name为准。 1 2 3 4 5 6 7 8 9 SELECT * FROM json_f; a | b_c | d#1 | d#2_e ---------+----------+-----+-------------- simple1 | nesting1 | 2 | complicated1 simple2 | | 2 | complicated2 simple3 | nesting3 | 2 | complicated3 simple4 | nesting4 | 2 | complicated4 repeat | nesting5 | 2 | complicated5 (5 rows)
  • 示例7 通过外表读取DLI多版本外表。DLI多版本外表示例仅8.1.1及以上版本支持。 创建dli_server,对应的foreign data wrapper为DFS_FDW。 1 2 3 4 5 6 7 8 9 CREATE SERVER dli_server FOREIGN DATA WRAPPER DFS_FDW OPTIONS ( ADDRESS 'obs.xxx.xxx.com', ACCESS_KEY 'xxxxxxxxx', SECRET_ACCESS_KEY 'yyyyyyyyyyyyy', TYPE 'DLI', DLI_ADDRESS 'dli.xxx.xxx.com', DLI_ACCESS_KEY 'xxxxxxxxx', DLI_SECRET_ACCESS_KEY 'yyyyyyyyyyyyy' ); 认证用的AK和SK硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全。 ADDRESS是OBS的终端节点(Endpoint)。DLI_ADDRESS是DLI的终端节点(Endpoint),请根据实际替换。 ACCESS_KEY和SECRET_ACCESS_KEY 是云账号体系访问OBS服务的密钥。请根据实际替换。 DLI_ACCESS_KEY和DLI_SECRET_ACCESS_KEY是云账号体系访问DLI服务的密钥。请根据实际替换。 TYPE表示创建的Server为DLI Server。请保持DLI取值不变。 创建访问DLI多版本的OBS外表customer_address,不包含分区列,表关联的DLI服务器为dli_server。其中project_id为xxxxxxxxxxxxxxx,dli上的database_name为database123,需要访问的table_name为table456,根据实际替换。 认证用的AK和SK硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 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 dli_server OPTIONS ( FORMAT 'ORC', ENCODING 'utf8', DLI_PROJECT_ID 'xxxxxxxxxxxxxxx', DLI_DATABASE_NAME 'database123', DLI_TABLE_NAME 'table456' ) DISTRIBUTE BY roundrobin; 通过外表查询DLI多版本表的数据。 1 2 3 4 5 SELECT COUNT(*) FROM customer_address; count ------- 20 (1 row)
  • 示例4(仅云原生3.0版本支持) 通过partsupp外表往obs文件系统读取数据。 创建obs server。 认证用的AK和SK硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全。 1 2 3 4 5 6 CREATE SERVER obs_srv FOREIGN DATA WRAPPER dfs_fdw OPTIONS ( address 'xxx', type 'obs', access_key 'xxx', secret_access_key 'xxx' ); 创建obs外表partsupp,使用disk cache中的冷缓存。 1 2 3 4 5 6 7 8 9 10 11 12 13 CREATE FOREIGN TABLE PARTSUPP ( PS_PARTKEY BIGINT NOT NULL, PS_SUPPKEY BIGINT NOT NULL, PS_AVAILQTY BIGINT NOT NULL, PS_SUPPLYCOST DECIMAL(15,2) NOT NULL, PS_COMMENT VARCHAR(199) NOT NULL ) SERVER obs_srv options ( encoding 'utf-8', format 'parquet', foldername 'xxx', cache_policy 'NONE' ) READ ONLY DISTRIBUTE BY ROUNDROBIN; 通过外表partsupp往obs上读取数据。 1 SELECT * FROM PARTSUPP;
  • 示例5 关于包含信息约束(Informational Constraint)HDFS外表的相关操作。 创建含有信息约束(Informational Constraint)的HDFS外表。 1 2 3 4 5 6 7 8 9 10 CREATE FOREIGN TABLE ft_region ( R_REGIONKEY int, R_NAME TEXT, R_COMMENT TEXT , primary key (R_REGIONKEY) not enforced) SERVER hdfs_server OPTIONS(format 'orc', encoding 'utf8', foldername '/user/hive/warehouse/mppdb.db/region_orc11_64stripe') DISTRIBUTE BY roundrobin; 查看region表是否有信息约束索引: 1 2 3 4 5 6 7 8 9 10 11 SELECT relname,relhasindex FROM pg_class WHERE oid='ft_region'::regclass; relname | relhasindex ------------------------+------------- ft_region | f (1 row) SELECT conname, contype, consoft, conopt, conindid, conkey FROM pg_constraint WHERE conname ='ft_region_pkey'; conname | contype | consoft | conopt | conindid | conkey ----------------+---------+---------+--------+----------+-------- ft_region_pkey | p | t | t | 0 | {1} (1 row) 删除信息约束: 1 2 3 4 5 6 ALTER FOREIGN TABLE ft_region DROP CONSTRAINT ft_region_pkey RESTRICT; SELECT conname, contype, consoft, conindid, conkey FROM pg_constraint WHERE conname ='ft_region_pkey'; conname | contype | consoft | conindid | conkey ---------+---------+---------+----------+-------- (0 rows) 添加一个唯一信息约束: 1 ALTER FOREIGN TABLE ft_region ADD CONSTRAINT constr_unique UNIQUE(R_REGIONKEY) NOT ENFORCED; 删除唯一信息约束: 1 2 3 4 5 6 ALTER FOREIGN TABLE ft_region DROP CONSTRAINT constr_unique RESTRICT; SELECT conname, contype, consoft, conindid, conkey FROM pg_constraint WHERE conname ='constr_unique'; conname | contype | consoft | conindid | conkey ---------+---------+---------+----------+-------- (0 rows) 添加一个唯一信息约束: 1 2 3 4 5 6 7 ALTER FOREIGN TABLE ft_region ADD CONSTRAINT constr_unique UNIQUE(R_REGIONKEY) NOT ENFORCED disable query optimization; SELECT relname,relhasindex FROM pg_class WHERE oid='ft_region'::regclass; relname | relhasindex ------------------------+------------- ft_region | f (1 row) 删除唯一信息约束: 1 ALTER FOREIGN TABLE ft_region DROP CONSTRAINT constr_unique CASCADE;
  • 示例1 在HDFS通过HIVE导入TPC-H benchmark测试数据表part表及region表。part表的文件路径为/user/hive/warehouse/partition.db/part_4,region表的文件路径为/user/hive/warehouse/mppdb.db/region_orc11_64stripe/。 创建HDFS_Server,对应的foreign data wrapper为HDFS_FDW或者DFS_FDW。 1 CREATE SERVER hdfs_server FOREIGN DATA WRAPPER HDFS_FDW OPTIONS (address '10.10.0.100:25000,10.10.0.101:25000',hdfscfgpath '/opt/hadoop_client/HDFS/hadoop/etc/hadoop',type'HDFS'); 在可选项options里面写入了HDFS集群对应的NameNode的IP地址及端口号。具体端口号请在MRS-HDFS服务配置中搜索参数“dfs.namenode.rpc.port”查看。本示例假设端口号为25000。 ‘10.10.0.100:25000,10.10.0.101:25000’中列出了两组NameNode的地址及端口号,分别表示HDFS的主NameNode及备NameNode,这里推荐使用该种主备方式填写。两组参量中间使用“,”进行分割。 创建HDFS外表。表关联的HDFS server为hdfs_server,表ft_region对应的HDFS服务器上的文件格式为‘orc’,在HDFS文件系统上对应的文件目录为'/user/hive/warehouse/mppdb.db/region_orc11_64stripe/'。 创建不包含分区列的HDFS外表: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 CREATE FOREIGN TABLE ft_region ( R_REGIONKEY INT4, R_NAME TEXT, R_COMMENT TEXT ) SERVER hdfs_server OPTIONS ( FORMAT 'orc', encoding 'utf8', FOLDERNAME '/user/hive/warehouse/mppdb.db/region_orc11_64stripe/' ) DISTRIBUTE BY roundrobin; 创建包含分区列的HDFS外表: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 CREATE FOREIGN TABLE ft_part ( p_partkey int, p_name text, p_mfgr text, p_brand text, p_type text, p_size int, p_container text, p_retailprice float8, p_comment text ) SERVER hdfs_server OPTIONS ( FORMAT 'orc', encoding 'utf8', FOLDERNAME '/user/hive/warehouse/partition.db/part_4' ) DISTRIBUTE BY roundrobin PARTITION BY (p_mfgr, p_brand) AUTOMAPPED; GaussDB(DWS)支持2种文件指定方式:通过关键字filenames指定和通过foldername指定。推荐通过使用foldername进行指定。关键字distribute指定了表ft_region的存储分布方式。 查看创建的外表: 1 2 3 4 5 6 7 8 9 10 11 SELECT * FROM pg_foreign_table WHERE ftrelid='ft_region'::regclass; ftrelid | ftserver | ftwriteonly | ftoptions ---------+----------+-------------+------------------------------------------------------------------------------ 16510 | 16509 | f | {format=orc,foldername=/user/hive/warehouse/mppdb.db/region_orc11_64stripe/} (1 row) select * from pg_foreign_table where ftrelid='ft_part'::regclass; ftrelid | ftserver | ftwriteonly | ftoptions ---------+----------+-------------+------------------------------------------------------------------ 16513 | 16509 | f | {format=orc,foldername=/user/hive/warehouse/partition.db/part_4} (1 row)
  • 示例3(仅云原生3.0版本支持) 通过HDFS多级分区只写外表将TPC-H benchmark测试数据表region表中的数据导出HDFS文件系统的/user/hive/warehouse/mppdb.db/region_orc/目录下。 创建HDFS外表,对应的foreign data wrapper为HDFS_FDW或者DFS_FDW,同示例1。 创建HDFS多级分区只写外表。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 CREATE FOREIGN TABLE ft_wo_region_partition ( R_REGIONKEY INT4, R_NAME TEXT, R_COMMENT TEXT ) SERVER hdfs_server OPTIONS ( FORMAT 'orc', encoding 'utf8', FOLDERNAME '/user/hive/warehouse/mppdb.db/region_orc/' ) WRITE ONLY PARTITION BY (R_REGIONKEY, R_NAME); 通过只写外表向HDFS文件系统写入数据。 1 INSERT INTO ft_wo_region_partition SELECT * FROM region;
  • 信息约束(Informational Constraint) 在GaussDB(DWS)中,数据的约束完全由使用者保证,数据源数据能够严格遵守某种信息约束条件,能够加速对已经具有这种约束特征数据的查询。目前外表不支持索引,所以采取使用Informational Constraint信息优化Plan,提搞查询性能。 建立外表信息约束的约束条件: 只有用户保证表中的其中一列的非空值具有唯一性时才可以建立Informational Constraint,否则查询结果将与期望值不同。 GaussDB(DWS)的Informational Constraint只支持PRIMARY KEY和UNIQUE两种约束。 GaussDB(DWS)的Informational Constraint支持NOT ENFORCED属性,不支持ENFORCED属性。 一个表上的多列可以分别建立UNIQUE类型的Informational Constraint,但是PRIMARY KEY一个表中只能建立一个。 一个表的一列上可以建立多个Informational Constraint(由于一个列上有多个约束和一个的作用一致,所以不建议一个列上建立多个Informational Constraint),但是Primary Key类型只能建立一个。 不支持COMMENT。 不支持多列组合约束。 ORC格式只写外表不支持同一个集群不同CN向同一外表并发导出。而云原生3.0版本下,ORC和PARQUET格式只写外表支持同一个集群不同CN向同一外表并发导出。 ORC格式只写外表的目录,只能用于GaussDB(DWS)的单个外表的导出目录,不能用于多个外表,并且其他组件不能向此目录写入其他文件。云原生3.0版本下,ORC格式和PARQUET只写外表的目录,能用于GaussDB(DWS)的多个定义相同的外表的导出目录,并且支持Hive组件向此目录写入和外表定义相同的文件。
  • 示例2 通过HDFS只写外表将TPC-H benchmark测试数据表region表中的数据导出HDFS文件系统的/user/hive/warehouse/mppdb.db/region_orc/目录下 创建HDFS外表,对应的foreign data wrapper为HDFS_FDW或者DFS_FDW,同示例一。 创建HDFS只写外表。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 CREATE FOREIGN TABLE ft_wo_region ( R_REGIONKEY INT4, R_NAME TEXT, R_COMMENT TEXT ) SERVER hdfs_server OPTIONS ( FORMAT 'orc', encoding 'utf8', FOLDERNAME '/user/hive/warehouse/mppdb.db/region_orc/' ) WRITE ONLY; 通过只写外表向HDFS文件系统写入数据。 1 INSERT INTO ft_wo_region SELECT * FROM region;
  • 语法格式 创建外表。 1 2 3 4 5 6 7 8 9 10 11 12 CREATE FOREIGN TABLE [ IF NOT EXISTS ] table_name ( [ { column_name type_name [ { [CONSTRAINT constraint_name] NULL | [CONSTRAINT constraint_name] NOT NULL | column_constraint [...]} ] | table_constraint [, ...]} [, ...] ] ) SERVER server_name OPTIONS ( { option_name ' value ' } [, ...] ) [ {WRITE ONLY | READ ONLY | READ WRITE}] DISTRIBUTE BY {ROUNDROBIN | REPLICATION} [ PARTITION BY ( column_name ) [ AUTOMAPPED ] ] ; 其中column_constraint为: 1 2 3 [CONSTRAINT constraint_name] {PRIMARY KEY | UNIQUE} [NOT ENFORCED [ENABLE QUERY OPTIMIZATION | DISABLE QUERY OPTIMIZATION] | ENFORCED] 其中table_constraint为: 1 2 3 [CONSTRAINT constraint_name] {PRIMARY KEY | UNIQUE} (column_name) [NOT ENFORCED [ENABLE QUERY OPTIMIZATION | DISABLE QUERY OPTIMIZATION] | ENFORCED]
  • 注意事项 HDFS外表与OBS外表分为只读外表,只写外表和读写外表(仅云原生3.0版本支持),只读外表用于查询操作,只写外表可以将GaussDB(DWS)中的数据导出到分布式文件系统中,读写外表兼有前两者功能。 此方式支持ORC、TEXT、CSV、CARBONDATA、PARQUET和JSON格式的导入查询,以及ORC、PARQUET(仅云原生3.0版本支持)、CSV和TEXT格式的导出。 该方式需要用户手动创建外部服务器,具体请参见CREATE SERVER。 若手动创建Server时指定foreign data wrapper为HDFS_FDW或者DFS_FDW,创建只读外表时需DISTRIBUTE BY子句指定分布方式。
  • 功能描述 在当前数据库创建一个HDFS或OBS外表,用来访问存储在HDFS或者OBS分布式集群文件系统上的结构化数据。也可以导出ORC格式数据到HDFS或者OBS上。 数据存储在OBS:数据存储和计算分离,集群存储成本低,存储量不受限制,并且集群可以随时删除,但计算性能取决于OBS访问性能,相对HDFS有所下降,建议在数据计算不频繁场景下使用。 数据存储在HDFS:数据存储和计算不分离,集群成本较高,计算性能高,但存储量受磁盘空间限制,删除集群前需将数据导出保存,建议在数据计算频繁场景下使用。 实时数仓(单机部署)暂不支持HDFS外表。 实时数仓(单机部署)8.2.0及以上集群版本支持OBS外表,但需要指定Server的foreign data wrapper为DFS_FDW。 以下描述的读写外表,仅云原生3.0版本支持。
  • 参数概览 创建外表语法提供了多个参数,常用参数分类如下。 必需参数 table_name column_name type_name SERVER gsmpp_server access_key secret_access_key OPTIONS参数 外表的数据源位置参数 location 临时安全凭证参数(8.2.0及以上集群版本支持) security_token 数据格式参数 format header(仅支持CSV格式) delimiter quote(仅支持CSV格式) escape (仅支持CSV格式) null noescaping(仅支持TEXT格式) encoding eol bom(仅支持CSV格式) 容错性参数 fill_missing_fields ignore_extra_data compatible_illegal_chars PER NODE REJECT LIMIT 'val... LOG INTO error_table_name WITH error_table_name 性能优化参数 file_split_threshold(仅支持TEXT格式)
  • 示例 创建外表OBS_ft,用来以txt格式导入OBS上指定的对象数据到row_tbl表中: 认证用的AK和SK硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 DROP FOREIGN TABLE IF EXISTS OBS_ft; NOTICE: foreign table "obs_ft" does not exist, skipping DROP FOREIGN TABLE CREATE FOREIGN TABLE OBS_ft( a int, b int)SERVER gsmpp_server OPTIONS (location 'obs://gaussdbcheck/obs_ddl/test_case_data/txt_obs_informatonal_test001',format 'text',encoding 'utf8',chunksize '32', encrypt 'on',ACCESS_KEY 'access_key_value_to_be_replaced',SECRET_ACCESS_KEY 'secret_access_key_value_to_be_replaced',delimiter E'\x08') read only; CREATE FOREIGN TABLE DROP TABLE row_tbl; DROP TABLE CREATE TABLE row_tbl( a int, b int); NOTICE: The 'DISTRIBUTE BY' clause is not specified. Using 'a' as the distribution column by default. HINT: Please use 'DISTRIBUTE BY' clause to specify suitable data distribution column. CREATE TABLE INSERT INTO row_tbl select * from OBS_ft; INSERT 0 3
  • 语法格式 1 2 3 4 5 6 7 8 CREATE FOREIGN TABLE [ IF NOT EXISTS ] table_name ( { column_name type_name [column_constraint ] | LIKE source_table | table_constraint [, ...]} [, ...] ) SERVER server_name OPTIONS ( { option_name ' value ' } [, ...] ) [ { WRITE ONLY | READ ONLY }] [ WITH error_table_name | LOG INTO error_table_name] [PER NODE REJECT LIMIT 'value'] ;
  • 注意事项 这种方式仅支持TEXT和CSV格式,并且需要额外指定OBS连接信息。对于OBS上的ORC、CARBONDATA、PARQUET等格式数据,不适用这种方式,请参考CREATE FOREIGN TABLE (SQL on OBS or Hadoop)。 创建的外表分为只读外表(READ ONLY)和只写外表(WRITE ONLY)。缺省为只读外表。数据导入集群时,请将外表设为READ ONLY;导出时,请设为WRITE ONLY。 外表由命令执行者所有; OBS外表不需要显式指定分布方式,默认支持ROUNDROBIN分布方式; 所创建外表只对信息约束(Informational Constraint)约束生效。 OBS导入导出数据时,不支持中文路径。
  • 告警规则后续操作 支持对单个告警规则进行如下操作: 修改告警规则:单击告警规则所在行后的按钮,根据表1修改具体参数,支持修改规则名称,修改完成后,鼠标悬浮在规则名称上,显示修改后的规则名称和原始名称。不支持修改首次创建的原始名称。 开启告警规则:单击告警规则所在行后的按钮(关闭告警规则后,才会显示开启按钮),开启告警规则。 关闭告警规则:单击告警规则所在行后的按钮(开启告警规则后,才会显示关闭按钮),关闭告警规则。 临时关闭告警规则:单击告警规则所在行后的按钮,设置临时关闭的截止时间。 复制告警规则:单击告警规则所在行后的按钮,复制告警规则。 删除告警规则:单击告警规则所在行后的按钮,单击“确定”删除该规则。 勾选多个告警规则后,支持对多个告警进行批量操作:开启、关闭、临时关闭、取消临时关闭、告警恢复开启、告警恢复关闭、删除、导出。
  • 告警规则后续操作 支持对单个告警规则进行如下操作: 修改告警规则:单击告警规则所在行后的按钮,根据表1修改具体参数,支持修改规则名称,修改完成后,鼠标悬浮在规则名称上,显示修改后的规则名称和原始名称。不支持修改首次创建的原始名称。 开启告警规则:单击告警规则所在行后的按钮(关闭告警规则后,才会显示开启按钮),开启告警规则。 关闭告警规则:单击告警规则所在行后的按钮(开启告警规则后,才会显示关闭按钮),关闭告警规则。 临时关闭告警规则:单击告警规则所在行后的按钮,设置临时关闭的截止时间。 复制告警规则:单击告警规则所在行后的按钮,复制告警规则。 删除告警规则:单击告警规则所在行后的按钮,单击“确定”删除该规则。 勾选多个告警规则后,支持对多个告警进行批量操作:开启、关闭、临时关闭、取消临时关闭、告警恢复开启、告警恢复关闭、删除、导出。
  • iOS客户端 此处以安装OpenVPN Connect(3.4.1)为例,不同软件版本的安装界面可能存在差异,请以实际为准。 在App Store搜索“OpenVPN Connect”,下载并安装。 下载客户端配置,在“client_config.ovpn”文件中添加客户端证书及私钥,然后通过OpenVPN Connect打开,按照界面提示添加客户端配置。 图11 导入配置文件 出现类似下图所示界面,代表连接成功。 图12 连接成功
共100000条