华为云用户手册

  • 参数 表1 数据库连接参数 参数 描述 url gsjdbc4.jar数据库连接描述符。格式如下: jdbc:postgresql:database jdbc:postgresql://host/database jdbc:postgresql://host:port/database jdbc:postgresql://host:port[,host:port][...]/database 说明: 使用gsjdbc200.jar时,将“jdbc:postgresql”修改为“jdbc:gaussdb” database为要连接的数据库名称。 host为数据库服务器名称或IP地址,当集群绑定弹性负载均衡(ELB)时,应设置为ELB的IP地址。 连接 GaussDB (DWS)的机器与GaussDB(DWS)不在同一网段时,host指定的IP地址应为Manager界面上所设的mppdb.coo.cooListenIp2(应用访问IP)的取值。 由于安全原因,数据库CN禁止集群内部其他节点无认证接入。如果要在集群内部访问CN,请将JDBC程序部署在CN所在机器,host使用"127.0.0.1"。否则可能会出现“FATAL: Forbid remote connection with trust method!”错误。 建议业务系统单独部署在集群外部,否则可能会影响数据库运行性能。 port为数据库服务器端口。缺省情况下,会尝试连接到localhost的8000端口的database。 支持多ip端口配置形式,jdbc自动实现了负载均衡,多ip端口配置形式是采取随机访问+failover的方式,这个过程系统会自动忽略不可达IP。 以","隔开,例如jdbc:postgresql://10.10.0.13:8000,10.10.0.14:8000/database 使用JDBC连接集群时集群链接地址只支持指定jdbc连接参数,不支持增加变量参数。 info 数据库连接属性。常用的属性如下: user:String类型。表示创建连接的数据库用户。 password:String类型。表示数据库用户的密码。 ssl:Boolean类型。表示是否使用SSL连接。 loggerLevel:string类型。为LogStream或LogWriter设置记录进DriverManager当前值的日志信息量。目前支持"OFF"、"DEBUG"和"TRACE"。 值为"DEBUG"时,表示只打印DEBUG级别以上的日志,将记录非常少的信息。值等于TRACE时,表示打印DEBUG和TRACE级别的日志,将产生详细的日志信息。默认值为OFF,表示不打印日志。 prepareThreshold:integer类型。用于确定在转换为服务器端的预备语句之前,要求执行方法PreparedStatement的次数。缺省值是5。 batchMode : boolean类型,用于确定是否使用batch模式连接。 fetchsize : integer类型,用于设置数据库链接所创建statement的默认fetchsize。 ApplicationName:string类型。应用名称,在不做设置时,缺省值为PostgreSQL JDBC Driver。 allowReadOnly:boolean类型,用于设置connection是否允许设置readonly模式,默认为false,若该参数不被设置为true,则执行connection.setReadOnly不生效。 blobMode:string类型,用于设置setBinaryStream方法为不同的数据类型赋值,设置为on时表示为blob数据类型赋值,设置为off时表示为bytea数据类型赋值,默认为on。 connectionExtraInfo:Boolean类型。表示驱动是否上报当前驱动的部署路径、进程属主用户到数据库。 说明: 取值范围:true或false,默认值为true。设置connectionExtraInfo为true,JDBC驱动会将当前驱动的部署路径、进程属主用户上报到数据库中,记录在connection_info参数(参见connection_info)里;同时可以在PG_STAT_ACTIVITY和PGXC_STAT_ACTIVITY中查询到。 user 数据库用户。 password 数据库用户的密码。
  • 示例 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 //以下用例以gsjdbc4.jar为例,如果要使用gsjdbc200.jar,请替换驱动类名(将代码中的“org.postgresql”替换成“com.huawei.gauss200.jdbc”)与连接URL串前缀(将“jdbc:postgresql”替换为“jdbc:gaussdb”)。 //以下代码将获取数据库连接操作封装为一个接口,可通过给定用户名和密码来连接数据库。 public static Connection GetConnection(String username, String passwd) { //驱动类。 String driver = "org.postgresql.Driver"; //数据库连接描述符。 String sourceURL = "jdbc:postgresql://10.10.0.13:8000/postgres?currentSchema=test"; Connection conn = null; try { //加载驱动。 Class.forName(driver); } catch (ClassNotFoundException e ){ e.printStackTrace(); return null; } try { //创建连接。 conn = DriverManager.getConnection(sourceURL, username, passwd); System.out.println("Connection succeed!"); } catch (SQLException e) { e.printStackTrace(); return null; } return conn; }
  • enable_gtm_free 参数说明:大并发场景下同一时刻存在活跃事务较多,GTM下发的快照变大且快照请求变多的情况下,瓶颈卡在GTM与CN通讯的网络上。为消除该瓶颈,引入GTM-FREE模式。取消CN和GTM的交互,取消CN下发GTM获取的事务信息给DN。CN只向各个DN发送query,各个DN由本地产生快照及xid等信息,开启该参数支持分布式事务读最终一致性,即分布式事务只有写外部一致性,不具有读外部一致性。 对于要求强一致性读的OLTP场景或OLAP场景,建议不要开启该参数。 参数类型:POSTMASTER 取值范围:布尔型 on表示开启GTM-FREE模式,集群状态为读最终一致性。 off表示非GTM-FREE模式。 默认值:off GTM-Free模式可以通过enable_gtm_free = on或 gtm_option = gtm-free的任一方法开启。 当enable_gtm_free=on时,gtm_option参数不生效。
  • transaction_deferrable 参数说明:指定是否允许一个只读串行事务延迟执行,使其不会执行失败。该参数设置为on时,当一个只读事务发现读取的元组正在被其他事务修改,则延迟该只读事务直到其他事务修改完成。目前,GaussDB(DWS)暂时未用到这个参数。与该参数类似的还有一个default_transaction_deferrable,设置它来指定一个事务是否允许延迟。 参数类型:USERSET 取值范围:布尔型 on表示允许执行。 off表示不允许执行。 默认值:off
  • transaction_isolation 参数说明:设置当前事务的隔离级别。 参数类型:USERSET 取值范围: read committed:读已提交隔离级别,只能读到已经提交的数据,而不会读到未提交的数据。这是缺省值。 read uncommitted:读未提交隔离级别,GaussDB(DWS)不支持read uncommitted,如果设置了read uncommitted,实际上使用的是read committed。 repeatable read:可重复读隔离级别,仅仅能看到事务开始之前提交的数据,不能看到未提交的数据,以及在事务执行期间由其它并发事务提交的修改。 serializable:事务可序列化,GaussDB(DWS)不支持SERIALIZABLE,如果设置了serializable,实际上使用的是repeatable read。 默认值:read committed
  • 常见问题处理 Server common name "xxxx" does not match host name "xxxxx" 此问题的原因是使用了SSL加密的“verify-full”选项,这时驱动程序会验证证书中的主机名与实际部署数据库的主机名是否一致。碰到此问题可以使用“verify-ca”选项,不再校验主机名;或者重新生成一套与数据库所在主机名相同的CA证书。 connect to server failed: no such file or directory 此问题可能的原因: 配置了错误的/不可达的数据库地址,或者端口 请检查数据源配置中的Servername及Port配置项。 服务器监听不正确 如果确认Servername及Port配置正确,请根据“操作步骤”中数据库服务器的相关配置,确保数据库监听了合适的网卡及端口。 防火墙及网闸设备 请确认防火墙设置,将数据库的通信端口添加到可信端口中。 如果有网闸设备,请确认相关的设置。 在指定的DSN中,驱动程序和应用程序之间的体系结构不匹配 此问题可能的原因:在64位程序中使用了32位驱动,或者相反。 C:\Windows\SysWOW64\odbcad32.exe:这是32位ODBC驱动管理器。 C:\Windows\System32\odbcad32.exe:这是64位ODBC驱动管理器。 The password-stored method is not supported. 此问题可能原因: 数据源中未配置sslmode配置项,请调整此项至allow或以上级别,允许SSL连接,此选项的更多说明,请见表1。 authentication method 10 not supported. 使用开源客户端碰到此问题,可能原因: 数据库中存储的口令校验只存储了SHA256格式哈希,而开源客户端只识别MD5校验,双方校验方法不匹配报错。 数据库并不存储用户口令,只存储用户口令的哈希码。 早期版本(V100R002C80SPC300之前的版本)的数据库只存储了SHA256格式的哈希,并未存储MD5的哈希,所以无法使用MD5做用户口令校验。 新版本(V100R002C80SPC300及之后版本)的数据库当用户更新用户口令或者新建用户时,会同时存储两种格式的哈希码,这时将兼容开源的认证协议。 但是当老版本升级到新版本时,由于哈希的不可逆性,所以数据库无法还原用户口令,进而生成新格式的哈希,所以仍然只保留了SHA256格式的哈希,导致仍然无法使用MD5做口令认证。 要解决该问题,参见以下操作: 将数据库参数password_encryption_type修改为1,修改方法参见修改数据库参数。 新建一个数据库用户用于连接,或者重置准备使用的数据库用户的密码。 如果您使用的是管理员账号,参见重置密码。 如果是普通用户,可以先通过其他客户端工具(例如Data Studio)连接数据库后,使用ALTER USER语句来修改密码。 再尝试连接数据库。 unsupported frontend protocol 3.51: server supports 1.0 to 3.0 目标数据库版本过低,或者目标数据库为开源数据库。请使用对应版本的数据库驱动连接目标数据库。 FATAL: GSS authentication method is not allowed because XXXX user password is not disabled. 或:GSSAPI authentication not supported. 目标CN的pg_hba.conf里配置了当前客户端IP使用“gss”方式来做认证,该认证算法不支持用作客户端的身份认证,请修改到“sha256”后再试。 同时请注意,数据库当前不支持在集群内跨节点连接数据库,如果是在集群内跨节点连接CN出现此问题,请将业务程序调整到集群外后重试。
  • 选择分区方案 当表中的数据量很大时,应当对表进行分区,一般需要遵循以下原则: 【建议】使用具有明显区间性的字段进行分区,比如日期、区域等字段上建立分区。 【建议】分区名称应当体现分区的数据特征。例如,关键字+区间特征。 【建议】将分区上边界的分区值定义为MAXVALUE,以防止可能出现的数据溢出。 典型的分区表定义如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 CREATE TABLE staffS_p1 ( staff_ID NUMBER(6) not null, FIRST_NAME VARCHAR2(20), LAST_NAME VARCHAR2(25), EMAIL VARCHAR2(25), PHONE_NUMBER VARCHAR2(20), HIRE_DATE DATE, employment_ID VARCHAR2(10), SALARY NUMBER(8,2), COMMISSION_PCT NUMBER(4,2), MANAGER_ID NUMBER(6), section_ID NUMBER(4) ) PARTITION BY RANGE (HIRE_DATE) ( PARTITION HIRE_19950501 VALUES LESS THAN ('1995-05-01 00:00:00'), PARTITION HIRE_19950502 VALUES LESS THAN ('1995-05-02 00:00:00'), PARTITION HIRE_maxvalue VALUES LESS THAN (MAXVALUE) );
  • 选择分布键 Hash表的分布键选取至关重要,如果分布键选择不当,可能会导致数据倾斜,从而导致查询时,I/O负载集中在部分DN上,影响整体查询性能。因此,在确定Hash表的分布策略之后,需要对表数据进行倾斜性检查,以确保数据的均匀分布。分布键的选择一般需要遵循以下原则: 【建议】选作分布键的字段取值应该比较离散,以便数据能在各个DN上均匀分布。当单个字段无法满足离散条件时,可以考虑使用多个字段一起作为分布键。一般情况下,可以考虑选择表的主键作为分布键。例如,在人员信息表中选择证件号码作为分布键。 【建议】在满足第一条原则的情况下,尽量不要选取在查询中存在常量过滤条件的字段作为分布键。例如,在表dwcjk相关的查询中,字段zqdh存在常量过滤条件“zqdh='000001'”,那么就应当尽量不选择zqdh字段作为分布键。 【建议】在满足前两条原则的情况,尽量选择查询中的关联条件为分布键。当关联条件作为分布键时,Join任务的相关数据都分布在DN本地,将极大减少DN之间的数据流动代价。
  • 选择分布方案 【建议】表的分布方式的选择一般遵循以下原则: 表2 表的分布方式及使用场景 分布方式 描述 适用场景 Hash 表数据通过Hash方式散列到集群中的所有DN上。 数据量较大的事实表。 Replication 集群中每一个DN都有一份全量表数据。 维度表、数据量较小的事实表。 Roundrobin 表的每一行被轮番地发送给各个DN,因此数据会被均匀地分布在各个DN中。 数据量较大的事实表,且使用Hash分布时找不到合适的分布列。
  • 连接类型介绍 通过SQL完成各种复杂的查询,多表之间的连接是必不可少的。连接分为:内连接和外连接两大类,每大类中还可进行细分。 内连接:标准内连接(INNER JOIN),交叉连接(CROSS JOIN)和自然连接(NATURAL JOIN)。 外连接:左外连接(LEFT OUTER JOIN),右外连接(RIGHT OUTER JOIN)和全外连接(FULL JOIN)。 为了能更好的说明各种连接之间的区别,下面通过具体示例进行详细的阐述。 创建示例表student和math_score,并插入数据,设置enable_fast_query_shipping为off(默认为on)即查询优化器使用分布式框架;参数explain_perf_mode为pretty(默认值为pretty)指定explain的显示格式。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 CREATE TABLE student( id INTEGER, name varchar(50) ); CREATE TABLE math_score( id INTEGER, score INTEGER ); INSERT INTO student VALUES(1, 'Tom'); INSERT INTO student VALUES(2, 'Lily'); INSERT INTO student VALUES(3, 'Tina'); INSERT INTO student VALUES(4, 'Perry'); INSERT INTO math_score VALUES(1, 80); INSERT INTO math_score VALUES(2, 75); INSERT INTO math_score VALUES(4, 95); INSERT INTO math_score VALUES(6, NULL); SET enable_fast_query_shipping = off; SET explain_perf_mode = pretty;
  • 多表查询中on条件和where条件的区别 从上面各种连接语法中可见,除自然连接和交叉连接外,其他都需要有on条件(using在查询解析过程中会被转为on条件)来限制两表连接的结果。通常在查询的语句中也都会有where条件限制查询结果。这里说的on连接条件和where过滤条件是指不含可以下推到表上的过滤条件。on和where的区别是: on条件是两表连接的约束条件。 where是对两表连接后产生的结果集再次进行过滤。 简单总结就是:on条件优先于where条件,在两表进行连接时被应用;生成两表连接结果集后,再应用where条件。
  • 操作场景 动态扩展变量由插件引入,可以在后续的规则计算中被引用到,该变量不能如事件变量那样被入库,只能在每一次请求处理时生成,然后参与后面规则的计算(被引用才可以参与到对应的计算中,不引用则不会参与规则计算)。 动态扩展变量的主要目的就是解决客户自己外部引入的一些计算量,而这些计算量平台无法提供这些变量,如客户要查询自己的私有平台的redis集群的结果、或者通过http请求查询一些量等,通过插件就可以自己编码获取外部平台的结果,将查询的结果转化成动态扩展变量,可以在后续的规则计算中引用个,或者直接输出到业务后端也是可以的。
  • 准备数据 企业A的实时业务不需要准备数据,在发起查询时通过参数传递需要查询的用户id。 表1 企业B用户画像数据 字段名称 字段类型 描述 id string hash过后的手机号字符串 f0-f4 float 用户数据画像特征 bigdata_all.csv id,f0,f1,f2,f3,f4 5feceb66ffc86f38d952786c6d696c79c2dbc239dd4e91b46729d73a27fb57e9,-0.246852445,-1.761531756,-2.840375975,-0.562750693,-2.23499737 6b86b273ff34fce19d6b804eff5a3f5747ada4eaa22f1d49c01e52ddb7875b4b,-1.216062821,-1.093614452,-1.632396806,0.887601314,-4.40930101 4e07408562bedb8b60ce05c1decfe3ad16b72230967de01f640b7e4729b49fce,-0.150047899,-1.323266508,3.01679156,1.728583156,0.656158732 4b227777d4dd1fc61c6f884f48641d02b4d121d3fd328cb08b5531fcacdabf8a,-0.333871414,-1.21968931,-0.082894791,0.020390259,-0.076884947 ef2d127de37b942baad06145e54b0c619a1f22327b2ebbcfbec78f5564afe39d,-2.438861166,0.111880807,-3.51428545,1.123004835,0.228893969 e7f6c011776e8db7cd330b54174fd76f7d0216b612387a5ffcfb81e6f0919683,-2.759963795,0.405262468,1.264947591,1.027350049,1.293868423 7902699be42c8a8e46fbbb4501726517e86b22c56a189f7625a6da49081b2451,0.189352371,-0.607297495,-0.808339321,2.048455567,1.303872778 2c624232cdd221771294dfbb310aca000a0df6ac8b66b696d90ef06fdefb64a3,0.390064223,0.664175034,3.20228741,0.380574513,0.017733811 19581e27de7ced00ff1ce50b2047e7a567c76b1cbaebabe5ef03f7c3017bb5b7,0.379250902,1.962293246,0.066277661,3.083228267,1.952626328 4a44dc15364204a80fe80e9039455cc1608281820fe2b24f1e5233ade6af1dd5,-0.070919538,-2.219653517,1.461645551,1.66185096,0.778770954 4fc82b26aecb47d2868c4efbe3581732a3e7cbcc6c2efb32062c08170a05eeb8,-0.771151327,-1.184821181,-0.674077615,-0.379858223,0.158957184 6b51d431df5d7f141cbececcf79edf3dd861c3b4069f0b11661a3eefacbba918,-0.738091802,-1.474822882,2.93475295,-3.763763721,-1.817301398 3fdba35f04dc8c462986c992bcf875546257113072a909c162f7e470e581e278,-0.483250226,0.616586578,3.001851708,2.407914633,0.856369412 8527a891e224136950ff32ca212b45bc93f69fbb801c3b1ebedac52775f99e61,-0.789268594,1.071733834,3.763254446,-3.760298263,0.49776472 e629fa6598d732768f7c726b4b621285f9c3b85303900aa912017db7617d8bdb,-0.372531118,1.559382514,2.403559204,-0.041093457,0.169341125 b17ef6d19c7a5b1ee83b907c595526dcb1eb06db8227d650d5dda0a9f4ce8cd9,-2.773477116,-1.137653133,-1.50133841,0.82842642,-1.25476711 4523540f1504cd17100c4835e85b7eefd49911580f8efff0599a8f283be6b9e3,-1.542814756,1.019110477,1.395515599,0.539956076,0.100325065 4ec9599fc203d176a301536c2e091a19bc852759b255bd6818810a42c5fed14a,0.024227451,-1.087235302,3.67470964,-2.420729037,-3.132456573 父主题: 外部数据共享
  • 评估型横向联邦作业流程 基于横向联邦作业的训练结果,可以进一步评估横向联邦模型,将训练好的模型用于预测。 选择对应训练型作业的“历史作业”按钮,获取最新作业的模型结果文件路径。 图1 查看模型结果文件的保存位置 前往工作节点上步骤1展示的路径,下载模型文件。由于Logistic Regression模型本质上还是线性模型,因此模型文件result_10为该线性模型的系数加上偏置项。 图2 查看模型结果文件 本地利用测试集评估模型。可以采用如下脚本,会打印出模型在测试集上的准确率和AUC两个指标。 图3 本地评估模型的Python脚本 父主题: 测试步骤
  • 场景描述 现有企业A和企业B达成了一项数据共享合作协议,企业B允许企业A根据用户id查询企业B的数据,辅助企业A的实时分析业务。而企业A不想暴露给企业B自己查询的用户id,因为查询该用户的信息隐含着“该用户是企业A的客户”的信息,存在用户隐私泄露的风险。 企业A和企业B可以使用 TICS 服务的实时隐匿查询功能,即能满足实时业务高效低延迟的业务需求,又能避免暴露企业A想要查询哪个用户的隐私安全风险。 父主题: 外部数据共享
  • 执行实时隐匿查询作业 企业A在发起实时隐匿查询前需要先执行数据初始化。 待实时预测作业初始化完成后,企业A可以通过页面单击“执行”试用发起查询。 例如查询id为“19581e27de7ced00ff1ce50b2047e7a567c76b1cbaebabe5ef03f7c3017bb5b7”这样的一条数据,查询结果中即会返回企业A所选择的企业B的数据字段。 同时企业A的业务系统后台也可以通过API调用的方式调用企业A计算节点的接口发起实时隐匿查询,更好地服务生产业务。 父主题: 外部数据共享
  • 训练型横向联邦作业流程 联邦学习分为横向联邦及纵向联邦。相同行业间,特征一致,数据主体不同,采用横向联邦。不同行业间,数据主体一致,特征不同,采用纵向联邦。xx医院的应用场景为不同主体的相同特征建模,因此选用横向联邦。 创建训练型横向联邦学习作业。 图1 创建训练型横向联邦学习作业 配置作业的执行脚本,训练模型文件。 执行脚本是每个参与方的计算节点在本地会执行的模型训练、评估程序,用于基于本地的数据集训练子模型。 训练模型文件则定义了模型的结构,会用于每个参与方在本地初始化模型。 图2 配置执行脚本、训练模型文件 配置已方、对方数据集。在作业的数据集配置中,选择己方、对方的本地数据集,此外需将已方的数据集设为评估数据集。横向联邦中,需要确保不同参与方的数据集结构完全一致。 图3 配置数据集 保存并执行作业。单击下方的“保存并执行”按钮,即可发起执行横向联邦学习作业。 单击“历史作业”按钮,查看当前作业的执行情况。 单击“计算过程”按钮可以查看作业的具体执行计划。 单击“执行结果”按钮可以查看作业保存的模型文件路径,用于后续的评估型作业。 图4 查看作业的执行情况 图5 查看作业的具体执行计划 图6 查看作业的执行结果 父主题: 测试步骤
  • 场景描述 某企业A在进行新客户营销时的成本过高,想要通过引入外部数据的方式提高营销的效果,降低营销成本。 因此企业A希望与某大数据厂商B展开一项合作,基于双方共有的数据进行联邦建模,使用训练出的联邦模型对新数据进行联邦预测,筛选出高价值的潜在客户,再针对这些客户进行定向营销,达成提高营销效果、降低营销成本的业务诉求。 基于多方安全计算功能准备好合适的数据,本文主要介绍双方对已有的数据进行样本对齐、特征筛选和联邦建模,并对产生的模型进行评估。 父主题: 使用TI CS 可信联邦学习进行联邦建模
  • 准备数据 首先,企业A和大数据厂商B需要商议确定要提供的数据范围及对应的元数据信息,例如双方初始决定使用最近三个月的已有用户转化数据作为联邦训练的训练集和评估集。 表1 企业A的数据 字段名称 字段类型 描述 id string hash过后的手机号字符串 col0-col4 float 企业A数据特征 label int 企业A对用户的标签属性 industry1.csv id,col0,col1,col2,col3,col4,label 19581e27de7ced00ff1ce50b2047e7a567c76b1cbaebabe5ef03f7c3017bb5b7,-0.823913755,0.787712038,0.429635596,-1.315646486,-1.652321611,1 2c624232cdd221771294dfbb310aca000a0df6ac8b66b696d90ef06fdefb64a3,3.041881096,-0.651684341,3.661649955,0.035548734,3.477873904,0 3fdba35f04dc8c462986c992bcf875546257113072a909c162f7e470e581e278,-1.847252571,0.496981447,1.654416521,-1.945006902,0.394151993,1 4523540f1504cd17100c4835e85b7eefd49911580f8efff0599a8f283be6b9e3,-0.593556893,-0.351750558,0.964512256,-0.017390132,0.092562565,1 4a44dc15364204a80fe80e9039455cc1608281820fe2b24f1e5233ade6af1dd5,0.241505219,-0.219114719,1.51438745,-0.665234511,0.178575706,0 4b227777d4dd1fc61c6f884f48641d02b4d121d3fd328cb08b5531fcacdabf8a,0.372607556,-0.29194018,0.080862655,0.391501604,-0.012276428,1 4e07408562bedb8b60ce05c1decfe3ad16b72230967de01f640b7e4729b49fce,1.544282251,-0.203027285,3.076050022,-0.530666302,2.156693386,0 4ec9599fc203d176a301536c2e091a19bc852759b255bd6818810a42c5fed14a,1.006651366,-0.972403786,1.314115256,0.363296291,5.171128738,0 4fc82b26aecb47d2868c4efbe3581732a3e7cbcc6c2efb32062c08170a05eeb8,-2.859681221,-1.465959913,-0.930994729,-0.773533542,-3.673734138,0 5feceb66ffc86f38d952786c6d696c79c2dbc239dd4e91b46729d73a27fb57e9,-1.409250598,-0.589367921,-4.467396693,1.370376188,-1.2368325,1 大数据厂商B的数据如下,一共有10条记录。 表2 大数据厂商B的数据 字段名称 字段类型 描述 id string hash过后的手机号字符串 f0-f4 float 大数据厂商数据特征 bigdata1.csv id,f0,f1,f2,f3,f4 2c624232cdd221771294dfbb310aca000a0df6ac8b66b696d90ef06fdefb64a3,0.390064223,0.664175034,3.20228741,0.380574513,0.017733811 3fdba35f04dc8c462986c992bcf875546257113072a909c162f7e470e581e278,-0.483250226,0.616586578,3.001851708,2.407914633,0.856369412 4a44dc15364204a80fe80e9039455cc1608281820fe2b24f1e5233ade6af1dd5,-0.070919538,-2.219653517,1.461645551,1.66185096,0.778770954 4ec9599fc203d176a301536c2e091a19bc852759b255bd6818810a42c5fed14a,0.024227451,-1.087235302,3.67470964,-2.420729037,-3.132456573 4fc82b26aecb47d2868c4efbe3581732a3e7cbcc6c2efb32062c08170a05eeb8,-0.771151327,-1.184821181,-0.674077615,-0.379858223,0.158957184 6b51d431df5d7f141cbececcf79edf3dd861c3b4069f0b11661a3eefacbba918,-0.738091802,-1.474822882,2.93475295,-3.763763721,-1.817301398 6b86b273ff34fce19d6b804eff5a3f5747ada4eaa22f1d49c01e52ddb7875b4b,-1.216062821,-1.093614452,-1.632396806,0.887601314,-4.40930101 8527a891e224136950ff32ca212b45bc93f69fbb801c3b1ebedac52775f99e61,-0.789268594,1.071733834,3.763254446,-3.760298263,0.49776472 e7f6c011776e8db7cd330b54174fd76f7d0216b612387a5ffcfb81e6f0919683,-2.759963795,0.405262468,1.264947591,1.027350049,1.293868423 其中为了保证数据安全,企业A和大数据厂商B通过讨论决定使用hash过后的手机号作为已有数据的唯一标识id字段,并将唯一标识作为数据对齐的依据。 父主题: 使用TICS多方安全计算进行联合样本分布统计
  • 场景描述 某企业A在进行新客户营销时的成本过高,想要通过引入外部数据的方式提高营销的效果,降低营销成本。 因此企业A希望与某大数据厂商B展开一项合作,基于双方共有的数据进行联邦建模,使用训练出的联邦模型对新数据进行联邦预测,筛选出高价值的潜在客户,再针对这些客户进行定向营销,达成提高营销效果、降低营销成本的业务诉求。 根据前一篇文章,企业A已经通过可信联邦学习功能训练出了一个预测客户时候是高价值用户的模型。 本文主要介绍企业A和大数据厂商B如何通过已有的模型对新的业务数据进行预测。 父主题: 使用TICS联邦预测进行新数据离线预测
  • 场景描述 某企业A在进行新客户营销时的成本过高,想要通过引入外部数据的方式提高营销的效果,降低营销成本。 因此企业A希望与某大数据厂商B展开一项合作,基于双方共有的数据进行联邦建模,使用训练出的联邦模型对新数据进行联邦预测,筛选出高价值的潜在客户,再针对这些客户进行定向营销,达成提高营销效果、降低营销成本的业务诉求。 本文主要介绍在进行建模之前,双方需要对已有的数据进行碰撞求交,找到双方共有的数据,了解数据的分布情况并为后续的建模做好调整。 父主题: 使用TICS多方安全计算进行联合样本分布统计
  • 准备数据 企业A和大数据厂商B需要按照训练模型使用的特征,提供用于预测的数据集,要求预测的数据集特征必须包含训练时使用的特征。 表1 企业A的数据 字段名称 字段类型 描述 id string hash过后的手机号字符串 col0-col4 float 企业A数据特征 industry_predict.csv id,col0,col1,col2,col3,col4 4e07408562bedb8b60ce05c1decfe3ad16b72230967de01f640b7e4729b49fce,-0.823913755,0.787712038,0.429635596,-1.315646486,-1.652321611 2c624232cdd221771294dfbb310aca000a0df6ac8b66b696d90ef06fdefb64a3,3.041881096,-0.651684341,3.661649955,0.035548734,3.477873904 8527a891e224136950ff32ca212b45bc93f69fbb801c3b1ebedac52775f99e61,0.162210842,0.177167621,4.553682264,-1.103220799,2.375621631 注意由于这是新产生的业务数据,企业A并不知道这些用户是否是高价值用户,因此没有label用户标签字段。 表2 大数据厂商B的数据 字段名称 字段类型 描述 id string hash过后的手机号字符串 f0-f4 float 大数据厂商数据特征 bigdata_all.csv id,f0,f1,f2,f3,f4 5feceb66ffc86f38d952786c6d696c79c2dbc239dd4e91b46729d73a27fb57e9,-0.246852445,-1.761531756,-2.840375975,-0.562750693,-2.23499737 6b86b273ff34fce19d6b804eff5a3f5747ada4eaa22f1d49c01e52ddb7875b4b,-1.216062821,-1.093614452,-1.632396806,0.887601314,-4.40930101 4e07408562bedb8b60ce05c1decfe3ad16b72230967de01f640b7e4729b49fce,-0.150047899,-1.323266508,3.01679156,1.728583156,0.656158732 4b227777d4dd1fc61c6f884f48641d02b4d121d3fd328cb08b5531fcacdabf8a,-0.333871414,-1.21968931,-0.082894791,0.020390259,-0.076884947 ef2d127de37b942baad06145e54b0c619a1f22327b2ebbcfbec78f5564afe39d,-2.438861166,0.111880807,-3.51428545,1.123004835,0.228893969 e7f6c011776e8db7cd330b54174fd76f7d0216b612387a5ffcfb81e6f0919683,-2.759963795,0.405262468,1.264947591,1.027350049,1.293868423 7902699be42c8a8e46fbbb4501726517e86b22c56a189f7625a6da49081b2451,0.189352371,-0.607297495,-0.808339321,2.048455567,1.303872778 2c624232cdd221771294dfbb310aca000a0df6ac8b66b696d90ef06fdefb64a3,0.390064223,0.664175034,3.20228741,0.380574513,0.017733811 19581e27de7ced00ff1ce50b2047e7a567c76b1cbaebabe5ef03f7c3017bb5b7,0.379250902,1.962293246,0.066277661,3.083228267,1.952626328 4a44dc15364204a80fe80e9039455cc1608281820fe2b24f1e5233ade6af1dd5,-0.070919538,-2.219653517,1.461645551,1.66185096,0.778770954 4fc82b26aecb47d2868c4efbe3581732a3e7cbcc6c2efb32062c08170a05eeb8,-0.771151327,-1.184821181,-0.674077615,-0.379858223,0.158957184 6b51d431df5d7f141cbececcf79edf3dd861c3b4069f0b11661a3eefacbba918,-0.738091802,-1.474822882,2.93475295,-3.763763721,-1.817301398 3fdba35f04dc8c462986c992bcf875546257113072a909c162f7e470e581e278,-0.483250226,0.616586578,3.001851708,2.407914633,0.856369412 8527a891e224136950ff32ca212b45bc93f69fbb801c3b1ebedac52775f99e61,-0.789268594,1.071733834,3.763254446,-3.760298263,0.49776472 e629fa6598d732768f7c726b4b621285f9c3b85303900aa912017db7617d8bdb,-0.372531118,1.559382514,2.403559204,-0.041093457,0.169341125 b17ef6d19c7a5b1ee83b907c595526dcb1eb06db8227d650d5dda0a9f4ce8cd9,-2.773477116,-1.137653133,-1.50133841,0.82842642,-1.25476711 4523540f1504cd17100c4835e85b7eefd49911580f8efff0599a8f283be6b9e3,-1.542814756,1.019110477,1.395515599,0.539956076,0.100325065 4ec9599fc203d176a301536c2e091a19bc852759b255bd6818810a42c5fed14a,0.024227451,-1.087235302,3.67470964,-2.420729037,-3.132456573 其中为了保证数据安全,企业A和大数据厂商B通过讨论决定使用hash过后的手机号作为已有数据的唯一标识id字段,并将唯一标识作为数据对齐的依据。 父主题: 使用TICS联邦预测进行新数据离线预测
  • 如何在两个节点间免密ssh登录 登录机器A,执行如下命令 ssh-keygen 遇到需要Overwrite(y/n)时输入y,其他提示均回车即可 在机器A上继续执行如下命令,按照提示输入B的登录密码即可 ssh-copy-id -i 图中红框部分 root@机器B的ip 注:以上操作为节点采用密钥登录,无密码的场景下 若所建节点采用密钥对登录的形式,可手动复制公钥文件id_rsa.pub到对端节点的指定用户的home路径下(root用户的路径为/root) 在对端节点下操作: 查看指定用户home目录下有无.ssh文件夹,没有的话创建一个,复制中的id_rsa.pub的内容到authorized_keys文件 [root@yuancheng ~]# cd .ssh [root@yuancheng .ssh]# cat ../id_rsa.pub | tee -a authorized_keys ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDINuohcfbWG8DMHY7mwnAIkp7jglJczOrk1ie5stdSF9GLroot@yuancheng [root@yuancheng .ssh]# ll total 12 -rw-r--r-- 1 root root 408 Aug 10 09:58 authorized_keys 设置authorized_keys文件的权限为600 在机器B上执行1、2步骤。 接下来两台机器,即可相互直接ssh不需要输入密码
  • 筛选特征 样本对齐执行完成后单击下一步进入“特征选择”页面,这一步企业A需要选出企业A自己和大数据厂商B的特征及标签用于后续的训练。 企业A可以选择特征及标签后“启动分箱和IV计算”,通过联邦的统计算法计算出所选特征的iv值,一般而言iv值较高的特征更有区分性,应该作为首选的训练特征;过低的iv值没有区分性会造成训练资源的浪费,过高的iv值又过于突出可能会过度影响训练出来的模型。 例如这里大数据厂商提供的f4特征iv值是0,说明这个特征对于标签的识别没有区分度,可以不选用;而f0、f2特征的iv值中等,适合作为模型的训练特征。 根据计算得出的iv值,企业A调整了训练使用的特征,没有选用双方提供的特征全集,去掉了部分iv值较低的特征,减少了无用的计算消耗。 父主题: 使用TICS可信联邦学习进行联邦建模
  • 场景描述 有效的风险控制能够消灭或减少风险事件发生的各种可能性,或减少风险事件发生时造成的损失,对于企业具有重要意义。现阶段,企业级的单方风控体系已逐步建立,在机构内数据统一共享的基础上实现了覆盖业务前、中、后各环节的智能风控。然而,单方数据风控面临存在数据不全面、风控不及时的问题。随着隐私计算等技术为数据要素的有效流通提供了必要手段,多方数据联合风控成为新趋势。其中,黑名单共享查询是风控中的一个重要环节,企业间的黑名单共享能有效发挥风险联防联控效用。 在信息核验过程中,通过隐私计算技术实现多方黑名单数据共享,对电诈、洗钱、骗贷等行为的黑名单用户进行安全求交、匿踪查询,能够有效提升客户背景调查的安全可信程度。 现有两家企业A、B,双方决定通过TICS平台实现黑名单数据共享,通过隐私求交作业计算两方黑名单ID交集。本文以企业A为计算作业的发起方为例。 父主题: 隐私求交黑名单共享场景
  • 准备数据 A方提供了待查询的用户ID数据,样例如下: blacklist_query.csv id 1914fd1aef9346e7a1b0a63c95aa918e 6b86b273ff34fce19d6b804eff5a3f57 66985617b4f74d14b4eceeaa25d61f5e 935098fe075343a5864db257bc40dfa5 d4735e3a265e16eee03f59718b9b5d03 4ec9599fc203d176a301536c2e091a19 79f2c17703f0442ebb4d57800e2666a2 ea9257156eca491cada3e38b6d1000e9 acdef43b89014fab8d5916b7ce756f75 3855ad3d30c446ed94a0f34dbd7be63e d9465361c73549739fd0ae252705c190 B方提供了共享的黑名单用户ID名单,样例如下: blacklist_all.csv id 5feceb66ffc86f38d952786c6d696c79 6b86b273ff34fce19d6b804eff5a3f57 d4735e3a265e16eee03f59718b9b5d03 4b227777d4dd1fc61c6f884f48641d02 ef2d127de37b942baad06145e54b0c61 e7f6c011776e8db7cd330b54174fd76f 7902699be42c8a8e46fbbb4501726517 2c624232cdd221771294dfbb310aca00 19581e27de7ced00ff1ce50b2047e7a5 4a44dc15364204a80fe80e9039455cc1 6b51d431df5d7f141cbececcf79edf3d 3fdba35f04dc8c462986c992bcf87554 8527a891e224136950ff32ca212b45bc e629fa6598d732768f7c726b4b621285 b17ef6d19c7a5b1ee83b907c595526dc 4523540f1504cd17100c4835e85b7eef 4ec9599fc203d176a301536c2e091a19 9400f1b21cb527d7fa3d3eabba93557a 父主题: 隐私求交黑名单共享场景
  • 乳腺癌数据集作业结果 本节实验包含了如下三个部分:(1)训练轮数对联邦学习模型分类性能的影响;(2)迭代次数对联邦学习模型分类性能的影响;(3)参与方数据量不同时,本地独立训练对比横向联邦的模型性能。 不同训练参数对模型准确率、训练时长的影响 训练轮数对模型准确率的影响(迭代次数固定为20) 训练轮数 1 10 20 测试集准确率 (%) 98.016 98.016 98.016 测试集AUC 0.996 0.996 0.996 训练时长 (秒) 19 173 372 迭代轮数对模型准确率、训练时长的影响(训练轮数固定为10) 迭代次数 10 25 50 测试集准确率 (%) 97.065 98.140 98.415 测试集AUC 0.995 0.996 0.997 训练时长 (秒) 166 167 216 从上面两张表可以看出: (1)训练轮数对于联邦学习模型的性能影响不大,这主要是由于乳腺癌数据集的分类相对简单,且数据集经过了扩充导致的; (2)增大每个参与方本地模型训练的迭代次数,可以显著提升最终联邦学习模型的性能。 参与方数据量不同时,独立训练对比横向联邦训练的准确率 本节实验不再将训练集均匀划分到两个参与方,而是以不同的比例进行划分,从而探究当参与方数据量不同时,模型性能的变化情况。具体划分如下所示。实验中训练轮数固定为10,迭代次数固定为50。 参与方持有的样本数目信息 Host所持样本占比(%) Host样本数 Guest样本数 0.2 2946 11786 0.4 5892 8840 0.6 8839 5893 0.8 11785 2947 下图为当Host方拥有不同数据量时,使用横向联邦对比已方独立训练的性能对比。 图1 Host方拥有不同数据量时,横向联邦对比对立训练的模型性能 结论为:使用横向联邦学习,在已方拥有不同数据量的情况下都可以显著提升模型性能。 父主题: 实验结果
  • 计费说明 虚拟私有云VPC 服务下包含了多种产品资源,部分资源可以免费使用,部分资源需要支付费用,表1中为您详细介绍了虚拟私有云VPC各项资源的收费情况。 表1 VPC资源收费一览表 产品资源 收费情况说明 虚拟私有云 免费 子网 免费 路由表 免费 对等连接 免费 弹性网卡 免费 辅助弹性网卡 免费 IP地址组 免费 安全组 免费 网络ACL 免费 VPC流日志 免费 流量镜像 免费 弹性公网IP和带宽 如果您使用了弹性公网IP和带宽的相关资源,则需要支付费用,费用账单中计费的“产品”项目说明如下: 弹性公网IP:收取弹性公网IP保有费。 您购买的按需计费弹性公网IP未绑定至任何实例(如ECS、ELB)时,会收取弹性公网IP保有费。 固定带宽:收取的可能是以下资源的费用。 弹性公网IP的带宽费用:包年/包月弹性公网IP的带宽费用、按需计费(按带宽计费)弹性公网IP的带宽费用、按需计费(按流量计费)弹性公网IP的流量费用。 共享带宽的费用 共享流量包的费用 带宽加油包:收取带宽加油包的费用。 以上计费项目的详细说明,请参见弹性公网IP计费说明。 VPC终端节点 如果您使用了VPC终端节点资源,则需要支付费用。 详细计费说明请参见VPC终端节点计费说明。 针对免费资源,当前暂不收费。待后续启动收费时,将会提前通知您。
  • 响应示例 导入SSH密钥: { "keypair": { "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDWNgTxQYeBzK9LYy4IakX7IsIl5j5zqR6BU2GJaEg3RK6dlS7rKFQhvy/V/1emK+GT/7P8up9VsMZ9Dx6PBOLow5p+2/wGsMlwDJpWiQ8zNnE********************************************************************************************************************************************************************************************************************************************* Generated-by-Nova\\n\n", "user_id": "6fc0d2cbbfab40b199874b97097e913d", "name": "demo1", "fingerprint": "fc:47:b5:c3:7d:25:32:**:**:**:**:**:**:**:**:**" } } 创建SSH密钥: { "keypair": { "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDWNgTxQYeBzK9LYy4IakX7IsIl5j5zqR6BU2GJaEg3RK6dlS7rKFQhvy/V/1emK+GT/7P8up9VsMZ9Dx6PBOLow5p+2/wGsMlwDJpWiQ8zNnE********************************************************************************************************************************************************************************************************************************************* Generated-by-Nova\n", "private_key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpQIBAAKCAQEA1jYE8UGHgcyvS2MuCGpF+yLCJeY+c6kegVNhiWhIN0SunZUu\n6yhUIb8v1f9Xpivhk/+z/LqfVbDGfQ8ejwTi6MOaftv8BrDJcAyaVokPMzZxDIPr\nvwK/2YWBwDMihADjicSHJz6FIMXzXY/3ol1ffAGm7AXVAO0A99DoPBeAZp9pYov1\ng/Sm0EFY2+5Gwd4DSCaRk1HKF+92q6K6pKv6aWi0ZpsDCe20yBpfP9DFlNg8vnkw\ncjmgzG9obWwfo/GV8hLuzqKMtDWknfjzR79z2fTiFTu4HdZcqE0bwjCvxd+Ovs5m\nbZORAEkjseUYn50sJNzbboFY17PRjCXxSwUYmwIDAQABAoIBADNKQ+ywUA3YQLDA\nUqlZKOB09h+0/YccG13D5TrNaV0yaMz6h31u7pYV/RI0TXxQTXbuZt5AoR4Xca9I\nC30bImmxTDDL45CGi/T0T5AgyS7t/iuM+smFkwI2YVbv53fL7q9yCxpucdnjC95/\nNj/+M3qxupIQ42uRVAYCU1jwF6J6YLy/9UamrmVd4bWFRtT19O7uszUhHLqJOZXq\n3ItqnMyD5bSMkzMN+RxmZVXAPkBOonGVeBBInCjvHv23REkngX38zcUSc543H3Di\n4673helqSdMnI0/TgyfLQcNuOsfQcD02A**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************\n-----END RSA PRIVATE KEY-----\n", "user_id": "6fc0d2cbbfab40b199874b97097e913d", "type": "ssh", "name": "demo", "fingerprint": "fc:47:b5:c3:7d:25:32:**:**:**:**:**:**:**:**:**" } }
  • 请求示例 导入SSH密钥。 POST https://{endpoint}/v2.1/{project_id}/os-keypairs { "keypair": { "public_key": "ssh-rsaAAAAB3NzaC1yc2EAAAADAQABAAABAQDWNgTxQYeBzK9LYy4IakX7IsIl5j5zqR6BU2GJaEg3RK6dlS7rKFQhvy/V/1emK+GT/7P8up9VsMZ9Dx6PBOLow5p+2/wGsMlwDJpW*************************************************************************************************************************************************************************************************************************** Generated-by-Nova\\n\n", "type": "ssh", "name": "demo1", "user_id": "fake" } } 创建SSH密钥。 POST https://{endpoint}/v2.1/{project_id}/os-keypairs { "keypair": { "name": "demo" } }
共100000条