华为云用户手册

  • 响应参数 状态码:200 表4 响应Body参数 参数 参数类型 描述 status String success|error; result ResultValueListTestReportVo object 请求的返回的数据对象 error ApiError object 失败时的error信息 request_id String 由接口调用方传入,建议使用UUID保证请求的唯一性。 server_address String 本次请求的受理的服务地址 表5 ResultValueListTestReportVo 参数 参数类型 描述 total Integer 起始记录数 大于 实际总条数时, 值为0, 分页请求才有此值 value Array of TestReportVo objects 实际的数据类型:单个对象,集合 或 NULL reason String 业务失败的提示内容 page_size Integer 每页展示条数 page_no Integer 页码 has_more Boolean 是否有更多 表6 TestReportVo 参数 参数类型 描述 uri String 测试报告Uri name String 测试报告名称 creator String 创建人ID updator String 修改人ID version_uri String 测试计划Uri branch_uri String 分支Uri version_name String 测试计划名称 branch_name String 分支名称 test_conclusion String 测试结论 test_conclusion_details String 测试结论描述 defect_resolution_rate String 缺陷解决率 defect_resolution_score String 缺陷解决分数 case_execution_rate String 用例执行率 case_execution_score String 用例执行分数 case_pass_rate String 用例通过率 case_pass_score String 用例通过分数 issue_pass_rate String 需求通过率 issue_pass_score String 需求通过分数 issue_coverage_rate String 需求覆盖率 issue_coverage_score String 需求覆盖分数 project_residual_defect_index String 项目总遗留DI iterator_residual_defect_index String 计划新增DI case_automation_details CaseAutomationDetailsVo object 用例自动化率详情 case_validity_ratio String 用例有效性比例 issue_details IssuePassDetailsVo object 需求通过情况 case_details Array of NameAndValueVo objects 用例通过情况 defect_details_by_severity Array of IdAndNameAndValueVo objects 缺陷严重程度 defect_details_by_module Array of IdAndNameAndValueVo objects 缺陷按照模块分布情况 case_pass_rate_by_test_type Array of DetailTestTypeCasePassRateVo objects 每个测试类型的用例通过率 test_report_custom_report_detail Array of CustomReportListVo objects 测试报告自定义报告详情 create_time String 创建时间 create_timestamp Long 创建时间戳 creator_name String 创建人名 update_time String 修改时间 update_timestamp Long 修改时间戳 updator_name String 修改人名 project_id String 项目ID risk_analysis String 风险分析 表7 CaseAutomationDetailsVo 参数 参数类型 描述 case_automation_rate String 用例自动化率 service_type_number_list Array of NameAndValueVo objects 服务类型对应的用例数目 表8 IssuePassDetailsVo 参数 参数类型 描述 testing Integer 统计测试中的需求 finished Integer 统计已完成的需求 not_tested Integer 统计未完成的需求 表9 NameAndValueVo 参数 参数类型 描述 name String 名称 value Integer 值 表10 IdAndNameAndValueVo 参数 参数类型 描述 name String 名称 value Integer 值 id String id 表11 DetailTestTypeCasePassRateVo 参数 参数类型 描述 test_type Integer 测试类型 case_pass_rate String 用例通过率 表12 CustomReportListVo 参数 参数类型 描述 id String 参数解释: 报表id 取值范围: 不涉及 name String 参数解释: 报表名称 取值范围: 不涉及 filter ReportFilter object 过滤条件 workpiece_type String 工件类型(用例:case,测试套:task) analysis_dimension String 分析维度 compare_dimension String 对比维度 chart_data Array of ReportChartDataVo objects 报表数据 表13 ReportFilter 参数 参数类型 描述 creatorIds String 参数解释: 创建人 取值范围: 不涉及 ownerIds String 参数解释: 所属人 取值范围: 不涉及 ranks String 参数解释: 级别 取值范围: 不涉及 releaseIds String 参数解释: releaseId 取值范围: 不涉及 status String 参数解释: 状态 取值范围: 不涉及 moduleIds String 参数解释: 级别 取值范围: 不涉及 results String 参数解释: 结果 取值范围: 不涉及 labelIds String 参数解释: 标签 取值范围: 不涉及 startTime String 参数解释: 开始时间 取值范围: 不涉及 endTime String 参数解释: 结束时间 取值范围: 不涉及 isAssociateIssue String 参数解释: 是否关联需求 取值范围: 不涉及 表14 ReportChartDataVo 参数 参数类型 描述 id String 报表id name String 报表名称 analyze_dim ReportDimVo object 对比维度数据 compare_dim Array of ReportDimVo objects 对比维度数据 表15 ReportDimVo 参数 参数类型 描述 id String id name String 名称 value Integer 值 表16 ApiError 参数 参数类型 描述 code String 参数解释: 业务失败的错误码 取值范围: 不涉及 reason String 参数解释: 业务失败的提示内容 取值范围: 不涉及 状态码:400 表17 响应Body参数 参数 参数类型 描述 error_code String 参数解释: 接口调用失败错误码 取值范围: 不涉及 error_msg String 参数解释: 接口调用失败错误信息 取值范围: 不涉及 状态码:401 表18 响应Body参数 参数 参数类型 描述 error_code String 参数解释: 接口调用失败错误码 取值范围: 不涉及 error_msg String 参数解释: 接口调用失败错误信息 取值范围: 不涉及 状态码:404 表19 响应Body参数 参数 参数类型 描述 error_code String 参数解释: 接口调用失败错误码 取值范围: 不涉及 error_msg String 参数解释: 接口调用失败错误信息 取值范围: 不涉及 状态码:500 表20 响应Body参数 参数 参数类型 描述 error_code String 参数解释: 接口调用失败错误码 取值范围: 不涉及 error_msg String 参数解释: 接口调用失败错误信息 取值范围: 不涉及
  • URI GET /v4/{project_id}/test-reports 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 参数解释: 项目id,对应"需求管理 CodeArts Req"项目唯一标识,测试计划管理页面地址栏url https://{host}/cloudtestportal/project/{project_id}/testplan中project_id变量的值 约束限制: 不涉及 取值范围: 项目uuid应符合如下规则:长度等于32位,包含大小写字母、数字 默认取值: 不涉及 表2 Query参数 参数 是否必选 参数类型 描述 key_word 否 String 名称关键词 own 否 Boolean 是否是我的测试报告 page_no 否 Integer 页数 page_size 是 Integer 每页条数
  • 软件包获取地址 软件包名称 软件包说明 获取地址 AscendCloud-6.3.907-xxx.zip 包含 三方大模型训练和推理代码包:AscendCloud-LLM AIGC代码包:AscendCloud-AIGC 算子依赖包:AscendCloud-OPP 获取路径:Support-E 说明: 如果上述软件获取路径打开后未显示相应的软件信息,说明您没有下载权限,请联系您所在企业的华为方技术支持下载获取。
  • 支持的特性 表1 本版本支持的特性说明 分类 软件包特性说明 参考文档 三方大模型,包名:AscendCloud-LLM 支持如下模型适配PyTorch-NPU的训练(ModelLink) llama2-7b llama2-13b llama2-70b qwen-7b qwen-14b qwen-72b baichuan2-13b chatglm3-6b llama3-8b llama3-70b yi-6B yi-34B qwen1.5-7B qwen1.5-14B qwen1.5-32B qwen1.5-72B qwen2-0.5b qwen2-1.5b qwen2-7b qwen2-72b glm4-9b 支持如下模型适配PyTorch-NPU的训练(LlamaFactory) llama3-8b llama3-70b qwen1.5-0.5b qwen1.5-1.8b qwen1.5-4b qwen1.5-7b qwen1.5-14b yi-6b yi-34b qwen2-0.5b qwen2-1.5b qwen2-7b qwen2-7b falcon-11B LLM开源大模型基于DevServer适配ModelLinkPyTorch NPU训练指导(6.3.907) LLM开源大模型基于DevServer适配LLamaFactory PyTorch NPU训练指导(6.3.907) LLM开源大模型基于Standard+OBS适配PyTorch NPU训练指导(6.3.907) LLM开源大模型基于Standard+OBS+SFS适配PyTorch NPU训练指导(6.3.907) 支持如下模型适配PyTorch-NPU的推理。 llama-7B llama-13b llama-65b llama2-7b llama2-13b llama2-70b llama3-8b llama3-70b yi-6b yi-9b yi-34b deepseek-llm-7b deepseek-coder-instruct-33b deepseek-llm-67b qwen-7b qwen-14b qwen-72b qwen1.5-0.5b qwen1.5-7b qwen1.5-1.8b qwen1.5-14b qwen1.5-32b qwen1.5-72b qwen1.5-110b qwen2-0.5b qwen2-1.5b qwen2-7b qwen2-72b baichuan2-7b baichuan2-13b chatglm2-6b chatglm3-6b glm-4-9b gemma-2b gemma-7b mistral-7b mixtral 8*7B falcon2-11b qwen2-57b-a14b llama3.1-8b llama3.1-70b ascend-vllm支持如下推理特性: vLLM版本升级至0.5.0 LLM开源大模型基于DevServer适配PyTorch NPU推理指导(6.3.907) LLM开源大模型基于Standard适配PyTorch NPU推理指导(6.3.907) AIGC,包名:AscendCloud-AIGC 支持如下框架或模型基于DevServer的PyTorch NPU推理: ComfyUI diffusers LLaVA Qwen-VL Wav2Lip OpenSora1.2 OpenSoraPlan1.0 支持如下框架或模型基于DevServer的PyTorch NPU的训练: diffusers kohya_ss LLaVA Wav2Lip OpenSora1.2 OpenSoraPlan1.0 SD3 Diffusers框架基于DevServer适配PyTorch NPU推理指导(6.3.907) Open-Sora-Plan1.0基于DevServer适配PyTorch NPU训练推理指导(6.3.907) Wav2Lip基于DevServer适配PyTorch NPU推理指导 Wav2Lip基于DevServer适配PyTorch NPU训练指导 算子,包名:AscendCloud-OPP Scatter、Gather算子性能提升,满足MoE训练场景 matmul、swiglu、rope等算子性能提升,支持vllm推理场景 支持random随机数算子,优化FFN算子,满足AIGC等场景 支持自定义交叉熵融合算子,满足BMTrain框架训练性能要求 优化PageAttention算子,满足vllm投机推理场景 支持CopyBlocks算子,满足vllm框架beam search解码场景 无
  • 配套的基础镜像 镜像地址 获取方式 镜像软件说明 配套关系 西南-贵阳一 PyTorch: swr.cn-southwest-2.myhuaweicloud.com/atelier/pytorch_2_1_ascend:pytorch_2.1.0-cann_8.0.rc2-py_3.9-hce_2.0.2312-aarch64-snt9b-20240727152329-0f2c29a MindSpore: swr.cn-southwest-2.myhuaweicloud.com/atelier/mindspore_2_3_ascend:mindspore_2.3.0-cann_8.0.rc2-py_3.9-hce_2.0.2312-aarch64-snt9b-20240727152329-0f2c29a 镜像发布到SWR,从SWR拉取 固件驱动:23.0.6 CANN:cann_8.0.rc2 容器镜像OS:hce_2.0 PyTorch:pytorch_2.1.0 MindSpore:MindSpore 2.3.0 FrameworkPTAdapter:6.0.RC2 如果用到CCE,版本要求是 CCE Turbo v1.25及以上
  • 昇腾云服务6.3.904版本说明 昇腾云服务6.3.904版本发布支持的软件包和能力说明如下,软件包获取路径:Support-E网站。 发布包 软件包特性说明 配套说明 备注 昇腾云模型代码 三方大模型,包名:AscendCloud-3rdLLM PyTorch框架下支持如下模型训练: llama2-7b llama2-13b llama2-70b qwen-7b qwen-14b qwen-72b baichuan2-13b chatglm3-6b PyTorch框架下支持如下模型推理: llama-7B llama-13b llama-65b llama2-7b llama2-13b llama2-70b llama3-8b llama3-70b yi-6b yi-9b yi-34b deepseek-llm-7b deepseek-coder-instruct-33b deepseek-llm-67b qwen-7b qwen-14b qwen-72b qwen1.5-0.5b qwen1.5-7b qwen1.5-1.8b qwen1.5-14b qwen1.5-32b qwen1.5-72b qwen1.5-110b baichuan2-7b baichuan2-13b chatglm2-6b chatglm3-6b gemma-2b gemma-7b mistral-7b 配套CANN8.0.RC1镜像 训练参考文档: LLama2系列(PyTorch)基于DevServer训练指导 Qwen系列(PyTorch)基于DevServer训练指导 GLM3-6B(PyTorch)基于DevServer训练指导 Baichuan3-13B(PyTorch)基于DevServer训练指导 推理参考文档: 主流开源大模型(PyTorch)基于DevServer推理部署 AIGC,包名:ascendcloud-aigc Controlnet插件支持NPU推理(适配ComfyUI) Open-Clip模型昇腾适配 SD1.5 Finetune高性能训练 moondream2推理适配昇腾 BERT、YOLO等8个常用模型适配 配套CANN8.0.RC1镜像 参考文档 SDXL文生图ComfyUI插件基于DevServer适配NPU推理指导 Open-Clip基于DevServer适配PyTorch NPU训练指导 SD1.5文生图Finetune高性能训练适配NPU指导 moondream2基于DevServer适配PyTorch NPU推理指导 大模型推理框架,包名:ascendcloud-llmframework VLLM调度层适配ATB、pybind 支持LLAMA7B/13B/65B 支持单机多卡推理 ATB模式支持w8a16量化,推理性能提升 配套CANN8.0.RC1镜像 无 算子,包名:AscendCloud-OPP Scatter、Gather算子性能提升,满足MoE场景 昇腾随机数生成算子与GPU保持一致 支持GroupNorm+transpose+BMM融合算子 FFN推理算子支持geglu激活函数 支持配套pybind推理的10+算子(matmul 、swiglu、rope等) 配套CANN8.0.RC1镜像 无 基础镜像 CANN8.0.RC1商发版本 MindSpore: 西南-贵阳一:swr.cn-southwest-2.myhuaweicloud.com/atelier/mindspore_2_3_ascend:mindspore_2.3.0-cann_8.0.rc1-py_3.9-hce_2.0.2312-aarch64-snt9b-20240516142953-ca51f42 华北-乌兰察布一:swr.cn-north-9.myhuaweicloud.com/atelier/mindspore_2_3_ascend:mindspore_2.3.0-cann_8.0.rc1-py_3.9-hce_2.0.2312-aarch64-snt9b-20240516142953-ca51f42 PyTorch: 西南-贵阳一:swr.cn-southwest-2.myhuaweicloud.com/atelier/pytorch_2_1_ascend:pytorch_2.1.0-cann_8.0.rc1-py_3.9-hce_2.0.2312-aarch64-snt9b-20240516142953-ca51f42 华北-乌兰察布一:swr.cn-north-9.myhuaweicloud.com/atelier/pytorch_2_1_ascend:pytorch_2.1.0-cann_8.0.rc1-py_3.9-hce_2.0.2312-aarch64-snt9b-20240516142953-ca51f42 商发镜像发布到SWR 无 父主题: 产品发布说明
  • 支持的区域 如果在开发环境使用SDK,则所有区域均支持;如果下载至本地使用,支持的区域如下: 华北-北京一(cn-north-1) 华北-北京二(cn-north-2) 华北-北京四(cn-north-4) 华北-乌兰察布二零一(cn-north-5) 华北-乌兰察布一(cn-north-9) 西南-贵阳一(cn-southwest-2) 东北-大连(cn-northeast-1) 华东-上海二(cn-east-2) 华东-上海一(cn-east-3) 华南-广州(cn-south-1) 中国-香港(ap-southeast-1) 亚太-新加坡(ap-southeast-3)
  • 处理方法 检查结果中展现了TOP10问题规则名称及其数量。用户可根据任务的具体情况删除问题数较多的规则,直至总问题数降至30W以下后,再次进行代码检查。操作步骤如下: 参考查看代码问题导出检查结果,并识别出问题数较多的规则。 参考创建自定义规则集,在自定义的规则集中删除1中识别的规则。 参考配置代码检查服务使用自定义规则集,使用2自定义的规则集重新执行代码检查任务。 重复2~3,直至总问题数降至30W以下。
  • 原因分析 项目文件中包含了“package-lock.json”文件。 在检查TypeScript语言的代码质量时,通常不应该包含“package-lock.json”文件,因为这个文件主要用于管理项目的依赖关系和版本锁定。在代码质量检查过程中,通常会忽略这个文件,因为它是根据项目中的“package.json”文件自动生成的,并且包含了依赖项的具体版本信息,不应该被手动修改或包含在代码质量检查的范围内。 另外,“package-lock.json”文件通常会随着项目的依赖项安装或更新而自动生成或更新,因此将其包含在代码质量检查中可能会导致不必要的冲突或误报。
  • 约束与限制 通过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相关概念和图数据介绍请参见一般图数据格式。
  • 创建用户组并授予系统角色 User 使用华为账号登录 统一身份认证 服务 IAM 控制台。 在IAM服务控制台中,单击“用户组”,在用户组页面单击右上方的“创建用户组”。 图3 创建用户组 在“创建用户组”界面,输入“用户组名称”DQC。 图4 用户组名称 单击“确定”,用户组创建完成,用户组列表中显示新创建的用户组。 您最多可以创建20个用户组,如果当前资源配额无法满足业务需要,您可以申请扩大配额,具体方法请参见:如何申请扩大配额? 在用户组列表中,单击新建用户组右侧的“授权”。 图5 进入用户组权限设置页面 在搜索框中输入DAYU User,勾选该系统角色,单击“下一步”。 图6 角色授权 请勿勾选“DAYU Administrator”权限,“DAYU Administrator”权限具有DataArts Studio服务的所有执行权限,不受工作空间权限管控。 授权范围方案选择需要授予的区域项目,单击“确定”,完成授权。 DataArts Studio部署时通过物理区域划分,为项目级服务。授权时,“授权范围方案”如果选择“所有资源”,则该权限在所有区域项目中都生效;如果选择“指定区域项目资源”,则该权限仅对此项目生效。IAM用户授权完成后,访问DataArts Studio时,需要先切换至授权区域。 图7 设置最小授权范围
  • 创建IAM用户并加入用户组 在IAM服务控制台中,左侧导航窗格中,选择“用户”,单击右上方的“创建用户”。 图13 创建用户 在“创建用户”页面按照下图配置“用户信息”,完成配置后单击页面右下角的“下一步”。 用户信息:用户名填写为DataArts Studio-DQC。 访问方式:选择“管理控制台访问”和“编程访问”。 仅当创建IAM用户时的访问方式勾选“编程访问”后,此IAM用户才能通过认证鉴权,从而使用API、SDK等方式访问DataArts Studio。 凭证类型:勾选访问密钥和密码,推荐为用户自定义初始密码。 登录保护:根据需求选择,一般无需开启。 图14 配置用户信息 选择将用户加入到DQC用户组,单击页面右下角的创建用户。 图15 创建用户按钮 创建完成可返回用户列表查看。 图16 创建成功
  • 自定义工作空间角色 使用华为账号登录DataArts Studio管理控制台的首页,单击“角色管理”。 企业模式是否预置部署者角色以及创建自定义角色时的参数,与企业模式是否开启有关。本文以未开启企业模式为例进行说明。 图17 新建自定义角色 在角色管理页面,单击“新建”,弹出“创建自定义角色”对话框。 角色名称:标识自定义角色的唯一标识,此处填写为“Developer_DQC”。 角色描述:补充对该角色的相关说明,此处填写为“基于开发者角色,仅保留数据质量权限”。 角色类型:未开启企业模式,选择任一自定义角色即可。 复用预置角色:选择“开发者”,然后去勾选其他组件的新增、删除、操作、编辑权限,仅为该角色保留数据质量组件的权限和其他组件的查看权限。 图18 创建自定义角色 配置完成后,单击“确定”即可新增自定义角色。
  • 操作流程 创建用户组并授予系统角色 User:创建数据运营工程师IAM账号所在的用户组,并授予 User权限。 配置最小权限合集并去除预置依赖服务权限:为用户组去除默认的依赖服务管理员权限,然后配置最小权限。 创建IAM用户并加入用户组:为数据运营工程师创建IAM账号,并加入到用户组中。 自定义工作空间角色:在角色管理页面,新建自定义角色,仅授权某一组件权限,本案例中以数据质量为例。 添加工作空间成员并配置角色:将新创建的IAM用户加入到工作空间并配置为新建的自定义角色。 用户登录并验证权限:使用新创建的用户登录控制台,验证权限配置是否符合预期。 图2 最小化授权操作流程
  • 添加工作空间成员并配置角色 使用华为账号登录DataArts Studio管理控制台的首页,单击“空间管理”。 图19 空间管理 选择需要加入的工作空间,单击“编辑”。 图20 编辑工作空间 在空间信息界面,单击“添加”。 图21 添加成员 将新建的IAM用户加入工作空间,单击“确定”。 用户类型:选择“按用户添加”。 成员账号:选择创建IAM用户并加入用户组章节中新建的IAM用户。 设置角色:选择自定义工作空间角色章节中新建的自定义角色。 图22 添加成员 加入到工作空间后,该用户即可拥有DataArts Studio数据质量组件的操作权限,其余组件仅有查看权限但无法编辑。
  • 实践场景及目标 假设某数据运营工程师专职负责数据质量监控相关工作,且仅需要服务数据质量组件的操作权限。则在为该用户授权时,如果项目管理员直接赋予该数据运营工程师IAM账号“DAYU User系统角色+工作空间开发者角色”权限,则会出现如下非必需权限过大的风险: 依赖服务权限过大:服务作为平台型服务,DAYU User系统角色预置了依赖服务(如MRS、DWS等相关服务)的管理员权限。当为数据运营工程师IAM账号授予DAYU User系统角色后,会导致其拥有依赖服务的管理员权限。 服务其他组件操作权限不受控制:工作空间开发者角色默认具备该工作空间内所有组件的操作权限。当为数据运营工程师IAM账号授权工作空间开发者角色后,会导致其拥有数据质量组件之外的其他组件操作权限。 图1 权限体系 服务的权限体系如图1所示。为解决此问题,项目管理员可以按照如下解决方案进行权限最小化配置,这样既能满足实际业务使用,也避免了权限过大的风险。 为数据运营工程师IAM账号授予DAYU User系统角色权限,然后赋予依赖服务的最小权限合集,再删除IAM账号中的预置依赖服务权限。 为IAM用户授予普通用户最小化权限时,有如下两种方案: A. 为用户授予DAYU User,然后赋予依赖服务的最小权限合集,再删除IAM账号中的预置依赖服务权限。 B. 为用户授予DataArts Studio User,然后赋予依赖服务的最小权限合集。 本案例以方案A为例进行介绍。在实际配置中,您任意选择这两种方案之一即可。 在服务内,创建一个仅保留数据质量组件操作权限的自定义角色“Developer_DQC”,然后将数据运营工程师IAM账号添加为工作空间成员并赋予此角色。
  • 参数说明 -I 安装目录。 默认值:/opt/${gds_user}/packages/,其中${gds_user}表示GDS业务的操作系统用户。 -U GDS用户。 -G GDS用户所属组。 --pkg GDS安装包路径,形如/path/to/ GaussDB -9.1.0-REDHAT-x86_64bit-Gds.tar.gz。 --host 待安装部署节点的IP列表,支持文件和字符串两种形式: 文件形式:每一行一个IP地址,如: 192.168.2.200 192.168.2.201 字符串形式:半角逗号分隔,如: 192.168.2.200,192.168.2.201。 执行命令节点必须是待部署节点之一,其IP须在列表中。 --ping-host 调用gds_check时,在各检查节点上进行网络ping检查的目标地址。 取值:IP列表,支持文件和字符串两种形式,一般是DN、CN、网关的IP地址。 文件形式:每一行一个IP地址,如: 192.168.2.200 192.168.2.201 字符串形式:半角逗号分隔,如: 192.168.2.200,192.168.2.201 -V 显示版本信息。 -h, --help 显示帮助信息。
  • 注意事项 执行脚本前需设置环境变量,可参考安装配置和启动GDS章节。 脚本需要在python 3环境下运行。 必须在root用户下执行脚本gds_install。 用户需要检查上层目录权限,保证GDS用户对安装操作目录、安装目录及安装包有读写执行的权限。 目前不支持跨平台的安装部署。 执行命令节点也必须是安装部署机器之一。 --host参数指定的所有节点的密码必须保持一致,才能保证脚本成功进行远程部署。
  • 示例 将GDS安装部署在节点192.168.1.100、192.168.1.101上,并指定安装目录为/opt/gdspackages/install_dir,GDS用户是gds_test:wheel。 gds_install -I /opt/gdspackages/install_dir --host 192.168.1.100,192.168.1.101 -U gds_test -G wheel --pkg /home/gds_test/GaussDB-9.1.0-REDHAT-x86_64bit-Gds.tar.gz
  • CHECK OPTION 通过tdMigrateVIEWCHECKOPTIO....参数可以配置如何迁移包含CHECK OPTION关键字的视图。 如果源数据库中出现含有CHECK OPTION关键词的视图,则工具在目标数据库中注释掉CHECK OPTION。 输入:VIEW,使用CHECK OPTION 1 2 3 4 5 6 CV mgr15 AS SEL * FROM employee WHERE manager_id = 15 WITH CHECK OPTION ; 输出:(tdMigrateVIEWCHECKOPTION=True) 1 2 3 4 5 6 7 8 9 10 CREATE OR REPLACE VIEW mgr15 AS ( SELECT * FROM employee WHERE manager_id = 15 /*WITH CHECK OPTION */ ) ; 输出:(tdMigrateVIEWCHECKOPTION=False) 1 2 3 4 5 6 CV mgr15 AS SEL * FROM employee WHERE manager_id = 15 WITH CHECK OPTION ;
  • VIEW WITH AC CES S LOCK 通过tdMigrateLOCKOption参数可以配置如何迁移包含LOCK关键字的查询。如果tdMigrateLOCKOption设置为false,则该工具在迁移时将跳过该查询并记录日志。 输入:VIEW,使用ACCESS LOCK 1 2 3 4 5 6 7 8 CREATE OR REPLACE VIEW DP_SVMEDW.S_LCR_909_001_LCRLOAN AS LOCK TABLE DP_STEDW.S_LCR_909_001_LCRLOAN FOR ACCESS FOR ACCESS ( SELECT RUN_ID, PRODUCT_ID, CURRENCY , CASHFLOW, ENTITY, LCR , TIME_BUCKET, MT, Ctl_Id , File_Id, Business_Date FROM DP_STEDW.S_LCR_909_001_LCRLOAN ) ; 输出: 1 2 3 4 5 6 7 8 CREATE OR REPLACE VIEW DP_SVMEDW.S_LCR_909_001_LCRLOAN AS /* LOCK TABLE DP_STEDW.S_LCR_909_001_LCRLOAN FOR ACCESS */ ( SELECT RUN_ID, PRODUCT_ID, CURRENCY , CASHFLOW, ENTITY, LCR , TIME_BUCKET, MT, Ctl_Id , File_Id, Business_Date FROM DP_STEDW.S_LCR_909_001_LCRLOAN ) ; dbc.columnsV 输入: SELECT A.ColumnName AS V_COLS ,A.columnname || ' ' ||CASE WHEN columnType in ('CF','CV') THEN CASE WHEN columnType='CV' THEN 'VAR' ELSE '' END||'CHAR('||TRIM(columnlength (INT))|| ') CHARACTER SET LATIN'|| CASE WHEN UpperCaseFlag='N' THEN ' NOT' ELSE '' END || ' CASESPECIFIC' WHEN columnType='DA' THEN 'DATE' WHEN columnType='TS' THEN 'TIMESTAMP(' || TRIM(DecimalFractionalDigits)||')' WHEN columnType='AT' THEN 'TIME('|| TRIM(DecimalFractionalDigits)||')' WHEN columnType='I' THEN 'INTEGER' WHEN columnType='I1' THEN 'BYTEINT' WHEN columnType='I2' THEN 'SMALLINT' WHEN columnType='I8' THEN 'BIGINT' WHEN columnType='D' THEN 'DECIMAL('||TRIM(DecimalTotalDigits)||','||TRIM(DecimalFractionalDigits)||')' ELSE 'Unknown' END||CASE WHEN Nullable='Y' THEN '' ELSE ' NOT NULL' END||'0A'XC AS V_ColT ,D.ColumnName AS V_PICol --获得目标表主索引 FROM dbc.columnsV A LEFT JOIN dbc.IndicesV B ON A.columnName = B.columnName AND B.IndexType IN ('Q','P') AND B.DatabaseName = '${V_TDDLDB}' AND B.tablename='${TARGET_TABLE}' WHERE A.databasename='${V_TDDLDB}' AND A.tablename = '${TARGET_TABLE}' AND A.columnname NOT IN ( 'ETL_JOB_NAME' ,'ETL_TX_DATE' , 'ETL_PROC_DATE' )ORDER BY A.columnid; 输出: D DECLARE lv_mig_V_COLS TEXT; lv_mig_V_ColT TEXT; lv_mig_V_PICol TEXT; BEGIN SELECT STRING_AGG(A.ColumnName, ',') , STRING_AGG(A.columnname || ' ' ||CASE WHEN columnType in ('CF','CV') THEN CASE WHEN columnType='CV' THEN 'VAR' ELSE '' END||'CHAR('||TRIM(mig_td_ext.mig_fn_castasint(columnlength))|| ') /*CHARACTER SET LATIN*/'|| CASE WHEN UpperCaseFlag='N' THEN ' NOT' ELSE '' END || ' /*CASESPECIFIC*/' WHEN columnType='DA' THEN 'DATE' WHEN columnType='TS' THEN 'TIMESTAMP(' || TRIM(DecimalFractionalDigits)||')' WHEN columnType='AT' THEN 'TIME('|| TRIM(DecimalFractionalDigits)||')' WHEN columnType='I' THEN 'INTEGER' WHEN columnType='I1' THEN 'BYTEINT' WHEN columnType='I2' THEN 'SMALLINT' WHEN columnType='I8' THEN 'BIGINT' WHEN columnType='D' THEN 'DECIMAL('||TRIM(DecimalTotalDigits)||','||TRIM(DecimalFractionalDigits)||')' ELSE 'Unknown' END||CASE WHEN Nullable='Y' THEN '' ELSE ' NOT NULL' END||E'\x0A', ',') , STRING_AGG(B.ColumnName, ',') INTO lv_mig_V_COLS, lv_mig_V_ColT, lv_mig_V_PICol FROM mig_td_ext.vw_td_dbc_columnsV A LEFT JOIN mig_td_ext.vw_td_dbc_IndicesV B ON A.columnName = B.columnName AND B.IndexType IN ('Q','P') AND B.DatabaseName = 'public' AND B.tablename='emp2' WHERE A.databasename='public' AND A.tablename = 'emp2'; -- ORDER BY A.columnid; END; /
  • REPLACE FUNCTION 输入: REPLACE FUNCTION up_load1.RPT_016_BUS_DATE() RETURNS DATE LANGUAGE SQL CONTAINS SQL DETERMINISTIC SQL SECURITY DEFINER COLLATION INVOKER INLINE TYPE 1 RETURN DATE'2017-08-22'; 输出: CREATE OR REPLACE FUNCTION up_load1.RPT_016_BUS_DATE() RETURNS DATE LANGUAGE SQL IMMUTABLE SECURITY DEFINER AS $$ SELECT CAST('2017-08-20' AS DATE) $$ ;
  • REPLACE VIEW 在Teradata中,REPLACE VIEW语句用于创建新视图,或重建现有视图。DSC将其迁移为DWS中兼容的CREATE OR REPLACE VIEW语句中。 输入:REPLACE VIEW 1 2 3 4 5 6 7 REPLACE VIEW DP_STEDW.MY_PA RAM AS SELECT RUNDATE FROM DP_STEDW.DATE_TBL WHERE dummy = 1 ; 输出: 1 2 3 4 5 6 7 8 9 10 CREATE OR REPLACE VIEW DP_STEDW.MY_PARAM AS ( SELECT RUNDATE FROM DP_STEDW.DATE_TBL WHERE dummy = 1 ) ; 输入:REPLACE RECURSIVE VIEW 1 2 3 4 5 6 Replace RECURSIVE VIEW reachable_from ( emp_id,emp_name,DEPTH) AS ( SELECT root.emp_id,root.emp_name,0 AS DEPTH FROM emp AS root WHERE root.mgr_id IS NULL); 输出: 1 2 3 4 5 6 7 8 CREATE OR REPLACE VIEW reachable_from AS ( WITH RECURSIVE reachable_from ( emp_id,emp_name,DEPTH) AS ( SELECT root.emp_id,root.emp_name,0 AS DEPTH FROM emp AS root WHERE root.mgr_id IS NULL ) SELECT * FROM reachable_from);
  • 示例 卸载安装部署在节点192.168.1.100、192.168.1.101上,安装用户为gds_test的,GDS文件夹及环境变量。 gds_uninstall -U gds_test --host 192.168.1.100,192.168.1.101 卸载时,同时删除用户。 gds_uninstall -U gds_test --host 192.168.1.100,192.168.1.101 --delete-user
  • 参数说明 --host 待卸载节点的IP列表,支持文件和字符串两种形式: 文件形式:每一行一个IP地址,如: 192.168.2.200 192.168.2.201 字符串形式:半角逗号分隔,如: 192.168.2.200,192.168.2.201。 -U GDS用户。 --delete-user 卸载的同时,删除用户。被删除的用户不可以是root用户。 --delete-user-and-group 卸载的同时,删除用户和其所在用户组。仅当用户组只包含该待删除用户一个用户时可以删除用户组。该用户组不能是root用户组。 -V 显示版本信息。 -h, --help 显示帮助信息。
  • 注意事项 执行脚本前需设置环境变量,可参考安装配置和启动GDS章节。 脚本需要在python 3环境下运行。 必须在root用户下执行脚本。 必须指定-t、--host参数。 当--host指定网络地址0.0.0.0或127.0.0.1时,不会检查MTU和网卡多队列。 网卡多队列的检查、修复要求网卡至少是万兆。 --host参数指定的所有节点的密码必须保持一致,才能保证脚本成功进行远程检查。 执行修复时,对配置劣于推荐值的参数,建议设置为OS中配置项的推荐值,具体见下表: 表1 OS配置项 参数 推荐值 net.core.somaxconn 65535 net.ipv4.tcp_max_syn_backlog 65535 net.core.netdev_max_backlog 65535 net.ipv4.tcp_retries1 5 net.ipv4.tcp_retries2 12 net.ipv4.ip_local_port_range 26000~65535 MTU 1500 net.core.wmem_max 21299200 net.core.rmem_max 21299200 net.core.wmem_default 21299200 net.core.rmem_default 21299200 max handler 1000000 vm.swappiness 10 表2 磁盘检查 检查项 警告 磁盘空间使用率 大于等于70%且小于90% inode使用率 大于等于70%且小于90% 表3 网络检查 检查项 报错 检查网络连通性 包100%丢失 检查网卡多队列 开启网卡多队列且绑定不同CPU,支持fix修改
  • 语法 检查命令 gds_check -t check --host [/path/to/hostfile | ipaddr1,ipaddr2...] --ping-host [/path/to/pinghostfile | ipaddr1,ipaddr2...] [--detail] 修复命令 gds_check -t fix --host [/path/to/hostfile | ipaddr1,ipaddr2...] [--detail]
  • 参数说明 -t 操作类型,表示检查/修复。 取值:check,fix。 --host 需要检查/修复的节点IP列表。 取值:IP列表,支持文件和字符串两种形式。 文件形式:每一行一个IP地址,如: 192.168.1.200 192.168.1.201 字符串形式:半角逗号分隔,如: 192.168.1.200,192.168.1.201 --ping-host 在各检查节点上进行网络ping检查的目标地址。 取值:IP列表,支持文件和字符串两种形式,一般是DN、CN、网关的IP地址。 文件形式:每一行一个IP地址,如: 192.168.2.200 192.168.2.201 字符串形式:半角逗号分隔,如: 192.168.2.200,192.168.2.201 --detail 显示检查/修复项详细信息,并存入日志。 -V 显示版本信息。 -h, --help 显示帮助信息。
  • 示例 执行检查,--host、--ping-host均为IP字符串形式: gds_check -t check --host 192.168.1.100,192.168.1.101 --ping-host 192.168.2.100 执行检查,--host为字符串,--ping-host为文件形式: gds_check -t check --host 192.168.1.100,192.168.1.101 --ping-host /home/gds/iplist cat /home/gds/iplist 192.168.2.100 192.168.2.101 执行检查,--host为文件形式,--ping-host为字符串: gds_check -t check --host /home/gds/iplist --ping-host 192.168.1.100,192.168.1.101 执行修复,--host为字符串: gds_check -t fix --host 192.168.1.100,192.168.1.101 执行检查,打印详细信息,并存入日志: gds_check -t check --host 192.168.1.100 --detail 执行修复,打印详细信息,并存入日志: gds_check -t fix --host 192.168.1.100 --detail
共100000条
提示

您即将访问非华为云网站,请注意账号财产安全