华为云用户手册

  • dcf_truncate_dump_info_level 参数说明:用于控制dcf做日志截断(truncate)时是否打印被截断lsn及之后的lsn。 参数类型:整型 参数单位:无 取值范围: 0~2 0:不开启。 1: 打印被dcf截断的所有lsn内容(大于等于截断lsn的xlog日志)。 2:打印被dcf截断的所有lsn内容,且当落盘lsn大于截断lsn时打印warnning级别日志。 默认值:0(不开启) 设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 设置建议:建议设置为默认值。
  • redo_bind_cpu_attr 参数说明:用于控制回放线程的绑核操作,仅sysadmin用户可以访问。该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 取值范围:字符串,长度大于0,该参数不区分大小写。 'nobind':线程不做绑核。 'nodebind: 1, 2':利用NUMA组1,2中的CPU core进行绑核。 'cpubind: 0-30':利用0-30号CPU core进行绑核。 'cpuorderbind: 16-32': 从16号核开始一个线程绑定一个CPU,区间内核不足就不参与绑定。建议区间大小设置为大于等于recovery_parallelism + 1。 默认值:'nobind'
  • recovery_min_apply_delay 参数说明:设置备节点回放的延迟时间。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 此参数主节点设置无效,必须设置在需要延迟的备节点上,推荐设置在异步备上,设置了延时的异步备如果升主RTO时间会比较长。 延迟时间是根据主服务器上事务提交的时间戳与备机上的当前时间来计算,因此需要保证主备系统时钟一致。 延迟时间设置过长时,可能会导致该备机X LOG 文件所在的磁盘满,需要平衡考虑磁盘大小来设置延迟时间。 没有事务的操作不会被延迟。 主备切换之后,原主机若需延迟,需要再手动配置此参数。 当synchronous_commit被设置为remote_apply时,同步复制会受到这个延时的影响,每一个COMMIT都需要等待备机回放结束后才会返回。 使用这个特性也会让hot_standby_feedback被延迟,这可能导致主服务器的膨胀,两者一起使用时要小心。 主机执行了持有AccessExclusive锁的DDL操作,比如DROP和TRUNCATE操作,在备机延迟回放该条记录期间,在备机上对该操作对象执行查询操作会等待锁释放之后才会返回。 取值范围:整型,0~INT_MAX,单位为毫秒。 默认值:0(不增加延迟)
  • recovery_redo_workers 参数说明:是极致RTO特性中每个ParseRedoRecord线程对应的PageRedoWorker数量。recovery_redo_workers需要配合recovery_parse_workers使用,只有recovery_parse_workers大于1,recovery_redo_workers参数设置值才生效。 参数类型:整型 参数单位:无 取值范围:1~8 默认值:1 设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 设置建议:不同CPU、内存和部署模式下,recovery_parse_workers和recovery_redo_workers的设置值可参考表1 不同CPU、内存和部署模式下的参数设置参考。 表1 不同CPU、内存和部署模式下的参数设置参考 编号 CPU个数 内存(GB) 是否混合部署 recovery_parse_workers recovery_redo_workers 回放线程总数 备注 1 4 - - 1 1 - 不推荐开极致RTO 2 8 - 是 1 1 - 不推荐开极致RTO 3 8 64 否 1 1 - 不推荐开极致RTO 4 16 128 是 1 1 - 不推荐开极致RTO 5 16 128 否 2 3 15 - 6 32 256 是 2 2 13 - 7 32 256 否 2 8 25 - 8 64 512 是 2 4 17 - 9 64 512 否 2 8 25 大于此硬件规格的系统均参考此参数设置值 10 96 768 - 2 8 25 大于此硬件规格的系统均参考此参数设置值
  • recovery_time_target 参数说明:设置recovery_time_target能够让备机完成日志写入和回放。 参数类型:整型 参数单位:秒 取值范围:0~3600 0是指不开启日志流控,1~3600是指备机能够在recovery_time_target时间内完成日志的写入和回放,可以保证主机与备机切换时能够在recovery_time_target秒完成日志写入和回放,保证备机能够快速升主机。recovery_time_target设置时间过小会影响主机的性能,设置过大会失去流控效果。 默认值:60 设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 设置建议:一般设置为默认值,不作调整。
  • recovery_parse_workers 参数说明:是极致RTO特性中ParseRedoRecord线程的数量。 需要配合recovery_redo_workers使用。recovery_parse_workers和recovery_redo_workers同时大于1,则开启极致RTO。如不期望开启极致RTO,请保持recovery_parse_workers为默认值1; 在开启极致RTO时确保参数replication_type为1; 若同时开启极致RTO和并行回放,则极致RTO特性生效,并行回放特性失效; 极致RTO不支持流控,流控统一由recovery_time_target参数控制。 参数类型:整型 参数单位:无 取值范围:1~16 默认值:1 设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 设置建议:不同CPU、内存和部署模式下,recovery_parse_workers和recovery_redo_workers的设置值可参考表1 不同CPU、内存和部署模式下的参数设置参考。 打开极致RTO后,备机会额外启动的回放线程总数=recovery_parse_workers * (recovery_redo_workers + 2) + 5。回放线程越多,占用CPU、内存和IO资源越多。请根据实际硬件配置合理设置参数,避免因为参数设置过大,导致CPU和内存占用过高,进而导致系统启动异常。
  • STATIO_SYS_INDEXES STATIO_SYS_INDEXES显示命名空间中所有系统表索引的I/O状态信息,如表1所示。 表1 STATIO_SYS_INDEXES字段 名称 类型 描述 relid oid 索引的表的OID。 indexrelid oid 该索引的OID。 schemaname name 该索引的模式名。 relname name 该索引的表名。 indexrelname name 索引名称。 idx_blks_read bigint 从索引中读取的磁盘块数。 idx_blks_hit bigint 索引命中缓存数。 last_updated timestamp with time zone 视图中该对象监控数据最后一次更新的时间。 父主题: Cache/IO
  • 示例 收集表的的统计信息。 --创建customer_info表。 gaussdb=# CREATE TABLE customer_info( wr_returned_date_sk INTEGER , wr_returned_time_sk INTEGER , wr_item_sk INTEGER NOT NULL ,wr_refunded_customer_sk INTEGER ); --使用ANALYZE语句更新统计信息。 gaussdb=# ANALYZE customer_info; --使用ANALYZE VERBOSE语句更新统计信息,并输出customer_info表的相关信息。 gaussdb=# ANALYZE VERBOSE customer_info; INFO: analyzing "public.customer_info"(datanode pid=38661) INFO: ANALYZE INFO : estimate total rows of "customer_info": scanned 0 pages of total 0 pages with 1 retry times, containing 0 live rows and 0 dead rows, estimated 0 total rows(datanode pid=38661) INFO: ANALYZE INFO : "customer_info": scanned 0 of 0 pages, containing 0 live rows and 0 dead rows; 0 rows in sample, 0 estimated total rows(datanode pid=38661) --使用ANALYZE VERBOSE输出customer_info表的wr_returned_time_sk列信息。 gaussdb=# ANALYZE VERBOSE customer_info(wr_returned_time_sk); INFO: analyzing "public.customer_info"(datanode pid=38661) INFO: ANALYZE INFO : estimate total rows of "customer_info": scanned 0 pages of total 0 pages with 1 retry times, containing 0 live rows and 0 dead rows, estimated 0 total rows(datanode pid=38661) INFO: ANALYZE INFO : "customer_info": scanned 0 of 0 pages, containing 0 live rows and 0 dead rows; 0 rows in sample, 0 estimated total rows(datanode pid=38661) 收集分区表的统计信息。 --创建分区表。 gaussdb=# CREATE TABLE customer_par( wr_returned_date_sk INTEGER , wr_returned_time_sk INTEGER , wr_item_sk INTEGER NOT NULL, wr_returned_customer_sk INTEGER) PARTITION BY RANGE(wr_returned_date_sk)(PARTITION P1 VALUES LESS THAN(2452275),PARTITION P2 VALUES LESS THAN(2452640),PARTITION P3 VALUES LESS THAN(2453000),PARTITION P4 VALUES LESS THAN(MAXVALUE))ENABLE ROW MOVEMENT; --使用ANALYZE语句更新统计信息。 gaussdb=# ANALYZE customer_par; --使用ANALYZE VERBOSE输出customer_par表的相关信息。 gaussdb=# ANALYZE VERBOSE customer_par; INFO: analyzing "public.customer_par"(datanode pid=38661) --使用ANALYZE VERBOSE输出P1一级分区表的相关信息。 gaussdb=# ANALYZE VERBOSE customer_par PARTITION(P1); INFO: analyzing "public.customer_par"(datanode pid=38661) 手动收集多列统计信息。 --手动收集wr_returned_date_sk、wr_returned_time_sk这两列的统计信息。 gaussdb=# ANALYZE VERBOSE customer_info (wr_returned_date_sk,wr_returned_time_sk); INFO: analyzing "public.customer_info"(datanode pid=38661) INFO: ANALYZE INFO : estimate total rows of "customer_info": scanned 0 pages of total 0 pages with 1 retry times, containing 0 live rows and 0 dead rows, estimated 0 total rows(datanode pid=38661) INFO: ANALYZE INFO : "customer_info": scanned 0 of 0 pages, containing 0 live rows and 0 dead rows; 0 rows in sample, 0 estimated total rows(datanode pid=38661) 自动收集多列统计信息。 --给customer_info表创建索引。 gaussdb=# CREATE INDEX customer_index ON customer_info USING btree(wr_returned_date_sk,wr_returned_time_sk,wr_item_sk,wr_refunded_customer_sk); --设置auto_statistic_ext_columns参数为4 gaussdb=# set auto_statistic_ext_columns=4; --自动收集多列统计信息。 gaussdb=# ANALYZE VERBOSE customer_info; INFO: analyzing "public.customer_info"(datanode pid=38661) INFO: ANALYZE INFO : estimate total rows of "customer_info": scanned 0 pages of total 0 pages with 1 retry times, containing 0 live rows and 0 dead rows, estimated 0 total rows(datanode pid=38661) INFO: ANALYZE INFO : "customer_info": scanned 0 of 0 pages, containing 0 live rows and 0 dead rows; 0 rows in sample, 0 estimated total rows(datanode pid=38661) 检测当前库的数据文件。 gaussdb=# ANALYZE VERIFY FAST; 检测表和索引的数据文件。 --检查customer_info表。 gaussdb=# ANALYZE VERIFY FAST customer_info; --检查customer_index索引。 gaussdb=# ANALYZE VERIFY FAST customer_index; 检测表分区的数据文件。 --检查customer_par分区表中的P1分区。 gaussdb=# ANALYZE VERIFY FAST customer_par PARTITION (P1); 删除数据。 --删除索引customer_index。 gaussdb=# DROP INDEX customer_index; --删除表customer_info。 gaussdb=# DROP TABLE customer_info; --删除分区表customer_par。 gaussdb=# DROP TABLE customer_par;
  • 语法格式 收集表的统计信息。 { ANALYZE | ANALYSE } [ VERBOSE ] [ table_name [ ( column_name [, ...] ) ] ] [ WITH PARTITION_MODE ]; 收集分区表的分区统计信息。 { ANALYZE | ANALYSE } [ VERBOSE ] table_name [ ( column_name [, ...] ) ] { SUBPARTITION | PARTITION } ( partition_name ) ; 使用关键字PARTITION,partition_name必须为一级分区名字。使用关键字SUBPARTITION,partition_name必须为二级分区名字。
  • 功能描述 用于收集与数据库中普通表内容相关的统计信息,统计结果存储在系统表PG_STATISTIC、PG_STATISTIC_EXT下,执行ANALYZE命令后,可在上述系统表中查询收集到的统计信息,也可以通过系统视图PG_STATS、PG_EXT_STATS查询信息。执行计划生成器会使用这些统计数据,以确定最有效的执行计划。 如果ANALYZE没有指定参数,会分析当前数据库中的每个表和分区表。同时也可以通过指定table_name、column_name和partition_name参数把分析限定在特定的表、列或分区表中。 ANALYZE|ANALYSE VERIFY可用于检测数据库中普通表的数据文件是否损坏。 每次收集的统计信息,都会存入统计信息历史表(GS_STATISTIC_HISTORY、GS_STATISTIC_EXT_HISTORY、GS_TABLESTATS_HISTORY)中,历史表存放的数量和统计信息的保留时间由GUC参数stats_history_record_limit和stats_history_retention_time控制。
  • 参数说明 VERBOSE 启用显示进度信息。 如果指定了VERBOSE,ANALYZE发出进度信息,表明目前正在处理的表。各种有关表的统计信息也会打印出来。 table_name 需要分析的特定表的表名(可能会带模式名),如果省略,将对数据库中的所有表(非外部表)进行分析。 对于ANALYZE收集统计信息,目前仅支持行存表。 取值范围:已有的表名。 column_name,column_1_name,column_2_name 需要分析特定列的列名,默认为所有列。 取值范围:已有的列名。 partition_name 如果table为分区表,在关键字PARTITION后面指定分区名partition_name表示分析该分区表的统计信息。 取值范围:表的某一个分区名。 index_name 需要分析的特定索引表的表名(可能会带模式名)。 取值范围:已有的表名。 FAST|COMPLETE FAST模式下主要对于表的CRC和page header进行校验,如果校验失败则会告警; 而COMPLETE模式下,则主要对表的指针、tuple进行解析校验。 CASCADE CASCADE模式下会对当前表的所有索引进行检测处理。 PARTITION_MODE PARTITION_MODE适用于分区表级联收集统计信息,可选项和含义如下表所示。不适用于非分区表。 表1 PARTITION_MODE选项说明 PARTITION_MODE选项 含义 ALL 收集整表、一级分区、二级分区的统计信息。 GLOBAL 收集整表的统计信息。 PARTITION 收集一级分区的统计信息。 GLOBAL AND PARTITION 收集整表、一级分区的统计信息。 SUBPARTITION 收集二级分区的统计信息。 ALL COMPLETE 收集整表、一级分区、二级分区的统计信息。 AUTO 缺省值,以statistic_granularity或default_statistic_granularity中配置的参数为准,其中表级参数statistic_granularity的优先级高于全局参数default_statistic_granularity。 ALL和ALL COMPLETE的区别为:ALL_COMPLETE模式下,采用更高的采样率,相应地,计算统计信息的耗时更长。 从505.0.0之前版本升级到505.0.0及更高版本时,在升级观察期期间,PARTITION_MODE不生效,其行为与升级前版本保持一致。 analyze整库时,不支持指定partition mode,即不支持analyze with global等语法。 analyze整库时,支持设置default_statistic_granularity为GLOBAL或ALL,此时analyze行为和default_statistic_granularity的定义相同;当default_statistic_granularity设置为其他值时,analyze行为退化为GLOBAL行为。
  • 注意事项 ANALYZE非临时表不支持在一个匿名块、事务块、函数或存储过程内被执行。ANALYZE临时表支持在存储过程中被执行,不支持统计信息回滚操作。 ANALYZE VERIFY如果不涉及远程读场景,远程读参数则不会生效。对于检测出关键系统表页面损坏的错误,将直接报错不再继续检测。 如果ANALYZE不指定参数,则默认处理当前用户拥有相应权限的表。如果参数中指定了一个表参数,ANALYZE只处理指定的表。 要对一个表进行ANALYZE操作,用户必须是表的所有者或者被授予了指定表VACUUM权限,三权分立开关关闭时,默认系统管理员有该权限。数据库的所有者允许对数据库中除了共享目录以外的所有表进行ANALYZE操作(该限制意味着只有系统管理员才能真正对一个数据库进行ANALYZE操作)。ANALYZE会跳过那些用户没有权限的表。 ANALYZE不收集无法做比较或等值运算的列,例如:CURSOR类型。
  • MY_PART_INDEXES MY_PART_INDEXES视图显示当前用户下分区表索引的信息。该视图同时存在于PG_CATALOG和SYS Schema下。 表1 MY_PART_INDEXES字段 名称 类型 描述 def_tablespace_name name 分区表索引的表空间名称。 index_owner character varying(64) 分区表索引的所有者名称。 index_name character varying(64) 分区表索引的名称。 partition_count bigint 分区表索引的索引分区的个数。 partitioning_key_count integer 分区表的分区键个数。 partitioning_type text 分区表的分区策略。 说明: 当前分区表策略支持范围见CREATE TABLE PARTITION。 schema character varying(64) 分区表索引的模式。 table_name character varying(64) 分区表索引所属的分区表名称。 subpartitioning_type text 二级分区表的分区策略。如果分区表是一级分区表,则显示NONE。 说明: 当前二级分区表策略支持范围见CREATE TABLE SUBPARTITION。 def_subpartition_count integer 默认创建二级分区的个数,二级分区表为1,一级分区表为0。 subpartitioning_key_count integer 分区表二级分区键的个数。 父主题: 分区表
  • PG_COMM_RECV_STREAM PG_COMM_RECV_STREAM视图展示单个DN上所有的通信库接收流状态。 表1 PG_COMM_RECV_STREAM字段 名称 类型 描述 node_name text 节点名称。 local_tid bigint 使用此通信流的线程ID。 remote_name text 连接对端节点名称。 remote_tid bigint 连接对端线程ID。 idx integer 通信对端DN在本DN内的标识编号。 sid integer 通信流在物理连接中的标识编号。 tcp_sock integer 通信流所使用的tcp通信socket。 state text 通信流当前的状态。 UNKNOWN:表示当前逻辑连接状态未知。 READY:表示逻辑连接已就绪。 RUN:表示逻辑连接发送报文正常。 HOLD:表示逻辑连接发送报文等待中。 CLOSED:表示关闭逻辑连接。 TO_CLOSED:表示将会关闭逻辑连接。 query_id bigint 通信流对应的debug_query_id编号。 pn_id integer 通信流所执行查询的plan_node_id编号。 send_smp integer 通信流所执行查询send端的smpid编号。 recv_smp integer 通信流所执行查询recv端的smpid编号。 recv_bytes bigint 通信流接收的数据总量,单位Byte。 time bigint 通信流当前生命周期使用时长,单位ms。 speed bigint 通信流的平均接收速率,单位Byte/s。 quota bigint 通信流当前的通信配额值,单位Byte。 buff_usize bigint 通信流当前缓存的数据大小,单位Byte。 父主题: 通信
  • PG_LANGUAGE PG_LANGUAGE系统表登记编程语言,用户可以用这些语言或接口写函数或者存储过程。 表1 PG_LANGUAGE字段 名称 类型 引用 描述 oid oid - 行标识符(隐含属性;必须明确选择)。 lanname name - 语言的名称。 lanowner oid PG_AUTHID.oid 语言的所有者。 lanispl boolean - true:表示用户定义的语言。 false:表示内部语言,比如SQL。 目前,gs_dump仍然使用该字段判断哪种语言需要转储,但是这些可能在将来被其它机制取代。 lanpltrusted boolean - true:这是可信语言,意味着系统相信它不会被授予任何正常SQL执行环境之外的权限。 false:这是不可信语言。只有初始用户可以用不可信语言创建函数。 lanplcallfoid oid PG_PROC.oid 对于非内部语言,这是指向该语言处理器的引用,语言处理器是一个特殊函数, 负责执行以某种语言写的所有函数。 laninline oid PG_PROC.oid 这个字段引用一个负责执行“inline”匿名代码块的函数(DO块)。如果不支持内联块则为零。 lanvalidator oid PG_PROC.oid 这个字段引用一个语言校验器函数,它负责检查新创建的函数的语法和有效性。如果没有提供校验器,则为零。 lanacl aclitem[] - 访问权限。 父主题: 其他系统表
  • SUMMARY_REL_IOSTAT 获取所有节点上的数据文件I/O统计信息的汇总求和结果,如表1所示。 表1 SUMMARY_REL_IOSTAT字段 名称 类型 描述 phyrds numeric 读物理文件的数目。 phywrts numeric 写物理文件的数目。 phyblkrd numeric 读物理文件的块的数目。 phyblkwrt numeric 写物理文件的块的数目。 父主题: File
  • MY_AUDIT_TRAIL MY_AUDIT_TRAIL视图显示与当前用户有关的标准审计跟踪条目, GaussDB 审计信息主要通过pg_query_audit()函数。该视图同时存在于PG_CATALOG和SYS Schema下,仅拥有AUDITADMIN属性及MY_AUDIT_TRAIL的SELECT权限的用户才可以查看审计信息;三权分立未开启时,拥有SYSADMIN属性的用户也可以查看审计信息。GaussDB的action_name字段与A数据库审计动作不一致,transactionid字段与A数据库中transactionid数据的类型保持一致,GaussDB的sql_text字段为解析后SQL描述语句,不完全与执行的SQL语句相同。 表1 MY_AUDIT_TRAIL字段 名称 类型 描述 os_username character varying(255) 暂不支持,值为NULL。 username character varying(128) 操作被审计的用户的名称,不是用户ID。 userhost character varying(128) 暂不支持,值为NULL。 terminal character varying(255) 暂不支持,值为NULL。 timestamp timestamp(0) without time zone 在本地数据库会话时区中创建审计跟踪条目的日期和时间(由审计会话创建的条目的用户登录日期和时间)。 owner character varying(128) 受操作影响的对象的创建者。 obj_name character varying(128) 受操作影响的对象的名称。 action numeric 暂不支持,值为NULL。 action_name character varying(28) action列中的数字代码对应的action类型名称。 new_owner character varying(128) 暂不支持,值为NULL。 new_name character varying(128) 暂不支持,值为NULL。 obj_privilege character varying(32) 暂不支持,值为NULL。 sys_privilege character varying(40) 暂不支持,值为NULL。 admin_option character varying(1) 暂不支持,值为NULL。 grantee character varying(128) 暂不支持,值为NULL。 audit_option character varying(40) 暂不支持,值为NULL。 ses_actions character varying(19) 暂不支持,值为NULL。 logoff_time timestamp(0) without time zone 暂不支持,值为NULL。 logoff_lread numeric 暂不支持,值为NULL。 logoff_pread numeric 暂不支持,值为NULL。 logoff_lwrite numeric 暂不支持,值为NULL。 logoff_dlock character varying(40) 暂不支持,值为NULL。 comment_text character varying(4000) 暂不支持,值为NULL。 sessionid numeric 暂不支持,值为NULL。 entryid numeric 暂不支持,值为NULL。 statementid numeric 暂不支持,值为NULL。 returncode numeric 暂不支持,值为NULL。 priv_used character varying(40) 暂不支持,值为NULL。 client_id character varying(128) 暂不支持,值为NULL。 econtext_id character varying(64) 暂不支持,值为NULL。 session_cpu numeric 暂不支持,值为NULL。 extended_timestamp timestamp(6) with time zone 创建审计跟踪条目的时间戳(由创建的条目的用户登录时间戳UTC(协调通用)中的审计会话时间)时区。 proxy_sessionid numeric 暂不支持,值为NULL。 global_uid character varying(32) 暂不支持,值为NULL。 instance_number numeric 暂不支持,值为NULL。 os_process character varying(16) 暂不支持,值为NULL。 transactionid text 访问或修改对象的事务的事务标识符。 scn numeric 暂不支持,值为NULL。 sql_bind nvarchar2(2000) 暂不支持,值为NULL。 sql_text nvarchar2 查询的SQL文本。 obj_edition_name character varying(128) 暂不支持,值为NULL。 dbid numeric 暂不支持,值为NULL。 rls_info clob 暂不支持,值为NULL。 current_user character varying(128) 暂不支持,值为NULL。 父主题: 其他系统视图
  • 使用限制 视频直播 对各类资源的限制如表1所示。 表1 使用限制说明 限制项 说明 区域 视频直播服务暂只支持“华北-北京一”、“亚太-新加坡”和“华北-北京四”区域,即 华为云直播 服务暂只在这些区域部署了直播中心。新开通的用户,目前暂只支持“华北-北京四”区域。 域名 默认每个账号下最多可创建64个域名。 如果您需要在中国大陆开展直播活动,请确保添加的域名已在工信部备案,且当前备案信息正常可用。您可以直接在华为云注册域名,并备案。 须知: 如果新增、修改或删除域名,同步至我的资源中会有最长24小时的数据延迟,请稍候再查看。 并发直播流 对并发直播流未做相关限制,但若您有大规模的并发直播流需求,建议提交工单进一步咨询。 推流 视频直播服务不限制推流码率,支持常见分辨率以及对应码率,但为了保证推流顺畅,建议码率不超过4Mbps。 播放 仅进行了域名关联,且AppName和StreamName与推流地址一致,才可以播放对应的直播流。 支持输入/输出格式 标准直播: 视频封装协议 RTMP、FLV输入/输出协议 支持的视频编码格式有:H264、H265等。 HLS输出协议 支持的视频编码格式有:H264、H265等。 音频封装协议 RTMP、FLV输入/输出协议 支持的音频编码格式有:AAC等。 HLS输出协议 支持的音频编码格式有:AAC。 低时延直播: 传输协议要求 信令传输协议:支持HTTPS、HTTP和UDP。HTTP开启80监听端口。HTTP和UDP使用存在安全风险。 媒体传输协议:支持UDP和TCP。其中,媒体流支持加密,建议信令协商DTLS,否则使用UDP存在安全风险。 编码格式要求 观众端:支持的视频编码格式为H264、无B帧;支持的音频编码格式为OPUS。 主播推流端:支持的视频编码格式为H264、无B帧;支持的音频编码格式为AAC(LC/HE)。 说明: 若推流端格式不满足要求,则需要配置转码模板,低时延直播会实时转码成满足观众要求的格式,并产生转码费用。当前系统默认支持AAC转OPUS,不会产生费用。 为达到更好的低时延效果,建议推流端GOP设置为2s 。 不支持纯音频或纯视频模式。 直播计费 客户等级为V0和V1的账户暂只支持按流量计费,不支持切换成其他计费方式。 业务监控 暂不支持“华北-北京一”区域使用。 用量统计 日志管理 工具库 内容合规 视频直播不支持接入违反相关法律法规的域名,包括但不限于: 涉黄、涉赌、涉毒、涉诈、侵权内容的网站 游戏私服类 盗版游戏/软件/盗版视频网站 P2P类金融网站 彩票类网站 违规医院和药品类网站 无法正常访问或内容不含有任何实质信息 说明: 如果您的直播加速域名含有以上违规的内容,您将自行承担相关风险。 如果发现涉黄、涉赌、涉毒、涉诈等违规行为,视频直播将执行域名封禁策略(删除相关加速域名且不允许再次接入,与违规域名使用相同源站的加速域名同样执行域名封禁策略),账号加速域名配额降为0。
  • API限制 视频直播服务对服务端API设置了调用次数限制,避免出现短时间内重复调用API,服务中断的情况。 表2 API流控限制 接口分类 接口名称 用户流量限制 API流量限制 域名管理 创建直播域名 查询直播域名 300次/分钟 3000次/分钟 删除直播域名 修改直播域名 域名映射 删除直播域名映射关系 配置域名IPV6开关 100次/分钟 1000次/分钟 转码模板管理 创建直播转码模板 删除直播转码模板 配置直播转码模板 查询直播转码模板 100次/分钟 1000次/分钟 流管理 禁止直播推流 修改禁推属性 4000次/分钟 12000次/分钟 禁推恢复 查询禁止直播推流列表 3000次/分钟 6000次/分钟 查询直播中的流信息 1000次/分钟 2000次/分钟 鉴权管理 查询指定域名的Key防盗链配置 修改指定域名的Key防盗链配置 删除指定域名的Key防盗链配置 150次/分钟 300次/分钟 截图管理 创建直播截图配置 修改直播截图配置 查询直播截图配置 删除直播截图配置 150次/分钟 300次/分钟 日志管理 获取直播播放日志 300次/分钟 3000次/分钟 录制管理 创建录制规则 查询录制规则列表 修改录制规则 删除录制规则 查询录制规则配置 提交录制控制命令 300次/分钟 3000次/分钟 创建录制视频索引文件 1200次/分钟 3000次/分钟 录制回调管理 创建录制回调配置 查询录制回调配置列表 修改录制回调配置 查询录制回调配置 删除录制回调配置 300次/分钟 300次/分钟 HTTPS证书管理 修改指定域名的HTTPS证书配置 查询指定域名的HTTPS证书配置 删除指定域名的HTTPS证书配置 150次/分钟 300次/分钟 OBS桶管理 OBS桶授权及取消授权 150次/分钟 300次/分钟 数据统计分析 查询播放带宽趋势接口 500次/分钟 5000次/分钟 数据统计分析 查询转码用量接口 查询录制用量接口 查询截图用量接口 查询播放画像信息接口 60次/分钟 5000次/分钟 查询播放流量趋势接口 查询播放带宽峰值接口 查询播放流量汇总接口 查询观众趋势接口 查询直播拉流HTTP状态码接口 查询上行带宽数据接口 查询域名维度推流路数接口 查询历史推流列表接口 20次/分钟 5000次/分钟 查询直播各区域指标分布接口 50次/秒 150次/秒 流监控 查询推流帧率数据接口 查询推流码率数据接口 20次/分钟 5000次/分钟 查询流监控数据接口 1次/秒 5次/秒 查询CDN上行推流质量数据接口 60次/秒 300次/秒
  • 概述 当转发目标(如第三方应用服务器等)由于性能等原因无法快速处理IoT 物联网平台 流转数据时,未能及时处理的流转数据会积压(缓存)在IoT物联网平台。目前IoT物联网平台默认配置单个转发规则流转数据的最大积压(缓存)大小为1GB,最大积压(缓存)时间为24小时,超过最大积压(缓存)大小或积压(缓存)时间时,最早未被处理的流转数据会被丢弃直至满足积压(缓存)大小和时间限制。 客户可以根据自身的业务场景以及转发目标(如第三方应用服务器等)的性能等情况,在IoT物联网平台上创建合适的积压策略,控制流转数据在IoT物联网平台的积压情况。 例如:当业务对数据实时性的要求高于完整性,而转发目标(如第三方应用服务器等)长时间性能不足或业务中断一段时间,未能及时处理IoT物联网平台流转数据,导致流转数据大量积压在IoT物联网平台,转发目标(如第三方应用服务器等)接收到的数据一直是延迟、滞后的数据, 此时可以考虑使用积压策略配置较小的积压大小和积压时间,丢弃过时的数据,接收、处理较为实时的流转数据。
  • 操作步骤 访问 设备接入服务 ,单击“管理控制台 ”进入设备接入控制台。 依次单击“规则 - 数据转发 - 策略配置 - 数据流转积压策略”进入积压策略配置界面。 图1 策略配置界面 在弹出的界面中填写名称、描述、积压大小、积压时间等信息后,单击确定即可完成积压策略创建。 图2 创建积压策略 表1 参数说明 参数名称 描述 策略名称 长度为4-256,只允许中文、字母、数字以及_?'#().,&%@!-等字符的组合。 描述 关于该策略的描述,长度为4-256,只允许中文、字母、数字以及_?'#().,&%@!-等字符的组合。 积压大小 单个转发规则流转数据在IoT物联网平台最大积压(缓存)大小,单位为B,最大可配置为1073741823 B,即1GB。 积压时间 单个转发规则流转数据在IoT物联网平台最大积压(缓存)时间,单位为秒,最大可配置为86399秒,即24小时。
  • 概述 静态策略,即设备关键字模糊匹配的发放策略。每条静态策略实例指:匹配上该策略实例的设备,将会被发放到该条策略实例关联的设备接入实例的对应资源空间(即应用)下。 设备匹配静态策略实例的机制为: 设备的发放策略为“静态策略”,设备的关键字来源字符串包含某一静态策略实例的关键字,即被认为该设备匹配上该条策略实例。关键字来源有以下两种来源类型: 设备名称:如果设备名称包含设置的关键字,即可按照该行策略指定的发放应用进行实例发放。 数据上报:如果设备在连接后,进行发放publish时,上报Topic “$oc/devices/${deviceId}/sys/bootstrap/up” 中,json上报的属性 “baseStrategyKeyword” 包含设置的关键字,即可按该实例进行发放。 一个设备最多匹配一条静态策略实例; 当一个设备匹配上多条静态策略实例时,则以优先级最高的策略实例为优先。
  • 操作步骤 进入“策略”界面,单击展开“静态策略”,单击“添加实例”。 按照下方参数说明填写关键参数信息后,单击“确定”。 表1 静态策略参数列表 参数名称 说明 示例 关键字 即关键字来源中的关键字。设备发放时,如果关键字来源字符串中包含设置的关键字,则可按该实例进行发放。 将设备名称携带Beijing的设备发放至华北-北京四的物联网平台。 设备名称:WaterMeter-Beijing0001、WaterMeter-Beijing0002 关键字来源:设备名称 关键字:Beijing 发放区域:华北-北京四 发放应用:beijing-app1 将上报信息中携带Beijing的设备发放至华北-北京四的物联网平台。 关键字来源:数据上报 topic“$oc/devices/${device_id}/sys/bootstrap/up”上报信息:{ "baseStrategyKeyword": "WaterMeter-Beijing0003"} 关键字:Beijing 发放区域:华北-北京四 发放应用:beijing-app1 关键字来源 关键字来源指的是用于匹配关键字的字符串信息的数据来源。目前支持设备名称与数据上报两种形式。 如果为设备名称,则匹配关键字的字符串取设备创建后的设备名称。 如果为数据上报,则匹配关键字的字符串取设备发放过程中,发起发放请求Topic“$oc/devices/${device_id}/sys/bootstrap/up” 的上报信息json中的baseStrategyKeyword属性。 优先级别 发放策略的优先级,取值范围1 - 5级,1级为最低优先级。当一个设备符合多个发放策略时,按照优先级最高的策略实例发放。 发放区域 发放到指定区域后,设备将接入对应区域的设备接入服务。 所选区域未开通设备接入服务时,如果确定添加实例,系统将自动为您开通设备接入服务。不同区域设备接入服务价格不同,收费详情请参考价格说明。 发放应用 选择对应设备接入服务区域已创建的应用。在物联网平台中,设备由应用统一管理。 如果对应设备接入服务区域未创建应用,需要前往对应服务创建应用。
  • 场景说明 对于设备上报到平台的数据,使用 函数工作流 FunctionGraph处理实时流数据。通过函数服务,用户只需编写业务函数代码并设置运行的条件,无需配置和管理服务器等基础设施,即可跟踪设备的设备属性、消息上报,状态变更,分析、整理和计量数据流。 本示例为将所有设备上报的属性转发至FunctionGraph函数工作流,根据设备资源空间Id的不同推送到用户Http服务器的不同路径,请您提供自行部署的Http服务器。本示例通过设备接入服务的数据转发能力来驱动事件函数,不需要额外配置触发器。
  • 构建函数工程 本例提供了设备属性上报格式转换并转发到第三方应用的源码(包含函数依赖),用户可以下载学习使用。 创建工程 本例使用Java语言实现设备接入属性数据流式转换功能与推送功能,有关函数开发的过程请参考FunctionGraph的Java函数开发指南,本例不再介绍函数工作流函数实现的代码。 下载样例源码,解压缩并在Idea中导入工程。代码说明可参考:样例代码说明,其中用户自己的服务器地址通过函数环境变量NA_MOCK_SERVER_ADDRESS传入。 图1 样例代码说明 打包工程 使用Idea的Build Artifacts打包Jar,Idea配置及打包如下图所示。 图2 工程Artifacts Output 配置参考 图3 Build Artifacts
  • 按资源空间创建同步任务 进入“设备数据同步”界面,单击右上角“创建同步任务”。 同步方式选择“按资源空间整体同步”,将所有必填选项选择完毕后,单击“确认创建”。 在设备数据同步任务界面,将会看到刚创建的任务,可以对任务进行查看详情、重试、停止或删除操作。 单击“任务ID”或者“详情”,可以看到刚创建的任务的详细内容,并且可以使用“高级搜索”对同步设备进行过滤查询操作。 单击“设备名称”,可以跳转到设备同步详情页,能够查看该设备的信息和设备的发放记录。 同一个资源空间不能创建多个同步任务,如需对该资源空间下的数据进行重新同步,要删除该资源空间关联的同步任务。重新创建该资源空间的同步任务后,相关数据同步到新的目标实例,设备南向引导以最新同步的目标平台实例为准下发地址。(删除同步任务之后,如果没有创建新的同步任务,设备南向无法引导。) 当多个资源空间同时同步时,若某资源空间下的产品、证书同步失败只影响当前资源空间的同步,其他资源空间正常执行。当产品和证书同步失败时,可以选择通过重试同步任务,尝试进行再次同步。 按资源空间同步后,在源实例的设备接入控制台上查看不到同步的资源空间。
  • 指定设备创建同步任务 进入“设备数据同步”界面,单击右上角“创建同步任务”。 同步方式选择“指定设备同步”,将所有必填选项选择完毕后,单击“确认创建”。 在设备数据同步任务界面,将会看到刚创建的任务,可以对任务进行查看详情、重试、停止和删除操作。 单击“任务ID”或者“详情”,可以看到刚创建的任务的详细内容,并且可以使用“高级搜索”对同步设备进行过滤查询操作。 当同步任务类型为“指定设备同步”时,该类任务下所有设备的“所属产品”和“所属资源空间”均相同。因此在进行“高级搜索”时,搜索项“所属产品”和“所属资源空间”均为空。 在设备同步详情页,可以查看单个设备的信息和设备的发放记录。 不同的设备可以根据不同的目标实例创建多个同步任务,设备发放的发放数据以最新的一次的同步任务为准。
  • 变更实例规格 IoTDA实例创建成功后,您可以根据业务需要,升级实例规格,实例规格变更不会对业务产生影响。 访问设备接入服务,单击“管理控制台 ”进入设备接入控制台。 选择左侧导航栏“IoTDA实例”,单击实例名称进入实例详情页面。 单击右上角的“变更配置”,根据您的业务需求,选择变更后的实例规格。 图3 实例管理-变更规格入口 可设置延迟生效,选定维护的时间窗口,将会在指定时间窗口内进行变更。 图4 实例管理-变更规格
  • 创建资源空间 用户首次开通设备接入服务时,物联网平台自动为用户创建了一个默认资源空间,“默认资源空间”每个实例仅有一个,不允许删除。 您可以基于默认资源空间创建产品,注册设备等,也可以参考如下步骤创建新的资源空间。 图1 资源空间-资源空间列表 如果您是老用户,即2020年04月27日00:00前开通的设备接入服务,平台设置默认资源空间的规则请参考设置默认资源空间的规则。 访问设备接入服务,单击“管理控制台 ”进入设备接入控制台。 在左侧导航栏选择“资源空间”,单击右上角的“新建资源空间”,在弹出的页面中,填写参数后,单击“确定”。 资源空间名称必须为账号下唯一。 图2 资源空间-创建资源空间
  • 文本信息下发接口说明 请求对应的消息ID:0x8300 响应对应的消息ID:0x0001(终端通用响应) 请求示例 { "command_name": "SendTextMessage", "service_id": "Message", "paras": { "flag": 2, "lcdflag": true, "ttsflag": true, "text": "hello", "textType": 1 } } 请求参数 paras字段同协议中消息的映射关系 表38 参数描述 属性名 协议字段 类型 参数描述 flag 文本信息标志 int 1: 服务 2: 紧急 3: 通知 lcdflag 终端显示标志 boolean 为true时终端显示器显示 ttsflag 终端播读标志 boolean 为true时终端 TTS 播读 textType 文本类型 int 1:通知 2:服务 text 文本信息 string 最长1024字节 响应示例 { "command_id": "1641969363120826882", "response": { "paras": { "flowNo": 0, "msgId": 33027, "resultCode": 0 }, "result_code": 0 } } 响应参数(终端通用响应) paras字段定义 表39 参数描述 字段名 类型 参数描述 flowNo int 应答流水号 msgId int 对应的平台的消息ID resultCode int 结果
共100000条