华为云用户手册

  • Predicted_objects stamp_secs: 1617336640 stamp_nsecs: 971891550 timestamp: 1617336640971 obstacle_info { obstacle_timestamp: 1617336640699 id: 6711 x: -123.08731842041016 y: 486.83221435546875 z: 0.575542688369751 prediction_trajectory { path_point { x: -103.26817321777344 y: 486.0815734863281 theta: -0.007839304395020008 v: 4.405668258666992 relative_time: 4.5 } path_point { x: -102.82765197753906 y: 486.0737609863281 theta: -0.00746726430952549 v: 4.405668258666992 relative_time: 4.599999904632568 } ...... } } obstacle_info { obstacle_timestamp: 1617336640699 id: 6744 x: -145.0320587158203 y: 491.35015869140625 z: -0.40381166338920593 prediction_trajectory { path_point { x: -145.0320587158203 y: 491.35015869140625 theta: -2.9442124366760254 v: 1.0038001537322998 } path_point { x: -145.1304931640625 y: 491.3304748535156 theta: -2.9442124366760254 v: 1.0038001537322998 relative_time: 0.10000000149011612 } ...... } } obstacle_info { obstacle_timestamp: 1617336640699 id: 6760 x: -138.3047332763672 y: 489.9286193847656 z: -0.12651222944259644 }
  • Ego_tf localization_info { timestamp: 1604996332855 stamp_secs: 1604996332 stamp_nsecs: 855301408 pose_position_x: 1165.5460205078125 pose_position_y: -479.2198486328125 pose_position_z: -1.48505699634552 pose_orientation_x: 0.003883248195052147 pose_orientation_y: -0.0031167068518698215 pose_orientation_z: 0.7017714977264404 pose_orientation_w: 0.7123847603797913 pose_orientation_yaw: 1.5557808876037598 velocity_linear: 12.21684455871582 velocity_angular: 0.014540454372763634 acceleration_linear: 0.23571151494979858 acceleration_angular: 0.0 }
  • Traffic_light_info timestamp: 1630057508000 stamp_secs: 1630057508 lights { id: 1 color: 1 location_x: -206.60186767578125 location_y: 459.9820861816406 location_z: 3.0 } lights { id: 2 color: 2 location_x: -74.1282958984375 location_y: 484.984619140625 location_z: 4.0 } lights { id: 3 color: 3 location_x: 59.96036911010742 location_y: 473.6038513183594 location_z: 5.0 }
  • 数据场景相关操作 在“数据场景”模块,还可以完成以下操作。 表1 数据场景相关操作 任务 操作步骤 切换视图 单击操作列的“切换视图”,场景片段可以由列表和时间轴两种视图相互切换。 删除场景片段 选择目标场景片段,单击列表上方的“删除”,可删除单个或多个场景片段。 回放场景片段 鼠标悬停在目标场景片段时间轴上,单击带时间段的按钮,页面自动跳转至“数据回放”模块,详情请参考数据回放。 筛选场景片段 在搜索输入框中输入搜索条件查询场景片段。
  • 地图管理相关操作 表1 地图管理相关操作 任务 操作步骤 查看地图包详情 在“地图管理”页面,单击操作栏内的“详情”,用户可查看地图包详情。具体页面参考地图包详情。 删除地图包 在“地图管理”页面,单击操作栏内的“删除”,即可删除地图包。 查询地图包 在“地图管理”页面的搜索框输入搜索条件,按回车键即可查询地图包。 更新地图包 在“地图包详情”页面,单击文件后“上传更新”,可对地图文件以及OSGB文件(OSGB:OpenSceneGraphBinary,OSGB文件格式属于3D图文件格式)进行修改。详情请参考地图包详情。
  • 地图包详情 在上传地图包后,在地图包列表页,单击操作栏内的“详情”,用户可查看地图包详情。 图1 地图包详情 表2 地图包详情说明 序号 区域 说明 1 控制地图包信息显示或者隐藏。 地图包信息包含:地图文件信息、osgb文件信息、地图信息。单击文件后“上传更新”,可对地图文件以及osgb文件进行修改。 2 地图显示区域 单击鼠标左键可旋转查看地图轨迹。 单击鼠标右键可平移地图轨迹。 鼠标滚轮可控制轨迹的大小缩放。 鼠标悬停在轨迹任意位置,可查看当前位置的坐标、车道等信息。 3 地图控制区域 单击右下方(放大、缩小、重置)任意选项,可以对地图进行放大、缩小、重置操作。
  • 操作流程 Octopus仿真服务的流程如图1所示。 图1 Octopus仿真服务全流程 表1 使用流程说明 流程 子任务 说明 详细指导 镜像仓库 镜像仓库 平台为用户提供了自定义镜像功能,为了方便用户对镜像进行统一管理,平台设置了镜像仓库管理。 创建镜像仓库 仿真服务 算法管理 在创建任务前,需要创建算法,用户可从本地上传容器镜像。 创建仿真算法 评测管理 支持内置评测配置和自定义评测镜像,对仿真任务中的算法展开评测。 创建评测 场景管理 创建仿真场景,仿真场景库、测试套件、测试用例和逻辑泛化场景用于仿真开发。 创建仿真场景 任务管理 选择仿真算法和仿真场景创建仿真任务,从行车安全、驾驶行为、乘员舒适性等角度衡量仿真算法控制效果,支持可视化仿真结果,生成任务报告。 创建仿真任务
  • 编辑评测指标 评测类型为内置评测配置时,可为评测添加或删除评测指标,便于管理。 单击评测名称,在评测项目详情页,自定义评测配置部分,单击“编辑”。 单击“添加评测指标”,选择需要添加的指标,单击“确认”。 设置指标的阈值和重要度。 阈值设置:单击“阈值设置”列中的编辑按钮,可设置对应阈值。部分指标支持设置阈值,请以界面展示为准。 重要度:在“重要度”列选择主要或次要。 设置评分方案。 可选主要次要log函数、主要次要均匀权重、全部均匀权重。 删除评测指标。 单击评测指标“操作”列内的“删除”,删除该评测指标。 被任务使用的评测项目和镜像不能删除。 以上信息选择无误后,单击“保存”,评测指标编辑完成。
  • 新建镜像仓库 用平台管理员账号登录Octopus平台。 在左侧菜单栏中,单击“镜像仓库 ”。 单击“新建”,填写基本信息。 名称:输入镜像仓库的名称,只能包含数字、英文、中文、下划线、中划线。 描述:简单描述镜像仓库,最大长度为255。 用途:根据需求在下拉框选择用途。 使用范围:仅支持团队,即租户内所有配置了该镜像相关权限的用户都可见可编辑。 单击“确认”,在镜像仓库列表即可查看新建的镜像仓库。 (可选)管理已创建的镜像仓库。 在“镜像仓库”列表,还可以完成以下操作。 查看镜像仓库详情:单击操作栏内的“详情”,可查看镜像仓库详情。 查询镜像仓库:在搜索框中输入搜索条件,按回车键即可查询。 删除镜像仓库:单击操作栏内的“删除”,可删除镜像仓库。 编辑镜像仓库:单击操作栏内的“编辑”,可编辑镜像仓库名称和描述。
  • 新建镜像仓库 用平台管理员账号登录Octopus平台。 在左侧菜单栏中,单击“镜像仓库 ”。 单击“新建”,填写基本信息。 名称:输入镜像仓库的名称,只能包含数字、英文、中文、下划线、中划线。 描述:简单描述镜像仓库,最大长度为255。 用途:根据需求在下拉框选择用途。 使用范围:仅支持团队,即租户内所有配置了该镜像相关权限的用户都可见可编辑。 单击“确认”,在镜像仓库列表即可查看新建的镜像仓库。 (可选)管理已创建的镜像仓库。 在“镜像仓库”列表,还可以完成以下操作。 查看镜像仓库详情:单击操作栏内的“详情”,可查看镜像仓库详情。 查询镜像仓库:在搜索框中输入搜索条件,按回车键即可查询。 删除镜像仓库:单击操作栏内的“删除”,可删除镜像仓库。 编辑镜像仓库:单击操作栏内的“编辑”,可编辑镜像仓库名称和描述。
  • 使用流程 Octopus平台提供了“数据准备 → 标注数据 → 训练模型 → 仿真任务”的全流程开发,针对每个环节,其使用是相对独立自由的。 本章节梳理了Octopus使用流程详解,介绍其中一种方式完成自动驾驶开发。 图1 Octopus的使用流程 表1 使用流程说明 流程 子任务 说明 详细指导 数据准备 创建算子 基于业务数据在Octopus中创建数据处理的算子。 创建算子 数据批导 向Octopus平台导入原始数据包。 批导数据 数据处理 数据导入后,根据不同用途,选择不同算子,对数据包进行数据处理。 处理数据 标注数据 设置团队 Octopus标注服务提供团队管理,为不同团队分配不同项目。 未分配到标注项目的团队不能查看该标注项目信息,保证标注任务的私密性及安全性。 创建团队 创建项目 项目内包含多个标注任务,在创建项目时需绑定标注团队,指定团队完成项目内的标注任务。 创建项目 标注任务 根据不同角色分配不同标注任务。 标注流程 训练模型 训练算法 创建训练作业前需要先选择算法,可以使用Octopus内置的算法,也可以自定义算法。 训练算法 模型评测 在机器学习中,通常需要使用一定的方法和标准,来评测一个模型的预测精确度,用于衡量一个模型及其标注结果的可信度。自动驾驶领域的模型多用于目标检测,如识别并标注出图像中车辆、行人、可行区域等对象。 模型评测 编译镜像 编译镜像可以将训练模型转换为特定芯片支持的可识别的文件,编译镜像模块支持对编译镜像的增加、查询、删除以及编辑操作。 编译镜像 编译任务 训练产生的模型版本,不可直接被车载芯片识别,需要经过编译工具,将训练产生的模型编译成车载芯片识别的模型。 编译任务 仿真任务 评测镜像 Octopus平台各服务均提供用户自定义镜像功能,此模块对镜像提供了统一管理。 仿真镜像 仿真场景 仿真场景模块支持对单个仿真场景的增删改查操作。用户可根据场景类型,依据平台提示,上传符合要求的场景文件。场景创建完毕后,用户可选择在线仿真机器加载场景,通过仿真器内置算法检验场景质量。 仿真场景 仿真任务 仿真任务列表提供对仿真任务的管理功能,支持停止任务、删除任务、修改任务等操作。 仿真任务 父主题: 自动驾驶云服务全流程开发
  • 调用API获取项目ID 项目ID可以通过调用查询指定条件下的项目信息API获取。 获取项目ID的接口为“GET https://{Endpoint}/v3/projects”,其中{Endpoint}为 IAM 的终端节点,可以从地区和终端节点获取。接口的认证鉴权请参见认证鉴权。 响应示例如下,其中projects下的“id”即为项目ID,“name”即为项目名称。 { "projects": [ { "domain_id": "65382450e8f64ac0870cd180d14e684b", "is_domain": false, "parent_id": "65382450e8f64ac0870cd180d14e684b", "name": "project_name", "description": "", "links": { "next": null, "previous": null, "self": "https://www.example.com/v3/projects/a4a5d4098fb4474fa22cd05f897d6b99" }, "id": "a4a5d4098fb4474fa22cd05f897d6b99", "enabled": true } ], "links": { "next": null, "previous": null, "self": "https://www.example.com/v3/projects" } }
  • 响应示例 修改限流类型是SQL_ID的限流任务。 { "task_id": "bca08a79-8557-42c2-ab73-09a14d178c57", "task_name": "SOLIdLimit", "parallel_size": 10, "start_time": "2024-08-19T22:54:42Z", "end_time": "2024-08-19T23:54:42Z", "job_id": "d44bbbc3-4465-4079-ac71-d8e7ab0643a4" } 修改限流类型是SQL_TYPE的限流任务。 { "task_id": "ef8575c7-0133-43b4-8ab2-b950b9a6daaf", "databases": "gaussdb_test3", "task_name": "KeywordLimit", "key_words": "type,version", "parallel_size": 10, "start_time": "2024-08-19T22:54:42Z", "end_time": "2024-08-19T23:54:42Z", "job_id": "40e2e10f-6f4c-4883-9db7-5422f42187cc" } 修改限流类型是SESSION_ACTIVE_MAX_COUNT的限流任务。 { "task_id": "37b6232c-58ea-4d62-a5b5-54fc215c2115", "task_name": "ThresholdLimit", "parallel_size": 10, "cpu_utilization": 20, "memory_utilization": 20, "job_id": "0ec7109d-bc8f-41f6-9a78-a70f966739fc" }
  • 响应参数 表4 响应Body参数 参数 参数类型 描述 task_id String 限流任务ID。 databases String 实例的数据库列表,每个数据库以英文逗号形式隔开。 task_name String 限流任务名。 key_words String 关键词,仅当任务类型为SQL_TYPE时,返回该值。 parallel_size Integer 并发数。 cpu_utilization Integer CPU利用率阈值,仅当任务类型为SESSION_ACTIVE_MAX_COUNT时,返回该值且只保留整数部分。 memory_utilization Integer 内存利用率阈值,仅当任务类型为SESSION_ACTIVE_MAX_COUNT时,返回该值且只保留整数部分。 start_time String 限流任务开始时间,格式为yyyy-mm-ddThh:mm:ssZ。当“task_scope”为SQL时会返回该参数。 end_time String 限流任务结束时间,格式为yyyy-mm-ddThh:mm:ssZ。当“task_scope”为SQL时会返回该参数。 rule_name String 规则名。 job_id String 工作流ID。
  • 请求示例 修改限流类型是SQL_ID的限流任务。 https://gaussdb-opengauss.cn-north-1.myhuaweicloud.com/v3/0611f1bd8b00d5d32f17c017f15b599f/instances/3d39c18788b54a919bab633874c159dfin14/limit-task/96854ba7-8d50-4a3c-8fd8-210a7390e9d1 { "start_time" : "2024-08-20T06:54:42+0800", "end_time" : "2024-08-20T07:54:42+0800", "task_name" : "SOLIdLimit", "parallel_size" : 10 } 修改限流类型是SQL_TYPE的限流任务。 https://gaussdb-opengauss.cn-north-1.myhuaweicloud.com/v3/0611f1bd8b00d5d32f17c017f15b599f/instances/3d39c18788b54a919bab633874c159dfin14/limit-task/96854ba7-8d50-4a3c-8fd8-210a7390e9d1 { "start_time" : "2024-08-20T06:54:42+0800", "end_time" : "2024-08-20T07:54:42+0800", "key_words" : "version,type", "task_name" : "KeywordLimit", "parallel_size" : 10, "databases" : "gaussdb_test3" } 修改限流类型是SESSION_ACTIVE_MAX_COUNT的限流任务。 https://gaussdb-opengauss.cn-north-1.myhuaweicloud.com/v3/0611f1bd8b00d5d32f17c017f15b599f/instances/3d39c18788b54a919bab633874c159dfin14/limit-task/96854ba7-8d50-4a3c-8fd8-210a7390e9d1 { "task_name": "ThresholdLimit", "parallel_size": 10, "cpu_utilization": 20, "memory_utilization": 20 }
  • URI PUT https://{Endpoint}/v3/{project_id}/instances/{instance_id}/limit-task/{task_id} 表1 参数说明 名称 是否必选 说明 project_id 是 参数解释: 租户在某一Region下的项目ID。 获取方法请参见获取项目ID。 约束限制: 不涉及。 取值范围: 只能由英文字母、数字组成,且长度为32个字符。 默认取值: 不涉及。 instance_id 是 实例ID。 task_id 是 限流任务ID。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取。 请求响应成功后在响应消息头中包含的“X-Subject-Token”的值即为Token值。 X-Language 否 String 语言。 缺省值:en-us 枚举值: zh-cn en-us 表3 请求Body参数 参数 是否必选 参数类型 描述 start_time 否 String 任务开始时间,当“task_scope”为SQL时必传。 取值范围:大于等于当前时间(UTC时间)的前两分钟。 格式必须为yyyy-mm-ddThh:mm:ss+0000。 end_time 否 String 任务结束时间,当“task_scope”为SQL时必传。 取值范围:大于任务开始时间。 格式必须为yyyy-mm-ddThh:mm:ss+0000。 key_words 否 String 关键词,当“limit_type”为SQL_TYPE时,必传。 多个关键词以逗号隔开,数量范围为[2,100]个,每个关键词长度范围[2,64]位,关键词不允许包含 " 或 \ 或 {} 或 null值以及非首尾的空格符。 task_name 否 String 限流任务名称,只能为英文字母大小写,下划线,数字和$符,最大长度为100个字符。 parallel_size 否 Integer 并发数,大于等于零的整数,取值范围[0, 2147483647]。 cpu_utilization 否 Integer CPU利用率阈值,整数,取值范围[0,100)。 如果“limit_type”为SESSION_ACTIVE_MAX_COUNT,则“cpu_utilization”必选。 不支持和内存利用率阈值同时为0,如果选择只限制CPU、内存中的其中一个,则另一个必须传值0。 memory_utilization 否 Integer 内存利用率阈值,整数,取值范围[0,100)。 如果“limit_type”为SESSION_ACTIVE_MAX_COUNT,则“memory_utilization”必选。 不支持和CPU利用率阈值同时为0,如果选择只限制CPU、内存中的其中一个,则另一个必须传值0。 databases 否 String 实例的数据库列表,每个数据库以英文逗号形式隔。 如果“limit_type”为SQL_TYPE,则“databases”必选。
  • 基本概念 账号 用户注册时的账号,账号对其所拥有的资源及云服务具有完全的访问权限,可以重置用户密码、分配用户权限等。由于账号是付费主体,为了确保账号安全,建议您不要直接使用账号进行日常管理工作,而是创建用户并使用创建的用户进行日常管理工作。 用户 用户是云服务的使用人员,具有身份凭证(密码和访问密钥)。 在我的凭证下,您可以查看账号ID和用户ID。您需要用到账号、用户和密码等信息。 区域 指云资源所在的物理位置,同一区域内可用区间内网互通,不同区域间内网不互通。通过在不同地区创建云资源,可以将应用程序设计的更接近特定客户的要求,或满足不同地区的法律或其他要求。 可用区 一个可用区是一个或多个物理数据中心的集合,有独立的风火水电,AZ内逻辑上再将计算、网络、存储等资源划分成多个集群。一个Region中的多个AZ间通过高速光纤相连,以满足用户跨AZ构建高可用性系统的需求。 项目 区域默认对应一个项目,这个项目由系统预置,用来隔离物理区域间的资源(计算资源、存储资源和网络资源),以默认项目为单位进行授权,用户可以访问您账号中该区域的所有资源。如果您希望进行更加精细的权限控制,可以在区域默认的项目中创建子项目,并在子项目中购买资源,然后以子项目为单位进行授权,使得用户仅能访问特定子项目中资源,使得资源的权限控制更加精确。 图1 项目隔离模型
  • 响应消息体(可选) 该部分可选。响应消息体通常以结构化格式(如JSON或XML)返回,与响应消息头中Content-Type对应,传递除响应消息头之外的内容。 对于获取用户Token接口,返回如下消息体,为篇幅起见,这里只展示部分内容。 { "token": { "expires_at": "2019-02-13T06:52:13.855000Z", "methods": [ "password" ], "catalog": [ { "endpoints": [ { "region_id": "az-01", ...... 当接口调用出错时,会返回错误码及错误信息说明,错误响应的Body体格式如下所示。 { "error_code": "AS.0001", "error_msg": "The format of message is error" } 其中,“error_code”表示错误码,“error_msg”表示错误描述信息。
  • 响应参数 表3 响应Body参数 参数 参数类型 描述 task_name String 限流任务名。 limit_type String 任务限流类型。 parallel_size Integer 并发数。 start_time String 限流任务开始时间,格式为yyyy-mm-ddThh:mm:ss+0000,当前时间指UTC时间。 end_time String 限流任务结束时间,格式为yyyy-mm-ddThh:mm:ss+0000,当前时间指UTC时间。 limit_count Integer 限流次数。 task_running_time Integer 限流任务运行时长。 memory_utilization Integer 内存利用率,仅当任务类型为SESSION_ACTIVE_MAX_COUNT时,返回该值。 cpu_utilization Integer CPU利用率,仅当任务类型为SESSION_ACTIVE_MAX_COUNT时,返回该值。 rule_name String 规则名。 limit_task_rule_info_list Array of objects 限流任务节点列表,详情请参见表 表4。 表4 LimitTaskRuleInfoList 参数 参数类型 描述 node_id String 节点ID。 rule_id String 限流任务ID。 status String 限流任务状态,当前支持:CREATING,UPDATING,DELETING,WAIT_EXECUTE,EXECUTING,TIME_OVER,DELETED,CREATE_FAILED,UPDATE_FAILED,DELETE_FAILED,EXCEPTION,NODE_SHUT_DOWN。
  • 响应示例 限流类型是SQL_ID的限流任务。 { "task_name": "123", "limit_type": "SQL_ID", "parallel_size": 0, "start_time": "2024-08-19T07:12:31Z", "end_time": "2024-09-30T07:10:59Z", "limit_count": 1, "task_running_time": 16258, "rule_name": "bca08a79-8557-42c2-ab73-09a14d178c57", "limit_task_rule_info_list": [ { "node_id": "e37a7df4ec694a3cbfeae1aee583d70fno14", "rule_id": "2", "status": "EXCUTING" } ] } 限流类型是SQL_TYPE的限流任务。 { "task_name": "123", "limit_type": "SQL_TYPE", "parallel_size": 0, "start_time": "2024-08-20T06:54:42Z", "end_time": "2024-09-09T06:53:43Z", "limit_count": 0, "task_running_time": 0, "rule_name": "476faedc-0583-4327-9f48-91fa1703e910", "limit_task_rule_info_list": [ { "node_id": "e37a7df4ec694a3cbfeae1aee583d70fno14", "rule_id": "1", "status": "WAIT_EXCUTE" } ] } 限流类型是SESSION_ACTIVE_MAX_COUNT的限流任务。 { "task_name": "89", "limit_type": "SESSION_ACTIVE_MAX_COUNT", "parallel_size": 0, "limit_count": 0, "task_running_time": 16283, "memory_utilization": 1, "cpu_utilization": 0, "rule_name": "37b6232c-58ea-4d62-a5b5-54fc215c2115", "limit_task_rule_info_list": [ { "node_id": "e37a7df4ec694a3cbfeae1aee583d70fno14", "rule_id": "3", "status": "EXCUTING" } ] }
  • URI GET https://{Endpoint}/v3/{project_id}/instances/{instance_id}/limit-task/{task_id} 表1 参数说明 名称 是否必选 说明 project_id 是 参数解释: 租户在某一Region下的项目ID。 获取方法请参见获取项目ID。 约束限制: 不涉及。 取值范围: 只能由英文字母、数字组成,且长度为32个字符。 默认取值: 不涉及。 task_id 是 限流任务ID。 instance_id 是 实例ID。
  • GaussDB 各版本生命周期 表1 GaussDB各版本生命周期 GaussDB版本号 华为云Release时间 华为云EOM时间 华为云EOFS时间 华为云EOS时间 V2.0-1.4 2021年7月 2022年12月 2023年12月 2024年6月 V2.0-2.0 2021年11月 2022年12月 2025年12月 2026年6月 V2.0-2.3 2022年6月 2023年12月 2026年12月 2027年6月 V2.0-2.7 2022年11月 2023年12月 2026年12月 2027年6月 V2.0-2.8 2023年9月 2023年12月 2026年12月 2027年6月 V2.0-3.208 2023年7月 2024年12月 2027年6月 2027年12月 V2.0-3.220 2023年8月 2024年12月 2027年6月 2027年12月 V2.0-3.222 2023年9月 2024年12月 2027年6月 2027年12月 V2.0-3.223 2023年12月 2024年12月 2027年6月 2027年12月 V2.0-3.226 2024年5月 2024年12月 2027年6月 2027年12月 V2.0-8.201 2024年11月 2026年3月 2028年12月 2029年6月 V2.0-8.210 2024年12月 2026年6月 2028年12月 2029年6月 Release:华为云Release时间指华为云版本发布时间,一般指商用发布到官网时间。 EOM:End of Marketing,停止该版本的销售,指停止云服务版本的销售和部署,现网中不再部署该云服务版本。 EOFS:End of Full Support,版本停止全面支持,指对版本新发现的缺陷停止修复,不再提供新的补丁版本,EOFS之后发现的缺陷将继续进行根因分析并在下一个版本修复, 但版本EOS前都要求具备缺陷和1、2级漏洞的修复能力。 EOS:End of Service & support,停止该版本的服务与支持。云服务版本EOS后,华为云可不再提供针对该版本的任何技术服务支持,包含新问题的定位和缺陷修复等,只能通过升级新版本来解决问题。请遵循华为云生命周期政策,及时进行软件版本升级。
  • 解决方法 找到重启前的主NameNode,进入其数据目录(查看配置项“dfs.namenode.name.dir”可获取,例如/srv/BigData/namenode/current),得到最新的FSImage文件的序号。一般如下: 查看各JournalNode的数据目录(查看配置项“dfs.journalnode.edits.dir”可获取,例如/srv/BigData/journalnode/hacluster/current),查看序号从第一步获取到的序号开始的edits文件,看是否有不连续的情况(即前一个edits文件的最后一个序号和后一个edits文件的第一个序号不是连续的,如下图中的edits_0000000000013259231-0000000000013259237和后一个edits_0000000000013259239-0000000000013259246就是不连续的)。 如果有这种不连续的edits文件,则需要查看其它的JournalNode的数据目录或NameNode数据目录中,有没有连续的该序号相关的连续的edits文件。如果可以找到,复制一个连续的片段到该JournalNode。 如此把所有的不连续的edits文件全部都修复。 重启NameNode,观察是否成功。如还是失败,请联系技术支持。
  • HBase数据类型映射 HBase是基于字节的分布式存储系统,它将所有数据类型存储为字节数组。要在HetuEngine中表示HBase数据,需要先在HetuEngine中通过创建映射表的方式为HetuEngine列限定符选择与HBase列限定符的值相匹配的数据类型。 目前HetuEngine列限定符支持以下数据类型:VARCHAR、TINYINT、SMALLINT、INTEGER、BIGINT、DOUBLE、BOOLEAN、TIME、DATE和TIMESTAMP。
  • 添加HBase数据源前提条件 数据源所在集群 域名 与HetuEngine集群域名不能相同。 数据源所在集群与HetuEngine集群节点网络互通。 在HetuEngine所在集群的所有节点的“/etc/hosts”文件中,添加待对接数据源所在集群的主机名称和对应的IP映射,及其“/etc/hosts”文件中的“10.10.10.10 hadoop.系统域名”(如“10.10.10.10 hadoop.hadoop.com”),否则HetuEngine无法根据主机名称连接到非本集群节点。 已创建HetuEngine计算实例。
  • Flink对接HDFS分区 Flink对接HDFS支持自定义分区。 Flink文件系统分区支持使用标准的Hive格式。不需要将分区预先注册到表目录中,分区是根据目录结构推断。 例如,根据下面的目录分区的表将被推断为包含日期时间和小时分区。 path └── datetime=2021-09-03 └── hour=11 ├── part-0.parquet ├── part-1.parquet └── hour=12 ├── part-0.parquet └── datetime=2021-09-24 └── hour=6 ├── part-0.parquet 分区文件的滚动策略。 分区目录中的数据被拆分为part文件,每个分区将至少包含一个part文件,用于接收sink的子任务的数据写入。 如下参数介绍分区文件如何进行滚动。 表1 分区文件的滚动策略 配置项 默认值 类型 描述 sink.rolling-policy.file-size 128MB MemorySize 分区文件达到该阈值后,进行滚动。 sink.rolling-policy.rollover-interval 30min Duration 分区文件在滚动前可以保持打开的最长持续时间。 sink.rolling-policy.check-interval 1min Duration 检查基于时间的滚动策略的时间间隔。 分区目录的文件合并。 支持文件压缩,允许应用程序具有更小的检查点间隔,而无需生成大量文件。 仅压缩单个检查点中的文件,即生成的文件数量至少与检查点数量相同。合并前的文件是不可见的,因此文件的可见性是:检查点间隔+压缩时间之后。如果压缩时间太长,将延长检查点的时间段。 表2 分区目录的文件合并 配置项 默认值 类型 描述 auto-compaction false Boolean 是否启用自动压缩。数据将写入临时文件。检查点完成后,检查点生成的临时文件将被压缩。压缩前临时文件不可见。 compaction.file-size none MemorySize 压缩目标文件大小,默认值为滚动文件大小。 分区文件的提交。 文件写入分区后,通常需要通知下游应用程序。如将分区添加到Hive元存储中,或在目录中写入_SUC CES S文件。分区文件的提交操作基于触发器和策略的组合方式。 表3 分区文件提交触发器相关配置 配置项 默认值 类型 描述 sink.partition-commit.trigger process-time String process-time:基于计算节点的系统时间,它既不需要分区时间提取,也不需要生成watermark。即“当前系统时间”超过“分区创建时的系统时间”加上“延迟”时间,就提交分区。 partition-time:基于从分区提取的时间,它需要生成watermark。即“watermark时间”超过“从分区提取的时间”加上“延迟”时间,就提交分区。 sink.partition-commit.delay 0 s Duration 分区在延迟时间之前不会提交。如果是每日分区,则应为“1 d”,如果是每小时分区,则应为“1 h”。 表4 分区文件提交策略相关配置 配置项 默认值 类型 描述 sink.partition-commit.policy.kind - String 提交分区的策略。 metastore:将分区添加到元存储。只有hive表支持元存储策略,文件系统通过目录结构管理分区。 success-file:将success-file文件添加到目录中。 两者可以同时配置,即:'sink.partition-commit.policy.kind'='metastore,success-file'。 sink.partition-commit.policy.class - String 用于实现分区提交策略接口的分区提交策略类。 仅在自定义提交策略中生效。 sink.partition-commit.success-file.name _SUCCESS String success-file分区提交策略的文件名,默认值为_SUCCESS。
  • ClickHouse数据类型说明 MRS 的ClickHouse服务数据类型如表1所示。 ClickHouse完整数据类型介绍,请参考开源官方数据类型介绍。 禁止开启异步写入参数(async_insert),开启异步写入参数可能存在数据可靠性问题。 表1 ClickHouse数据类型 分类 关键字 数据类型 描述 数据类型 Int8 Int8 取值范围:-128~127 Int16 Int16 取值范围:-32768~32767 Int32 Int32 取值范围:-2147483648~2147483647 Int64 Int64 取值范围:-9223372036854775808~9223372036854775807 浮点类型 Float32 单精度浮点数 同C语言Float类型,单精度浮点数在机内占4个字节,用32位二进制描述。 Float64 双精度浮点数 同C语言Double类型,双精度浮点数在机内占8个字节,用64位二进制描述。 Decimal类型 Decimal Decimal 有符号的定点数,可在加、减和乘法运算过程中保持精度。支持几种写法: Decimal(P, S) Decimal32(S) Decimal64(S) Decimal128(S) 说明: P:精度,有效范围:[1:38],决定可以有多少个十进制数字(包括分数)。 S:规模,有效范围:[0:P],决定数字的小数部分中包含的小数位数。 字符串类型 String 字符串 字符串可以是任意长度的。它可以包含任意的字节集,包含空字节。因此,字符串类型可以代替其他DBMSs中的VARCHAR、BLOB、CLOB等类型。 FixedString 固定字符串 当数据的长度恰好为N个字节时,FixedString类型是高效的。在其他情况下,这可能会降低效率。可以有效存储在FixedString类型的列中的值的示例: 二进制表示的IP地址 语言代码(ru_RU, en_US … ) 货币代码(RUB … ) 二进制表示的哈希值(MD5使用FixedString(16),SHA256使用FixedString(32)) 时间日期类型 Date 日期 用两个字节存储,表示从1970-01-01(无符号)到当前的日期值。日期中没有存储时区信息。 DateTime 时间戳 用四个字节(无符号的)存储Unix时间戳。允许存储与日期类型相同的范围内的值。最小值为1970-01-01 00:00:00。时间戳类型值精确到秒(没有闰秒)。时区使用启动客户端或服务器时的系统时区。 DateTime64 DateTime64 此类型允许以日期(date)加时间(time)的形式来存储一个时刻的时间值。 布尔型 Boolean Boolean ClickHouse没有单独的类型来存储布尔值。可以使用UInt8类型,取值限制为0或1。 数组类型 Array Array Array(T),由T类型元素组成的数组。T可以是任意类型,包含数组类型。但不推荐使用多维数组,ClickHouse对多维数组的支持有限。例如,不能在MergeTree表中存储多维数组。 元组类型 Tuple Tuple Tuple(T1, T2, ...),元组,其中每个元素都有单独的类型,不能在表中存储元组(除了内存表)。它们可以用于临时列分组。在查询中,IN表达式和带特定参数的lambda函数可以来对临时列进行分组。 Domains数据类型 Domains Domains Domains类型是特定实现的类型: IPv4是与UInt32类型保持二进制兼容的Domains类型,用于存储IPv4地址的值。它提供了更为紧凑的二进制存储的同时支持识别可读性更加友好的输入输出格式。 枚举类型 Enum8 Enum8 取值范围:-128~127 Enum保存'string' = integer的对应关系,例如:Enum8('hello' = 1, 'world' = 2) Enum16 Enum16 取值范围:-32768~32767 可为空 Nullable Nullable 除非在ClickHouse服务器配置中另有说明,否则NULL是任何Nullable类型的默认值。Nullable类型字段不能包含在表索引中。 可以与TypeName的正常值存放一起。例如,Nullable(Int8)类型的列可以存储Int8类型值,而没有值的行将存储NULL。 嵌套类型 nested nested 嵌套的数据结构就像单元格内的表格。嵌套数据结构的参数(列名和类型)的指定方式与CREATE TABLE查询中的指定方式相同。每个表行都可以对应于嵌套数据结构中的任意数量的行。 示例:Nested(Name1 Type1, Name2 Type2, …)
  • 回答 由于Spark存在一个机制,为了提高性能会缓存ORC的元数据信息。当通过Hive或其他方式更新了ORC表时,缓存的元数据信息未更新,导致Spark SQL查询不到新插入的数据。 对于存储类型为ORC的Hive分区表,在执行插入数据操作后,如果分区信息未改变,则缓存的元数据信息未更新,导致Spark SQL查询不到新插入的数据。 解决措施: 在使用Spark SQL查询之前,需执行Refresh操作更新元数据信息: REFRESH TABLE table_name; table_name为刷新的表名,该表必须存在,否则会出错。 执行查询语句时,即可获取到最新插入的数据。 使用spark时,执行以下命令禁用Spark优化: set spark.sql.hive.convertMetastoreOrc=false;
  • 创建Doris租户 登录 FusionInsight Manager,单击“租户资源”。 在“租户资源管理”页面单击,打开添加租户的配置页面,参见表1为租户配置属性。 表1 租户参数介绍 参数名称 描述 名称 指定当前租户的名称,长度为3~50个字符,可包含数字、字母或下划线(_),但不支持创建仅包含数字的Doris租户名称。 根据业务需求规划租户的名称,不得与当前集群中已有的角色、HDFS目录或者Yarn队列重名。 租户类型 选择“叶子租户”。 说明: 创建Doris租户,租户类型只能选择“叶子租户”。 计算资源 只创建Doris相关租户时,不选择“Yarn”。 存储资源 只创建Doris相关租户时,不选择“HDFS”。 服务 单击“关联服务”,在关联服务配置以下参数并单击“确定”: “服务”:选择“Doris”。 “关联类型”:默认“共享”。 以下参数详细说明可参见表1。 “CPU配额权重”:租户占用CPU资源的相对权重,即相对占比,竞争时生效。 “内存限额占比”:租户最大占用内存资源的百分比,如该值设置为“10”,则当前租户在不同BE节点内存可用为:BE可用内存 * 10%。因为Doris存在默认租户normal,占用了90%,所以其他租户可设置上限为10%,若总和超过100%,Doris租户将创建失败。 “并发数”:租户最大可运行查询任务的并发数,超过并发数的查询会进入等待队列。 “队列长度”:租户最大等待执行的查询任务数。 “队列等待时长(毫秒)”:租户等待执行的查询任务的最大等待时长,单位为毫秒。 “开启内存软隔离”:默认关闭内存软隔离。如果开启内存软隔离,在资源充足时,可超额占用限额以外内存,在资源紧张时,才会释放多占用的内存。如果关闭内存软隔离,则该Workload Group为内存硬隔离,超过内存可用限额时,部分SQL将被取消或者拒绝执行。 描述 配置当前租户的描述信息。 单击“确定”,等待界面提示租户创建成功。 Doris租户创建完成后,可以在“租户资源管理”列表中查看并修改租户资源。 在FusionInsight Manager页面,选择“租户资源”,在租户列表中选中需要查看的Doris租户,查看租户概述和资源配额。 选择“资源”,单击“资源详情”后的,对租户资源进行修改。 修改完成后,单击“确定”,返回“资源”页面,展示修改后的资源详情。 在“概述”的“资源配额”是静态的,并不是实时刷新,只在加载时更新。 因为Doris租户代表的是Workload Group,是对组内任务在单个实例节点的计算资源限制,所以“资源配额”和“图表”都是对指标均值的监控,“图表”每30秒刷新一次。
共100000条
提示

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