华为云用户手册

  • 引擎版本三:tensorflow_2.6.0-cuda_11.2-py_3.7-ubuntu_18.04-x86_64 镜像地址:swr.{region_id}.myhuaweicloud.com/aip/tensorflow_2_6:tensorflow_2.6.0-cuda_11.2-py_3.7-ubuntu_18.04-x86_64-20220524162601-50d6a18 镜像构建时间:20220524162601(yyyy-mm-dd-hh-mm-ss) 镜像系统版本:Ubuntu 18.04.4 LTS cuda:11.2.0 cudnn:8.1.1.33 Python解释器路径及版本:/home/ma-user/anaconda3/envs/TensorFlow-2.6.0/bin/python, python 3.7.10 三方包安装路径:/home/ma-user/anaconda3/envs/TensorFlow-2.6.0/lib/python3.7/site-packages 部分pip安装包列表: Cython 0.29.21requests 2.27.1easydict 1.9tensorboardX 2.0tensorflow 2.6.0Flask 2.0.1grpcio 1.46.1gunicorn 20.1.0idna 3.3tensorflow-estimator 2.9.0pandas 1.1.5Pillow 9.0.1lxml 4.8.0matplotlib 3.5.1scikit-learn 0.22.1psutil 5.8.0PyYAML 5.1numpy 1.17.0opencv-python 4.1.2.30protobuf 3.20.1pip 21.2.2...
  • 引擎版本二:pytorch_1.8.2-cuda_11.1-py_3.7-ubuntu_18.04-x86_64 镜像地址:swr.{region_id}.myhuaweicloud.com/aip/pytorch_1_8:pytorch_1.8.2-cuda_11.1-py_3.7-ubuntu_18.04-x86_64-20220524162601-50d6a18 镜像构建时间:20220524162601(yyyy-mm-dd-hh-mm-ss) 镜像系统版本:Ubuntu 18.04.4 LTS cuda:11.1.1 cudnn:8.0.5.39 Python解释器路径及版本:/home/ma-user/anaconda3/envs/PyTorch-1.8.2/bin/python, python 3.7.10 三方包安装路径:/home/ma-user/anaconda3/envs/PyTorch-1.8.2/lib/python3.7/site-packages 部分pip安装包列表: Cython 0.27.3mmcv 1.2.7easydict 1.9tensorboardX 2.0torch 1.8.2+cu111Flask 2.0.1pandas 1.1.5gunicorn 20.1.0PyYAML 5.1torchaudio 0.8.2Pillow 9.0.1psutil 5.8.0lxml 4.8.0matplotlib 3.5.1torchvision 0.9.2+cu111pip 21.2.2protobuf 3.20.1numpy 1.17.0opencv-python 4.1.2.30scikit-learn 0.22.1... 部分apt安装包列表: aptca-certificatescmakecudacurlethtoolfdiskffmpegg++gccgitgpggraphvizlibsm6libxext6libopencv-devlibxrender-devlibatlas3-baselibnuma-devlibcap-devlibssl-devliblz-devlibbz2-devliblzma-devlibboost-graph-devlibsndfile1libcurl4-openssl-devlibopenblas-baseliblapack3libopenblas-devlibprotobuf-devlibleveldb-devlibsnappy-devlibhdf5-serial-devliblapacke-devlibgflags-devlibgoogle-glog-devliblmdb-devlibatlas-base-devlibrdmacm1libcap2-binlibpq-devmysql-commonnet-toolsnginxopenslide-toolsopenssh-clientopenssh-serveropenssh-sftp-serveropensslprotobuf-compilerredis-serverredis-toolsrpmtartofrodosunzipvimwgetzipzlib1g-dev...
  • 引擎版本二: tensorflow_1.15.5-cuda_11.4-py_3.8-ubuntu_20.04-x86_64 镜像地址:swr.{region_id}.myhuaweicloud.com/aip/tensorflow_1_15:tensorflow_1.15.5-cuda_11.4-py_3.8-ubuntu_20.04-x86_64-20220524162601-50d6a18 镜像构建时间:20220524162601(yyyy-mm-dd-hh-mm-ss) 镜像系统版本:Ubuntu 20.04.4 LTS cuda:11.4.3 cudnn:8.2.4.15 Python解释器路径及版本:/home/ma-user/anaconda3/envs/TensorFlow-1.15.5/bin/python, python 3.8.13 三方包安装路径:/home/ma-user/anaconda3/envs/TensorFlow-1.15.5/lib/python3.8/site-packages 部分pip安装包列表: Cython 0.29.21psutil 5.9.0matplotlib 3.5.1protobuf 3.20.1tensorflow 1.15.5+nvFlask 2.0.1grpcio 1.46.1gunicorn 20.1.0Pillow 9.0.1tensorboard 1.15.0PyYAML 6.0pip 22.0.4lxml 4.7.1numpy 1.18.5tensorflow-estimator 1.15.1...
  • 引擎版本二:mindspore_1.7.0-cann_5.1.0-py_3.7-euler_2.8.3-aarch64 镜像地址:swr.cn-north-4.myhuaweicloud.com/atelier/mindspore_1_7_0:mindspore_1.7.0-cann_5.1.0-py_3.7-euler_2.8.3-aarch64-d910-20220715093657-9446c6a 镜像构建时间:20220715093657(yyyy-mm-dd-hh-mm-ss) 镜像系统版本:euleros 2.8.3 cann:5.1.0 Python解释器路径及版本:/home/ma-user/anaconda3/envs/MindSpore/bin/python, python 3.7.10 三方包安装路径:/home/ma-user/anaconda3/envs/MindSpore/lib/python3.7/site-packages 部分三方包版本信息列表: Cython 0.29.14dask 2.18.1hccl 0.1.0mmcv 0.2.14npu-bridge 1.15.0Flask 2.0.1grpcio 1.47.0gunicorn 20.1.0idna 2.10PyYAML 5.3.1imageio 2.9.0imgaug 0.2.6lxml 4.4.2matplotlib 3.5.1psutil 5.7.0scikit-image 0.17.2numba 0.47.0numpy 1.21.2opencv-python 4.2.0.34requests 2.27.1pandas 1.1.3Pillow 9.2.0pip 22.1.2protobuf 4.21.2scikit-learn 0.20.0npu-device 0.1mindinsight 1.7.0mindspore-ascend 1.7.0... 历史版本:无
  • 引擎版本一:tensorflow_1.15.0-cann_5.1.0-py_3.7-euler_2.8.3-aarch64 镜像地址: swr.cn-north-4.myhuaweicloud.com/atelier/tensorflow_1_15_ascend:tensorflow_1.15-cann_5.1.0-py_3.7-euler_2.8.3-aarch64-d910-20220715093657-9446c6a 镜像构建时间:20220715093657(yyyy-mm-dd-hh-mm-ss) 镜像系统版本:euleros 2.8.3 cann:5.1.0 Python解释器路径及版本:/home/ma-user/anaconda3/envs/TensorFlow-1.15.0/bin/python, python 3.7.10 三方包安装路径:/home/ma-user/anaconda3/envs/TensorFlow-1.15.0/lib/python3.7/site-packages 部分三方包版本信息列表: Cython 0.29.14dask 2.18.1hccl 0.1.0tensorflow 1.15.0tensorboard 1.15.0Flask 2.0.1grpcio 1.26.0gunicorn 20.1.0idna 2.10PyYAML 5.3.1imageio 2.9.0imgaug 0.2.6lxml 4.4.2matplotlib 3.5.1psutil 5.7.0scikit-image 0.17.2numba 0.47.0numpy 1.17.5opencv-python 4.2.0.34requests 2.27.1pandas 0.24.2Pillow 9.2.0pip 22.1.2protobuf 3.11.3scikit-learn 0.20.0... 历史版本:无
  • 场景说明 针对ModelArts目前不支持的AI引擎,您可以通过自定义镜像的方式将编写的模型导入ModelArts,创建为AI应用。 本文详细介绍如何在ModelArts的开发环境Notebook中使用基础镜像构建一个新的推理镜像,并完成AI应用的创建,部署为在线服务。本案例仅适用于华为云北京四和上海一站点。 操作流程如下: Step1 在Notebook中构建一个新镜像:在ModelArts的开发环境Notebook中制作自定义镜像,镜像规范可参考创建AI应用的自定义镜像规范。 Step2 构建成功的镜像注册到镜像管理模块:将构建成功的自定义镜像注册到ModelArts的镜像管理模块中,方便下一步调试。 Step3 在Notebook中变更镜像并调试:在Notebook中调试镜像。 Step4 使用调试成功的镜像用于推理部署:将调试完成的镜像导入ModelArts的AI应用管理中,并部署上线。 父主题: 在开发环境中构建并调试推理镜像
  • 引擎版本一:horovod_0.20.0-tensorflow_2.1.0-cuda_10.1-py_3.7-ubuntu_18.04-x86_64 镜像地址:swr.{region}.myhuaweicloud.com/aip/horovod_tensorflow:train-horovod_0.20.0-tensorflow_2.1.0-cuda_10.1-py_3.7-ubuntu_18.04-x86_64-20210912152543-1e0838d 镜像构建时间:20210912152543(yyyy-mm-dd-hh-mm-ss) 镜像系统版本:Ubuntu 18.04.4 LTS cuda:10.1.243 cudnn:7.6.5.32 Python解释器路径及版本:/home/ma-user/anaconda3/envs/horovod_0.20.0-tensorflow_2.1.0/bin/python, python 3.7.10 三方包安装路径:/home/ma-user/anaconda3/envs/horovod_0.20.0-tensorflow_2.1.0/lib/python3.7/site-packages 部分三方包版本信息列表: Cython 0.29.21dask 2021.9.0easydict 1.9enum34 1.1.10horovod 0.20.0Flask 1.1.1grpcio 1.40.0gunicorn 20.1.0idna 3.2tensorboard 2.1.1imageio 2.9.0imgaug 0.4.0lxml 4.6.3matplotlib 3.4.3tensorflow-gpu 2.1.0tensorboardX 2.0numba 0.47.0numpy 1.17.0opencv-python 4.1.2.30toml 0.10.2pandas 1.1.5Pillow 6.2.0pip 21.0.1protobuf 3.17.3scikit-learn 0.22.1psutil 5.8.0PyYAML 5.1requests 2.26.0scikit-image 0.18.3...
  • 引擎版本:mindspore_1.3.0-cuda_10.1-py_3.7-ubuntu_1804-x86_64 镜像地址:swr.{region}.myhuaweicloud.com/aip/mindspore_1_3_0:train-mindspore_1.3.0-cuda_10.1-py_3.7-ubuntu_18.04-x86_64-roma-20211104202338-f258e59 镜像构建时间:20211104202338(yyyy-mm-dd-hh-mm-ss) 镜像系统版本:Ubuntu 18.04.4 LTS cuda:10.1.243 cudnn:7.6.5.32 Python解释器路径及版本:/home/ma-user/anaconda3/envs/MindSpore-1.3.0-gpu/bin/python, python 3.7.10 三方包安装路径:/home/ma-user/anaconda3/envs/MindSpore-1.3.0-gpu/lib/python3.7/site-packages 部分三方包版本信息列表: requests 2.26.0dask 2021.9.0easydict 1.9enum34 1.1.10mindspore-gpu 1.3.0Flask 1.1.1grpcio 1.41.1gunicorn 20.1.0idna 3.3PyYAML 5.1imageio 2.10.1imgaug 0.4.0lxml 4.6.4matplotlib 3.4.2psutil 5.8.0scikit-image 0.18.3numba 0.47.0numpy 1.17.0opencv-python 4.5.2.54tifffile 2021.11.2pandas 1.1.5Pillow 8.4.0pip 21.0.1protobuf 3.17.3scikit-learn 0.22.1... 历史版本:无
  • 引擎版本:tensorflow_2.1.0-cuda_10.1-py_3.7-ubuntu_18.04-x86_64 镜像地址:swr.{region}.myhuaweicloud.com/aip/tensorflow_2_1:train-tensorflow_2.1.0-cuda_10.1-py_3.7-ubuntu_18.04-x86_64-20210912152543-1e0838d 镜像构建时间:20210912152543(yyyy-mm-dd-hh-mm-ss) 镜像系统版本:Ubuntu 18.04.4 LTS cuda:10.1.243 cudnn:7.6.5.32 Python解释器路径及版本:/home/ma-user/anaconda3/envs/TensorFlow-2.1/bin/python, python 3.7.10 三方包安装路径:/home/ma-user/anaconda3/envs/TensorFlow-2.1/lib/python3.7/site-packages 部分三方包版本信息列表: Cython 0.29.21dask 2021.9.0easydict 1.9enum34 1.1.10tensorflow 2.1.0Flask 1.1.1grpcio 1.40.0gunicorn 20.1.0idna 3.2tensorflow-estimator 2.1.0imageio 2.9.0imgaug 0.4.0lxml 4.6.3matplotlib 3.4.3termcolor 1.1.0scikit-image 0.18.3numba 0.47.0numpy 1.17.0opencv-python 4.1.2.30tifffile 2021.8.30pandas 1.1.5Pillow 6.2.0pip 21.0.1protobuf 3.17.3scikit-learn 0.22.1psutil 5.8.0PyYAML 5.1requests 2.26.0...
  • 引擎版本二: horovod_0.22.1-pytorch_1.8.0-cuda_10.2-py_3.7-ubuntu_18.04-x86_64 镜像地址:swr.{region}.myhuaweicloud.com/aip/horovod_pytorch:train-horovod_0.22.1-pytorch_1.8.0-cuda_10.2-py_3.7-ubuntu_18.04-x86_64-20210912152543-1e0838d 镜像构建时间:20210912152543(yyyy-mm-dd-hh-mm-ss) 镜像系统版本:Ubuntu 18.04.4 LTS cuda:11.1.1 cudnn:8.0.5.39 Python解释器路径及版本:/home/ma-user/anaconda3/envs/horovod-0.22.1-pytorch-1.8.0/bin/python, python 3.7.10 三方包安装路径:/home/ma-user/anaconda3/envs/horovod-0.22.1-pytorch-1.8.0/lib/python3.7/site-packages 部分三方包版本信息列表: Cython 0.27.3dask 2021.9.0easydict 1.9enum34 1.1.10horovod 0.22.1Flask 1.1.1grpcio 1.40.0gunicorn 20.1.0idna 3.2mmcv 1.2.7imageio 2.9.0imgaug 0.4.0lxml 4.6.3matplotlib 3.4.3torch 1.8.0tensorboardX 2.0numba 0.47.0numpy 1.17.0opencv-python 4.1.2.30torchtext 0.5.0pandas 1.1.5Pillow 6.2.0pip 21.0.1protobuf 3.17.3scikit-learn 0.22.1psutil 5.8.0PyYAML 5.1requests 2.26.0scikit-image 0.18.3torchvision 0.9.0...
  • 配置管理说明 一般情况下,缓存实例的创建、配置运行参数、重启、修改缓存实例密码、重置缓存实例密码、备份恢复、扩容等管理操作均不支持同时进行。即当实例正在进行其中一个操作时,如果您执行其他操作,界面会提示缓存实例正在进行相应操作,请稍后进行重试操作。 在如下场景下,您需要尽快执行后续的管理操作,以恢复业务,则支持同时进行: 在备份缓存实例过程中,支持重启缓存实例,此时备份操作会强制中断,备份任务的执行结果可能为成功或者失败。 当实例的部分节点出现故障时: 由于DCS服务的高可用性,您可以正常读写实例,缓存实例状态仍然处于“运行中”。 DCS服务内部会自动修复故障,或者由服务运维人员手工修复故障。 故障修复期间,管理域的部分操作暂不支持,包括修改配置参数、修改密码、重置密码、备份恢复、扩容等,您可以等故障节点恢复之后进行重试操作或联系客服。 父主题: 实例配置管理
  • DCS自定义策略样例 示例1:授权用户删除缓存实例、重启实例及清空实例数据。 { "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ " dcs:instance:delete dcs:instance:modifyStatus " ] } ]} 示例2:拒绝用户删除缓存实例 拒绝策略需要同时配合其他策略使用,否则没有实际作用。用户被授予的策略中,一个授权项的作用如果同时存在Allow和Deny,则遵循Deny优先。 如果您给用户授予DCS FullAccess的系统策略,但不希望用户拥有DCS FullAccess中定义的删除缓存实例权限,您可以创建一条拒绝删除缓存实例的自定义策略,然后同时将DCS FullAccess和拒绝策略授予用户,根据Deny优先原则,则用户可以对DCS执行除了删除缓存实例外的所有操作。拒绝策略示例如下: { "Version": "1.1", "Statement": [ { "Effect": "Deny", "Action": [ "dcs:instance:delete" ] } ]}
  • 购买前准备 在购买实例之前,请先根据您的实际业务需要,明确以下购买需求: 确定缓存类型。 在购买前,需要您根据业务情况选择合适的缓存类型,选择了缓存类型后,不支持更改缓存类型。 若要了解Redis和Memcached,请参考DCS Redis和DCS Memcached的介绍。 若要了解Redis和Memcached的区别,请参考Redis与Memcached之间如何选择。 确定缓存实例版本。 只有缓存类型选择的是Redis,才涉及此操作,如果缓存类型是Memcached,则不涉及。 DCS Redis 3.0已下线,暂停售卖,建议使用Redis 4.0/5.0/6.0。 不同的Redis版本,特性会不同,可参考不同Redis版本支持的特性差异说明,了解不同版本的Redis。 确定缓存实例类型。 确定缓存类型后,当前支持的实例类型有单机、主备、Proxy集群和Cluster集群。实例规格特点和架构,可参考选择实例类型。 确定实例规格。 确定实例类型后,需要明确购买规格大小。实例支持的连接数和带宽值,可参考产品规格。 确定选择的区域以及实例是否跨可用区部署。 选择的区域,建议选择接近您应用程序的区域,减少网络延时。例如,所在城市为中国-广州,可就近选择“华南-广州”。 一个区域对应多个可用区(AZ),当前DCS支持将主备实例/集群实例部署在不同的AZ内,节点间电力与网络均物理隔离。您可以将应用程序也进行跨AZ部署,从而达到数据与应用全部高可用。 当主备或者集群Redis实例进行跨可用区部署时,如果其中一个可用区故障,另一个可用区的节点不受影响。备节点会自动升级为主节点,对外提供服务,从而提供更高的容灾能力。 由于实例跨可用区部署时网络访问效率略低于部署在同一可用区内,因此Redis实例跨可用区部署时,主备节点之间同步效率会略有降低。 确定实例是否配置备份策略。 当前只有主备、Proxy集群、Cluster集群实例支持配置备份恢复策略。关于备份恢复,可参考备份与恢复说明。 父主题: 购买缓存实例
  • 操作步骤 登录分布式缓存服务管理控制台。 在管理控制台左上角单击,选择区域。 此处请选择与您的应用服务相同的区域。 单击左侧菜单栏的“缓存管理”,进入实例信息页面。 单击缓存实例名称,进入该实例的基本信息页面。 单击“分片与副本”页签,进入分片与副本页面。 界面显示该实例的所有分片列表,以及每个分片的副本列表。 单击分片名称前面的图标,展开当前分片下的所有副本。 图1 分片与副本列表(集群实例) 图2 分片与副本列表(主备实例) 集群实例 选择角色为从的副本,单击“升级为主”。 单击“是”,将选择的副本升级为主。 主备实例 如果主备实例的从副本数多于1个,单击“摘除域名IP”,可以摘除对应从副本(只读副本)的IP,摘除成功后,只读域名不会再解析到该副本IP。 如果主备实例只有1个从副本,则不支持摘除域名。 对于有多个从副本的主备或读写分离实例,单击“主备切换优先级”列对应的,可以设置主备切换优先级。 当主节点故障以后,系统会按照您指定的优先级,自动切换到优先级最高的从节点上。如果优先级相同,则系统会内部进行选择和切换。优先级为0-100,1-100优先级逐步降低,1为最高,100为最低,0为禁止倒换。
  • 操作步骤 登录分布式缓存服务管理控制台。 在管理控制台左上角单击,选择区域。 此处请选择与您的应用服务相同的区域。 单击左侧菜单栏的“缓存管理”。 勾选对应的实例,单击“开启”。 在弹出的开启确认对话框中,单击“是”。 开启DCS缓存实例大约需要1到30分钟。 DCS缓存实例开启成功后,实例状态从“已关闭”切换为“运行中”。 如果开启单个实例,也可以在需要开启的DCS缓存实例右侧,单击“操作”栏下的“开启”。
  • 准备依赖资源 DCS实例所需资源的具体要求和创建指导如下所示。 表1 DCS依赖资源 准备资源 要求 创建指导 VPC和子网 不同的DCS实例可以重复使用相同的VPC和子网,也可以使用不同的VPC和子网,请根据实际需要进行配置。在创建VPC和子网时应注意如下要求: 创建的VPC与使用的DCS服务应在相同的区域。 创建VPC和子网时,如无特殊需求,配置参数使用默认配置即可。 创建VPC和子网的操作指导,请参考创建虚拟私有云和子网,若需要在已有VPC上创建和使用新的子网,请参考为虚拟私有云创建新的子网。 安全组 说明: 仅创建Redis 3.0、企业版Redis 6.0和Memcached实例需要。 不同的DCS实例可以重复使用相同的安全组,也可以使用不同的安全组,请根据实际需要进行配置。在创建安全组时应注意如下要求: 创建安全组时,“模板”选择“自定义”。 安全组创建后,请保留系统默认添加的入方向“允许安全组内的弹性云服务器彼此通信”规则和出方向“放通全部流量”规则。 使用DCS服务要求必须添加表2所示安全组规则,其他规则请根据实际需要添加。 创建安全组的操作指导,请参考创建安全组,为安全组添加规则的操作指导请参考添加安全组规则。 (可选)弹性公网IP 说明: 仅Redis 3.0实例支持绑定弹性公网IP。 若需要通过公网访问DCS,则需要申请弹性公网IP,否则不需要申请弹性公网IP。 申请弹性公网IP的操作指导请参考申请弹性公网IP。 表2 安全组规则 方向 协议 端口 源地址 说明 入方向 TCP 36379 0.0.0.0/0 通过公网访问Redis 3.0(开启SSL加密)。 入方向 TCP 6379 0.0.0.0/0 通过公网访问Redis 3.0(关闭SSL加密)。 入方向 TCP 6379 0.0.0.0/0 通过内网访问Redis 3.0或企业版Redis 6.0(不支持SSL加密)。 入方向 TCP 11211 0.0.0.0/0 访问Memcached。
  • 添加成员和角色 登录DataArts Studio控制台,进入工作空间列表页面。 单击相应工作空间列表后的“编辑”,进入成员空间页面。 单击空间成员下的“添加”,在弹出的“添加成员”对话框中选择“按用户添加”或“按用户组添加”,然后从“成员账号”的下拉选项中选择用户或用户组,并设置角色。 图1 添加成员 单击“确定”即可添加成功。添加完成后,您可以在空间成员列表中查看或修改已有的成员和对应角色,也可将空间成员从工作空间中删除。
  • 操作前准备 已创建新的工作空间,新建工作空间的用户需要具备 Administrator或Tenant Administrator权限。 执行数据搬迁的用户,至少应具备新旧两个工作空间的开发者权限。 CDM集群和数据服务专享版集群在工作空间之间相互隔离,建议您在新空间提前准备好对应旧空间的集群。 搬迁依赖于OBS功能,请您提前规划OBS桶和文件夹目录。 DataArts Studio数据搬迁时,依赖各组件的备份或导入导出能力。您可以根据自己的数据需求,自由选择搬迁哪个组件的数据。 管理中心数据搬迁 数据集成数据搬迁 数据架构数据搬迁 数据开发数据搬迁 数据质量数据搬迁 数据目录数据搬迁 数据安全数据搬迁 数据服务数据搬迁
  • 上传增量数据 使用CDM将存量数据上传完后,单击该作业后的“编辑”,直接修改该作业。 保持作业基本参数不变,单击“下一步”修改任务参数,如图1所示。 图1 定时任务配置 勾选“是否定时执行”,配置定时任务: “重复周期”配置为1天。 “开始时间”配置为每天凌晨0点1分执行。 这样CDM每天凌晨自动执行全量迁移,但因为“重复文件处理方式”选择了“跳过重复文件”,相同名称且相同大小的文件不迁移,所以只会上传每天新增的文件。 单击“保存”,完成CDM的增量同步配置。 父主题: 使用CDM上传数据到OBS
  • 前提条件 DLI创建OBS外表,对OBS表数据存储格式有所要求: 使用DataSource语法创建OBS表时,支持orc,parquet,json,csv,carbon,avro类型。 使用Hive语法创建OBS表时,支持TEXTFILE, AVRO, ORC, SEQUENCEFILE, RCFILE, PARQUET, CARBON类型。 如果原始数据表存储格式不满足要求,您可以通过CDM将原始数据直接导入到DLI中进行分析,无需上传OBS。
  • 约束限制 通过Import GES节点自动生成元数据时,有如下约束限制: 生成元数据时,目前仅支持选择单标签(Label)场景的点表和边表。如果点表或边表中存在多个标签,则生成的元数据会存在缺失。 生成元数据xml文件是手动单击“生成元数据”触发的,如果在该节点在后续的作业调度运行中,点表和边表结构发生变化,元数据xml文件并不会随之更新,需要手动进入新建元数据窗口,再次单击“生成元数据”重新生成新的元数据xml文件。 生成的元数据xml文件,属性(Property)中的数据复合类型(Cardinality),目前仅支持填写为“single”类型,不支持自定义。 生成元数据功能本身,支持一次生成多对点表和边表的元数据xml文件。但考虑到Import GES节点的“边数据集”和“点数据集”参数,分别只能选择一张表,建议您在有多对点表和边表的情况下,分拆多个Import GES节点分别导入,以确保导入图数据时,元数据与每对点表和边表能够一一对应。
  • 场景说明 本案例基于某电影网站的用户和评分数据,使用DataArts Studio将MySQL原始数据处理为标准点数据集和边数据集,并同步到OBS和MRS Hive中,然后通过Import GES节点自动生成元数据后,将图数据导入到GES服务中。 图1 业务场景说明 需要额外说明的是,GES图数据格式包含三部分:点数据集、边数据集以及元数据,如果原始数据不符合GES指定的格式,则需要将数据整理为GES支持的格式。 点数据集用于存放点数据。 边数据集用于存放边数据。 元数据用于描述点数据集和边数据集中的数据格式。 GES相关概念和图数据介绍请参见一般图数据格式。
  • 环境准备 已开通对象存储服务(OBS),并创建桶,例如“obs://dlfexample/alarm_info”、“obs://dlfexample/alarm_count_info”,分别用于存放原始告警表和告警统计报表。 已开通数据治理中心DataArts Studio,并具备CDM集群“cdm-alarm”,用于创建CDM作业。 已开通数据湖探索服务(DLI)。 已开通消息通知服务(SMN)。
  • 创建CDM作业 方案的最后一步需要将OBS中的告警统计报表迁移到RDS MySQL中,我们选择使用CDM来实现该功能。 关键参数说明: 作业名称:obs_rds,在后续的作业中设置为定期执行该作业(使用DLF作业开发和作业调度每天定时输出告警统计报表),实现定期迁移数据。 源端:存储告警统计报表的OBS目录,源连接“obs_link”需要提前在CDM中创建好。 目的端:即将存储告警统计报表的RDS MySQL空间,目的连接“mysql_link”需要提前在CDM中创建好。
  • 使用DLI SQL脚本开发构建告警报表脚本 我们需要通过SQL脚本在DLI中新建OBS表来存放数据表,然后再构建一个SQL脚本来统计告警信息。 在DataArts Studio管理中心模块创建一个到DLI的连接,数据连接名称为“dli”。 进入数据开发模块,在DLI中创建一个数据库,用于存放数据表,数据库名称为“dlitest”。 创建一个DLI SQL脚本,通过SQL语句来创建数据表alarm_info,alarm_count_info。 其中,alarm_info、alarm_count_info都为OBS表,数据存储在OBS中,分别用于存放原始告警表、告警统计报表。 图9 创建数据表 关键操作说明: 图9中的脚本开发区为临时调试区,关闭脚本页签后,开发区的内容将丢失。如需保留该SQL脚本,请单击,将脚本保存至指定的目录中。 关键参数说明: 数据连接:1中创建的DLI数据连接。 数据库:2中创建的数据库。 资源队列:使用DLI提供的默认资源队列“default”。 SQL语句:如下所示。 create table alarm_info(alarm_time string, alarm_id string, alarm_type int ) using csv options(path 'obs://dlfexample/alarm_info') partitioned by(alarm_time);create table alarm_count_info(alarm_time string, alarm_type int, alarm_count int) using csv options(path 'obs://dlfexample/alarm_count_info'); 单击运行脚本,创建alarm_info、alarm_count_info数据表。 清空编辑器中4的SQL语句,重新输入SQL语句。 ALTER TABLE alarm_info ADD PARTITION (alarm_time = ${dayParam}) LOCATION 'obs://dlfexample/alarm_info/${obsPathYear}';insert into alarm_count_info select alarm_time,alarm_type,count(alarm_type) from alarm_info where alarm_time = ${dayParam} group by alarm_time,alarm_type; SQL语句实现的功能: 在OBS的“obs://dlfexample/alarm_info”目录下,根据日期新建DLI分区。假设当前日期为2018/10/10,那么在“obs://dlfexample/alarm_info”目录下新建“2018/10/09”的DLI分区,用于存放前一天的数据表。 按照告警分区时间和告警类别进行统计,将统计结果插入alarm_count_info数据表。 关键参数说明: ${dayParam}:dayParam是指alarm_info表分区值,在脚本编辑器下方输入具体的参数值“$getCurrentTime(@@yyyyMMdd@@,-24*60*60)”。 ${obsPathYear}:obsPathYear是指OBS分区目录路径,在脚本编辑器下方输入具体的参数值“$getCurrentTime(@@yyyy/MM/dd@@,-24*60*60)”。 脚本调试无误后,我们需要保存该脚本,脚本名称为“dli_partition_count”。在后续的作业中设置为定期执行该脚本(使用DLF作业开发和作业调度每天定时输出告警统计报表),实现定期输出告警统计报表。
  • 创建DIS通道 我们需要在DIS服务控制台创建两个DIS通道,分别用于实时数据导入到DLI、实时数据导出到OBS。 创建实时数据导入到DLI的通道,通道名称为“dis-alarm-input”。 图2 创建input通道 创建实时数据导出到OBS的通道,通道名称为“dis-alarm-output”。 图3 创建output通道 为dis-alarm-output通道配置转储任务,将通道中的数据按照导出时间转储到OBS的“obs://dlfexample/alarm_info”目录下。 图4 output通道配置转储任务
  • 解释说明 DataArts Studio支持自然周期的调度方式。通过各个节点的调度依赖配置结果,有序的运行业务流程中各个节点,保障业务数据有效、适时地产出。 调度依赖就是节点间的上下游依赖关系,在DataArts Studio中,上游任务节点运行完成且运行成功,下游任务节点才会开始运行。 配置调度依赖后,可以保障调度任务在运行时能取到正确的数据(当前节点依赖的上游节点成功运行后,DataArts Studio通过节点运行的状态识别到上游表的最新数据已产生,下游节点再去取数)。避免下游节点取数据时,上游表数据还未正常产出,导致下游节点取数出现问题。 在配置依赖关系时,支持配置同周期的依赖和上一周期的依赖。 同周期依赖的原理,详情参考自然周期调度之同周期依赖原理。 上一周期依赖的原理,详情参考自然周期调度之上一周期依赖原理。 当分钟的调度周期不能被小时整除时,周期调度就不是严格按照间隔周期去跑,而是按照cron表达式的规则,每个小时的零点触发去跑,再往后推间隔。
  • 迁移方案 图1 迁移方案 H公司的车联网大数据业务平台当前CDH(Cloudera Hadoop) HBase集群中共有854张表约400TB,备HBase集群中共有149张表,约10TB数据。最近一个月新增的数据量是60TB。 使用CDM将CDH集群中的HBase HFile抽取出来存入到MRS(MapReduce) HDFS中,再通过HBase修复命令重建HBase表。基于这种迁移方案,可以使用以下2种迁移方式同时进行: CDM通过专线直接迁移近一个月的数据以及备HBase集群的数据: CDH → CDM(华为云) → MRS 使用云专线直接迁移时的优缺点: 优点:数据无需做多次的搬迁,缩短整体搬迁周期。 缺点:在数据大量传输过程中会占用专线带宽,对客户并行进行的业务存在影响,跨越多个交换机设备。 CDM通过DES(数据快递服务)迁移1个月前的历史数据,迁移路径如下: CDH → DES → CDM(华为云) → OBS → CDM(华为云) → MRS DES适用场景:数据量大,用户私有云与华为云无专线打通,用户私有云网络到公网带宽有限。 优点:传输可靠性高,受专线以及网络质量影响较小。 缺点:迁移方式耗时较长。
  • 通过“响应消息体解析为传递参数定义”获取返回值 如图1所示,第一个Rest Client调用了MRS服务查询集群列表的API,图2为API返回值的JSON消息体。 使用场景:需要获取集群列表中第一个集群的cluster Id,然后作为参数传递给后面的节点使用。 关键配置:在第一个Rest Client的“响应消息体解析为传递参数定义”配置中,配置clusterId=clusters[0].clusterId,后续的Rest Client节点就可以用${clusterId}的方式引用到集群列表中的第一个集群的cluster Id。 图1 Rest Clien作业样例1 图2 JSON消息体
  • 通过EL表达式获取返回值 Rest Client算子可与EL表达式相配合,根据具体的场景选择不同的EL表达式来实现更丰富的用法。您可以参考本教程,根据您的实际业务需要,开发您自己的作业。EL表达式用法可参考EL表达式。 如图3所示,Rest Client调用了MRS服务查询集群列表的API,然后执行Kafka Client发送消息。 使用场景:Kafka Client发送字符串消息,消息内容为集群列表中第一个集群的cluster Id。 关键配置:在Kafka Client中使用如下EL表达式获取Rest API返回消息体中的特定字段:#{JSONUtil.toString(JSONUtil.path(Job.getNodeOutput("Rest_Client_4901"),"clusters[0].clusterId"))} 图3 Rest Client作业样例2
共100000条