华为云用户手册

  • 如何解决收集失败并提示“SNAPSHOT TOO OLD”的问题? 如果收集失败或提示错误“ORA-01555: snapshot too old”,需要检查源Oracle数据库的UNDO参数。执行以下命令: show parameter undo; 样本输出: NAME TYPE VALUEundo_management string AUTOundo_retention integer 28800 联系数据库管理员,提高UNDO_RETENTION参数的配置。 ALTER SYSTEM SET UNDO_RETENTION =N; 将N替换为一个合适的值。 父主题: 产品咨询
  • GaussDB中没有Schema名称的对象语句验证失败,该如何设置搜索路径? 在GaussDB目标库中执行以下示例后,显示表“aa”不存在。 create schema sch1; create table sch1.aa(col int); select * from aa; 实际显示的错误消息为:-ERROR:表“aa”不存在。 LINE 1: select * from aa; ^ SQL state: 42P01 Character: 15 这是由于搜索路径中不存在sch1。 您可以通过执行以下语句在搜索路径中添加sch1。 set search_path = "$user",public,sch1; 然后重新执行select语句。 select * from aa; 此时执行没有任何错误。 要知道当前的search_path,请执行语句。 show search_path; 父主题: 评估项目
  • 预检查包括哪些检查项,检查失败了该怎么办? 预检查阶段包括以下4个检查项。如果以下任何检查项在预检查中显示失败,您需要按提示采取适当措施。 DBMS_METADATA权限:检查用户是否具有从Oracle数据库字典中检索元数据的权限,该权限用来获取Schema对象的DDL。 动态视图权限:检查用户对各种动态性能视图的访问权限,该权限用来获取数据库基础信息。 schema对象数量检查:检查该用户是否有Schema对象需要评估。至少需要一个对象需要评估。 DBA权限:检查用户是否有DBA(数据库管理员)的权限,才能进行后续操作。 若预检查权限失败,需要源数据库为用户(创建评估数据库时使用的用户)单独赋予该权限,才能进行后续步骤。 父主题: 评估项目
  • 对象采集失败的原因有哪些? 可能的原因如下: 网络到源数据库已关闭 —此时需要恢复UGO与源数据库之间的网络连接,并重新创建评估工程。 目标库验证失败 —建表语句如果指定namespace,请检查目标库是否存在该namespace,如果不存在请在目标库创建该namespace。 —创建视图、函数等失败请检查是否依赖目标库table,如果依赖table请先确保table创建成功。 父主题: 评估项目
  • 迁移风险(10大SQL风险语句)和风险SQL摘要有什么关系? 迁移风险和风险SQL摘要之间没有任何关系。 迁移风险(10大SQL风险语句):指过去7天内占用源数据库CPU和内存较高,且执行时间较长的前10条SQL语句。 风险SQL摘要:从目标数据库的角度,概述迁移风险。对于目标数据库不直接支持的某些功能,应用程序需要特别关注该风险。 风险分为不同的类别,如功能风险,性能风险等。 功能风险:例如,目标数据库不直接支持的数据类型(如取值范围)。具体可以从data_type_mismatch,table_def_mismatch,sequence_limitation方面概述。 性能风险:影响库性能的风险。例如,GaussDB不支持分区间隔,具体可以从分布和分区方面概述。 父主题: 评估项目
  • 如何解决Oracle系统参数配置太低导致采集失败或速度慢的问题? 如果Oracle SGA系统参数配置低导致收集失败或缓慢,执行以下命令: show parameter SGA; 样本输出 : NAME TYPE VALUE ---------------------------- ----------- ------- sga_max_size big integer 796M sga_target big integer 0 联系数据库管理员,提高SGA参数的配置。 ALTER SYSTEM SET sga_max_size=5G scope=spfile; ALTER SYSTEM SET sga_target=5G scope=spfile; 上述参数值仅为参考,若SGA的值配置过大,会导致源库资源使用过高,请咨询数据库管理员后,将其替换为合适的值 。 参数详细说明,可参见Oracle官网文档。 父主题: 产品咨询
  • 迁移到目标库后,生成的dsc_ora_ext这个Schema的作用是什么? dsc_ora_ext是UGO为了让目标库实现Oracle源库中某些特定的功能而编写的自定义Schema。 若源库为MySQL,则自定义Schema名称为dsc_mys_ext。 例如:针对Oracle的某些系统函数,UGO自定义实现相同功能的目标库函数,并在迁移时将Oracle的系统函数调用转换成UGO自定义的函数调用。 父主题: 产品咨询
  • 操作步骤 登录UGO控制台。 单击左侧导航栏“SQL语句转换”,进入转换文本页面。 选择源数据库与目标数据库的类型,输入待转换的SQL语句。 单击“转换”,在右侧查看转换后的SQL语句。 如果不支持转换,不支持的特性显示在右侧下方的不支持列表中。 图1 SQL语句转换 支持一键清除和复制SQL语句。 转换配置相关操作,可详见转换配置。 开启“比较模式”(默认关闭)。 在转换源SQL后,单击以比较模式查看源SQL和转换后的SQL。比较模式下,源SQL无法修改。 图2 文本比较模式
  • UGO自定义策略样例 示例1:授权用户创建评估项目 {"Version": "1.1","Statement": [{"Action": ["ugo:evaluationJob:create"] "Effect": "Allow",}]} 示例2:拒绝用户删除评估项目 拒绝策略需要同时配合其他策略使用,否则没有实际作用。用户被授予的策略中,一个授权项的作用如果同时存在Allow和Deny,则遵循Deny优先。 如果您给用户授予UGO FullAccess的系统策略,但不希望用户拥有UGO FullAccess中定义的删除评估项目,您可以创建一条拒绝删除云服务的自定义策略,然后同时将UGO FullAccess和拒绝策略授予用户,根据Deny优先原则,则用户可以对评估项目执行除了删除评估项目外的所有操作。拒绝策略示例如下: {"Version": "1.1","Statement": [{"Action": ["ugo:evaluationJob:delete"],"Effect": "Deny"}]}
  • DB2 for LUW To GaussDB配置项使用说明 问题描述 配置建议 建议值 从DB2 for LUW采集全特性表结构,验证成功率低,库差异大且无法全覆盖。 建议配置“表结构转换模式”解决该类问题。 只保留表的表名、列名、数据类型、约束、主键和分区信息。 影响:保留表名、列名、数据类型、约束、主键和分区,忽略外键、表空间、物理存储特性等。 DB2 for LUW中,BLOB数据类型最大可存储2GB数据,GaussDB V5R2中,BLOB数据类型最大可存储1GB数据。 建议配置“BLOB报错” 不显示报错信息。 DB2 for LUW中,CLOB数据类型最大可存储2GB数据,GaussDB V5R2中,CLOB数据类型最大可存储1GB数据。 建议配置“CLOB报错” 不显示报错信息。 GaussDB V5R2不支持GRAPHIC,用户可修改此配置将GRAPHIC转为字符串类型。 建议配置“GRAPHIC” 进行迁移,将该数据类型转换为NVARCHAR2。 GaussDB V5R2不支持DBCLOB,用户可修改此配置将DBCLOB转为支持的CLOB类型。 建议配置“DBCLOB” 进行迁移,将该数据类型转换为CLOB。 GaussDB V5R2不支持DECFLOAT,用户可以修改此配置将DECFLOAT转为DOUBLE PRECISION。 建议配置“DECFLOAT” 进行迁移,将该数据类型转换为DOUBLE PRECISION。 GaussDB V5R2不支持XML,用户可以修改此配置将XML转为GaussDB V5R2兼容的数据类型。 建议配置“XML” 进行迁移,将该数据类型转换为TEXT。 GaussDB V5R2的TABLESPACE语法和DB2 for LUW,可注释DB2 for LUW的TABLESPACE或使用对应的语法替代。 建议配置“TABLESPACE” 代替TABLESPACE。 如果用户不存在,GaussDB V5R2不支持使用AUTHORIZATION 创建schema。 建议配置“使用AUTHORIZATION创建schema” 注释AUTHORIZATION。 GaussDB V5R2支持序列中使用部分CACHE。 建议配置“序列中使用CACHE” 注释序列中的CACHE。 GaussDB V5R2不支持序列中使用order。 建议配置“序列中使用ORDER” 注释序列中的ORDER。 GaussDB V5R2不支持索引中使用RANDOM。 建议配置“索引中使用RANDOM” 注释索引中的RANDOM。 GaussDB V5R2不支持索引中使用CLUSTER。 建议配置“索引中使用CLUSTER” 注释索引中的CLUSTER。 GaussDB V5R2不支持表中使用LONG TABLESPACE。 建议配置“LONG TABLESPACE” 注释LONG tablespace。 GaussDB V5R2不支持表中使用ORGANIZE BY。 建议配置“ORGANIZE BY” 将ORGANIZE BY转换为ORIENTATION。 GaussDB V5R2创建视图不支持使用WITH CHECK OPTION。 建议配置“视图中使用WITH CHECK OPTION” 注释WITH CHECK OPTION。 GaussDB V5R2创建视图不支持使用ROW MOVEMENT。 建议配置“视图中使用ROW MOVEMENT” 注释ROW MOVEMENT。 GaussDB V5R2不支持使用DATA CAPTURE创建schema。 建议配置“使用DATA CAPTURE创建schema” 注释DATA CAPTURE。 GaussDB V5R2执行INSERT语句时不支持SELECT。 建议配置“INSERT语句包含SELECT” 迁移SELECT语句。 GaussDB V5R2执行UPDATE语句时不支持ORDER BY。 建议配置“UPDATE 语句中包含ORDER BY子句” 注释UPDATE语句中的ORDER BY子句。 GaussDB V5R2执行UPDATE语句时不支持OFFSET。 建议配置“UPDATE 语句中包含OFFSET” 注释UPDATE语句中的OFFSET。 GaussDB V5R2执行UPDATE语句时不支持FETCH。 建议配置“UPDATE语句中包含FETCH” 注释UPDATE语句中的FETCH。 GaussDB V5R2执行DELETE语句时不支持ORDER BY。 建议配置“DELETE 语句中包含ORDER BY子句” 注释DELETE语句中的ORDER BY子句。 GaussDB V5R2执行DELETE语句时不支持OFFSET。 建议配置“DELETE语句中包含OFFSET” 注释DELETE语句中的OFFSET。 GaussDB V5R2执行DELETE语句时不支持FETCH。 建议配置“DELETE语句中包含FETCH” 注释DELETE语句中的FETCH。 GaussDB V5R2执行INSERT语句时不支持INCLUDE。 建议配置“INSERT 操作中使用INCLUDE” 注释INSERT语句中的INCLUDE。 GaussDB V5R2执行DELETE语句时不支持INCLUDE。 建议配置“DELETE 操作中使用INCLUDE” 注释DELETE语句中的INCLUDE。 GaussDB V5R2执行UPDATE语句时不支持INCLUDE。 建议配置“UPDATE 操作中使用INCLUDE” 注释UPDATE语句中的INCLUDE。 GaussDB V5R2不支持在CREATE VIEW语句中使用QUERY OPTIMIZATION。 建议配置“CREATE VIEW语句中使用QUERY OPTIMIZATION” 注释ENABLE QUERY OPTIMIZATION。 GaussDB V5R2不支持为同义词添加备注。 建议配置“COMMENT” 注释整个语句。 将转换后的对象按照GaussDB V5R2的语法进行解析,确认转换是否正确。 建议配置“解析转换后SQL” 忽略解析。 GaussDB R2字符集大小与源数据库字符集大小不一致。 建议配置“源库字符集”、“目标库字符集”和“字符集不匹配”解决该类问题 调整CHAR(n)、CHARACTER(n)、VARCHAR。 父主题: 转换配置
  • Informix To GaussDB配置项使用说明 问题描述 配置建议 建议值 Informix的MONEY类型支持指定范围与精度,GaussDB的MONEY类型存储带有固定2位小数精度的货币金额,不支持指定精度。 建议配置“货币类型转换”解决该类问题。 根据MONEY数据类型范围与精度转换为GaussDB的NUMERIC类型。 影响:Informix的MONEY类型可以存储最多32个有效数字的定点数,MONEY(p,s):其中p默认为16,s默认为2,都省略默认为MONEY(16,2),根据指定的精度转换为GaussDB的NUMERIC类型。 Informix中,TEXT数据类型最大可存储2^31个字节数据,GaussDB 中,TEXT数据类型最大可存储1GB数据。 建议配置“文本类型转换”解决该类问题。 将TEXT数据类型转换为GaussDB的CLOB类型。 影响:Informix的TEXT类型最大存储 2^31 个字节的文本数据,GaussDB 3.1及之后的版本CLOB类型最大存储32TB数据。 父主题: 转换配置
  • Oracle To GaussDB配置项使用说明 问题描述 配置建议 建议值 从Oracle采集全特性表结构,验证成功率低,库差异大且无法全覆盖。 建议配置“表结构转换模式”解决该类问题 说明: 仅当源库为Oracle且目标库为GaussDB Primary/Standby-2.7 企业版时,可配置该特性。 只保留表的表名、列名、列约束、索引、主键信息。 影响: 保留表名、列名、列约束、唯一索引和主键,忽略外键、表空间、物理存储特性等。 保留LIST和RANGE分区,忽略HASH分区,interval、automatic自动分区,忽略二级分区,虚拟列分区等。 忽略特性相关的转换配置项的内容也将会忽略处理。 Oracle UNLOG属性的表,当数据库日志级别是FORCE LOGGING时还会记录日志。 但GaussDB指定了UNLOG后完全不会记录日志,造成数据无法恢复。 建议配置“NOLOGGING表”配置 如果确定不需要日志的话,选择“将NOLOGGING转换为UNLOGGED”。 影响:GaussDB V5不支持NOLOGGING表。此配置将移除NOLOGGING,并将NOLOGGING转换为UNLOGGED,转换后不影响性能。GAUSSDB UNLOGGED表完全不会记录日志。 Oracle创建对象,字段值默认大写,而GaussDB创建对象,字段值默认成小写。但引号中的字段值,创建的时候会保持不变。 建议配置“含有特殊字符的对象名称大小写转换”解决该类问题 如果对象名称中含有特殊字符,将该名称转换为小写字母。 从Oracle采集的对象内容中如果有使用了gauss保留的关键字,会导致失败。 建议配置“含有保留关键字符的对象名称大小写转换” 如果对象名称中含有保留关键字且为大写字母,将该名称转换为小写字母。 如果对象名称中含有保留关键字且混用大小写字母,该名称保持不变。 Oracle支持在存储过程内部生成Record类型,但GaussDB不支持在存储过程内部生成Record类型。 建议配置“Record类型”解决该类问题 Record类型将在存储过程和函数中创建和使用。 GaussDB V5R2分布式不支持Oracle中的PACKAGE语法。 建议配置“包名称”解决该类问题 将包名和存储过程名合并。 GaussDB不支持Oracle中的FOREIGN KEY约束。 建议配置“FOREIGN KEY约束”解决该类问题 注释FOREIGN KEY约束。 GaussDB不支持Oracle的CHARACTER_SET语法。 建议配置“CHARACTER_SET支持”解决该类问题 注释不支持语句。 GaussDB字符集大小与Oracle字符集大小不一致。 建议配置“字符集不匹配”解决该类问题(当使用sql语句转换功能时,需要同时配置“源库字符集”、“目标库字符集”) 调整CHAR(n), VARCHAR(n)和VARCHAR2(n)的大小。 GaussDB V5R1不支持Oracle中的CYCLE IN SEQUENCE语法。 建议配置“序列循环”解决该类问题 注释该语法,此配置值可用于GaussDB V5R2及之前的版本。GaussDB迁移脚本编译中,不会引发错误。 Oracle创建系统视图默认都为大写,而GaussDB默认为小写,如果有些带有引号的强制大写的场景,在使用时会有引用不到的问题。 建议配置“对象大小写,系统视图”解决该类问题 将对象名称设置为小写字母。 GaussDB V5R2不支持Oracle的授予表、类型、触发器、同义词、序列、存储过程等对象的创建权限。如果没有向相关对象提供授权,对象将创建失败。 建议配置“对象级权限”解决该类问题 迁移脚本,并提供schema级授权。 GaussDB在create table和create index语句中支持Oracle的表空间子句语法。但是,如果指定的表空间在GaussDB中不存在,则create table和create index语句执行失败。建议使用默认表空间。 建议配置“表空间(表空间映射高于此配置)”解决该类问题 注释表空间子句。 因权限不足,导致对象在目标库无法执行。 建议配置“用户连接”解决该类问题 将sysadmin设置为执行GaussDB脚本的用户。 GaussDB V5R1版本不支持Oracle存储过程中使用的FOR ALL语句。 建议配置“FOR ALL语法”解决该类问题 迁移脚本,将FOR ALL语法转换为FOR LOOP语法。 Oracle支持的MAXVALUE和MINVALUE分别为1027和-1026。如果输入的序列的MINVALUE / MAXVALUE超出范围(-9223372036854775808至9223372036854775807)。 建议配置“超出限制的序列值”解决该类问题 如果序列的MINVALUE / MAXVALUE超出了限制范围(-9223372036854775808至9223372036854775807),GaussDB主备版-2.0 企业版及之后版本替换为LARGE SEQUENCE,分布式和GaussDB主备版-1.4 企业版替换为边界值。 GaussDB不支持Oracle的DBMS_SCHEDULER.CREATE_DATABASE_DESTINATION特性语法。 建议配置“DBMS_SCHEDULER.CREATE_DATABASE_DESTINATION”解决该类问题 DBMS_SCHEDULER.CREATE_DATABASE_DESTINATION语法保持原样,不进行迁移,记录错误消息。 GaussDB不支持Oracle的READ ONLY关键字,迁移脚本编译失败。 建议配置“表只读子句”解决该类问题 注释alter table语句中的READ ONLY关键字。 GaussDB不支持Oracle的INSERT语句中使用的RECORD变量。 建议配置“INSERT语句中使用RECORD VARIABLE语法”解决该类问题 迁移脚本,INSERT语句中的RECORD VARIABLE将按列拆分。 GaussDB V5R1C20之前的版本都不支持Oracle的AUTONOMOUS TRANSACTION语法,也没有等价的语法。 建议配置“AUTONOMOUS TRANSACTION语法”解决该类问题 注释AUTONOMOUS TRANSACTION语法。此配置值用于GaussDB V5R1C20及之前版本,编译迁移脚本不会出现任何错误。 GaussDB版本不支持Oracle的FILE_TYPE。 建议配置“FILE_TYPE”解决该类问题 迁移脚本,将FILE_TYPE更改为NUMBER。 如果表名不带schema,会出现重名表,导致建表失败。 说明: GaussDB主备版版本不存在此问题。 建议配置“全局临时表名转换”解决该类问题 转换后的表名是由schema名和表名组成,两者之间采用分隔符隔开。 GaussDB V5R1C20及之前版本都不支持Oracle的SAVEPOINT语法。 建议配置“SAVEPOINT语法”解决该类问题 注释SAVEPOINT语法。此配置值用于GaussDB V5R1C20及之前版本,编译迁移脚本不会出现任何错误。 GaussDB V5R2不支持Oracle的系统权限,系统权限授予失败。 建议配置“系统权限”解决该类问题 注释整个SQL脚本。 GaussDB不支持Oracle的LONG数据类型,迁移脚本编译失败。 建议配置“long数据类型”解决该类问题 将LONG类型转换为TEXT数据类型。 GaussDB不支持Oracle的Sub分区。 建议配置“Sub分区”解决该类问题 迁移脚本,注释Sub分区。 GaussDB不支持LONG RAW数据类型。 建议配置“long raw数据类型”解决该类问题 将LONG RAW转换为BYTEA数据类型。 GaussDB支持FLOAT数据类型,该数据类型将被隐式转换为DOUBLE PRECISION。在Oracle中,FLOAT默认精度(最大精度)为126。在GaussDB中,FLOAT精度高于53,将引发错误,语句执行失败。 建议配置“float数据类型”解决该类问题 建议将FLOAT/FLOAT(n)转换为NUMBER。若要保持FLOAT类型的转换且精度大于53或者精度为空时,可选择将FLOAT/FLOAT(N)转换为FLOAT(53)选项。 GaussDB不支持Oracle的包中使用的REF CURSOR 建议配置“包中使用REF CURSOR”解决该类问题 迁移脚本,使用其他方式创建REF CURSOR。 GaussDB分布式部署不支持Oracle的LIST分区。 建议配置“LIST分区”解决该类问题 忽略LIST分区。 GaussDB不支持Oracle的将系统角色授予用户。 建议配置“系统角色”解决该类问题 注释整个授权语句。 GaussDB V5R1不支持Oracle存储过程和DML语句中使用的ROWNUM,GaussDB分布式不支持ROWNUM。 建议配置“ROWNUM”解决该类问题 转换脚本,并将ROWNUM转换为LIMIT。 GaussDB V5R2不支持Oracle的Hash分区。 建议配置“Hash分区”解决该类问题 注释Hash分区。 目标数据库是分布式部署,如果没有分布键,会执行失败。 建议配置“分布式环境(多数据节点)的唯一约束和索引”解决该类问题 如果唯一约束和唯一索引中不存在分布键,需添加分布键。 创建同义词的用户名称与对象owner名称不一致时,会有使用权限问题。 建议配置“同义词”解决该类问题 添加ALTER语句更改Owner详细信息。 GaussDB不支持Oracle的GNERATED AS IDENTITY语法。 建议配置“IDENTITY列”解决该类问题 将Oracle的IDENTITY列转换为序列号类型。 GaussDB V5R2版本不支持Oracle的包规范中定义的游标变量。 建议配置“游标变量”解决该类问题 迁移脚本,游标变量将在本地包体中创建。 GaussDB V5R1不支持Oracle的用户定义类型。 建议配置“用户定义类型”解决该类问题 当前版本不支持用户自定义类型,转换该数据类型。 GaussDB V5R1C20及之前的版本都不支持Oracle的BULK COLLECT语法。 建议配置“BULK COLLECT语法”解决该类问题 转换BULK COLLECT语法。此配置用于GaussDB V5 R1C20及之前版本。 如果GaussDB不支持Oracle的指定的SET_ATTRIBUTE,迁移将会执行失败。GaussDB支持的SET_ATTRIBUTE包括:START_DATE, REPEAT_INTERVAL, END_DATE, COMMENTS, PROGRAM_TYPE, PROGRAM_ACTION, NUMBER_OF_ARGUMENTS, SCHEDULE_NAME, JOB_TYPE, JOB_ACTION, JOB_CLASS, ENABLED, AUTO_DROP, CREDENTIAL_NAME, DESTINATION_NAME, PROGRAM_NAME, JOB_STYLE。 建议配置“DBMS_SCHEDULER.SET_ATTRIBUTE”解决该类问题 如果指定了不支持的SET ATTRIBUTES,注释DBMS_SCHEDULER.SET_ATTRIBUTE语法。 GaussDB不支持Oracle的REVERSE索引。 建议配置“索引语句中使用REVERSE关键字”解决该类问题 注释REVERSE关键字。 GaussDB V5R1以及GaussDB V5R2旧版本不支持Oracle的AUTHID子句。 建议配置“PL/SQL对象的AUTHID子句”解决该类问题 如果未指定AUTHID DEFINER/INVOKER,添加AUTHID DEFINER与Oracle配置相匹配。此配置适用于GaussDB V5R2旧版本,因为该版本默认与Oracle配置不匹。 GaussDB不支持NCLOB数据类型。 建议配置“nclob数据类型”解决该类问题 将NCLOB转换为TEXT数据类型。 GaussDB不支持XMLTYPE数据类型。 建议配置“XMLTYPE数据类型”解决该类问题 将XMLTYPE数据类型转换为JSON/TEST数据类型。 创建索引使用了gauss不支持的函数,创建索引将会报错。 建议配置“索引中使用函数”解决该类问题 注释采用不支持函数创建索引的语句。 GaussDB V5R1不支持Oracle的INTERVAL分区语法。 建议配置“表间隔分区”解决该类问题 注释INTERVAL分区语法。 GaussDB不支持Oracle的外部和全局用户。 建议配置“全局或外部用户”解决该类问题 注释整个创建用户的语句。 GaussDB不支持Oracle的MBRCOORDLIST数据类型。 建议配置“MDSYS.MBRCOORDLIST对象类型”解决该类问题 将MBRCOORDLIST对象类型转换为TEXT数据类型。 GaussDB不支持Oracle的BITMAP索引。 建议配置“bitmap索引”解决该类问题 创建BTREE索引,而不是BITMAP索引。 GaussDB不支持Oracle的指定创建全局临时表。 建议配置“全局临时表”解决该类问题 创建本地临时表。 GaussDB不支持Oracle的DEFAULT ON NULL子句。 建议配置“DEFAULT ON NULL子句”解决该类问题 注释ON NULL关键字。 Oracle中的CLOB最大可存储4GB数据,GaussDB支持CLOB数据类型,在GaussDB V5R2C10及之后主备版最大可存储32TB数据,其他版本最大可存储1GB数据。超出会报错。 建议配置“clob数据类型”解决该类问题 不转换CLOB数据类型。GaussDB支持CLOB数据类型。用户看到更新消息,Oracle中的CLOB最大可存储4GB数据,GaussDB支持CLOB数据类型,在GaussDB V5R2C10及之后主备版最大可存储32TB数据,其他版本最大可存储1GB数据。 GaussDB V5R2不支持Oracle的SQL PLUS命令。 建议配置“SQL PLUS”解决该类问题 注释SQL PLUS命令。 Oracle中,BLOB数据类型最大可存储4GB数据。GaussDB支持BLOB数据类型,在GaussDB V5R2C10及之后主备版最大可存储32TB数据,其他版本最大可存储1GB数据。如果表列数据超过限制,数据更改操作(INSERT/UPDATE)将失败并引发错误。 建议配置“支持blob数据类型”解决该类问题 不转换BLOB数据类型。GaussDB支持BLOB数据类型。用户获得更新消息Oracle中,BLOB最大可存储4GB数据,在GaussDB V5R2C10及之后主备版最大可存储32TB数据,其他版本最大可存储1GB数据。 GaussDB不支持Oracle的GEOMETRY数据类型。 建议配置“GEOMETRY对象类型”解决该类问题 将GEOMETRY类型转换为TEXT数据类型。 GaussDB只支持GREGORIAN日历,以及TO_DATE和TO_TIMESTAMP中两个参数。Oracle中,如果 TO_DATE函数中指定了除GREGORIAN日历外的第三个参数,迁移脚本将执行失败。 建议配置“GREGORIAN以外的日历类型”解决该类问题 如果指定了除GREGORIAN日历外的第三个参数,注释GREGORIAN日历。 GaussDB部分支持Oracle的物理视图刷新。 建议配置“物化视图中的REFRESH”解决该类问题 注释物理视图刷新。 GaussDB V5R1不支持Oracle的层次查询。 建议配置“层次查询”解决该类问题 迁移层次查询。 GaussDB不支持Oracle的SDO_GEOMETRY数据类型。 建议配置“SDO_GEOMETRY对象类型”解决该类问题 将SDO_GEOMETRY对象类型转换为TEXT数据类型。 GaussDB不支持Oracle的EDITIONING关键字。 建议配置“编辑视图”解决该类问题 注释视图语句中的EDITIONING关键字。 GaussDB不支持Oracle的alter table语句中的UNUSED关键。 建议配置“UNUSED关键字”解决该类问题 删除表中未使用的列。 GaussDB V5R2不支Oracle的schema与包同名。 建议配置“包名称”解决该类问题 将包名称使用双引号括起来,执行迁移。 Oracle使用的NUMBER类型如果没有小数位,例如:NUMBER(10),则可以采用优化方案。 建议配置“小数位数为零的数字数据类型”解决该类问题 如果NUMBER精度介于1和4之间,则被转换为SMALLINT类型。如果NUMBER精度介于5和9之间,则被转换为INT类型。如果NUMBER精度介于10和18之间,则被转换为BIGINT类型。 GaussDB不支持Oracle的SYS_OP_C2C函数。 建议配置“SYS_OP_C2C”解决该类问题 注释SYS_OP_C2C函数名称。 对于原生支持的对象,如果有部分语法上的兼容问题,需要进行验证。 建议配置“解析转换后SQL”解决该类问题 解析转换后的SQL。 GaussDB不支持Oracle的CREATE TABLE语句中使用MONITORING子句。 建议配置“MONITORING”解决该类问题 注释CREATE TABLE语句中的MONITORING子句。 GaussDB不支持表自动分区。 建议配置“表自动分区”解决该类问题 注释自动分区语句。 GaussDB的ctid只能部分支持Oralce的ROWID。 建议配置“ROWID表达式”解决该类问题 ROWID将转换为GaussDB的系统列ctid和tableoid。 GaussDB只能支持部分hint场景。 建议配置“Hint调优”解决该类问题 转换GaussDB支持的hint,不支持的子句给出错误提示信息。 GaussDB不支持分区表中使用NOLOGGING。 建议配置“分区表中使用NOLOGGING”解决该类问题 注释NOLOGGING。 GaussDB不支持generated column 建议配置“虚拟列为分区Key”解决该类问题 将分区脚本注释,把表转换为非分区表。 GaussDB部分旧版本对象调用权限为INVOKER 建议配置“PL/SQL对象的AUTHID子句”解决该类问题 GaussDB R2旧版本,未指定AUTHID DEFINER/INVOKER,添加AUTHID DEFINER与Oracle配置相匹配。 GaussDB R2最新版本,使用不添加AUTHID DEFINER的配置。 Oracle中,CLOB数据类型最大可存储4GB数据。GaussDB 支持CLOB数据类型,在GaussDB V5R2C10及之后主备版最大可存储32TB数据,其他版本最大可存储1GB数据。如果变量数据超过限制,进程将失败并引发错误。 建议配置“在函数中使用clob数据类型”解决该类问题 不转换CLOB数据类型,GaussDB 支持CLOB,但其存储有限。 GAUSSDB 存在不支持的部分any对象权限 建议配置“any对象授权”解决该类问题 根据目标数据库语法转换脚本。 分区键和唯一索引并存的表要求分区键必须出现在唯一索引中。 说明: 仅当源库为Oracle且目标库为GaussDB-1.4 企业版及之前版本时,可配置该特性。 具有唯一约束的表列分区 将分区列添加到唯一约束(主键和唯一键)中。 父主题: 转换配置
  • 场景描述 数据库和应用迁移 UGO(Database and Application Migration UGO,以下简称为UGO)支持将本地Oracle数据库的结构迁移至华为云云数据库 GaussDB实例。通过UGO评估任务与迁移任务,帮助用户提前识别迁移适配点,提升迁移效率,最大化降低用户的数据库迁移成本。 本实践案例主要介绍了通过UGO将本地Oracle-11g数据库结构迁移至华为云云数据库 GaussDB 分布式版-2.7 企业版的流程。当前仅支持使用公网网络进行连接。 图1 公网网络+SSL安全连接
  • 资源规划 类别 子类 规划 备注 VPC VPC名称 vpc-src-172 自定义,易理解可识别。 所属Region 测试Region 现网实际选择时建议选择和自己业务区最近的Region,减少网络时延。 可用区 可用区3 - 子网网段 172.16.0.0/16 子网选择时建议预留足够的网络资源。 子网名称 subnet-src-172 自定义,易理解可识别。 本地Oracle数据库 名称 orcl 自定义,易理解可识别。 规格 16vCPUs | 32GB - 数据库版本 11.2.0.1 - 数据库用户 ugo 可以自定义用户,但是迁移时最小权限为:CONNECT、SELECT_CATALOG_ROLE、ANY DICTIONARY GaussDB 实例名 Auto-ugo-gaussdbv5-tar-1 自定义,易理解可识别。 数据库版本 GaussDB 2.7企业版 - 实例类型 分布式版,1CN,3DN,3副本 本示例中为分布式实例。 存储类型 超高IO - 可用区 可用区3 本示例中选择了单可用区,实际建议选择多可用区,以提高实例的高可用性。 规格 通用性 2 vCPUs | 16GB 本示例中为测试实例,选择较小的测试规格,实际选择规格以业务诉求为准。 目标库名称 ugo 自定义,易理解可识别,但是需要确保兼容模式为Oracle模式。 UGO迁移任务 数据库评估任务名 Oracle-GaussDB 自定义。 对象迁移 Oracle-GaussDB 自定义。 源数据库引擎 Oracle-11g - 目标数据库引擎 GaussDB Distributed - 2.7 - 网络类型 公网网络 本示例中采用公网网络。 父主题: Oracle结构迁移到GaussDB
  • ELB权限 默认情况下,帐号管理员创建的IAM用户没有任何权限,需要将其加入用户组,并给用户组授予策略或角色,才能使得用户组中的用户获得对应的权限,这一过程称为授权。授权后,用户就可以基于被授予的权限对云服务进行操作。 ELB部署时通过物理区域划分,为项目级服务。授权时,“作用范围”需要选择“区域级项目”,然后在指定区域(如华北-北京1)对应的项目(cn-north-1)中设置相关权限,并且该策略仅对此项目生效,如果在“所有项目”中设置权限,则该权限在所有区域项目中都生效。访问ELB时,需要先切换至授权区域。 根据授权精细程度分为角色和策略。 角色:IAM最初提供的一种根据用户的工作职能定义权限的粗粒度授权机制。该机制以服务为粒度,提供有限的服务相关角色用于授权。由于华为云上各服务之间存在业务依赖关系,因此给用户授予角色时,可能需要一并授予依赖的其他角色,才能正确完成业务。角色并不能满足用户对精细化授权的要求,无法完全达到企业对权限最小化的安全管控要求。 策略:IAM最新提供的一种细粒度授权的能力,可以精确到具体服务的操作、资源以及请求条件等。基于策略的授权是一种更加灵活的授权方式,能够满足企业对权限最小化的安全管控要求。例如:针对ELB服务,帐号管理员能够控制IAM用户仅能对某一类云服务器资源进行指定的管理操作。多数细粒度策略以API接口为粒度进行权限拆分,ELB支持的API授权项请参见策略及授权项说明。 如表1所示,包括了ELB的所有系统权限。 表1 ELB系统权限 系统角色/策略名称 描述 类型 ELB FullAccess 操作权限:对弹性负载均衡服务的所有执行权限。 作用范围:项目级服务。 系统策略 ELB ReadOnlyAccess 操作权限:对弹性负载均衡服务的只读权限。 作用范围:项目级服务。 系统策略 ELB Administrator 操作权限:对弹性负载均衡服务的所有执行权限。拥有该权限的用户必须同时拥有Tenant Administrator、VPC Administrator、CES Administrator、Server Administrator、Tenant Guest权限。 作用范围:项目级服务。 说明: 如果帐号已经申请开通细粒度权限,设置ELB系统权限时请配置细粒度策略,不要配置RBAC策略。 系统角色 表2列出了ELB常用操作与系统权限的授权关系,您可以参照该表选择合适的系统权限。 表2 常用操作与系统策略的关系 操作 ELB FullAccess ELB ReadOnlyAccess ELB Administrator 创建负载均衡器 √ × √ 查询负载均衡器 √ √ √ 查询负载均衡器状态树 √ √ √ 查询负载均衡器列表 √ √ √ 更新负载均衡器 √ × √ 删除负载均衡器 √ × √ 创建监听器 √ × √ 查询监听器 √ √ √ 修改监听器 √ × √ 删除监听器 √ × √ 创建后端服务器组 √ × √ 查询后端服务器组 √ √ √ 修改后端服务器组 √ × √ 删除后端服务器组 √ × √ 创建后端服务器 √ × √ 查询后端服务器 √ √ √ 修改后端服务器 √ × √ 删除后端服务器 √ × √ 创建健康检查 √ × √ 查询健康检查 √ √ √ 修改健康检查 √ × √ 关闭健康检查 √ × √ 创建弹性公网IP × × √ 绑定弹性公网IP × × √ 查询弹性公网IP √ √ √ 解绑弹性公网IP × × √ 查看监控指标 × × √ 查看访问日志 × × √ 解绑弹性公网IP,还需要配置VPC服务的vpc:bandwidths:update和vpc:publicIps:update细粒度权限,具体详见《虚拟私有云API参考》。 查看监控指标,还需要配置CES服务的CES ReadOnlyAccess权限,具体详见《云监控服务API参考》。 查看访问日志,还需要配置LTS服务的LTS ReadOnlyAccess权限,具体详见《云日志服务API参考》。
  • 审计与日志 云审计服务(Cloud Trace Service,CTS),是华为云安全解决方案中专业的日志审计服务,提供对各种云资源操作记录的收集、存储和查询功能,可用于支撑安全分析、合规审计、资源跟踪和问题定位等常见应用场景。 用户开通云审计服务后,ELB可记录ELB的操作事件用于审计。 CTS的详细介绍和开通配置方法,请参见CTS快速入门。 ELB支持审计的操作事件请参见支持审计的关键操作。 查看审计日志请参见查看审计日志。 父主题: 安全
  • 什么是区域、可用区? 区域和可用区用来描述数据中心的位置,您可以在特定的区域、可用区创建资源。 区域(Region):从地理位置和网络时延维度划分,同一个Region内共享弹性计算、块存储、对象存储、VPC网络、弹性公网IP、镜像等公共服务。Region分为通用Region和专属Region,通用Region指面向公共租户提供通用云服务的Region;专属Region指只承载同一类业务或只面向特定租户提供业务服务的专用Region。 可用区(AZ,Availability Zone):一个AZ是一个或多个物理数据中心的集合,有独立的风火水电,AZ内逻辑上再将计算、网络、存储等资源划分成多个集群。一个Region中的多个AZ间通过高速光纤相连,以满足用户跨AZ构建高可用性系统的需求。 图1阐明了区域和可用区之间的关系。 图1 区域和可用区 目前,华为云已在全球多个地域开放云服务,您可以根据需求选择适合自己的区域和可用区。更多信息请参见华为云全球站点。
  • 如何选择区域? 选择区域时,您需要考虑以下几个因素: 地理位置 一般情况下,建议就近选择靠近您或者您的目标用户的区域,这样可以减少网络时延,提高访问速度。 在除中国大陆以外的亚太地区有业务的用户,可以选择“中国-香港”、“亚太-曼谷”或“亚太-新加坡”区域。 在非洲地区有业务的用户,可以选择“非洲-约翰内斯堡”区域。 在拉丁美洲地区有业务的用户,可以选择“拉美-圣地亚哥”区域。 “拉美-圣地亚哥”区域位于智利。 资源的价格 不同区域的资源价格可能有差异,请参见华为云服务价格详情。
  • 步骤1:准备数据 RES在公共OBS桶中提供了猜你喜欢的示例数据集,命名为“test-data”,因此,本文的操作示例使用此数据集进行构建。您需要执行如下操作,将数据集上传至您的OBS目录下,即准备工作中您创建的OBS目录。 单击下载样例数据,将“test-data”数据集下载至本地。 在本地,将“test-data”压缩包解压。例如,解压至本地“test-data”文件夹下。 在“test-data”文件夹下,将behavior.txt中的每条数据的actionTime字段的值修改到当前时间附近。将item.txt中的每条数据的publishTime字段的值修改到当前时间附近,将item.txt中的每条数据的expireTime字段的值修改成大于当前时间的值,避免数据因为过期被过滤掉。 查询当前时间戳,网址https://tool.lu/timestamp。 图1 查询当前时间戳 将behavior.txt中的每条数据的actionTime字段的值修改到当前时间附近。 图2 修改behavior.txt文件 将item.txt中的每条数据的publishTime字段的值修改到当前时间附近,将item.txt中的每条数据的expireTime字段的值修改成大于当前时间的值。 图3 修改item.txt文件 参考上传文件,将“test-data”文件夹下的所有文件上传至准备工作中您创建的OBS路径下。
  • 步骤1:准备数据 RES在公共OBS桶中提供了猜你喜欢的示例数据集,命名为“test-data”,因此,本文的操作示例使用此数据集进行构建。您需要执行如下操作,将数据集上传至您的OBS目录下,即准备工作中您创建的OBS目录。 单击下载样例数据,将“test-data”数据集下载至本地。 在本地,将“test-data”压缩包解压。例如,解压至本地“test-data”文件夹下。 在“test-data”文件夹下,将behavior.txt中的每条数据的actionTime字段的值修改到当前时间附近。将item.txt中的每条数据的publishTime字段的值修改到当前时间附近,将item.txt中的每条数据的expireTime字段的值修改成大于当前时间的值,避免数据因为过期被过滤掉。 查询当前时间戳,网址https://tool.lu/timestamp。 图1 查询当前时间戳 将behavior.txt中的每条数据的actionTime字段的值修改到当前时间附近。 图2 修改behavior.txt文件 将item.txt中的每条数据的publishTime字段的值修改到当前时间附近,将item.txt中的每条数据的expireTime字段的值修改成大于当前时间的值。 图3 修改item.txt文件 参考上传文件,将“test-data”文件夹下的所有文件上传至准备工作中您创建的OBS路径下。
  • 步骤5:获取预测结果 在线服务发布执行成功后,您可以进入在线服务,发起预测请求进行测试。 在“自定义场景”列表页面,单击目标场景名称,进入“自定义场景详情”页面。 单击“预测”页签,进入预测页面。 预测方式选择“代码”,在“预测代码”部分输入预测代码。单击“预测”,右侧出现排序后的预测结果。 由于此处是测试服务,为保证测试效果,此处选用测试数据中的用户ID进行预测,建议为user894。 图9 预测结果 预测代码 {"id":"user894","rec_num": 10} 预测结果 {"flow_id": "hot-flow","rec_num": 10,"candidates": [{"id": "item332","score": 1,"source": "hot-recall-DIREC"},{"id": "item709","score": 0.995,"source": "hot-recall-DIREC"},{"id": "item338","score": 0.99,"source": "hot-recall-DIREC"},{"id": "item960","score": 0.98499995,"source": "hot-recall-DIREC"},{"id": "item469","score": 0.97999996,"source": "hot-recall-DIREC"},{"id": "item236","score": 0.97499996,"source": "hot-recall-DIREC"}]}
  • 操作步骤 登录OBS管理控制台,创建OBS桶。具体请参见《对象存储服务控制台指南》中的创建桶章节。例如,创建名称为“obs-res”的OBS桶。 创建桶的区域需要与RES所在的区域一致。例如:当前RES在华北-北京一区域,在对象存储服务创建桶时,请选择华北-北京一。 推荐的OBS文件夹结构请参见推荐系统OBS文件夹规范。推荐您按照规范结构创建文件夹并上传至OBS桶中。OBS上传文件操作详请参见《对象存储服务控制台指南》中的上传文件章节。 您也通过OBS创建用于存放数据的文件夹,具体请参见《对象存储服务控制台指南》中的新建文件夹章节。
  • RES自定义策略样例 示例1:拒绝用户删除作业 拒绝策略需要同时配合其他策略使用,否则没有实际作用。用户被授予的策略中,一个授权项的作用如果同时存在Allow和Deny,则遵循Deny优先原则。 如果您给用户授予RES FullAccess的系统策略,但不希望用户拥有RES FullAccess中定义的删除作业权限,您可以创建一条拒绝删除作业的自定义策略,然后同时将RES FullAccess和拒绝策略授予用户,根据Deny优先原则,则用户可以对RES执行除了删除作业外的所有操作。拒绝策略示例如下: { "Version": "1.1", "Statement": [ { "Action": [ "res:job:delete" ], "Effect": "Deny" }} 示例2:多个授权项策略,允许查看作业列表和作业详情。 { "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "res:job:get" , "res:job:list" ] } ]}
  • 创建数据质量作业 创建数据质量操作步骤如下: 在“离线作业”下,单击“数据质量”页签,单击上方“创建”,进入“创建数据质量”页面。 在“创建数据质量”页面,单击“添加数据质量算子”选择“数据质量检测算子”。 填写基本信息并选择计算引擎。您可以根据实际情况填写“名称”、“场景”和“描述”信息。其中“场景”信息可选择您在全局配置页面创建的场景。 填写参数配置,参数说明请参见表1。 图1 创建数据质量检测作业 表1 数据质量检测算子参数说明 参数名称 说明 结果保存路径 数据质量检测日志的保存路径。包括错误数据输出及定位等。 全局特征信息文件 用户在使用数据质量检测算子之前,需要提供一份全局的特征信息文件,后续的特征工程、排序算法、在线服务都会用到该文件。全局特征信息文件需要和画像中字段一致,其中BASIC_INFO为画像表中定义的基本属性字段,TAGS为画像表中定义的带权重的标签,Context为上下文属性。该文件用于说明数据字段信息,以便推荐系统识别用户离线数据,通过特征工程将对应的数据写入到画像中,同时用于排序训练和线上推理服务中使用。 文件数据信息请参见全局特征信息文件数据格式。 当上传的数据中的特征有变化时,用户需要同步更新该文件。该文件为JSON格式,包含特征名、特征大类、特征值类型。 数据源 数据在OBS的存放路径。 “初始格式”:包括离线数据准备的用户属性表、物品属性表和用户操作行为表。 “通用格式”:通用格式数据为经过特征工程作业生成的数据。 (可选)单击页面右侧“删除”,可以删除该算子。 设置完成后,单击“确定”。数据质量检测作业一般需要运行一段时间,请您耐心等待。您可以前往数据质量作业列表,查看作业的基本情况。在作业列表中,刚创建的离线作业“状态”为“计算中”,当离线作业的“状态”变为“计算成功”时,表示作业运行结束,检测完的数据将使用于离线作业。当离线作业的“状态”变为“计算失败”时,您可以单击作业的名称,进入详情页面,通过查看日志等手段处理问题。
  • 删除工作空间 如果工作空间不再使用,您可以删除工作空间释放资源。具体操作如下: 登录RES管理控制台,在左侧导航栏单击进入“工作空间”页面。 单击目标工作空间“操作”列的“删除”。 单击“确定”完成删除。 默认生成的“default”工作空间不支持删除。 删除工作空间后会默认清理该工作空间下所有资源。删除操作无法恢复,请谨慎操作。 如果工作空间绑定了企业项目,在删除工作空间时,对应的企业项目不会被删除或修改。
  • 创建工作空间 登录RES管理控制台。 您可以通过两种方式创建工作空间,进入“创建工作空间”页面,填写工作空间参数信息。详请参见表1。 在左侧导航栏“当前工作空间”下拉框中选择“创建工作空间”。 图1 创建工作空间 在左侧导航栏单击进入“工作空间”页面。单击“创建”。 表1 参数说明 参数 说明 名称 工作空间名称。例如,工作空间workspace1。 名称不能为空。 名称不超过64个字符,只能由中文、英文字母、数字、下划线、中划线组成,且不能使用任何大小写形式的“default”。 描述 工作空间描述。例如,我的第一个工作空间。 描述不超过256个字符。 企业项目 如果您未开通企业项目,则不会有此参数。 如果您开通了企业项目,可以从下拉选项选择企业项目,并确保该项目处于“已启用”状态。如果您无可选企业项目,则可以通过单击右侧“新建企业项目”进行创建。具体操作请参见创建企业项目。 单击“确定”,完成RES工作空间的创建。 您可以在工作空间列表页面查看创建的工作空间,当显示为“状态正常”时,该工作空间可正常使用。也可以左侧导航栏“当前工作空间”下拉框中选择您需要使用的工作空间。
  • 示例 { "user_features":[ { "feature_name":"provinceId", "feature_type":"BASIC_INFO", "feature_value_type":"string" }, { "feature_name":"salary", "feature_type":"BASIC_INFO", "feature_value_type":"numerical" }, { "feature_name":"hobbies", "feature_type":"BASIC_INFO", "feature_value_type":"strArray" }, { "feature_name":"user_tags", "feature_type":"TAGS", "feature_value_type":"map" }, { "feature_name":"payment_type", "feature_type":"CONTEXT", "feature_value_type":"string" } ], "item_features":[ { "feature_name":"product_name", "feature_type":"BASIC_INFO", "feature_value_type":"string" }, { "feature_name":"order_price", "feature_type":"BASIC_INFO", "feature_value_type":"numerical" }, { "feature_name":"categories", "feature_type":"BASIC_INFO", "feature_value_type":"strArray" }, { "feature_name":"item_tags", "feature_type":"TAGS", "feature_value_type":"map" } ]}
  • 删除离线作业 您可以对“计算成功”、“计算失败”等状态的作业进行删除,“启动中”、“计算中”状态的作业不支持删除操作。 登录RES管理控制台。在左侧菜单栏中选择“离线作业”下的目标推荐作业,进入作业列表。 在作业列表页面,您可以单击目标作业“操作”列的“删除”。 在删除页面,您可以直接单击“是”只删除该作业。也可以勾选下方的“同时删除作业产生的CloudTable数据”,选择该作业对应的数据进行离线删除。 图1 删除作业 离线作业删除后,将不可恢复,请谨慎操作。
  • 操作步骤 登录RES管理控制台,在左侧导航栏选择进入“在线服务”页面。 在页面上方单击“创建”进入“创建在线服务”,在页面填写相关参数。 填写基本信息并选择服务类型。您可以根据实际情况填写“名称”、“场景”和“描述”信息。其中“场景”信息可选择您在全局配置页面创建的场景。 图1 基本信息 根据业务需求选择服务类型。包括“推荐引擎”、“排序”和“文本标签”。 单击“添加在线流程”,并进行命名,您最多可以部署5个在线流程。根据选择的服务类型配置在线流程,包括融合、过滤、排序和模型及配置等关键信息。具体参数信息参见表1。服务类型选择推荐引擎。 图2 创建在线服务 表1 创建在线服务参数说明 参数名称 子参数 说明 融合 “推荐结果设置” “添加推荐候选集”(选择离线或近线任务所生成的推荐候选集进行排序) 任务别名和UUID:单击操作列表的“选择”添加离线或近线的任务名称和候选集ID。 优先级:优先级高的推荐结果将确保展示在优先级低的之前。 同优先级数据占比:优先级相同的推荐候选集,该占比展示推荐数量,同优先级下的数据占比之和需要等于100%。 “添加在线候选集”(根据设置的参数在线进行召回,必须添加全局特征信息文件才可设置参数) 任务别名和UUID:分别默认为“在线候选集召回”和“online-recall”,无需改动。 优先级、同优先级数据占比:同添加推荐候选集。 设置参数:单击操作列的“设置参数”进行召回策略参数的配置。根据业务需求选择召回类型为物品或者用户,配置在线召回特征。在线召回的特征属性来自于公共配置的全局特征信息文件。 可单击“添加推荐候选集、添加在线候选集”配置多个候选集,作为当前在线流程的排序候选集。 说明: 在线候选集的延迟较推荐候选集较高,如无特殊需求,建议选择推荐候选集。 容错 容错用于数据请求异常时的固定人工输出召回集。需要在离线作业创建召回策略进行人工策略的计算。单击“选择”获取人工导入策略的任务别名和UUID。 离线过滤 过滤 过滤数据来源于过滤规则产生的候选集,单击“选择”获取过滤的任务别名和UUID。 在线过滤 【去重】物品属性 属性名从画像算子生成,如“product_color”,则对产品颜色相同的物品进行去重。 【去重】忽略长度 截断物品ID末尾指定长度后的字符串进行去重,如指定长度为2,则SKU_A1234和SKU_A1244只会保留其中一个。 属性过滤规则 指定定制化用户属性以及物品属性过滤规则,属性过滤规则用于过滤最终用户的推荐结果。例如,对于一线城市的用户过滤敏感信息物品,使之不进入候选集。单击增加属性过滤规则。 用户属性:指定在用户属性中需要过滤的字段,包含属性名和属性值。来源于画像数据,即特征工程中初始用户画像-物品画像-标准宽表生成算子作业输出的数据,用户属性来自于公共配置的全局特征信息文件。如过滤籍贯是广东且性别为男性的用户。 物品属性:指定在物品属性中需要过滤的字段,包含属性名和属性值。来源于画像数据,即特征工程中初始用户画像-物品画像-标准宽表生成算子作业输出的数据,物品属性的名称来自于公共配置的全局特征信息文件。如过滤产品颜色为红色且产品品牌为华为的物品。 排序方式 “点击率预估” 特征工程:排序数据来源于排序算子作业产生的候选集。单击“选择”获取排序策略的任务别名和UUID。 模型文件路径:排序策略生成的模型存储路径。 “属性权重” 属性权重:输入属性,权重默认1.0 。也可单击“增加属性权重”。 公共配置 “全局特征信息文件” 为json格式文件。指定在去重过滤即属性过滤中物品属性和用户属性的特征信息文件,如物品属性需要“feature_name”、“feature_type”、“feature_value_type”字段来表示特征名,特征类型以及特征值类型。需预先存储在OBS中。 “画像” 画像为特征工程中初始用户画像-物品画像-标准宽表生成算子的结果。且此画像会用于去重过滤、属性过滤以及排序的计算中。单击“选择”获取特征工程作业产生的UUID。 模型及配置 - 设置模型名称、模型版本、计算节点规格、计算节点个数和分流(%)。 模型名称和模型版本选择调用API接口的模型名称和模型版本。“计算节点规格”默认2核|8GiB,“计算节点个数”默认为2,“分流”之和必须是100%。 完成该项配置后,单击“下一步”进入规格确认页面,核对无误后,单击“完成”。当您通过在线服务列表查看在线服务的状态由“初始化”、“部署中”变更为“运行中”时即完成在线服务的部署。在线服务一般需要运行一段时间,根据您的数据量和资源不同,运行时间将耗时几分钟到几十分钟不等,请您耐心等待。
  • 排序策略 排序策略是用于对召回策略生成的候选集进行二次排序。如果使用排序策略,需在特征工程中提交排序样本预处理,创建完成后才可以正常使用排序策略。 各个策略的详细参数设置和输入输出请单击下方链接查看。 逻辑斯蒂回归-LR 因子分解机-FM 域感知因子分解机-FFM 深度网络因子分解机-DeepFM 核函数特征交互神经网络-PIN 在“创建组合作业”页面,配置完过滤规则参数之后,进入“排序策略”页签,如图3所示。用户可以根据业务需要在“添加排序策略”下拉框中选择一个合适的排序策略,请参见排序策略对所选排序策略进行参数设置。 图3 排序策略 (可选)在目标排序策略,单击“删除”,可以删除对应排序策略。 具体策略的参数说明可单击上方策略名称进行查看,策略设置完成之后,单击“下一步”进入“预览设置”页面。
共100000条