华为云用户手册

  • Kafka作为source表时必须指定“properties.group.id”配置项 【示例】以“testGroup”为用户组读取主题为“test_sink”的Kafka消息: CREATE TABLE KafkaSource( `user_id` VARCHAR, `user_name` VARCHAR, `age` INT ) WITH ( 'connector' = 'kafka', 'topic' = 'test_sink', 'properties.bootstrap.servers' = 'Kafka的Broker实例业务IP:Kafka端口号', 'scan.startup.mode' = 'latest-offset', 'properties.group.id' = 'testGroup', 'value.format' = 'csv', 'properties.sasl.kerberos.service.name' = 'kafka', 'properties.security.protocol' = 'SASL_PLAINTEXT', 'properties.kerberos.domain.name' = 'hadoop.系统 域名 ' ); SELECT * FROM KafkaSource;
  • Kafka作为sink表时必须指定“topic”配置项 【示例】向Kafka的“test_sink”主题插入一条消息: CREATE TABLE KafkaSink( `user_id` VARCHAR, `user_name` VARCHAR, `age` INT ) WITH ( 'connector' = 'kafka', 'topic' = 'test_sink', 'properties.bootstrap.servers' = 'Kafka的Broker实例业务IP:Kafka端口号', 'scan.startup.mode' = 'latest-offset', 'value.format' = 'csv', 'properties.sasl.kerberos.service.name' = 'kafka', 'properties.security.protocol' = 'SASL_PLAINTEXT', 'properties.kerberos.domain.name' = 'hadoop.系统域名' ); INSERT INTO KafkaSink (`user_id`, `user_name`, `age`)VALUES ('1', 'John Smith', 35);
  • Flink流式写Hudi表参数规范 Flink流式写Hudi表参数规范如下表所示。 表1 Flink流式写Hudi表参数规范 参数名称 是否必填 参数描述 建议值 Connector 必填 读取表类型。 hudi Path 必填 表存储的路径。 根据实际填写 hoodie.datasource.write.recordkey.field 必填 表的主键。 根据实际填写 write.precombine.field 必填 数据合并字段。 根据实际填写 write.tasks 选填 写Hudi表task并行度,默认值为4。 4 index.bootstrap.enabled 选填 Flink采用的是内存索引,需要将数据的主键缓存到内存中,保证目标表的数据唯一,因此需要配置该值,否则会导致数据重复。默认值为FALSE。Bueckt索引时不配置该参数。 TRUE write.index_bootstrap.tasks 选填 index.bootstrap.enabled开启后有效,增加任务数提升启动速度。 4 index.state.ttl 选填 索引数据保存时长,默认值为0,表示永久不失效,可根据业务调整。 0 compaction.delta_commits 选填 MOR表Compaction计划触发条件。 200 compaction.async.enabled 必填 是否开启在线压缩。将compaction操作转移到sparksql运行,提升写性能。 FALSE hive_sync.enable 选填 是否向Hive同步表信息。 True hive_sync.metastore.uris 选填 Hivemeta uri信息。 根据实际填写 hive_sync.jdbc_url 选填 Hive jdbc链接。 根据实际填写 hive_sync.table 选填 Hive的表名。 根据实际填写 hive_sync.db 选填 Hive的数据库名,默认为default。 根据实际填写 hive_sync.support_timestamp 选填 是否支持时间戳。 True changelog.enabled 选填 是否写入changelog消息。默认值为false,CDC场景填写为true。 false
  • Spark异步任务执行表compaction参数设置规范 写作业未停止情况下,禁止手动执行run schedule命令生成compaction计划。 错误示例: run schedule on dsrTable 如果还有别的任务在写这张表,执行该操作会导致数据丢失。 执行run compaction命令时,禁止将hoodie.run.compact.only.inline设置成false,该值需要设置成true。 错误示例: set hoodie.run.compact.only.inline=false; run compaction on dsrTable; 如果还有别的任务在写这张表,执行上述操作会导致数据丢失。 正确示例:异步Compaction set hoodie.compact.inline = true; set hoodie.run.compact.only.inline=true; run compaction on dsrTable; 父主题: Spark读写Hudi开发规范
  • 建表示例 create table data_partition(id int, comb int, col0 int,yy int, mm int, dd int) using hudi --指定hudi 数据源 partitioned by(yy,mm,dd) --指定分区, 支持多级分区 location '/opt/log/data_partition' --指定路径,如果不指定建表在hive warehouse里 options( type='mor', --表类型 mor 或者 cow primaryKey='id', --主键,可以是复合主键但是必须全局唯一 preCombineField='comb' --预合并字段,相同主键的数据会按该字段合并,当前不能指定多个字段 )
  • 规则 建表必须指定primaryKey和preCombineField。 Hudi表提供了数据更新的能力和幂等写入的能力,该能力要求数据记录必须设置主键用来识别重复数据和更新操作。不指定主键会导致表丢失数据更新能力,不指定preCombineField会导致主键重复。 参数名称 参数描述 输入值 说明 primaryKey hudi主键 按需 必须指定,可以是复合主键但是必须全局唯一。 preCombineField 预合并键,相同主键的多条数据按该字段进行合并 按需 必须指定,相同主键的数据会按该字段合并,不能指定多个字段。 禁止建表时将hoodie.datasource.hive_sync.enable指定为false。 指定为false将导致新写入的分区无法同步到Hive Metastore中。由于缺失新写入的分区信息,查询引擎读取该时会丢数。 禁止指定Hudi的索引类型为INMEMORY类型。 该索引仅是为了测试使用。生产环境上使用该索引将导致数据重复。
  • Spark表数据维护规范 禁止通过Alter命令修改表关键属性信息:type/primaryKey/preCombineField/hoodie.index.type 错误示例,执行如下语句修改表关键属性: alter table dsrTable set tblproperties('type'='xx'); alter table dsrTable set tblproperties('primaryKey'='xx'); alter table dsrTable set tblproperties('preCombineField'='xx'); alter table dsrTable set tblproperties('hoodie.index.type'='xx'); Hive/Presto等引擎可以直接修改表属性,但是这种修改会导致整个Hudi表出现数据重复,甚至数据损坏;因此禁止修改上述属性。 父主题: Spark读写Hudi开发规范
  • Kafka作为source表时应设置限流 本章节适用于 MRS 3.3.0及以后版本。 防止上限超过流量峰值,导致作业异常带来不稳定因素。因此建议设置限流,限流上限应该为业务上线压测的峰值。 【示例】 #如下参数作用在每个并行度 'scan.records-per-second.limit' = '1000' #真实的限流流量如下 min( parallelism * scan.records-per-second.limit,partitions num * scan.records-per-second.limit)
  • 为保证数据准确性将同key数据写入Kafka的同一个分区 Flink写Kafka使用fixed策略,并在写入之前根据key进行Hash。 【示例】 CREATE TABLE kafka ( f_sequence INT, f_sequence1 INT, f_sequence2 INT, f_sequence3 INT ) WITH ( 'connector' = 'kafka', 'topic' = 'yxtest123', 'properties.bootstrap.servers' = '192.168.0.104:9092', 'properties.group.id' = 'testGroup1', 'scan.startup.mode' = 'latest-offset', 'format' = 'json', 'sink.partitioner'='fixed' ); insert into kafka select /*+ DISTRIBUTEBY('f_sequence','f_sequence1') */ * from datagen;
  • 创建入站终端节点 进入解析器列表页面。 单击管理控制台左上角的,选择区域和项目。 在页面右上角,单击“创建终端节点”。 根据界面提示配置相关参数,详细内容请参见表1。 图1 创建入站终端节点 表1 创建入站终端节点参数说明 参数 参数说明 终端节点方式 支持选择“出站”、“入站”。 此处请选择“入站”。 终端节点名称 终端节点的名称。 只能由中文字符,英文字母,数字,及“_”,“-”,“.”组成。 长度为1-64字符。 区域 入站终端节点所属区域。 VPC 所有入站DNS请求将由此VPC转发到云上DNS服务器。 注意: 终端节点创建后无法更改VPC。 子网 子网必须具有可用的IP地址。目前仅支持IPv4地址。 IP地址 支持“自动选择”或“自定义”。 说明: 为了提高可靠性,请您为DNS转发至少指定两个IP地址,建议这两个地址位于不同可用区中。 您也可以在可用区添加更多IP地址。 单击“立即创建”
  • 查看共享详情 进入解析器列表页面。 单击管理控制台左上角的,选择区域和项目。 单击进入“转发规则”页面,查看转发规则列表。 单击进入“共享给我”页面,查看由其他账号共享的转发规则。 如果您是共享转发规则的所有者,您可以通过共享名称,在 RAM 管理控制台,找到对应的共享,查看共享内的资源情况、资源的权限以及资源的使用者,具体操作请参见查看共享。 如果您是共享转发规则的使用者,您可以通过共享名称,在RAM管理控制台,找到对应的共享,查看共享内的资源情况、资源的权限以及资源的所有者,具体操作请参见查看共享给您的资源。
  • 停止共享 资源所有者如果不再需要某个共享时,可以随时将其删除,删除共享不会删除共享的资源。共享删除后,共享资源指定的使用者将无法继续使用该共享中的资源,详细内容请参见删除共享。 资源使用者如果不再需要访问共享给您的资源,可以随时退出共享。退出共享后,将失去对共享资源的访问权限。 只有当共享资源的指定使用者是华为云账号而不是组织内共享时,才可以退出此共享。如果共享资源的指定使用者是组织,而资源使用者的账号由组织管理,则无法退出此共享,详细内容请参见退出共享。
  • 共享转发规则简介 基于 资源访问管理 (Resource Access Manager,简称RAM)服务,云解析服务可以实现跨账号共享转发规则,资源所有者将转发规则同时共享给多个其他账号使用,资源使用者接受共享邀请后就可以访问和使用共享的转发规则。资源所有者可以依据最小权限原则和不同的使用诉求,选择不同的共享权限,资源使用者只能对资源进行权限内的访问,保证共享资源在满足资源使用者业务诉求的同时,提升资源管理的安全性。关于RAM服务的更多信息请参见什么是资源访问管理。 当您的账号由华为云组织管理时,您还可以利用此优势更轻松地共享资源。如果您的账号在组织中,则您可以与单个账号共享,也可以与组织或OU中的所有账号共享,而不必枚举每个账号,具体请参见启用与组织共享资源。
  • 原因分析 查看Kerberos日志“/var/log/Bigdata/kerberos/krb5kdc.log”,发现有集群外的IP使用Kafka用户连接,导致多次认证失败,最终导致Kafka账号被锁定。 Jul 11 02:49:16 192-168-1-91 krb5kdc[1863](info): AS_REQ (2 etypes {18 17}) 192.168.1.93: NEEDED_PREAUTH: kafka/hadoop.hadoop.com@HADOOP.COM for krbtgt/HADOOP.COM@HADOOP.COM, Additional pre-authentication required Jul 11 02:49:16 192-168-1-91 krb5kdc[1863](info): preauth (encrypted_timestamp) verify failure: Decrypt integrity check failed Jul 11 02:49:16 192-168-1-91 krb5kdc[1863](info): AS_REQ (2 etypes {18 17}) 192.168.1.93: PREAUTH_FAILED: kafka/hadoop.hadoop.com@HADOOP.COM for krbtgt/HADOOP.COM@HADOOP.COM, Decrypt integrity check failed
  • 解决方案 DBservice服务不可用请参考ALM-27001 DBService服务不可用。 HDFS服务不可用请参考ALM-14000 HDFS服务不可用。 ZooKeeper服务不可用请参考ALM-13000 ZooKeeper服务不可用。 LDAP/KrbServer服务不可用请参考ALM-25000 LdapServer服务不可用/ALM-25500 KrbServer服务不可用。 MetaStore实例不可用请参考ALM-16004 Hive服务不可用。
  • 配额说明 配额是指您在MAS系统中可创建的资源数量限制,具体的资源配额限制如表4-1 MAS配额规格所示。 表1 MAS配额规格 资源名称 配额(个) 备注 命名空间 10 系统支持的命名空间数量。 多活管理中心 10 系统支持的多活实例数量。 应用 200 单个实例支持的应用数量。 监控器 100 单个实例支持的监控器数量。 数据源 200 单个命名空间支持的数据源数量。 数据同步 100 单个命名空间支持的数据同步数量。
  • MAS权限 默认情况下,管理员创建的 IAM 用户没有任何权限,需要将其加入用户组,并给用户组授予策略或角色,才能使得用户组中的用户获得对应的权限,这一过程称为授权。授权后,用户就可以基于被授予的权限对云服务进行操作。 MAS部署时通过物理区域划分,为项目级服务。授权时,“作用范围”需要选择“区域级项目”,然后在指定区域(如华北-北京1)对应的项目(cn-north-1)中设置相关权限,并且该权限仅对此项目生效;如果在“所有项目”中设置权限,则该权限在所有区域项目中都生效。访问MAS时,需要先切换至授权区域。 权限根据授权精细程度分为角色和策略。 角色:IAM最初提供的一种根据用户的工作职能定义权限的粗粒度授权机制。该机制以服务为粒度,提供有限的服务相关角色用于授权。由于华为云各服务之间存在业务依赖关系,因此给用户授予角色时,可能需要一并授予依赖的其他角色,才能正确完成业务。角色并不能满足用户对精细化授权的要求,无法完全达到企业对权限最小化的安全管控要求。 策略:IAM最新提供的一种细粒度授权的能力,可以精确到具体服务的操作、资源以及请求条件等。基于策略的授权是一种更加灵活的授权方式,能够满足企业对权限最小化的安全管控要求。例如:针对MAS服务,管理员能够控制IAM用户仅能对MAS实例进行指定的管理操作。 如表1所示,包括了MAS的所有系统权限。 表1 MAS系统策略 系统角色/策略名称 描述 类别 依赖关系 MAS FullAccess 多活高可用服务所有权限,拥有该权限的用户可以操作所有多活高可用服务的功能。 系统策略 无 MAS CommonOperations 多活高可用服务基本操作权限,包括拥有应用、监控器、组件的操作权限,但无实例创建、删除权限。 系统策略 无 MAS ReadOnlyAccess 多活高可用服务只读权限,拥有该权限的用户仅能查看多活高可用服务数据。 系统策略 无 表2列出了MAS常用操作与系统策略的授权关系,您可以参照该表选择合适的系统策略。 表2 常用操作与系统策略的关系 操作 MAS FullAccess MAS CommonOperations MAS ReadOnlyAccess 开通功能模块 √ × × 编辑功能模块 √ × × 删除功能模块 √ × × 创建命名空间 √ × × 编辑命名空间 √ √ × 删除命名空间 √ × × 查看命名空间详情 √ √ √ 新增应用 √ √ × 编辑应用 √ √ × 删除应用 √ √ × 购买多活管理中心 √ × × 编辑多活管理中心 √ √ × 删除多活管理中心 √ × × 查看多活管理中心详情 √ √ √ 添加数据源 √ × × 编辑数据源 √ √ × 删除数据源 √ × × 查看数据源详情 √ √ √ 创建同步链路 √ × × 编辑同步链路 √ √ × 删除同步链路 √ × × 查看同步链路详情 √ √ √ 监控器切换 √ √ × 新增监控 √ √ × 监控配置 √ √ × 编辑监控 √ √ × 切换数据中心 √ √ × 删除监控 √ √ × 连接池配置 √ √ × SDK接入配置 √ √ × 添加密钥 √ √ × 编辑密钥 √ √ × 删除密钥 √ √ × 添加通知配置 √ √ × 编辑通知配置 √ √ × 删除通知配置 √ √ × 配置数据中心级自动切换 √ √ × 创建凭证 √ × × 删除凭证 √ × × 使用凭证 √ √ × 查看凭证 √ √ √ 创建工作流 √ × × 编辑工作流 √ × × 删除工作流 √ × × 复制工作流 √ × × 关注/取消关注工作流 √ √ √ 执行工作流 √ √ × 跳过工作流任务 √ √ × 重试工作流任务 √ √ × 查询工作流详情 √ √ √ 查询工作流列表 √ √ √ 查询工作流任务执行历史列表 √ √ √ 查询工作流任务执行状态 √ √ √ 停止执行工作流任务 √ √ ×
  • 计费模式 提供包年包月、按需共2种计费模式供您灵活选择。 包年包月:多活管理中心根据订单的购买周期计费,目前仅多活管理中心支持包年包月计费模式。 按需计费: 功能模块根据您开通的多活版本和功能点进行按需(天)计费。 多活管理中心根据您购买的实例规格按需(小时)计费。 节点数根据多活管理中心关联的节点数按需(天)计费。 计费模式变更:多活管理中心实例支持包年包月和按需计费模式相互转换。 如需变更计费模式,请参考按需转包年包月和包年包月转按需章节进行计费模式转换。
  • 计费项 MAS根据您开通的功能模块和购买的多活管理中心以及多活管理中心关联的节点数进行计费。具体收费介绍,请参考价格详情。 表1 MAS计费项 计费项 计费说明 功能模块 根据功能模块版本、功能点数量以及开通时长进行计费。 多活管理中心 根据多活管理中心规格、购买时长以及购买的实例数量进行计费。 节点数 根据多活管理中心关联的节点数以及购买时长进行计费。 说明: 节点数是多活管理中心所监控的应用的进程个数。
  • 应用场景 随着业务的发展,系统容量、可靠性、商务因素等方面都会逐步给业务架构带来挑战。MAS应用场景包括: 场景一:同城灾备 适用于容灾可用性要求达到99.9%,业务分布在同一个地域,要求支持同城跨AZ的应用和数据灾备场景。 场景二:同城双活 适用于容灾可用性要求达到99.95%,要求业务双活的容灾场景。 同城跨AZ的应用数据多活,并分担部分业务流量。 场景三:两地三中心 适用于容灾可用性要求达到99.99%,同时进行跨AZ和跨Region容灾场景。 同城双活+异地灾备,提供最高程度的业务连续性和数据可用性保障。 场景四:异地多活(单元化) 适用于容灾可用性要求达到99.99%+,业务对时延敏感,且要求数据分区化场景。 分区化管理+应用数据多活,可扩展性强,可以随时增加新的分区,可靠性高。 场景五:混沌工程 适用于向被测系统主动引入故障,通过故障注入、故障演练的方式提升系统可靠性。 图1 MAS应用场景
  • 什么是多活高可用服务 企业在应用发展的过程中会面临诸多难题,如: 使用单个AZ/Region无法满足高可靠诉求; 系统容量达到瓶颈或者访问时延无法达到要求; 云厂商技术绑定,无法获得先进技术和价格优势; 业务爆炸式增长带来的技术瓶颈。 多活高可用服务(Multi-Site High Availability Service,简称MAS)源自华为消费者多活应用高可用方案,提供从流量入口、数据到应用层的端到端的业务故障切换及容灾演练能力,保障故障场景下的业务快速恢复,提升业务连续性。 MAS=多活接入服务+应用层SDK+数据同步管道+统一管控中心;完整可落地方案=技术产品(MAS)+咨询服务+生态伙伴+容灾规范。 MAS产品优势如下: 业务级高可用保障。 流量、业务、数据端到端可用。 秒级RTO、RPO,保证业务连续性。 低成本容灾演练能力。 MAS核心能力包括: 端到端(管理-流量-应用-数据)仲裁和多活容灾管控。 安全可靠的数据同步管道。 可落地的多活容灾标准规范。 咨询+专业实施服务。 MAS架构如图1所示。 图1 MAS服务架构示图 区域(Region):从地理位置和网络时延维度划分,同一个Region内共享弹性计算、块存储、对象存储、VPC网络、弹性公网IP、镜像等公共服务。Region分为通用Region和专属Region,通用Region指面向公共租户提供通用云服务的Region;专属Region指只承载同一类业务或只面向特定租户提供业务服务的专用Region。 可用区(AZ,Availability Zone):一个AZ是一个或多个物理数据中心的集合,有独立的风火水电,AZ内逻辑上再将计算、网络、存储等资源划分成多个集群,一个Region中的多个AZ间通过高速光纤相连,以满足用户跨AZ构建高可用性系统的需求。 软件开发工具包(SDK):SDK 的全称是 Software Development Kit,是一种被用来辅助开发某类软件而编写的特定软件包。 RPO(Recovery Point Objective):即数据恢复点目标,主要指的是业务系统所能容忍的数据丢失量。 RTO(Recovery Time Objective):即恢复时间目标,主要指的是所能容忍的业务停止服务的最长时间,也就是从灾难发生到业务系统恢复服务功能所需要的最短时间周期。
  • 创建Polarion连接 登录新版ROMA Connect控制台。 在左侧导航栏选择“连接器”,在连接器页面单击“新建连接”。 选择“Polarion”连接器。 在弹窗中配置连接器信息,完成后单击“确定”。 参数 说明 连接名称 填写连接器实例名称。 连接地址 填写连接地址,连接地址示例: http://endpoint:port/polarion。 API Token 填写API Token。 描述 填写连接器的描述信息,用于识别不同的连接器。
  • 配置参数 表1 获取软件需求列表 参数 说明 项目ID 填写需求的项目ID。 表2 修改软件需求状态 参数 说明 项目ID 填写需求的项目ID。 需求ID 填写需求ID。 需求状态 选择需求状态。 Draft Reviewed Approved Rejected 原因 选择拒绝原因。 Obsolete Duplicate Invalid Later 表3 获取测试用例列表 参数 说明 项目ID 填写需求的项目ID。 表4 获取软件测试用例列表 参数 说明 项目ID 填写需求的项目ID。 表5 获取测试用例与需求关联关系 参数 说明 项目ID 填写需求的项目ID。 测试用例ID 填写测试用例ID。 表6 添加软件测试报告 参数 说明 项目ID 填写需求的项目ID。 空间ID 填写空间ID。 标题 填写报告标题 名称(ID) 填写名称(ID)。 类型 请选择工作项类型。 Software Test Case est Case 链接角色 请选择连接角色。 has parent duplicates relates to 内容类型 请选择内容类型。 text/html text/plain 内容 填写报告内容。 表7 修改软件测试报告 参数 说明 项目ID 填写需求的项目ID。 空间ID 填写空间ID。 标题 填写报告标题 名称(ID) 填写名称(ID)。 类型 请选择工作项类型。 Software Test Case est Case 内容类型 请选择内容类型。 text/html text/plain 内容 填写报告内容。 表8 获取Issue列表 参数 说明 项目ID 填写需求的项目ID。
  • 资源到期后,续费的付款有效期是多长? 客户的包年/包月资源到期未续订时,华为云提供给客户进行续费与充值的时间,即进入宽限期。宽限期内该资源可以正常使用。 宽限期满后客户的包年/包月资源仍未续订,将进入保留期。保留期内该资源不能正常使用,但对客户存储在该资源中的数据仍予以保留。 保留期满仍未续订或充值,存储在该资源中的数据将被删除,该资源将被释放。 资源到期前及进入宽限期/保留期后,华为云将会通过邮件、短信等方式发送提醒,提醒客户续订或充值。 华为云中国站宽限期和保留期时长限制如表1所示。华为云有权根据客户等级定义不同客户的宽限期和保留期时长。 表1 宽限期和保留期时长限制说明 客户等级 包年/包月资源 按需资源 - 宽限期(自然日) 保留期(自然日) 宽限期(自然日) 保留期(自然日) V5 7 15 7 15 V4 V3 7 7 1 7 V2 1 7 0 7 V1 V0 1 1 0 1 特殊说明 针对促销活动等特殊场景,如促销活动官方页面有明确的宽限期与保留期说明,以活动页面规定为准。 父主题: 续费
  • 成本分配情况 成本分配情况为您提供在不同成本分配方式下的未分配成本占比,这部分成本在组织中无法分配给具体的应用、团队或其他维度。未分配占比越低,说明您的成本分配执行的效果越好,组织中的成本分配越清晰。 成本分配情况最多为您显示5个成本分配方式的未分配占比数据。 若您的成本标签或成本单元超过5个,可以通过“设置”来选择指定的成本标签或成本单元。 未分配占比:按照企业项目、成本标签及成本单元三种成本分配方式统计。 企业项目:未归属到对应企业项目中的成本(default和未归集)占当月至今总成本的占比。 成本单元:未应用到对应成本单元规则中的成本(未分配和未归集)占当月至今总成本的占比。 成本标签:未匹配到对应成本标签中的成本(未归集)占当月至今总成本的占比。 环比上月:(当月至今未分配成本占比-上月未分配成本占比)/上月未分配成本占比。
  • 成本类型 成本中心目前提供两种成本类型的数据供您使用。 原始成本:反映了原始使用和购买情况。该成本是基于云服务官网价,应用了商务折扣、促销折扣等优惠之后的金额。该成本未考虑代金券的抵扣,如果想了解抵扣代金券之后的原始购买情况,可以使用原始成本净值。 摊销成本:反映了包年/包月的预付金额在订单有效期间内按日分摊后的有效成本。比如您购买了有效期为一年的云服务共365元,则每天的摊销成本为1元。详细计算规则,可参见摊销成本的分摊规则。该成本未考虑代金券的抵扣,如果想了解抵扣代金券之后的摊销情况,可以使用摊销成本净值。 父主题: 概述
  • 请求示例 创建Object对象实例。 POST https://AstroZero域名/u-route/baas/metadata/v1.0/Object { "label": "VehicleType", "name": "VehicleType__ CS T", "description": "", "fields": [ { "label": "Name", "name": "name", "dataType": "Name" } ], "view": { "ObjectDetailLayout": { "name": "__layout__VehicleType__CST__detail", "fields": [ "name" ] }, "ObjectRecordsLayout": { "name": "__layout__VehicleType__CST__records", "fields": [ "name" ] } } }
  • 请求参数 表1 请求Body参数 参数 是否必选 参数类型 描述 name 是 String 参数解释: 新建自定义对象的名称。 约束限制: 创建后不可修改。 取值范围: 必须以英文字母开头,只能由英文字母,数字和单下划线组成,不允许下划线结尾,且长度不能超过63个字符。 默认取值: 不涉及。 label 否 String 参数解释: 对象的别名,创建后可以修改。 约束限制: 不涉及。 取值范围: 1~80个字符。 默认取值: 不涉及。 description 否 String 参数解释: 对象的描述信息。 约束限制: 不涉及。 取值范围: 1~80个字符。 默认取值: 不涉及。 fields 是 Array of field object 参数解释: 对象的字段列表,字段参数请参见表2。 约束限制: 不涉及。 view 是 Object of layout object 参数解释: 是一个对象,其中包含ObjectDetailLayout对象和ObjectRecordsLayout对象。创建自定义对象后,系统会自动创建对象的Detail和Records标准页面,ObjectDetailLayout对象和ObjectRecordsLayout对象分别对应这两个标准页面的对象信息。 约束限制: 不涉及。 表2 fields字段参数 参数 是否必选 参数类型 描述 label 是 String 参数解释: 新建字段的标签。 约束限制: 不涉及。 取值范围: 1~80个字符。 默认取值: 不涉及。 name 是 String 参数解释: 新建字段的名称。 约束限制: 创建后不可修改。 取值范围: 必须以英文字母开头,只能由英文字母,数字和单下划线组成,不允许下划线结尾,且长度不能超过63个字符。 默认取值: 不涉及。 dataType 是 String 参数解释: 新建字段的类型。 约束限制: 创建后不可修改。 取值范围: 文本:允许用户输入任何字母和数字的组合,最多可输入255个字符。 密文:允许用户输入任何字母和数字的组合,并且以加密格式存储,最多可输入111个字符。 文本区:允许用户输入多行文本,最多可输入1,048,576字符。 数字:允许用户输入任何数字,会删除前置零。 百分比:允许用户输入百分比数字(例如"10"),并自动向数字添加百分号。 电话:允许用户输入任何电话号码,系统会自动将其转换为电话号码格式。 币种金额:允许用户输入其他币种金额,并将字段自动转换为币种金额格式。此功能在将数据导出到Excel或其它电子表格时非常有用。 日期:允许用户输入日期或从弹出式日历中选择日期。 日期/时间:允许用户输入日期和时间,或从弹出式日历中选择日期。当用户单击弹出式日历中的某个日期后,该日期和当前时间将输入到“日期/时间”字段。 电子邮件:允许用户输入电子邮件地址,对其进行验证以确保格式正确。如果对于一个联系人和潜在客户指定了此字段,则用户单击“发送电子邮件”时可以选择地址。自定义电子邮件地址无法用于批量电子邮件。 复选框:允许用户选择“真”(选取)或“假”(不选取)值。 选项列表:允许用户从定义的列表中选择值。 选项列表(多项选择):允许用户从定义的列表中选择多个值。 URL:允许用户输入任何有效的网址。当用户单击该字段时,该 URL 将在单独的浏览器窗口中打开。 查找关系:创建一个将此对象链接到另一对象的关系。 自动编号:使用用户定义的格式生成序列编号。该编号对于每条新记录会自动递增。 公式:使用用户定义的公式表达式生成只读字段。任何表达式中使用的源字段有所更改,本字段值将更新。 主从关系类型:在一个对象和另一个对象之间创建一种特殊类型的父子关系。详细记录的所有权是由主记录决定的。当用户删除主记录时,所有详细记录都将被删除。 多语言:允许用户从自定义资源表中选择多种语言内容。 附件:允许用户保存多个上传文件的地址,支持图片、文档等类型。 默认取值: 不涉及。
  • 响应参数 表3 响应参数 参数 参数类型 描述 resCode String 参数解释: 返回码。 取值范围: 如果返回“0”代表请求成功,其他错误码说明请参考错误码。 resMsg String 参数解释: 返回消息。 取值范围: 如果成功状态,通常会返回“Success”,其他情况会返回具体的错误信息。 result string 参数解释: 成功会返回Object的一个ID值。 取值范围: 不涉及。
  • 使用Lm-eval精度测评工具 使用lm-eval工具暂不支持qwen-7b、qwen-14b、qwen-72b、chatglm2-6b、chatglm3-6b模型。 精度评测可以在原先conda环境,进入到一个固定目录下,执行如下命令。 rm -rf lm-evaluation-harness/ git clone https://github.com/EleutherAI/lm-evaluation-harness.git cd lm-evaluation-harness git checkout 383bbd54bc621086e05aa1b030d8d4d5635b25e6 pip install -e . 执行如下精度测试命令,可以根据参数说明修改参数。 lm_eval --model vllm --model_args pretrained=${vllm_path},dtype=auto,tensor_parallel_size=${tensor_parallel_size},gpu_memory_utilization=${gpu_memory_utilization},add_bos_token=True,max_model_len=${max_model_len},quantization=${quantization},distributed_executor_backend='ray' \ --tasks ${task} --batch_size ${batch_size} --log_samples --cache_requests true --trust_remote_code --output_path ${output_path} 参数说明: model_args:标志向模型构造函数提供额外参数,比如指定运行模型的数据类型; vllm_path是模型权重路径; max_model_len 是最大模型长度,默认设置为4096; gpu_memory_utilization是gpu利用率,如果模型出现oom报错,调小参数; tensor_parallel_size是使用的卡数; quantization是量化参数,使用非量化权重,去掉quantization参数;如果使用awq、smoothquant或者gptq加载的量化权重,根据量化方式选择对应参数,可选awq,smoothquant,gptq。 distributed_executor_backend是开启多进程服务方式,选择ray开启。 model:模型启动模式,可选vllm,openai或hf,hf代表huggingface。 tasks:评测数据集任务,比如openllm。 batch_size:输入的batch_size大小,不影响精度,只影响得到结果速度,默认使用auto,代表自动选择batch大小。 output_path:结果保存路径。 使用lm-eval,比如加载非量化或者awq量化,llama3.2-1b模型的权重,参考命令: lm_eval --model vllm --model_args pretrained="/data/nfs/benchmark/tokenizer/Llama-3.2-1B-Instruct/",dtype=auto,tensor_parallel_size=1,gpu_memory_utilization=0.7,add_bos_token=True,max_model_len=4096,distributed_executor_backend='ray' \ --tasks openllm --batch_size auto --log_samples --cache_requests true --trust_remote_code --output_path ./ 使用lm-eval,比如smoothquant量化,llama3.1-70b模型的权重,参考命令: lm_eval --model vllm --model_args pretrained="/data/nfs/benchmark/tokenizer_w8a8/llama3.1-70b/",dtype=auto,tensor_parallel_size=4,gpu_memory_utilization=0.7,add_bos_token=True,max_model_len=4096,quantization="smoothquant",distributed_executor_backend='ray' \ --tasks openllm --batch_size auto --log_samples --cache_requests true --trust_remote_code --output_path ./
共100000条