华为云用户手册

  • 步骤3:创建迁移任务 登录分布式缓存服务控制台。 单击左侧菜单栏的“数据迁移”。页面显示迁移任务列表页面。 单击右上角的“创建备份导入任务”。 设置迁移任务名称和描述。 “源Redis”区域中,“数据来源”选择“OBS桶”,在“OBS桶名”中选择已上传备份文件的OBS桶。 根据需要选择“源DB”,您可以指定源端备份文件某一个DB中的数据,例如输入5时,则只迁移DB5中的数据;无需指定DB时,请保持置空,即迁移全部DB。 选择“是否多DB Proxy集群”,只有当源Redis数据为DCS Proxy集群实例,且开启了多DB(Proxy实例multi-db参数值为yes)时选择。 单击“添加备份文件”,选择需要迁移的备份文件。 图2 备份文件导入 图3 备份文件导入 在“目标Redis”区域,选择步骤1:准备目标Redis实例中准备的“目标Redis实例”。 如果目标Redis是密码访问模式,请输入密码后,单击“测试连接”,检查密码是否正确。免密访问的实例,请直接单击“测试连接”。 根据需要选择“目标DB”,您可以指定迁移数据到目标Redis的某一个DB中,例如输入5时,则迁移到目标Redis的DB5;不填表示不指定,默认迁移到与源端相同的DB中。 当源端为多DB,目标端为单DB的DCS实例时(单DB的实例只有DB0),需要源端的所有数据都在DB0,或者指定仅迁移源端某一DB中的数据并将目标端DB指定为0,否则会迁移失败。 DCS Redis的DB数请参见Redis实例是否支持多DB方式?。 单击“立即创建”。 确认迁移信息,然后单击“提交”,开始创建迁移任务。 可返回迁移任务列表中,观察对应的迁移任务的状态,迁移成功后,任务状态显示“成功”。
  • 步骤2:创建OBS桶并上传备份文件 通过OBS Browser+客户端,上传备份数据文件到OBS桶。 如果上传的备份文件较小,且小于5GB,请执行2,通过OBS控制台上传即可; 如果上传的备份文件大于5GB,请按照OBS服务提供的超过5GB如何上传操作指导执行。 通过OBS控制台,上传备份数据文件到OBS桶。 如果上传的备份文件较小,且小于5GB,请执如下步骤: 创建OBS桶。 在创建过程中,以下两个参数请按要求设置,其他详细的创建步骤,请参考《对象存储服务用户指南》的“创建桶”章节。 选择“区域”。 OBS桶所在区域必须跟Redis目标实例所在区域相同。 设置“存储类别”,当前支持“标准存储”、“低频访问存储”和“归档存储”。 请不要选择“归档存储”,否则会导致备份文件迁移失败。 设置完成后,单击“立即创建”,等待OBS桶创建完成。 在OBS管理控制台的桶列表中,单击2.a中的桶名称,进入“概览”页面。 在左侧导航栏,单击“对象”。 在“对象”页签下,单击“上传对象”,系统弹出“上传对象”对话框。 指定对象的存储类别。 请不要选择“归档存储”,否则会导致备份文件迁移失败。 上传对象。 您可以拖拽本地文件或文件夹至“上传对象”区域框内添加待上传的文件,也可以通过单击“上传对象”区域框内的“添加文件”,选择本地文件添加。 单次最多支持100个文件同时上传,总大小不超过5GB。 图1 批量上传对象 可选:勾选“KMS加密”,用于加密上传文件。 单击“上传”。
  • 场景描述 当前华为云DCS支持将其他云厂商Redis、自建Redis的数据通过DCS控制台迁移到华为云DCS的Redis。 您需要先将其他云厂商Redis、自建Redis的数据备份下载到本地,然后将备份数据文件上传到华为云与DCS Redis实例同一租户下相同Region下的OBS桶中,最后在DCS控制台创建迁移任务,DCS从OBS桶中读取数据,将数据迁移到DCS的Redis中。 上传OBS桶的文件支持.aof、.rdb、.zip、.tar.gz格式,您可以直接上传.aof和.rdb文件,也可以将.aof和.rdb文件压缩成.zip或.tar.gz文件,然后将压缩后的文件上传到OBS桶。
  • 测试结果 以下测试结果仅供参考,不同局点环境和网络波动等客观条件可能产生性能差异。 QPS:即Query Per Second,表示每秒处理的读写操作数,单位是次/秒。 平均/最大时延:操作的平均/最大延迟时间,单位为毫秒(ms)。 x%延迟:指x%操作的延迟时间,单位为毫秒(ms)。例如该指标的值为10ms,99.99%延迟表示99.99%的请求可以在10ms内被处理。 表1 SET操作命令测试结果(未开启SSL场景) 实例规格 实例CPU类型 并发连接数(个) QPS 平均时延(ms) 99%延迟(ms) 99.9%延迟(ms) 8G X86 500 151047.41 3.355 6.175 12.223 1000 149346.86 6.673 11.711 31.743 32G X86 500 143648.1 3.476 5.215 13.055 4000 104517.03 37.881 139.263 175.103 表2 SET操作命令测试结果(开启SSL场景) 实例规格 实例CPU类型 并发连接数(个) QPS 平均时延(ms) 99%延迟(ms) 99.9%延迟(ms) 8G X86 500 86827.84 5.537 8.575 9.535 1000 92413.99 10.055 15.615 17.279 32G X86 500 87385.5 5.584 8.383 9.343 4000 50813.67 62.623 100.863 104.959 表3 GET操作命令测试结果(未开启SSL场景) 实例规格 实例CPU类型 并发连接数(个) QPS 平均时延(ms) 99%延迟(ms) 99.9%延迟(ms) 8G X86 500 180413.66 2.764 4.287 11.583 1000 179113.5 5.586 8.959 29.823 32G X86 500 175268.86 2.848 4.079 11.839 4000 134755.17 29.161 126.463 166.911 表4 GET操作命令测试结果(开启SSL场景) 实例规格 实例CPU类型 并发连接数(个) QPS 平均时延(ms) 99%延迟(ms) 99.9%延迟(ms) 8G X86 500 113637.22 4.316 6.239 7.359 1000 105504.55 8.962 13.439 15.295 32G X86 500 100309.99 4.603 6.559 6.943 4000 57007.69 55.052 85.503 89.087
  • 测试命令 未开启SSL场景: ./memtier_benchmark -s {IP} -p {port} -c {connect_number} -t {thread} -n allkeys --key-prefix="xxxx" --key-minimum=1 --key-maximum={max_key} --key-pattern=P:P --ratio=1:0 -d {datasize} 参数参考值:-c {connect_number}:1000,--key-maximum{max_key}:2000000,-d {datasize}:32。 开启SSL场景: ./memtier_benchmark -s {IP} -p {port} -c {connect_number} -t {thread} -n allkeys --key-prefix="xxxx" --key-minimum=1 --key-maximum={max_key} --key-pattern=P:P --ratio=1:0 -d {datasize} --tls --cacert ca.crt 参数参考值:-c {connect_number}:1000,--key-maximum{max_key}:2000000,-d {datasize}:32。
  • 迁移方案 自建Redis,指的是在华为云、其他云厂商、本地数据中心自行搭建的Redis。 表2 迁移方案 迁移场景 工具 迁移案例 迁移说明 自建Redis迁移至DCS DCS控制台界面一键式迁移 如果自建Redis和DCS Redis实例网络连通,推荐使用迁移任务在线迁移Redis实例。 如果自建Redis和DCS Redis实例网络不通,推荐使用备份文件离线迁移Redis实例。 - Redis-cli 使用Redis-cli迁移自建Redis(AOF文件) - 使用Redis-cli迁移自建Redis(RDB文件) - Redis-Shake 使用Redis-Shake工具迁移自建Redis Cluster集群 - DCS实例间迁移 DCS控制台界面一键式迁移 低版本Redis实例迁移到高版本Redis实例,例如Redis 3.0迁移至Redis 4.0/5.0/6.0: 如果源Redis实例和目标Redis实例的网络连通,推荐使用迁移任务在线迁移Redis实例。 如果网络不连通,推荐使用备份文件迁移不同Redis版本的实例。 由于Redis不同版本存在数据兼容问题,建议高版本不要迁移到低版本,否则迁移失败。 不同Region的Redis实例迁移,推荐使用备份文件迁移不同Region的实例。 由于DCS Redis实例默认是禁用了SYNC和PSYNC命令,在相同Region执行在线迁移时,会默认放通SYNC和PSYNC命令,但是在不同Region迁移时,没有放通该命令操作,所以无法使用在线迁移,推荐使用备份文件迁移。 不同账号的Redis实例迁移,例如从账号A迁移到账号B: 推荐使用备份文件迁移不同Redis版本的实例。 如果可以打通网络,也可以使用迁移任务在线迁移Redis实例。 - 其他云厂商Redis服务迁移至DCS DCS控制台界面一键式迁移 如果其他云厂商Redis服务,没有禁用SYNC和PSYNC命令,推荐使用迁移任务在线迁移其他云厂商Redis。 如果其他云厂商Redis服务,禁用了SYNC和PSYNC命令,推荐使用备份文件离线迁移其他云厂商Redis。 如果需要使用在线迁移,建议联系其他云厂商运维人员放通SYNC和PSYNC命令。 Rump 使用Rump在线迁移其他云厂商Redis - Redis-Shake 使用Redis-Shake离线迁移其他云厂商Redis - 使用Redis-shake在线迁移其他云厂商Redis -
  • 迁移工具 表1 Redis迁移工具对比 工具/命令/服务 特点 说明 DCS控制台界面一键式迁移 操作简单,同时支持在线迁移和离线迁移(备份文件导入)两种方式,其中在线迁移支持增量数据迁移。 离线迁移,适用于源Redis和目标Redis网络不连通、源Redis不支持SYNC/PSYNC命令的场景。需要将数据备份文件导入到OBS,DCS从OBS桶中读取数据,将数据迁移到DCS的Redis中。 在线迁移,涉及到SYNC/PSYNC命令,适用于源Redis放通了SYNC/PSYNC命令的场景。支持将源Redis中的数据全量迁移或增量迁移到目标Redis中。 Redis-cli Redis自带命令行工具,支持导出RDB文件,也支持将持久化的AOF文件整库导入。 AOF文件为所有数据更改命令的全量集合,数据文件稍大。 - Rump 支持在线迁移,支持在同一个实例的不同数据库之间,以及不同实例的数据库之间迁移。 不支持增量迁移。 建议停业务后迁移,避免出现Key丢失。详情参考使用Rump在线迁移其他云厂商Redis。 Redis-Shake 在线迁移和离线迁移均支持的一款开源工具。 适用于Cluster集群的数据迁移。 自行开发迁移脚本 灵活,根据实际情况适配。 -
  • 场景描述 当前华为云DCS支持将其他云厂商Redis、自建Redis的数据通过DCS控制台迁移到华为云DCS的Redis。 您需要先将其他云厂商Redis、自建Redis的数据备份下载到本地,然后将备份数据文件上传到华为云与DCS Redis实例同一租户下相同Region下的OBS桶中,最后在DCS控制台创建迁移任务,DCS从OBS桶中读取数据,将数据迁移到DCS的Redis中。 上传OBS桶的文件支持.aof、.rdb、.zip、.tar.gz格式,您可以直接上传.aof和.rdb文件,也可以将.aof和.rdb文件压缩成.zip或.tar.gz文件,然后将压缩后的文件上传到OBS桶。
  • 前提条件 OBS桶所在区域必须跟Redis目标实例所在区域相同。例如,OBS桶和Redis所在的区域都为“华北-北京一”。 上传的数据文件必须为.aof、.rdb、.zip、.tar.gz的格式。 如果是其他云厂商的单机版Redis和主备版Redis,您需要在备份页面创建备份任务,然后下载备份文件。 如果是其他云厂商的集群版Redis,在备份页面创建备份后会有多个备份文件,每个备份文件对应集群中的一个分片,需要下载所有的备份文件,然后逐个上传到OBS桶。在迁移时,需要把所有分片的备份文件选中。
  • 步骤2:创建OBS桶并上传备份文件 通过OBS Browser+客户端,上传备份数据文件到OBS桶。 如果上传的备份文件较小,且小于5GB,请执行2,通过OBS控制台上传即可; 如果上传的备份文件大于5GB,请按照OBS服务提供的超过5GB如何上传操作指导执行。 通过OBS控制台,上传备份数据文件到OBS桶。 如果上传的备份文件较小,且小于5GB,请执如下步骤: 创建OBS桶。 在创建过程中,以下两个参数请按要求设置,其他详细的创建步骤,请参考《对象存储服务用户指南》的“创建桶”章节。 选择“区域”。 OBS桶所在区域必须跟Redis目标实例所在区域相同。 设置“存储类别”,当前支持“标准存储”、“低频访问存储”和“归档存储”。 请不要选择“归档存储”,否则会导致备份文件迁移失败。 设置完成后,单击“立即创建”,等待OBS桶创建完成。 在OBS管理控制台的桶列表中,单击2.a中的桶名称,进入“概览”页面。 在左侧导航栏,单击“对象”。 在“对象”页签下,单击“上传对象”,系统弹出“上传对象”对话框。 指定对象的存储类别。 请不要选择“归档存储”,否则会导致备份文件迁移失败。 上传对象。 您可以拖拽本地文件或文件夹至“上传对象”区域框内添加待上传的文件,也可以通过单击“上传对象”区域框内的“添加文件”,选择本地文件添加。 单次最多支持100个文件同时上传,总大小不超过5GB。 图1 批量上传对象 可选:勾选“KMS加密”,用于加密上传文件。 单击“上传”。
  • 步骤3:创建迁移任务 登录分布式缓存服务控制台。 单击左侧菜单栏的“数据迁移”。页面显示迁移任务列表页面。 单击右上角的“创建备份导入任务”。 设置迁移任务名称和描述。 “源Redis”区域中,“数据来源”选择“OBS桶”,在“OBS桶名”中选择已上传备份文件的OBS桶。 根据需要选择“源DB”,您可以指定源端备份文件某一个DB中的数据,例如输入5时,则只迁移DB5中的数据;无需指定DB时,请保持置空,即迁移全部DB。 选择“是否多DB Proxy集群”,只有当源Redis数据为DCS Proxy集群实例,且开启了多DB(Proxy实例multi-db参数值为yes)时选择。 单击“添加备份文件”,选择需要迁移的备份文件。 图2 备份文件导入 图3 备份文件导入 在“目标Redis”区域,选择步骤1:准备目标Redis实例中准备的“目标Redis实例”。 如果目标Redis是密码访问模式,请输入密码后,单击“测试连接”,检查密码是否正确。免密访问的实例,请直接单击“测试连接”。 根据需要选择“目标DB”,您可以指定迁移数据到目标Redis的某一个DB中,例如输入5时,则迁移到目标Redis的DB5;不填表示不指定,默认迁移到与源端相同的DB中。 当源端为多DB,目标端为单DB的DCS实例时(单DB的实例只有DB0),需要源端的所有数据都在DB0,或者指定仅迁移源端某一DB中的数据并将目标端DB指定为0,否则会迁移失败。 DCS Redis的DB数请参见Redis实例是否支持多DB方式?。 单击“立即创建”。 确认迁移信息,然后单击“提交”,开始创建迁移任务。 可返回迁移任务列表中,观察对应的迁移任务的状态,迁移成功后,任务状态显示“成功”。
  • 测试结果 表1 迁移 源实例类型 源实例规格(GB) 目标实例类型 目标实例规格(GB) 迁移方式 数据量(GB) 时间(min) Redis 5.0主备 8 Redis 5.0主备 8 全量迁移+增量迁移 7.78 3 Redis 5.0主备 32 Redis 5.0主备 32 全量迁移+增量迁移 31.9 17 Redis 5.0 proxy 64 Redis 5.0proxy 64 全量迁移+增量迁移 62.42 7 Redis 5.0 cluster 64 Redis 5.0cluster 64 全量迁移+增量迁移 57.69 6 Redis 5.0 proxy 256 Redis 5.0proxy 256 全量迁移+增量迁移 241.48 23 Redis 5.0 cluster 256 Redis 5.0cluster 256 全量迁移+增量迁移 240.21 22 表2 备份 实例类型 实例规格(GB) 备份方式 数据量(GB) 时间(min) Redis 5.0主备 8 rdb 7.78 2 Redis 5.0主备 32 rdb 31.9 5 Redis 5.0 proxy 64 rdb 62.42 9 Redis 5.0 proxy 256 rdb 241.48 37 Redis 5.0 cluster 64 rdb 57.69 9 Redis 5.0 cluster 256 rdb 255 39 Redis 5.0主备 8 aof 7.9 2 Redis 5.0主备 32 aof 31.15 10 Redis 5.0 proxy 64 aof 62.42 20 Redis 5.0 proxy 256 aof 241.48 48 Redis 5.0 cluster 64 aof 57.69 19 Redis 5.0 cluster 256 aof 255 51 表3 恢复 实例类型 实例规格(GB) 恢复方式 数据量(GB) 时间(min) Redis 5.0主备 8 rdb 7.9 2 Redis 5.0主备 32 rdb 31.15 6 Redis 5.0 proxy 64 rdb 62.42 10 Redis 5.0 proxy 256 rdb 246 42 Redis 5.0 cluster 64 rdb 57.69 10 Redis 5.0 cluster 256 rdb 255 40 Redis 5.0主备 8 aof 7.9 3 Redis 5.0主备 32 aof 31.15 10 Redis 5.0 proxy 64 aof 62.42 10 Redis 5.0 proxy 256 aof 246 46 Redis 5.0 cluster 64 aof 57.69 10 Redis 5.0 cluster 256 aof 255 43
  • 测试环境说明 测试实例规格: Redis 5.0 8G主备 Redis 5.0 32G主备 Redis 5.0 64G Proxy集群( 副本数:2 | 分片数:8 | 分片容量:8 GB ) Redis 5.0 256G Proxy集群( 副本数:2 | 分片数:32 | 分片容量:8 GB ) Redis 5.0 64G Cluster集群( 副本数:2 | 分片数:8 | 分片容量:8 GB ) Redis 5.0 256G Cluster集群 ( 副本数:2 | 分片数:32 | 分片容量:8 GB ) 测试执行机规格: c6s.large.2 2vCPUs | 4GB
  • 请求示例 POST http://{SERVER_URL}/ges/v1.0/{project_id}/hyg/{graph_name}/algorithm { "algorithmName":"pagerank", "parameters":{ "alpha":0.85, "convergence":0.00001, "max_iterations":1000, "directed":true }, "output": { "format": "TXT", "mode": "FULL" } }
  • 响应参数 表2 响应Body参数说明 参数 类型 说明 errorMessage String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。 errorCode String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。 jobId String 执行算法任务ID。请求失败时,该字段为空。 说明: 可以查询jobId查看任务执行状态、获取返回结果,详情参考Job管理API。
  • 请求参数 表2 请求Body参数 参数 是否必选 类型 说明 algorithmName 是 String 算法名字。 parameters 是 parameters Object 算法参数。 表3 parameters 参数 是否必选 类型 说明 source 是 String 输入路径的起点ID。 directed 否 Boolean 是否考虑边的方向。取值为true或false。 说明: false当前版本在有权图上不支持。 当数据集不包含inedge时,若directed=true,选择一个不依赖于Inedge的算法实现版本计算输出,性能会下降;若directed=false,会报错。 weight 否 String 边上权重。取值为:空或字符串。 空:边上的权重、距离默认为1。 字符串:对应的边上的属性将作为权重,当某边没有对应属性时,权重将默认为1。
  • 响应参数 表4 响应Body参数 参数 类型 说明 errorMessage String 系统提示信息,执行成功时,字段可能为空。执行失败时,用于显示错误信息。 errorCode String 系统提示信息,执行成功时,字段可能为空。执行失败时,用于显示错误码。 jobId String 执行算法任务ID。请求失败时,字段为空。 说明: 可以利用返回的jobId查看任务执行状态、获取算法返回结果,详情参考查询Job状态(1.0.0)。 jobType Integer 任务类型。请求失败时,字段为空。
  • 请求示例 POST http://{SERVER_URL}/ges/v1.0/{project_id}/hyg/{graph_name}/algorithm { "algorithmName":"sssp", "parameters":{ "source":"1", "directed":true, "weight": "" } } SERVER_URL:图的访问地址,取值请参考业务面API使用限制。
  • 响应示例 状态码: 200 成功响应示例 Http Status Code: 200 { "jobId": "4448c9fb-0b16-4a78-8d89-2a137c53454a001679122", "jobType": 1 } 状态码: 400 失败响应示例 Http Status Code: 400 { "errorMessage":"graph [demo] is not found", "errorCode":"GES.8402" }
  • 响应参数 状态码: 200 表5 响应Body参数 参数 参数类型 描述 job_id String 执行该异步任务的jobId。 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。 error_msg String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。
  • 请求示例 增量导入图数据,边文件目录为testbucket/demo_movie/edges/,边数据集格式为csv,点文件目录为testbucket/demo_movie/vertices/,点数据集格式为csv。 POST http://Endpoint/v2/{project_id}/graphs/{graph_id}/import-graph { "edgeset_path" : "testbucket/demo_movie/edges/", "edgeset_format" : "csv", "vertexset_path" : "testbucket/demo_movie/vertices/", "vertexset_format" : "csv", "schema_path" : "testbucket/demo_movie/incremental_data_schema.xml", "log_dir" : "testbucket/importlogdir", "parallel_edge" : { "action" : "override", "ignore_label" : true }, "delimiter" : ",", "trim_quote" : "\"", "offline" : false }
  • 请求示例 POST https://Endpoint/v1.0/{project_id}/graphs { "graph":{ "name":"demo", "graphSizeTypeIndex": "1", "arch":"x86_64", "vpcId":"2d8af840-fd57-4e3b-a8f1-cda0f55ccd99", "subnetId":"dc018ec3-67d1-46c9-b2fc-19d83367f4e2", "securityGroupId":"11d27338-8649-4076-8579-5ebc1a60f79e", "publicIp":{ "publicBindType":"bind_existing", "eipId":"30ef2d58-08a9-4481-b526-b2cbe67d020d" }, "enableMultiAz":false, "sys_tags": [{"key": "_sys_enterprise_project_id", "value": "54c0b33c-8627-462f-948e-bae08c0887b4"}], "encryption":{ "enable":true, "masterKeyId":"b00b9356-73fb-4d49-8f79-f0a5da5354d1" }, "enableRBAC":false, "enableFullTextIndex" : false, "cryptAlgorithm": "generalCipher", "enableHttps": "false" } }
  • 请求示例 创建一个图,图名称为demo,图规模类型索引为百万边,图实例CPU架构类型为X86 64位架构 ,虚拟私有云ID为2d8af840-fd57-4e3b-a8f1-cda0f55ccd99,子网ID为dc018ec3-67d1-46c9-b2fc-19d83367f4e2,安全组ID为11d27338-8649-4076-8579-5ebc1a60f79e。 POST https://Endpoint/v2/{project_id}/graphs { "graph" : { "name" : "demo", "graph_size_type_index" : "1", "arch" : "x86_64", "vpc_id" : "2d8af840-fd57-4e3b-a8f1-cda0f55ccd99", "subnet_id" : "dc018ec3-67d1-46c9-b2fc-19d83367f4e2", "security_group_id" : "11d27338-8649-4076-8579-5ebc1a60f79e", "public_ip" : { "public_bind_type" : "bind_existing", "eip_id" : "30ef2d58-08a9-4481-b526-b2cbe67d020d" }, "enable_multi_az" : false, "encryption" : { "enable" : true, "master_key_id" : "b00b9356-73fb-4d49-8f79-f0a5da5354d1" }, "sys_tags" : [ { "key" : "_sys_enterprise_project_id", "value" : "54c0b33c-8627-462f-948e-bae08c0887b4" } ], "enable_rbac" : true, "enable_full_text_index" : true, "enable_hyg" : true, "crypt_algorithm" : "generalCipher", "enable_https" : false } }
  • 响应参数 状态码: 200 表11 响应Body参数 参数 参数类型 描述 id String 图ID。 name String 图名称。 状态码: 400 表12 响应Body参数 参数 参数类型 描述 error_msg String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。 error_code String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 用于获取操作API的权限。获取方法请参见获取Token接口,响应消息头中X-Subject-Token的值即为Token。 表3 请求Body参数 参数 是否必选 参数类型 描述 graph 是 graph object 图类型。 表4 graph 参数 是否必选 参数类型 描述 name 是 String 图名称(输入长度在4位到50位之间,必须以字母开头,可以包含字母、数字或者下划线,不能包含其他的特殊字符)。 graph_size_type_index 是 String 图规模类型索引。 0:一万边 1:百万边 2:千万边 3:一亿边 4:十亿边 5:百亿边 6:持久化版 401:十亿增强边 arch 否 String 图实例CPU架构类型,取值为x86_64和aarch64。默认取x86_64。 x86_64:X86 64位架构。 aarch64:ARM 64位架构。 vpc_id 是 String 虚拟私有云ID。 subnet_id 是 String 指定虚拟私有云下的子网ID。 security_group_id 是 String 安全组ID。 public_ip 否 public_ip object 公网IP地址,如果未指定,则默认不使用公网连接。 enable_multi_az 否 Boolean 创建的图是否支持跨可用区(AZ),默认值是false,如果设置为true,系统将会把图中的ECS建在两个可用区中。 如果创建图时,不加该参数,则会将图中的ECS都建在一个可用区中。 encryption 否 encryption object 图实例是否加密,默认不加密。 lts_operation_trace 否 lts_operation_trace object 图实例是否开启审计日志,默认不开启。 sys_tags 否 Array of sys_tags objects 企业项目信息,如果未指定则不开启,默认不开启。 tags 否 Array of tags objects 支持标签TMS,做费用归集,默认不开启。 enable_rbac 否 Boolean 创建的图是否启用细粒度权限控制,默认不启用,值为false。如果设置为true,创建的图所有用户都没有权限,需要调用业务面细粒度权限控制API进行授权操作才可以访问图。 enable_full_text_index 否 Boolean 创建的图是否开启全文索引控制,默认不启用,值为false。 如果设置为true,十亿增强版-规格版图支持全文索引,创建图时会创建云搜索服务集群。 说明: 开启全文索引功能。如果CSS服务已经部署,图实例会自动创建CSS集群,图创建时间较长。如果CSS服务没有部署则图创建失败。 enable_hyg 否 Boolean 该参数只对持久化版规格图生效。 crypt_algorithm 是 String 图实例加密算法,取值为: generalCipher:国密算法 SMcompatible:商密算法(兼容国际) enable_https 是 Boolean 是否开启安全模式,开启安全模式会对性能有较大影响 product_type 否 String 图产品类型,取值为InMemory和Persistence,默认为InMemory,当graph_size_type_index取值为"6"时,默认为Persistence。 InMemory:内存版 Persistence:持久化版 vertex_id_type 否 vertex_id_type object 点的id类型,仅持久化图需要填写。 说明: 点ID类型确定后,将无法更改,请用户谨慎选择! enable_multi_label 否 Boolean 是否启用多标签 。 capacity_ratio 否 Integer 图的容量倍率。该参数只有持久化版百亿规格图支持,且从2.3.18版本后开始支持。 is_dynamic_graph 否 Boolean 是否为动态图。 sort_key_type 否 String 持久化版图数据的sortKey的类型,通过配置不同SortKey的值来区分重复边(源点,终点,Label三者都相同的边),仅持久化图需要填写。取值为: "int":整型。 "string":字节长度小于40的字符串。 "varString":不限长度字符串,过长会影响读写性能,建议长度控制在1K字节以内,最大不要超过2K字节。 表5 public_ip 参数 是否必选 参数类型 描述 public_bind_type 否 String 弹性IP绑定类型,取值如下。 auto_assign:自动绑定。 bind_existing:使用已有。 eip_id 否 String 弹性IP的id,当publicBindType设置为bind_existing时,该值为用户某个已创建但尚未绑定的EIP的ID;当publicBindType设置为auto_assign时,该值设置为空。 表6 encryption 参数 是否必选 参数类型 描述 enable 否 Boolean 是否启动加密特性。取值为“true”或者“false”。默认为“false”。 master_key_id 否 String 与建图对应的project下,华为云数据加密服务创建的用户主密钥ID。 表7 lts_operation_trace 参数 是否必选 参数类型 描述 enable_audit 否 Boolean 是否开启图审计,默认“false”。 audit_log_group_name 否 String LTS日志组名称。 表8 sys_tags 参数 是否必选 参数类型 描述 key 否 String 企业项目的key填:_sys_enterprise_project_id。 value 否 String 企业项目的id。可以从企业项目获取。 表9 tags 参数 是否必选 参数类型 描述 key 否 String 标签key value 否 String 标签value 表10 vertex_id_type 参数 是否必选 参数类型 描述 id_type 是 String id类型,目前支持固定长度fixedLengthString和hash。 fixedLengthString:固定长度String格式下,实际点ID直接用于内部存储与计算,用户需指定一长度,实际点ID不可超过此长度。长度过大,可能影响查询性能,建议用户根据数据集状态进行设置。 hash:哈希格式下,内部计算时将实际点ID转换成哈希码进行存储与计算,对实际点ID长度无限制,但是存在极低的概率(约10^(-43))出现点ID碰撞。若用户无法确定点ID的最大长度,建议选择哈希类型。 id_length 否 Integer 当id_type取值为fixedLengthString时必填,取值范围:1-128。
  • 响应示例 状态码: 200 响应成功示例 { "graph" : { "id" : "1172f16c-63c7-4746-89b0-78972eddf706", "name" : "GES_UI_2_0_1", "created_by" : "ei_ges_j00356469_01", "is_multi_az" : "false", "region_code" : "cn-north-7", "az_code" : "cn-north-7c", "edgeset_format" : "", "edgeset_default_label" : "", "vertexset_format" : "", "vertexset_default_label" : "", "data_store_version" : "2.0.1", "sys_tags" : [ "0" ], "status" : "900", "graph_size_type_index" : "0", "vpc_id" : "0ac6e3c3-2c9b-4296-84f7-6883cebc7b41", "subnet_id" : "2b1755eb-d6d4-421f-88c0-cf6f0bc16801", "security_group_id" : "7aa7c8c9-7443-4a01-abf5-8064b586f8f5", "replication" : 0, "created" : "2022-04-26T02:10:52", "updated" : "2022-04-26T02:10:52", "private_ip" : "192.168.0.123", "encrypted" : false, "enable_rbac" : false, "enable_full_text_index" : false, "enable_hyg" : false, "traffic_ip_list" : [ "192.168.0.123" ], "crypt_algorithm" : "generalCipher", "enable_https" : false, "enable_multi_label":false, "origin_graph_size_type_index": "1", "expand_time": "2023-08-03T02:10:52", "resize_time": "2023-08-02T02:10:52" } } 状态码: 400 响应失败示例 { "error_code" : "GES.7006", "error_msg" : "An internal error occurs in the underlying service of the graph engine." }
  • 请求参数 表2 Body参数说明 参数 是否必选 类型 说明 graphName 是 String 图名称。输入长度在4位到32位之间,必须以字母开头,可以包含字母、数字或者下划线,不能包含其他的特殊字符。 idType 是 String id的类型, 可选值(hash,fixedLengthString,varString)。 idLength 否 Integer 当idType取值为fixedLengthString时必填,取值范围:1-128。 sortKeyType 是 String 必选,可选值如下: “int”:整数类型。 “string”:字符串类型,长度需要小于等于40。 “varString”:变长字符串,长度无限制。 全图sortKeyType类型统一。
  • 响应示例 状态码: 200 成功响应示例 Http Status Code: 200 { "result": "success" } 状态码: 400 失败响应示例 Http Status Code: 400 { "errorMessage": "graph [movie] already exists", "errorCode": "GES.8012", "result": "failed" }
  • 响应示例 状态码: 200 响应成功示例 { "graph_count" : 2, "graphs" : [ { "id" : "146227d2-bfac-499a-97df-df475349e43d", "name" : "TenThousand_Charging", "created_by" : "ei_ges_j00356469_01", "is_multi_az" : "false", "region_code" : "cn-north-7", "az_code" : "cn-north-7c", "edgeset_format" : "", "edgeset_default_label" : "", "vertexset_format" : "", "vertexset_default_label" : "", "data_store_version" : "2.3.2", "sys_tags" : [ "0" ], "status" : "200", "graph_size_type_index" : "0", "vpc_id" : "0ac6e3c3-2c9b-4296-84f7-6883cebc7b41", "subnet_id" : "2b1755eb-d6d4-421f-88c0-cf6f0bc16801", "security_group_id" : "7aa7c8c9-7443-4a01-abf5-8064b586f8f5", "replication" : 1, "created" : "2022-04-26T02:19:54", "private_ip" : "192.168.0.228", "arch" : "x86_64", "encrypted" : false, "master_key_id" : "", "master_key_name" : "", "enable_rbac" : false, "enable_full_text_index" : false, "enable_hyg" : false, "traffic_ip_list" : [ "192.168.0.228" ], "crypt_algorithm" : "generalCipher", "enable_https" : false, "enable_multi_label":false, "origin_graph_size_type_index": "1", "expand_time": "2023-08-03T02:10:52", "resize_time": "2023-08-02T02:10:52" }, { "id" : "1172f16c-63c7-4746-89b0-78972eddf706", "name" : "GES_UI_2_0_1", "created_by" : "ei_ges_j00356469_01", "is_multi_az" : "false", "region_code" : "cn-north-7", "az_code" : "cn-north-7c", "edgeset_format" : "", "edgeset_default_label" : "", "vertexset_format" : "", "vertexset_default_label" : "", "data_store_version" : "2.0.1", "sys_tags" : [ "0" ], "status" : "900", "graph_size_type_index" : "0", "vpc_id" : "0ac6e3c3-2c9b-4296-84f7-6883cebc7b41", "subnet_id" : "2b1755eb-d6d4-421f-88c0-cf6f0bc16801", "security_group_id" : "7aa7c8c9-7443-4a01-abf5-8064b586f8f5", "replication" : 1, "created" : "2022-04-26T02:10:52", "private_ip" : "192.168.0.123", "encrypted" : false, "enable_rbac" : false, "enable_full_text_index" : false, "enable_hyg" : false, "traffic_ip_list" : [ "192.168.0.123" ], "crypt_algorithm" : "generalCipher", "enable_https" : false, "enable_multi_label":false, "origin_graph_size_type_index": "1", "expand_time": "2023-08-03T02:10:52", "resize_time": "2023-08-02T02:10:52" } ] } 状态码: 400 响应失败示例 { "error_code" : "GES.7006", "error_msg" : "An internal error occurs in the underlying service of the graph engine." }
  • 响应示例 状态码: 200 成功响应示例 { "jobs": [ { "jobId": "b236a002-6acb-40cd-acca-bc3eb96b807d001680206", "rawRequest": "{\"algorithmName\":\"shortest_path\",\"parameters\":{\"source\":\"0000\",\"target\":\"38\"}}", "taskType": "Algorithm", "canStop": false, "progress": "100", "startTime": "2024-05-23 09:54:00", "failReason": "Running algorithm [shortest_path] error: parameter [source] is invalid!", "endTime": "2024-05-23 09:54:00", "status": "failed" }, { "jobId": "5a39d9f6-e955-4294-8ec6-2fe18eee98c7001680206", "rawRequest": "{\"algorithmName\":\"shortest_path\",\"parameters\":{\"source\":\"46\",\"target\":\"38\"}}", "taskType": "Algorithm", "canStop": false, "progress": "100", "startTime": "2024-05-23 09:41:40", "endTime": "2024-05-23 09:41:40", "status": "success" }, { "jobId": "cef6ae30-f21b-4a2a-a83c-cf91bee679d9001680206", "rawRequest": "", "taskType": "ImportGraph", "canStop": false, "progress": "100", "files": [ { "edgeFiles": [ { "fileName": "/root/ges-install/auDatas/ranking_edge.csv", "totalLines": 1659, "startTime": 1716428001745772, "successfulLines": 1659, "endTime": 1716428001757920, "status": "success", "failedLines": 0 } ] }, { "vertexFiles": [ { "fileName": "/root/ges-install/auDatas/movies_vertex_new.csv", "totalLines": 146, "startTime": 1716428001656072, "successfulLines": 146, "endTime": 1716428001659352, "status": "success", "failedLines": 0 } ] }, { "schemaFiles": [ { "totalLabels": 49, "fileName": "/root/ges-install/auDatas/schema.xml.bak", "failedLabels": 0, "startTime": 1716428001563921, "successfulLabels": 49, "endTime": 1716428001655884, "status": "success" } ] } ], "startTime": "2024-05-23 09:33:21", "endTime": "2024-05-23 09:33:21", "status": "success" } ], "jobCount": 3 }
共100000条