华为云用户手册
-
前提条件 如果您还没有目标Redis,请先创建目标Redis,具体操作请参考购买Redis实例。 如果您已有目标Redis,则不需要重复创建,为了对比迁移前后数据及预留足够的内存空间,建议在数据迁移之前清空目标实例数据,清空操作请参考清空Redis实例数据。如果没有清空实例数据,数据迁移后,目标Redis与源Redis实例重复的数据迁移后会被覆盖,源Redis没有、目标Redis有的数据会保留。 已创建弹性 云服务器ECS ,创建弹性云服务器的方法,请参见创建弹性云服务器。 E CS 请选择与DCS Cluster集群实例相同虚拟私有云、子网和安全组,并且需要绑定弹性公网IP。 自建的源Redis Cluster集群如果是在本地或者其他云厂商的服务器上自建,需要允许被公网访问。
-
前提条件 在迁移之前,请先阅读迁移方案概览,选择正确的迁移方案,了解当前DCS支持的在线迁移能力,选择适当的目标实例。 如果是单机/主备等多DB的源端实例迁移到Proxy集群实例,Proxy集群默认不开启多DB,仅有一个DB0,请先确保源端实例DB0以外的DB是否有数据,如果有,请先参考开启多DB操作开启Proxy集群多DB设置。 如果是单机/主备等多DB的源端实例迁移到Cluster集群实例,Cluster集群不支持多DB,仅有一个DB0,请先确保源端实例DB0以外的DB是否有数据,如果有,请将数据转存到DB0,否则会出现迁移失败,将数据转存到DB0的操作请参考使用Rump在线迁移。 准备源Redis的备份文件,备份文件的格式必须为.aof、.rdb、.zip或.tar.gz。 如果您还没有目标Redis,请先创建目标Redis,具体操作请参考购买Redis实例。 如果您已有目标Redis,则不需要重复创建,为了对比迁移前后数据及预留足够的内存空间,建议在数据迁移之前清空目标实例数据,清空操作请参考清空Redis实例数据。如果没有清空实例数据,数据迁移后,目标Redis与源Redis实例重复的数据迁移后会被覆盖,源Redis没有、目标Redis有的数据会保留。
-
创建OBS桶并上传备份文件 如果上传的源Redis备份文件小于5GB,请执行以下步骤,通过OBS控制台创建OBS桶并上传备份文件。如果上传的源Redis备份文件大于5GB,请参考超过5GB如何上传上传备份文件。 通过OBS控制台,创建OBS桶。 在创建过程中,以下两个参数请按要求设置,其他详细的创建步骤,请参考创建桶章节。 选择“区域”。 OBS桶所在区域必须跟DCS目标Redis实例所在区域相同。 设置“存储类别”,当前支持“标准存储”、“低频访问存储”和“归档存储”。 请不要选择“归档存储”,否则会导致备份文件迁移失败。 在OBS管理控制台的桶列表中,单击1中创建的桶名称,进入“概览”页面。 在左侧导航栏,单击“对象”。 在“对象”页签下,单击“上传对象”,系统弹出“上传对象”对话框。 指定对象的存储类别。 请不要选择“归档存储”,否则会导致备份文件迁移失败。 上传对象。 您可以拖拽本地文件或文件夹至“上传对象”区域框内添加待上传的文件,也可以通过单击“上传对象”区域框内的“添加文件”,选择本地文件添加。 单次最多支持100个文件同时上传,总大小不超过5GB。 图1 上传对象 选择服务端加密方式,支持选择“SSE-KMS”、“SSE-OBS”或“不开启加密”,详情请参见服务端加密。 单击“上传”。
-
生成AOF文件 登录弹性云服务器。 安装Redis-cli客户端。该操作以客户端安装在Linux系统上为例进行说明。 执行如下命令下载Redis。您也可以安装其他Redis版本。具体操作,请参见Redis官网。 wget http://download.redis.io/releases/redis-5.0.8.tar.gz 执行如下命令,解压Redis客户端源码包。 tar -xzf redis-5.0.8.tar.gz 进入Redis目录并编译Redis客户端源码。 cd redis-5.0.8 make cd src 执行如下命令开启缓存持久化,得到AOF持久化文件。 redis-cli -h {source_redis_address} -p {port} -a {password} config set appendonly yes {source_redis_address}为源Redis的连接地址,{port}为源Redis的端口,{password}为源Redis的连接密码。 开启持久化之后,如果AOF文件大小不再变化,说明AOF文件为全量缓存数据。 使用redis-cli登录Redis实例,输入命令“config get dir”可以查找生成的AOF文件保存路径,文件名如果没有特殊指定,默认为:appendonly.aof。 生成AOF文件后如需关闭同步,可使用redis-cli登录redis实例,输入命令“config set appendonly no”进行关闭。
-
前提条件 如果您还没有目标Redis,请先创建目标Redis,具体操作请参考购买Redis实例。 如果您已有目标Redis,则不需要重复创建,为了对比迁移前后数据及预留足够的内存空间,建议在数据迁移之前清空目标实例数据,清空操作请参考清空Redis实例数据。如果没有清空实例数据,数据迁移后,目标Redis与源Redis实例重复的数据迁移后会被覆盖,源Redis没有、目标Redis有的数据会保留。 已创建弹性云服务器ECS,创建弹性云服务器的方法,请参见创建弹性云服务器。
-
迁移步骤 分别在华为云ECS和源端转发服务器上安装Nginx,本文以ECS操作系统为Centos7.x为例进行安装,不同操作系统命令稍有不同。 执行以下命令,添加Nginx到yum源。 sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm 添加完之后,执行以下命令,查看是否已经添加成功。 yum search nginx 添加成功之后,执行以下命令,安装Nginx。 sudo yum install -y nginx 执行以下命令安装stream模块。 yum install nginx-mod-stream --skip-broken 启动Nginx并设置为开机自动运行。 sudo systemctl start nginx.service sudo systemctl enable nginx.service 在本地浏览器中输入服务器地址(ECS公网IP地址),查看安装是否成功。 如果出现下面页面,则表示安装成功。 在源端Redis添加源端转发服务器的白名单。 在源端转发服务器配置安全组。 获取华为云ECS的公网IP地址。 配置源端转发服务器安全组入方向,添加华为云ECS的公网IP地址,并放开来自华为云ECS访问请求的端口(以6379为例)。 配置源端转发服务器的Nginx转发配置。 登录Linux源端转发服务器,执行命令打开并修改配置文件。 cd /etc/nginx vi nginx.conf 转发配置示例如下: stream { server { listen 6379; proxy_pass {source_instance_address}:{port}; } } 其中,6379为源端转发服务器本机监听端口,{source_instance_address}和{port}为源端Redis实例的连接地址和端口。 配置目的:通过访问源端转发服务器本机监听端口6379,访问源端Redis。 注意:以上配置必须配置在如下图所示的位置。 图2 配置位置要求 重启Nginx服务。 service nginx restart 验证启动是否成功。 netstat -an|grep 6379 端口在监听状态,Nginx启动成功。 图3 验证结果 配置华为云ECS的Nginx转发配置。 登录Linux华为云ECS,执行命令打开并修改配置文件。 cd /etc/nginx vi nginx.conf 配置示例如下: stream { server { listen 6666; proxy_pass {source_ecs_address}:6379; } } 其中,6666为华为云ECS本机监听端口,{source_ecs_address}为源端转发服务器公网IP地址,6379为源端转发服务器Nginx的监听端口。 配置目的:通过访问华为云ECS本机监听端口6666,访问源端转发服务器。 注意:以上配置必须配置在如下图所示的位置。 图4 配置位置要求 重启Nginx服务。 service nginx restart 验证启动是否成功。 netstat -an|grep 6666 端口在监听状态,Nginx启动成功。 图5 验证结果 在华为云ECS执行以下命令测试6666端口的网络连接。 redis-cli -h {target_ecs_address} -p 6666 -a {password} 其中,{target_ecs_address}为华为云ECS公网IP地址,6666为华为云ECS监听端口,{password}为源端Redis密码,如无密码可不填。 图6 连接示例 准备迁移工具RedisShake。 登录华为云ECS。 在华为云ECS中执行以下命令下载RedisShake,本文以下载2.0.3版本为例进行说明。您可以根据实际需要下载其他RedisShake版本。 wget https://github.com/tair-opensource/RedisShake/releases/download/release-v2.0.3-20200724/redis-shake-v2.0.3.tar.gz 执行命令解压RedisShake文件。 tar -xvf redis-shake-v2.0.3.tar.gz 配置RedisShake的配置文件。 执行命令进入解压后的目录。 cd redis-shake-v2.0.3 修改配置文件redis-shake.conf。 vim redis-shake.conf 修改源端Redis信息配置: source.type 源端redis实例类型,单机、主备、proxy集群实例都选择standalone,cluster实例选择cluster。 source.address 华为云ECS公网IP地址和映射源端转发服务器的端口(华为云ECS监听端口6666),用英文冒号隔开。 source.password_raw 源端待迁移Redis实例的密码,如未设置密码,无需填写。 修改目标端DCS信息配置: target.type 华为云Redis实例类型,单机、主备、proxy集群实例都选择standalone,cluster实例选择cluster。 target.address 华为云Redis实例的连接地址和端口,用英文冒号隔开。 target.password_raw 华为云Redis实例的密码,如未设置密码,无需填写。 按下Esc键退出编辑模式,输入:wq!按回车键保存配置并退出编辑界面。 执行命令启动RedisShake并使用rump(在线全量)模式开始数据迁移。 ./redis-shake.linux -conf redis-shake.conf -type rump 图7 迁移过程 图8 迁移结果 迁移完成后,请使用redis-cli工具连接源Redis和目标Redis,确认数据的完整性。 分别连接源Redis和目标Redis。 连接操作请参考redis-cli连接。 输入info keyspace,查看keys参数和expires参数的值。 对比源Redis和目标Redis的keys参数分别减去expires参数的差值。如果差值一致,表示数据完整,迁移正常。 删除RedisShake配置文件。
-
约束与限制 Rump模式不支持增量数据迁移,建议您先停止源端Redis的写入再进行迁移,防止数据不一致。 该方案配置只支持同DB映射迁移,异DB映射迁移该方案配置不适用。 源端为多DB使用(有非DB0的DB使用),华为云DCS为Proxy集群时,DCS需要开启多DB模式,否则会迁移失败(单DB0的Proxy集群不支持select命令)。 源端为多DB使用(有非DB0的DB使用),华为云DCS为Cluster集群时,该方案不支持(DCS Cluster集群只支持DB0模式)。
-
导出备份文件 执行命令进入解压后的RedisShake文件目录。 cd redis-shake-v2.0.3 编辑RedisShake工具配置文件redis-shake.conf,补充源端所有master节点的连接信息。 vim redis-shake.conf 修改内容如下: source.type = cluster #如果无密码,本项不填 source.password_raw = {source_redis_password} #源Cluster集群所有master节点的IP地址与端口,以分号分隔 source.address = {master1_ip}:{master1_port};{master2_ip}:{master2_port}…{masterN_ip}:{masterN_port} 修改后按下Esc键退出编辑模式,输入:wq!按回车键保存配置并退出编辑界面。 执行以下命令导出源Redis集群的RDB格式备份文件。 ./redis-shake -type dump -conf redis-shake.conf 执行日志中出现如下信息时导出备份文件完成: execute runner[*run.CmdDump] finished!
-
安装RedisShake 登录弹性云服务器ECS。 在ECS中执行以下命令下载RedisShake。本文以下载2.1.2版本为例,您可以根据实际需要下载其他RedisShake版本。 wget https://github.com/tair-opensource/RedisShake/releases/download/release-v2.1.2-20220329/release-v2.1.2-20220329.tar.gz 执行命令解压RedisShake文件。 tar -xvf redis-shake-v2.1.2.tar.gz 如果源Cluster部署在数据中心内网,则需在内网服务器上安装RedisShake,并参考导出备份文件导出源Cluster备份文件,然后将备份文件上传到云服务器。
-
导入备份文件 将导出的RDB备份文件(含多个)上传到与云服务器上。云服务器与目标端DCS Cluster集群实例的网络连通。 编辑RedisShake工具配置文件redis-shake.conf。补充目标端所有master节点的连接信息。 vim redis-shake.conf 修改内容如下: target.type = cluster #如果无密码,本项不填 target.password_raw = {target_redis_password} #目标Cluster集群所有master节点的IP地址与端口,以分号分隔 target.address = {master1_ip}:{master1_port};{master2_ip}:{master2_port}…{masterN_ip}:{masterN_port} #需要导入的rdb文件列表,用分号分隔 rdb.input = {local_dump.0};{local_dump.1};{local_dump.2};{local_dump.3} 修改后按下Esc键退出编辑模式,输入:wq!按回车键保存配置并退出编辑界面。 使用如下命令导入RDB备份文件到目标Cluster集群: ./redis-shake -type restore -conf redis-shake.conf 执行日志中出现如下信息时导入备份文件完成: Enabled http stats, set status (incr), and wait forever.
-
获取源Redis和目标Redis节点信息 分别连接源端和目标端Redis。连接Redis的方法请参考Redis-cli客户端连接Redis。 在线迁移Cluster集群时需要将Cluster集群各个节点数据分别迁移。执行如下命令分别查询源端和目标Cluster集群的所有节点的IP地址与端口: redis-cli -h {redis_address} -p {redis_port} -a {redis_password} cluster nodes {redis_address}为Redis的连接地址,{redis_port}为Redis的端口,{redis_password}为Redis的连接密码。 在命令返回的结果中,获取所有master节点的IP端口,如下如所示:
-
创建OBS桶并上传备份文件 如果上传的源Redis备份文件小于5GB,请执行以下步骤,通过OBS控制台创建OBS桶并上传备份文件。如果上传的源Redis备份文件大于5GB,请参考超过5GB如何上传上传备份文件。 通过OBS控制台,创建OBS桶。 在创建过程中,以下两个参数请按要求设置,其他详细的创建步骤,请参考创建桶章节。 选择“区域”。 OBS桶所在区域必须跟DCS目标Redis实例所在区域相同。 设置“存储类别”,当前支持“标准存储”、“低频访问存储”和“归档存储”。 请不要选择“归档存储”,否则会导致备份文件迁移失败。 在OBS管理控制台的桶列表中,单击1中创建的桶名称,进入“概览”页面。 在左侧导航栏,单击“对象”。 在“对象”页签下,单击“上传对象”,系统弹出“上传对象”对话框。 指定对象的存储类别。 请不要选择“归档存储”,否则会导致备份文件迁移失败。 上传对象。 您可以拖拽本地文件或文件夹至“上传对象”区域框内添加待上传的文件,也可以通过单击“上传对象”区域框内的“添加文件”,选择本地文件添加。 单次最多支持100个文件同时上传,总大小不超过5GB。 图1 上传对象 选择服务端加密方式,支持选择“SSE-KMS”、“SSE-OBS”或“不开启加密”,详情请参见服务端加密。 单击“上传”。
-
前提条件 在迁移之前,请先阅读迁移方案概览,选择正确的迁移方案,了解当前DCS支持的在线迁移能力,选择适当的目标实例。 如果是单机/主备等多DB的源端实例迁移到Proxy集群实例,Proxy集群默认不开启多DB,仅有一个DB0,请先确保源端实例DB0以外的DB是否有数据,如果有,请先参考开启多DB操作开启Proxy集群多DB设置。 如果是单机/主备等多DB的源端实例迁移到Cluster集群实例,Cluster集群不支持多DB,仅有一个DB0,请先确保源端实例DB0以外的DB是否有数据,如果有,请将数据转存到DB0,否则会出现迁移失败,将数据转存到DB0的操作请参考使用Rump在线迁移。 准备源Redis的备份文件,备份文件的格式必须为.aof、.rdb、.zip或.tar.gz。 如果您还没有目标Redis,请先创建目标Redis,具体操作请参考购买Redis实例。 如果您已有目标Redis,则不需要重复创建,为了对比迁移前后数据及预留足够的内存空间,建议在数据迁移之前清空目标实例数据,清空操作请参考清空Redis实例数据。如果没有清空实例数据,数据迁移后,目标Redis与源Redis实例重复的数据迁移后会被覆盖,源Redis没有、目标Redis有的数据会保留。
-
注意事项 数据迁移会把数据库各个表中的全部数据作为点或者边数据集导入到图实例,因此需要确保数据库中的表已经被处理为点或者边数据。 点边表中支持的数据类型,参考一般图数据格式章节中的属性说明。 点表格式:点ID列名,点Label列名,点属性列名1,点属性列名2,... 图1 点表格式 点表的数据如下图所示: 图2 点表数据 边表格式:源点ID列名,终点ID列名,边Label列名,边属性列名1,边属性列名2,... 图3 边表格式 边表的数据如下图所示: 图4 边表的数据
-
委托权限优化 登录图引擎服务管理控制台,在左侧导航栏,选择“图管理”。 如果未整改,在界面的上部,会看到委托权限待整改通知。 单击“前往进行整改”,弹出优化委托权限界面,如图1所示。 注意:该界面会提醒用户在使用GES服务时,部分场景需要委托以授权GES服务访问用户资源,系统会创建ges_access_vpc_custom自定义策略,并授权给ges_agency,以及列举出待删除的具有高风险的委托权限,以提升账号安全性。 图1 优化委托权限 手动输入或者一键输入“DELETE”,执行优化操作,执行成功后该界面会自动关掉待整改通知。 如果当前用户没有查询委托权限,系统无法根据当前用户的认证凭据查询委托信息,整改通知会在每次进入界面时都会弹出,并提示用户通知管理员进行整改。用户也可以关闭该通知或者设置“不再提醒”。
-
操作步骤 登录图引擎服务管理控制台,在左侧导航栏中选择“数据迁移”。 在“数据迁移”页签单击“新建”。 图1 新建数据迁移 设置数据源配置参数。 任务名称:自定义名称,不能与已有任务名称重复,长度在4位到50位之间,必须以字母开头,不区分大小写,可以包含字母、数字、下划线,不能包含其他的特殊字符。 数据源:根据需要选择已创建完成的数据源。 关联图名称:选择数据源后自动显示。 图2 数据源配置 设置元数据配置。 点文件源列表:选择点数据所在的表,从左侧选中表后需要单击添加到右侧。 边文件源列表:选择边数据所在的表,从左侧选中表后需要单击添加到右侧。 schema文件:首次创建迁移任务时,按步骤5操作生成schema文件,完成后选择schema文件(ECS/BMS+ MRS 模式下需要选择schema文件的存储路径)。 图3 元数据配置 生成schema文件。 单击“生成schema”按钮进行生成。 图4 schema文件 在页面右侧弹出的窗口中,填写“schema名称”,并选择“schema存储路径”,填写完成后单击“确定”提交创建元数据任务。 图5 创建元数据 在弹窗中单击“跳转”会开启一个新窗口跳转到“数据迁移”页面,您可以查看创建元数据任务状态,等待任务执行成功。 图6 创建成功弹窗 图7 查看创建元数据任务状态 在新建数据迁移页面,接着填写信息,设置导入配置。 重复边处理:选择重复边处理策略(持久化版图仅支持覆盖或忽略重复边)。 开启重复边忽略Label:重复边定义是否包含label(持久化版图不涉及)。 开启离线导入:是否离线导入(离线导入期间图不可读不可写,持久化版图不涉及)。 图8 导入配置 设置存储路径配置。 点文件存储路径:用于存放从数据源的数据库导出的点数据。 边文件存储路径:用于存放从数据源的数据库导出的边数据。 日志存放路径:用于存放导入时产生的日志文件。 图9 存储路径配置 全部填写完成后,单击创建,在“数据迁移”页签查看迁移任务进度及结果。 图10 查看迁移结果 可以单击操作列的“详情”,查看每个点边数据集的任务状态。 图11 任务详情
-
操作步骤 登录图引擎服务管理控制台,在左侧导航栏中选择“数据迁移”。 在“数据源管理”页签单击“新建”。 图1 新建数据源管理 在新建数据源页面,输入对应的数据源信息,具体参数如下: 数据源名称:自定义名称,长度在4位到50位之间,必须以字母开头,不区分大小写,可以包含字母、数字、下划线,不能包含其他的特殊字符。 数据源类型:按实际数据源选择,目前支持Mysql、神通数据库、Oracle、DWS、Hive。 图名称:选择需要导入数据的图。 网段CIDR:数据源所在子网的网段。 访问IP地址:数据源的数据库的IP。 访问端口:数据源的数据库的端口(Hive不涉及)。 数据库名称:数据源的数据库的名称。 数据库用户名:访问数据源的数据库的用户名(Hive不涉及)。 数据库密码:访问数据源的数据库的用户密码(Hive不涉及)。 是否需要验证:Hive所在MRS集群是否开启Kerberos认证(仅Hive涉及)。 MRS集群用户名称:Hive所在MRS集群的用户名,当Kerberos认证关闭时可不填(仅Hive涉及)。 MRS集群用户认证凭证:Hive所在MRS集群的用户的认证凭证,当Kerberos认证关闭时可不传(仅Hive涉及)。 MRS集群Hive客户端文件:Hive客户端文件(仅Hive涉及)。 参数填写完成后单击“确定”。 图2 数据源信息 查看数据源状态,等待创建完成。
-
修改安全模式 创建图之后,您若想要修改安全模式,可以在图详情中进行操作。 2.4.4及以上版本,且必须是运行状态的图支持该功能。 具体操作步骤如下: 登录图引擎服务管理控制台,在左侧导航栏中选择“图管理”。 在图管理页面,选中想要修改安全模式的图,页面下方将会显示该图的信息。 图1 图详情页签 在图信息详情中,可以修改安全模式的状态,进行打开或者关闭。 更改安全模式中,按钮置灰不可使用,您可以到任务中心查看任务进度。 图2 查看任务状态 父主题: 管理图
-
查看快照 在图引擎编辑器左侧的区域内选择“快照”模块,界面会展示您保存的快照信息。 图2 快照界面 缩略图:快照缩略图,当鼠标放在缩略图上时,会自动放大快照图。 快照名称和ID:名称可修改。快照ID不可修改,ID由系统自动生成,用于导入快照时对各个保存的文件进行区分,相同ID的文件导入时会覆盖。 图信息:显示当前快照所保存的图数据。 主题色:记录保存快照时,画布的主题颜色。 快照的创建时间和修改时间。 操作列功能: 查看:将选择的快照展示在画布上。若您当前主题的颜色与当时保存的快照颜色不同,会有提示信息如图3所示。单击“是”系统会切换到快照保存时的主题,单击“否”系统会继续使用当前画布主题色。 图3 主题切换 删除:删除快照。确认即将要删除的快照信息后,需要在弹出的窗口中输入“DELETE”(或单击“一键输入”),输入完成后单击“确定”进行删除。 图4 删除快照 更多:包含下载和下载缩略图。 下载:将快照的JSON文件进行下载,保存到本地。 下载缩略图:以图片形式下载快照保存到本地。 删除图会将存储的快照一起删除,所以删除图前请先下载快照。
-
创建HyG图 创建完持久化版图集群后,进入图引擎编辑器页面,详细操作请参见访问图引擎编辑器。 在左上角的“HyG图管理”页签下,单击“创建HyG图”。 图1 创建HyG图 在弹出的窗口中,选择“切分策略”(当前仅支持oec策略)和“是否包含入边”,选择完成后单击“确定”。 切分策略:图的切分策略,oec(out edge cut)代表出边切分,使用默认选项即可。 是否包含入边:图是否包含入边,设置为true会影响数据同步性能。 图2 选择参数 创建成功HyG图后,可以进行“数据导入”或者“数据同步”。 数据导入:用户可以导入新的点边数据,具体请参见数据导入。 数据同步:将用户在图数据库中已有的点边数据同步至计算引擎,具体请参见数据同步。 图3 数据导入 若您想删除Hyg图,单击“删除HyG图”,在弹出框中输入“DELETE”,完成删除操作。 图4 删除HyG图
-
数据导入 单击“数据导入”,在右侧弹出的窗口中,填写以下参数: AccessKey:用户的访问密钥ID。 SecretKey:与访问密钥ID结合使用的密钥。 点数据集:点文件目录或点文件名,支持csv、txt格式文件导入。 边数据集:边文件目录或边文件名,支持csv、txt格式文件导入。 元数据:新增数据的元数据文件OBS路径。 日志存储路径:导入图日志存放目录,用于存储导入失败的数据和详细错误原因。 字段分隔符:csv格式文件字段分隔符,默认值为逗号(,)。 字段包围符:csv格式文件字段包围符,用来包围一个字段,如字段中含有分隔符或者换行等,默认值为双引号(")。 点属性列表:点属性列表,指定的属性需属于schema文件中的属性,如果列表为空,则不会导入点属性。 边属性列表:边属性列表,指定的属性需属于schema文件中的属性,如果列表为空,则不会导入边属性。 图5 数据导入 填写完成后,单击“确定”,导入后的数据会显示在HyG图信息详情里。 图6 HyG图信息展示
-
任务类型对应表 表2 任务类型和任务名称对应表 任务类型 任务名称 100 点查询 101 创建点 102 删除点 103 修改点属性 104 添加点Label 105 删除点Label 200 边查询 201 创建边 202 删除边 203 修改边属性 300 查询Schema详情 301 添加Label 302 修改Label 303 查询Label 304 修改属性 400 查询图详情 401 清空图 402 在线增量导入图 403 创建图 405 删除图 406 导出图 407 filtered_khop 408 查询路径详情 409 离线增量导入图 500 创建备份 501 从备份恢复图 601 创建索引 602 查询索引 603 更新索引 604 删除索引 700 运行算法
-
实例概况 进入图实例的运维监控页面后,您可以看到图实例概况,展示了图实例的状态,实时资源消耗,资源消耗,业务负载等信息。下面为您进行详细说明各个模块的作用: 图集群状态 在图集群状态模块,您可以浏览当前图实例基本信息和容量、请求数等统计信息。 集群信息:包括图规格、CPU架构。 集群容量:包括点和边的使用量、容量和使用率。 集群节点:包括CN节点可用数量/总数量、DN节点可用数量/总数量。 集群请求数统计:包括等待中的读请求个数、运行中的读请求个数、等待中的写请求个数、运行中的写请求个数。 图2 图集群状态 告警统计 在告警统计模块,您可以查看当前实例未消除的所有告警,以及过去7天实例产生的所有告警信息。 图3 告警统计 实例资源 在实例资源模块,您可以查看当前实例资源使用情况,包括“CPU使用率”,“磁盘I/O”,“磁盘使用率”,“内存使用率”,“网络I/O值”。单击对应资源指标可显示过去72小时该指标的变化趋势,以及该资源当前时刻的Top5节点使用情况。 图4 实例资源 业务负载 在业务负载模块,您可以查看当前数据库业务负载指标QPS在过去72小时该指标的变化趋势。 图5 业务负载
-
监控项列表 通过图实例运维监控功能提供的相关监控项,用户可以从中获取有关图实例的状态以及可用资源数量等,并深入了解当前实例实时的资源消耗情况。 图引擎服务(GES)相关监控项指标,具体请参见表 图引擎服务(GES)监控列表。 表1 图引擎服务(GES)监控列表 监控对象 指标名称 含义 取值范围 监控周期(原始指标) 实例概览指标 集群信息 实例的规格、CPU架构 字符串 - 集群容量 实例的点、边使用量、总量和使用率 ≥ 0 实时 集群节点 实例底层资源中可用节点的类型、数量和节点的总数(可用/总数)。 ≥ 0 实时 集群请求数统计 实例中等待中、运行中的读请求、写请求个数。 ≥ 0 实时 实例业务负载指标 QPS 实例每秒处理的请求个数 ≥ 0 5min 图实例资源消耗指标 CPU平均使用率 实例主节点的平均CPU使用率。 0%~100% 5min 内存使用率 实例主节点的平均内存使用率。 0%~100% 5min 磁盘使用率 实例主节点的磁盘的平均使用率。 0%~100% 5min 磁盘I/O使用率 实例主节点的平均I/O使用率。 0%~100% 5min 网络I/O使用率 实例主节点的平均I/O使用率。 0%~100% 5min 节点监控-概览 节点名称 实例中节点的名称。 字符串 - CPU使用率 节点的CPU使用率。 0%~100% 5min 内存使用率 节点的内存使用率。 0%~100% 5min 平均磁盘使用率 节点磁盘使用率。 0%~100% 5min IP地址 节点的业务IP地址。 字符串 5min 磁盘I/O 节点的磁盘I/O,单位: KB/s。 ≥ 0KB/s 5min TCP协议栈重传率 单位时间内TCP报的重发率。 0%~100% 5min 状态 节点的运行状态。 运行中\故障 5min 节点监控-磁盘 节点名称 实例中的节点名称。 字符串 5min 磁盘名 节点上磁盘名称。 字符串 5min 磁盘容量 节点上磁盘的容量,单位: GB。 ≥ 0GB 5min 磁盘使用率 节点上磁盘的使用率。 0%~100% 5min 磁盘读速率 节点上磁盘读速率,单位: KB/s。 ≥ 0KB/S 5min 磁盘写速率 节点上磁盘写速率,单位:KB/s。 ≥ 0KB/S 5min I/O等待时间-await 平均每次I/O请求的等待时间,单位:ms。 ≥ 0ms 5min I/O服务时间-svctm 平均每次I/O请求的处理时间,单位:ms。 ≥ 0ms 5min I/O使用率-util 主机上I/O的使用率。 0%~100% 5min 节点监控-网络 节点名称 实例中的节点名称。 字符串 5min 网卡名称 节点上的网卡名称。 字符串 5min 网卡状态 网卡状态。 up/down 5min 网卡速度 网卡工作速率,单位:Mbps。 ≥ 0 5min 接收包数 网卡的接收包数。 ≥ 0 5min 发送包数 网卡的发送包数。 ≥ 0 5min 接收丢包数 网卡的接收丢包数。 ≥ 0 5min 接收速率 网卡单位时间内接收到的字节数,单位:KB/s。 ≥ 0KB/s 5min 发送速率 网卡单位时间内发送出的字节数,单位:KB/s。 ≥ 0KB/s 5min 性能监控 集群CPU使用率 实例中主节点的平均CPU使用率。 0%~100% 5min 集群内存使用率 实例中主节点的平均内存使用率。 0%~100% 5min 集群磁盘使用率 实例中主节点的平均磁盘使用率。 0%~100% 5min 集群磁盘I/O 实例中主节点磁盘的平均磁盘I/O数值。 0%~100% 5min 集群网络I/O 实例中主节点网卡的平均网络I/O数值。 0%~100% 5min tomcat连接数使用率 实例中主节点HTTP连接数使用率。 0%~100% 5min 集群swap盘使用率 实例中主节点swap交换分区盘使用率 0%~100% 5min jvm堆内存使用率 实例中主节点JVM堆内存使用率。 0%~100% 5min 读请求运行队列长度 当前实例运行中的读请求个数。 ≥ 0 5min 读请求阻塞队列长度 当前实例阻塞中的读请求个数。 ≥ 0 5min 实时查询 请求ID 当前查询的请求ID。 字符串 实时 任务名称 当前查询的任务名称。 字符串 实时 请求参数 当前查询的请求参数。 字符串 实时 进度 当前查询执行的进度 0%~100% 实时 阻塞时长 当前查询阻塞时长,单位为秒。 ≥ 0 实时 开始时间 当前查询开始时间。 字符串 实时 结束时间 当前查询结束时间。 字符串 实时 运行时长 当前查询运行时长,单位为秒。 ≥ 0 实时 历史查询 任务ID 历史查询的任务ID。 字符串 实时 任务类型 历史查询的任务类型。 字符串 实时 原始请求 历史查询的原始请求。 字符串 实时 状态 历史查询的任务状态。 字符串 实时 进度 历史查询的任务执行进度。 0%~100% 实时 开始时间 历史查询的任务开始时间。 字符串 实时 结束时间 历史查询的任务结束时间。 字符串 实时 运行结果 历史查询的任务执行结果 字符串 实时 父主题: 运维监控与告警
-
从OBS中导入备份 将导出到OBS的备份文件导入到图中,导入成功后使用该备份还原图实例。 持久化的图暂不支持该功能。 只有2.3.16及以上版本的内存版的图支持该功能,低版本的图需要您先进行升级图操作,升级到最新版本再进行导入。 具体操作步骤如下: 登录图引擎服务管理控制台,在左侧导航栏选择“备份管理”。 在“备份管理”页面右上角,单击“导入”。 在弹出的对话框中,选择将要导入的图和存放备份图数据的OBS路径,单击“是”完成导入备份的图数据。 图1 导入备份数据 OBS导入路径请选择目录层级(文件夹),否则会导致导入备份失败。 任务下发成功后,可以在任务中心查看任务执行情况。 父主题: 备份图和恢复图
-
导出备份到OBS 为了实现GES跨Region数据迁移,您可以选择将备份文件导出到OBS。 持久化的图暂不支持该功能。 只有2.3.16及以上版本的内存版的图支持该功能,低版本的图需要您先进行升级图操作,升级到最新版本再进行导出。 您需要先在“图管理”页面对图进行成功备份,让图出现在“备份管理”页面,具体操作请参考备份图。 在“备份管理”页面中,关联图的状态是运行中,备份状态是成功的图才可以导出到OBS,否则导出按钮是置灰状态。 登录图引擎服务管理控制台,在左侧导航栏选择“备份管理”。 在备份列表中,选择需要导出的备份数据,在“操作”列,单击“导出”。 在弹出的对话框中,检查备份信息无误后,选择OBS路径。 注意:OBS导出路径只能选择空目录,且导出后该目录下面的图数据文件不能进行删除、新增或者修改操作,否则您再从OBS导入备份到图中时会备份失败。 图1 导出到OBS 选择完成后,单击“是”进行备份。 备份文件存储到OBS会收取费用,具体可以参考OBS服务收费标准。 任务下发成功后,可以在任务中心查看任务执行情况。 父主题: 备份图和恢复图
-
新增图和删除图 创建完持久化版图集群后,进入图引擎编辑器页面,详细操作请参见访问图引擎编辑器。 在页面左上角,单击“新增图”按钮,在弹出的新增图窗口中填写图名称、选择点ID类型和SortKey类型。 图2 新增图 ID类型:目前支持固定长度String、可变长度String和哈希三种点ID类型。 String(固定长度):实际点ID直接用于内部存储与计算,需指定一长度,实际点ID不可超过此长度。长度过大可能影响查询性能,建议根据数据集状态进行设置。选择固定长度String格式,还需填写点ID长度。 String(可变长度):用户写入的点ID无长度限制,但是ID过长会影响读写性能,建议长度控制在1K字节以内,最大不要超过4K字节。 哈希格式下,内部计算时将实际点ID转换成哈希码进行存储与计算,对实际点ID长度无限制,但是存在极低的概率(约10^(-43))出现点ID碰撞。 若用户无法确定点ID的最大长度,建议选择哈希类型。 SortKey类型:选择SortKey的值类型,通过配置不同SortKey的值来区分重复边(源点,终点,Label三者都相同的边)。 整数:整数类型。 String(字节长度小于等于40):导入大于40的SortKey将报错。 String(可变长度):长度无限制,但是过长会影响读写性能,建议长度控制在1K字节以内,最大不要超过2K字节。 填写完成后,单击“确定”完成新增图操作。 若您需要删除某个图实例,可以单击“删除图”按钮,来完成删除图操作。
-
概述 时序路径分析算法(Temporal Paths)区别于静态图上的路径分析,结合了动态图上信息传播的有序性,路径上后一条边的经过时间要晚于或等于前一条边,呈现时间递增(或非减)性。 时序路径不满足传递性:即从节点i到节点j有一条时序路径,从节点j到节点k有一条时序路径,并不能说明从节点i到节点k有一条时序路径。因此在求解问题上,相较于静态图上的路径求解复杂度升高,计算难度变大,但时序路径分析在实际生活中用途很广,例如计算出行路线,模拟/搜索信息传播路径等。 Temporal Paths根据求解目标的差异可分为不同的类型,常见的有:Shortest, Foremost, 以及 Fastest Temporal Paths。 Shortest Temporal Paths:表示距离最短的时序路径。 Foremost Temporal Paths:表示尽可能早的到达目标节点的时序路径。 Fastest Temporal Paths :表示耗费时间最短的时序路径。
-
参数说明 表1 Temporal Paths参数说明 参数 是否必选 说明 类型 取值范围 默认值 source 是 起点id String - - targets 是 终点id集合 String csv格式,ID之间以英文逗号分隔,例如:“Alice,Nana”,个数不大于100000。 1000 directed 否 是否考虑边的方向 Boolean true 或false,布尔型。 false k 否 最大深度 Integer 1-100,包括1和100 3 strategy 否 运行的算法策略 String 取值范围:shortest,foremost,fastest。 (注:fastest暂不支持) shortest:运行shortest temporal paths算法,返回距离最短的时序路径 foremost:运行foremost temporal paths算法,返回尽可能早的到达目标节点的时序路径 fastest:运行fastest temporal paths算法,返回耗费时间最短的时序路径 shortest 表2 动态时间范围设置(dynamicRange)说明 参数 是否必选 说明 类型 取值范围 默认值 start 是 动态分析起始时间 Date/ Integer - - end 是 动态分析终止时间 Date/ Integer - - time_props 是 动态分析的时间属性定义 Object - - 表3 动态分析的时间属性(time_props)说明 参数 是否必选 说明 类型 取值范围 默认值 stime 是 开始时间属性名称 String - - etime 是 结束时间属性名称 String - -
-
示例 需要在图引擎编辑器的算法区内,选定该算法进行操作。具体操作详见使用算法分析图。 设置动态时间范围参数: start=1646092800,end =1646170716,stime="startTime",etime="endTime"。 设置temporal paths算法参数: source="Person00014" targets="Person00055,Person00058,Person00052,Person00061,Person00060,Place00032,Place00016,Place00026,Place00015,Place00043" directed="false" k="5" 选择算法搜索策略“shortest”或“foremost”。单击运行按钮,运行temporal paths算法,图引擎会根据选定的算法搜索策略,计算返回时序分析路径,路径随时间轴动态延伸,直至到达目标节点,JSON结果会展示在查询结果区。
共100000条
- 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
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123
- 124
- 125
- 126
- 127
- 128
- 129
- 130
- 131
- 132
- 133
- 134
- 135
- 136
- 137
- 138
- 139
- 140
- 141
- 142
- 143
- 144
- 145
- 146
- 147
- 148
- 149
- 150
- 151
- 152
- 153
- 154
- 155
- 156
- 157
- 158
- 159
- 160
- 161
- 162
- 163
- 164
- 165
- 166
- 167
- 168
- 169
- 170
- 171
- 172
- 173
- 174
- 175
- 176
- 177
- 178
- 179
- 180
- 181
- 182
- 183
- 184
- 185
- 186
- 187
- 188
- 189
- 190
- 191
- 192
- 193
- 194
- 195
- 196
- 197
- 198
- 199
- 200
- 201
- 202
- 203
- 204
- 205
- 206
- 207
- 208
- 209
- 210
- 211
- 212
- 213
- 214
- 215
- 216
- 217
- 218
- 219
- 220
- 221
- 222
- 223
- 224
- 225
- 226
- 227
- 228
- 229
- 230
- 231
- 232
- 233
- 234
- 235
- 236
- 237
- 238
- 239
- 240
- 241
- 242
- 243
- 244
- 245
- 246
- 247
- 248
- 249
- 250
- 251
- 252
- 253
- 254
- 255
- 256
- 257
- 258
- 259
- 260
- 261
- 262
- 263
- 264
- 265
- 266
- 267
- 268
- 269
- 270
- 271
- 272
- 273
- 274
- 275
- 276
- 277
- 278
- 279
- 280
- 281
- 282
- 283
- 284
- 285
- 286
- 287
- 288
- 289
- 290
- 291
- 292
- 293
- 294
- 295
- 296
- 297
- 298
- 299
- 300
- 301
- 302
- 303
- 304
- 305
- 306
- 307
- 308
- 309
- 310
- 311
- 312
- 313
- 314
- 315
- 316
- 317
- 318
- 319
- 320
- 321
- 322
- 323
- 324
- 325
- 326
- 327
- 328
- 329
- 330
- 331
- 332
- 333
- 334
- 335
- 336
- 337
- 338
- 339
- 340
- 341
- 342
- 343
- 344
- 345
- 346
- 347
- 348
- 349
- 350
- 351
- 352
- 353
- 354
- 355
- 356
- 357
- 358
- 359
- 360
- 361
- 362
- 363
- 364
- 365
- 366
- 367
- 368
- 369
- 370
- 371
- 372
- 373
- 374
- 375
- 376
- 377
- 378
- 379
- 380
- 381
- 382
- 383
- 384
- 385
- 386
- 387
- 388
- 389
- 390
- 391
- 392
- 393
- 394
- 395
- 396
- 397
- 398
- 399
- 400
- 401
- 402
- 403
- 404
- 405
- 406
- 407
- 408
- 409
- 410
- 411
- 412
- 413
- 414
- 415
- 416
- 417
- 418
- 419
- 420
- 421
- 422
- 423
- 424
- 425
- 426
- 427
- 428
- 429
- 430
- 431
- 432
- 433
- 434
- 435
- 436
- 437
- 438
- 439
- 440
- 441
- 442
- 443
- 444
- 445
- 446
- 447
- 448
- 449
- 450
- 451
- 452
- 453
- 454
- 455
- 456
- 457
- 458
- 459
- 460
- 461
- 462
- 463
- 464
- 465
- 466
- 467
- 468
- 469
- 470
- 471
- 472
- 473
- 474
- 475
- 476
- 477
- 478
- 479
- 480
- 481
- 482
- 483
- 484
- 485
- 486
- 487
- 488
- 489
- 490
- 491
- 492
- 493
- 494
- 495
- 496
- 497
- 498
- 499
- 500
- 501
- 502
- 503
- 504
- 505
- 506
- 507
- 508
- 509
- 510
- 511
- 512
- 513
- 514
- 515
- 516
- 517
- 518
- 519
- 520
- 521
- 522
- 523
- 524
- 525
- 526
- 527
- 528
- 529
- 530
- 531
- 532
- 533
- 534
- 535
- 536
- 537
- 538
- 539
- 540
- 541
- 542
- 543
- 544
- 545
- 546
- 547
- 548
- 549
- 550
- 551
- 552
- 553
- 554
- 555
- 556
- 557
- 558
- 559
- 560
- 561
- 562
- 563
- 564
- 565
- 566
- 567
- 568
- 569
- 570
- 571
- 572
- 573
- 574
- 575
- 576
- 577
- 578
- 579
- 580
- 581
- 582
- 583
- 584
- 585
- 586
- 587
- 588
- 589
- 590
- 591
- 592
- 593
- 594
- 595
- 596
- 597
- 598
- 599
- 600
- 601
- 602
- 603
- 604
- 605
- 606
- 607
- 608
- 609
- ...
- 610
- 611
- 612
- 613
- 614
- 615
- 616
- 617
- 618
- 619
- 620
- 621
- 622
- 623
- 624
- 625
- 626
- 627
- 628
- 629
- 630
- 631
- 632
- 633
- 634
- 635
- 636
- 637
- 638
- 639
- 640
- 641
- 642
- 643
- 644
- 645
- 646
- 647
- 648
- 649
- 650
- 651
- 652
- 653
- 654
- 655
- 656
- 657
- 658
- 659
- 660
- 661
- 662
- 663
- 664
- 665
- 666
- 667
- 668
- 669
- 670
- 671
- 672
- 673
- 674
- 675
- 676
- 677
- 678
- 679
- 680
- 681
- 682
- 683
- 684
- 685
- 686
- 687
- 688
- 689
- 690
- 691
- 692
- 693
- 694
- 695
- 696
- 697
- 698
- 699
- 700
- 701
- 702
- 703
- 704
- 705
- 706
- 707
- 708
- 709
- 710
- 711
- 712
- 713
- 714
- 715
- 716
- 717
- 718
- 719
- 720
- 721
- 722
- 723
- 724
- 725
- 726
- 727
- 728
- 729
- 730
- 731
- 732
- 733
- 734
- 735
- 736
- 737
- 738
- 739
- 740
- 741
- 742
- 743
- 744
- 745
- 746
- 747
- 748
- 749
- 750
- 751
- 752
- 753
- 754
- 755
- 756
- 757
- 758
- 759
- 760
- 761
- 762
- 763
- 764
- 765
- 766
- 767
- 768
- 769
- 770
- 771
- 772
- 773
- 774
- 775
- 776
- 777
- 778
- 779
- 780
- 781
- 782
- 783
- 784
- 785
- 786
- 787
- 788
- 789
- 790
- 791
- 792
- 793
- 794
- 795
- 796
- 797
- 798
- 799
- 800
- 801
- 802
- 803
- 804
- 805
- 806
- 807
- 808
- 809
- 810
- 811
- 812
- 813
- 814
- 815
- 816
- 817
- 818
- 819
- 820
- 821
- 822
- 823
- 824
- 825
- 826
- 827
- 828
- 829
- 830
- 831
- 832
- 833
- 834
- 835
- 836
- 837
- 838
- 839
- 840
- 841
- 842
- 843
- 844
- 845
- 846
- 847
- 848
- 849
- 850
- 851
- 852
- 853
- 854
- 855
- 856
- 857
- 858
- 859
- 860
- 861
- 862
- 863
- 864
- 865
- 866
- 867
- 868
- 869
- 870
- 871
- 872
- 873
- 874
- 875
- 876
- 877
- 878
- 879
- 880
- 881
- 882
- 883
- 884
- 885
- 886
- 887
- 888
- 889
- 890
- 891
- 892
- 893
- 894
- 895
- 896
- 897
- 898
- 899
- 900
- 901
- 902
- 903
- 904
- 905
- 906
- 907
- 908
- 909
- 910
- 911
- 912
- 913
- 914
- 915
- 916
- 917
- 918
- 919
- 920
- 921
- 922
- 923
- 924
- 925
- 926
- 927
- 928
- 929
- 930
- 931
- 932
- 933
- 934
- 935
- 936
- 937
- 938
- 939
- 940
- 941
- 942
- 943
- 944
- 945
- 946
- 947
- 948
- 949
- 950
- 951
- 952
- 953
- 954
- 955
- 956
- 957
- 958
- 959
- 960
- 961
- 962
- 963
- 964
- 965
- 966
- 967
- 968
- 969
- 970
- 971
- 972
- 973
- 974
- 975
- 976
- 977
- 978
- 979
- 980
- 981
- 982
- 983
- 984
- 985
- 986
- 987
- 988
- 989
- 990
- 991
- 992
- 993
- 994
- 995
- 996
- 997
- 998
- 999
- 1000
- 1001
- 1002
- 1003
- 1004
- 1005
- 1006
- 1007
- 1008
- 1009
- 1010
- 1011
- 1012
- 1013
- 1014
- 1015
- 1016
- 1017
- 1018
- 1019
- 1020
- 1021
- 1022
- 1023
- 1024
- 1025
- 1026
- 1027
- 1028
- 1029
- 1030
- 1031
- 1032
- 1033
- 1034
- 1035
- 1036
- 1037
- 1038
- 1039
- 1040
- 1041
- 1042
- 1043
- 1044
- 1045
- 1046
- 1047
- 1048
- 1049
- 1050
- 1051
- 1052
- 1053
- 1054
- 1055
- 1056
- 1057
- 1058
- 1059
- 1060
- 1061
- 1062
- 1063
- 1064
- 1065
- 1066
- 1067
- 1068
- 1069
- 1070
- 1071
- 1072
- 1073
- 1074
- 1075
- 1076
- 1077
- 1078
- 1079
- 1080
- 1081
- 1082
- 1083
- 1084
- 1085
- 1086
- 1087
- 1088
- 1089
- 1090
- 1091
- 1092
- 1093
- 1094
- 1095
- 1096
- 1097
- 1098
- 1099
- 1100
- 1101
- 1102
- 1103
- 1104
- 1105
- 1106
- 1107
- 1108
- 1109
- 1110
- 1111
- 1112
- 1113
- 1114
- 1115
- 1116
- 1117
- 1118
- 1119
- 1120
- 1121
- 1122
- 1123
- 1124
- 1125
- 1126
- 1127
- 1128
- 1129
- 1130
- 1131
- 1132
- 1133
- 1134
- 1135
- 1136
- 1137
- 1138
- 1139
- 1140
- 1141
- 1142
- 1143
- 1144
- 1145
- 1146
- 1147
- 1148
- 1149
- 1150
- 1151
- 1152
- 1153
- 1154
- 1155
- 1156
- 1157
- 1158
- 1159
- 1160
- 1161
- 1162
- 1163
- 1164
- 1165
- 1166
- 1167
- 1168
- 1169
- 1170
- 1171
- 1172
- 1173
- 1174
- 1175
- 1176
- 1177
- 1178
- 1179
- 1180
- 1181
- 1182
- 1183
- 1184
- 1185
- 1186
- 1187
- 1188
- 1189
- 1190
- 1191
- 1192
- 1193
- 1194
- 1195
- 1196
- 1197
- 1198
- 1199
- 1200
- 1201
- 1202
- 1203
- 1204
- 1205
- 1206
- 1207
- 1208
- 1209
- 1210
- 1211
- 1212
- 1213
- 1214
- 1215
- 1216
- 1217
- 1218
- 1219
- 1220
- 1221
- 1222
- 1223
- 1224
- 1225
- 1226
- 1227
- 1228
- 1229
- 1230
- 1231
- 1232
- 1233
- 1234
- 1235
- 1236
- 1237
- 1238
- 1239
- 1240
- 1241
- 1242
- 1243
- 1244
- 1245
- 1246
- 1247
- 1248
- 1249
- 1250
- 1251
- 1252
- 1253
- 1254
- 1255
- 1256
- 1257
- 1258
- 1259
- 1260
- 1261
- 1262
- 1263
- 1264
- 1265
- 1266
- 1267
- 1268
- 1269
- 1270
- 1271
- 1272
- 1273
- 1274
- 1275
- 1276
- 1277
- 1278
- 1279
- 1280
- 1281
- 1282
- 1283
- 1284
- 1285
- 1286
- 1287
- 1288
- 1289
- 1290
- 1291
- 1292
- 1293
- 1294
- 1295
- 1296
- 1297
- 1298
- 1299
- 1300
- 1301
- 1302
- 1303
- 1304
- 1305
- 1306
- 1307
- 1308
- 1309
- 1310
- 1311
- 1312
- 1313
- 1314
- 1315
- 1316
- 1317
- 1318
- 1319
- 1320
- 1321
- 1322
- 1323
- 1324
- 1325
- 1326
- 1327
- 1328
- 1329
- 1330
- 1331
- 1332
- 1333
- 1334
- 1335
- 1336
- 1337
- 1338
- 1339
- 1340
- 1341
- 1342
- 1343
- 1344
- 1345
- 1346
- 1347
- 1348
- 1349
- 1350
- 1351
- 1352
- 1353
- 1354
- 1355
- 1356
- 1357
- 1358
- 1359
- 1360
- 1361
- 1362
- 1363
- 1364
- 1365
- 1366
- 1367
- 1368
- 1369
- 1370
- 1371
- 1372
- 1373
- 1374
- 1375
- 1376
- 1377
- 1378
- 1379
- 1380
- 1381
- 1382
- 1383
- 1384
- 1385
- 1386
- 1387
- 1388
- 1389
- 1390
- 1391
- 1392
- 1393
- 1394
- 1395
- 1396
- 1397
- 1398
- 1399
- 1400
- 1401
- 1402
- 1403
- 1404
- 1405
- 1406
- 1407
- 1408
- 1409
- 1410
- 1411
- 1412
- 1413
- 1414
- 1415
- 1416
- 1417
- 1418
- 1419
- 1420
- 1421
- 1422
- 1423
- 1424
- 1425
- 1426
- 1427
- 1428
- 1429
- 1430
- 1431
- 1432
- 1433
- 1434
- 1435
- 1436
- 1437
- 1438
- 1439
- 1440
- 1441
- 1442
- 1443
- 1444
- 1445
- 1446
- 1447
- 1448
- 1449
- 1450
- 1451
- 1452
- 1453
- 1454
- 1455
- 1456
- 1457
- 1458
- 1459
- 1460
- 1461
- 1462
- 1463
- 1464
- 1465
- 1466
- 1467
- 1468
- 1469
- 1470
- 1471
- 1472
- 1473
- 1474
- 1475
- 1476
- 1477
- 1478
- 1479
- 1480
- 1481
- 1482
- 1483
- 1484
- 1485
- 1486
- 1487
- 1488
- 1489
- 1490
- 1491
- 1492
- 1493
- 1494
- 1495
- 1496
- 1497
- 1498
- 1499
- 1500
- 1501
- 1502
- 1503
- 1504
- 1505
- 1506
- 1507
- 1508
- 1509
- 1510
- 1511
- 1512
- 1513
- 1514
- 1515
- 1516
- 1517
- 1518
- 1519
- 1520
- 1521
- 1522
- 1523
- 1524
- 1525
- 1526
- 1527
- 1528
- 1529
- 1530
- 1531
- 1532
- 1533
- 1534
- 1535
- 1536
- 1537
- 1538
- 1539
- 1540
- 1541
- 1542
- 1543
- 1544
- 1545
- 1546
- 1547
- 1548
- 1549
- 1550
- 1551
- 1552
- 1553
- 1554
- 1555
- 1556
- 1557
- 1558
- 1559
- 1560
- 1561
- 1562
- 1563
- 1564
- 1565
- 1566
- 1567
- 1568
- 1569
- 1570
- 1571
- 1572
- 1573
- 1574
- 1575
- 1576
- 1577
- 1578
- 1579
- 1580
- 1581
- 1582
- 1583
- 1584
- 1585
- 1586
- 1587
- 1588
- 1589
- 1590
- 1591
- 1592
- 1593
- 1594
- 1595
- 1596
- 1597
- 1598
- 1599
- 1600
- 1601
- 1602
- 1603
- 1604
- 1605
- 1606
- 1607
- 1608
- 1609
- 1610
- 1611
- 1612
- 1613
- 1614
- 1615
- 1616
- 1617
- 1618
- 1619
- 1620
- 1621
- 1622
- 1623
- 1624
- 1625
- 1626
- 1627
- 1628
- 1629
- 1630
- 1631
- 1632
- 1633
- 1634
- 1635
- 1636
- 1637
- 1638
- 1639
- 1640
- 1641
- 1642
- 1643
- 1644
- 1645
- 1646
- 1647
- 1648
- 1649
- 1650
- 1651
- 1652
- 1653
- 1654
- 1655
- 1656
- 1657
- 1658
- 1659
- 1660
- 1661
- 1662
- 1663
- 1664
- 1665
- 1666
- 1667
- 1668
- 1669
- 1670
- 1671
- 1672
- 1673
- 1674
- 1675
- 1676
- 1677
- 1678
- 1679
- 1680
- 1681
- 1682
- 1683
- 1684
- 1685
- 1686
- 1687
- 1688
- 1689
- 1690
- 1691
- 1692
- 1693
- 1694
- 1695
- 1696
- 1697
- 1698
- 1699
- 1700
- 1701
- 1702
- 1703
- 1704
- 1705
- 1706
- 1707
- 1708
- 1709
- 1710
- 1711
- 1712
- 1713
- 1714
- 1715
- 1716
- 1717
- 1718
- 1719
- 1720
- 1721
- 1722
- 1723
- 1724
- 1725
- 1726
- 1727
- 1728
- 1729
- 1730
- 1731
- 1732
- 1733
- 1734
- 1735
- 1736
- 1737
- 1738
- 1739
- 1740
- 1741
- 1742
- 1743
- 1744
- 1745
- 1746
- 1747
- 1748
- 1749
- 1750
- 1751
- 1752
- 1753
- 1754
- 1755
- 1756
- 1757
- 1758
- 1759
- 1760
- 1761
- 1762
- 1763
- 1764
- 1765
- 1766
- 1767
- 1768
- 1769
- 1770
- 1771
- 1772
- 1773
- 1774
- 1775
- 1776
- 1777
- 1778
- 1779
- 1780
- 1781
- 1782
- 1783
- 1784
- 1785
- 1786
- 1787
- 1788
- 1789
- 1790
- 1791
- 1792
- 1793
- 1794
- 1795
- 1796
- 1797
- 1798
- 1799
- 1800
- 1801
- 1802
- 1803
- 1804
- 1805
- 1806
- 1807
- 1808
- 1809
- 1810
- 1811
- 1812
- 1813
- 1814
- 1815
- 1816
- 1817
- 1818
- 1819
- 1820
- 1821
- 1822
- 1823
- 1824
- 1825
- 1826
- 1827
- 1828
- 1829
- 1830
- 1831
- 1832
- 1833
- 1834
- 1835
- 1836
- 1837
- 1838
- 1839
- 1840
- 1841
- 1842
- 1843
- 1844
- 1845
- 1846
- 1847
- 1848
- 1849
- 1850
- 1851
- 1852
- 1853
- 1854
- 1855
- 1856
- 1857
- 1858
- 1859
- 1860
- 1861
- 1862
- 1863
- 1864
- 1865
- 1866
- 1867
- 1868
- 1869
- 1870
- 1871
- 1872
- 1873
- 1874
- 1875
- 1876
- 1877
- 1878
- 1879
- 1880
- 1881
- 1882
- 1883
- 1884
- 1885
- 1886
- 1887
- 1888
- 1889
- 1890
- 1891
- 1892
- 1893
- 1894
- 1895
- 1896
- 1897
- 1898
- 1899
- 1900
- 1901
- 1902
- 1903
- 1904
- 1905
- 1906
- 1907
- 1908
- 1909
- 1910
- 1911
- 1912
- 1913
- 1914
- 1915
- 1916
- 1917
- 1918
- 1919
- 1920
- 1921
- 1922
- 1923
- 1924
- 1925
- 1926
- 1927
- 1928
- 1929
- 1930
- 1931
- 1932
- 1933
- 1934
- 1935
- 1936
- 1937
- 1938
- 1939
- 1940
- 1941
- 1942
- 1943
- 1944
- 1945
- 1946
- 1947
- 1948
- 1949
- 1950
- 1951
- 1952
- 1953
- 1954
- 1955
- 1956
- 1957
- 1958
- 1959
- 1960
- 1961
- 1962
- 1963
- 1964
- 1965
- 1966
- 1967
- 1968
- 1969
- 1970
- 1971
- 1972
- 1973
- 1974
- 1975
- 1976
- 1977
- 1978
- 1979
- 1980
- 1981
- 1982
- 1983
- 1984
- 1985
- 1986
- 1987
- 1988
- 1989
- 1990
- 1991
- 1992
- 1993
- 1994
- 1995
- 1996
- 1997
- 1998
- 1999
- 2000
- 2001
- 2002
- 2003
- 2004
- 2005
- 2006
- 2007
- 2008
- 2009
- 2010
- 2011
- 2012
- 2013
- 2014
- 2015
- 2016
- 2017
- 2018
- 2019
- 2020
- 2021
- 2022
- 2023
- 2024
- 2025
- 2026
- 2027
- 2028
- 2029
- 2030
- 2031
- 2032
- 2033
- 2034
- 2035
- 2036
- 2037
- 2038
- 2039
- 2040
- 2041
- 2042
- 2043
- 2044
- 2045
- 2046
- 2047
- 2048
- 2049
- 2050
- 2051
- 2052
- 2053
- 2054
- 2055
- 2056
- 2057
- 2058
- 2059
- 2060
- 2061
- 2062
- 2063
- 2064
- 2065
- 2066
- 2067
- 2068
- 2069
- 2070
- 2071
- 2072
- 2073
- 2074
- 2075
- 2076
- 2077
- 2078
- 2079
- 2080
- 2081
- 2082
- 2083
- 2084
- 2085
- 2086
- 2087
- 2088
- 2089
- 2090
- 2091
- 2092
- 2093
- 2094
- 2095
- 2096
- 2097
- 2098
- 2099
- 2100
- 2101
- 2102
- 2103
- 2104
- 2105
- 2106
- 2107
- 2108
- 2109
- 2110
- 2111
- 2112
- 2113
- 2114
- 2115
- 2116
- 2117
- 2118
- 2119
- 2120
- 2121
- 2122
- 2123
- 2124
- 2125
- 2126
- 2127
- 2128
- 2129
- 2130
- 2131
- 2132
- 2133
- 2134
- 2135
- 2136
- 2137
- 2138
- 2139
- 2140
- 2141
- 2142
- 2143
- 2144
- 2145
- 2146
- 2147
- 2148
- 2149
- 2150
- 2151
- 2152
- 2153
- 2154
- 2155
- 2156
- 2157
- 2158
- 2159
- 2160
- 2161
- 2162
- 2163
- 2164
- 2165
- 2166
- 2167
- 2168
- 2169
- 2170
- 2171
- 2172
- 2173
- 2174
- 2175
- 2176
- 2177
- 2178
- 2179
- 2180
- 2181
- 2182
- 2183
- 2184
- 2185
- 2186
- 2187
- 2188
- 2189
- 2190
- 2191
- 2192
- 2193
- 2194
- 2195
- 2196
- 2197
- 2198
- 2199
- 2200
- 2201
- 2202
- 2203
- 2204
- 2205
- 2206
- 2207
- 2208
- 2209
- 2210
- 2211
- 2212
- 2213
- 2214
- 2215
- 2216
- 2217
- 2218
- 2219
- 2220
- 2221
- 2222
- 2223
- 2224
- 2225
- 2226
- 2227
- 2228
- 2229
- 2230
- 2231
- 2232
- 2233
- 2234
- 2235
- 2236
- 2237
- 2238
- 2239
- 2240
- 2241
- 2242
- 2243
- 2244
- 2245
- 2246
- 2247
- 2248
- 2249
- 2250
- 2251
- 2252
- 2253
- 2254
- 2255
- 2256
- 2257
- 2258
- 2259
- 2260
- 2261
- 2262
- 2263
- 2264
- 2265
- 2266
- 2267
- 2268
- 2269
- 2270
- 2271
- 2272
- 2273
- 2274
- 2275
- 2276
- 2277
- 2278
- 2279
- 2280
- 2281
- 2282
- 2283
- 2284
- 2285
- 2286
- 2287
- 2288
- 2289
- 2290
- 2291
- 2292
- 2293
- 2294
- 2295
- 2296
- 2297
- 2298
- 2299
- 2300
- 2301
- 2302
- 2303
- 2304
- 2305
- 2306
- 2307
- 2308
- 2309
- 2310
- 2311
- 2312
- 2313
- 2314
- 2315
- 2316
- 2317
- 2318
- 2319
- 2320
- 2321
- 2322
- 2323
- 2324
- 2325
- 2326
- 2327
- 2328
- 2329
- 2330
- 2331
- 2332
- 2333
- 2334
- 2335
- 2336
- 2337
- 2338
- 2339
- 2340
- 2341
- 2342
- 2343
- 2344
- 2345
- 2346
- 2347
- 2348
- 2349
- 2350
- 2351
- 2352
- 2353
- 2354
- 2355
- 2356
- 2357
- 2358
- 2359
- 2360
- 2361
- 2362
- 2363
- 2364
- 2365
- 2366
- 2367
- 2368
- 2369
- 2370
- 2371
- 2372
- 2373
- 2374
- 2375
- 2376
- 2377
- 2378
- 2379
- 2380
- 2381
- 2382
- 2383
- 2384
- 2385
- 2386
- 2387
- 2388
- 2389
- 2390
- 2391
- 2392
- 2393
- 2394
- 2395
- 2396
- 2397
- 2398
- 2399
- 2400
- 2401
- 2402
- 2403
- 2404
- 2405
- 2406
- 2407
- 2408
- 2409
- 2410
- 2411
- 2412
- 2413
- 2414
- 2415
- 2416
- 2417
- 2418
- 2419
- 2420
- 2421
- 2422
- 2423
- 2424
- 2425
- 2426
- 2427
- 2428
- 2429
- 2430
- 2431
- 2432
- 2433
- 2434
- 2435
- 2436
- 2437
- 2438
- 2439
- 2440
- 2441
- 2442
- 2443
- 2444
- 2445
- 2446
- 2447
- 2448
- 2449
- 2450
- 2451
- 2452
- 2453
- 2454
- 2455
- 2456
- 2457
- 2458
- 2459
- 2460
- 2461
- 2462
- 2463
- 2464
- 2465
- 2466
- 2467
- 2468
- 2469
- 2470
- 2471
- 2472
- 2473
- 2474
- 2475
- 2476
- 2477
- 2478
- 2479
- 2480
- 2481
- 2482
- 2483
- 2484
- 2485
- 2486
- 2487
- 2488
- 2489
- 2490
- 2491
- 2492
- 2493
- 2494
- 2495
- 2496
- 2497
- 2498
- 2499
- 2500
- 2501
- 2502
- 2503
- 2504
- 2505
- 2506
- 2507
- 2508
- 2509
- 2510
- 2511
- 2512
- 2513
- 2514
- 2515
- 2516
- 2517
- 2518
- 2519
- 2520
- 2521
- 2522
- 2523
- 2524
- 2525
- 2526
- 2527
- 2528
- 2529
- 2530
- 2531
- 2532
- 2533
- 2534
- 2535
- 2536
- 2537
- 2538
- 2539
- 2540
- 2541
- 2542
- 2543
- 2544
- 2545
- 2546
- 2547
- 2548
- 2549
- 2550
- 2551
- 2552
- 2553
- 2554
- 2555
- 2556
- 2557
- 2558
- 2559
- 2560
- 2561
- 2562
- 2563
- 2564
- 2565
- 2566
- 2567
- 2568
- 2569
- 2570
- 2571
- 2572
- 2573
- 2574
- 2575
- 2576
- 2577
- 2578
- 2579
- 2580
- 2581
- 2582
- 2583
- 2584
- 2585
- 2586
- 2587
- 2588
- 2589
- 2590
- 2591
- 2592
- 2593
- 2594
- 2595
- 2596
- 2597
- 2598
- 2599
- 2600
- 2601
- 2602
- 2603
- 2604
- 2605
- 2606
- 2607
- 2608
- 2609
- 2610
- 2611
- 2612
- 2613
- 2614
- 2615
- 2616
- 2617
- 2618
- 2619
- 2620
- 2621
- 2622
- 2623
- 2624
- 2625
- 2626
- 2627
- 2628
- 2629
- 2630
- 2631
- 2632
- 2633
- 2634
- 2635
- 2636
- 2637
- 2638
- 2639
- 2640
- 2641
- 2642
- 2643
- 2644
- 2645
- 2646
- 2647
- 2648
- 2649
- 2650
- 2651
- 2652
- 2653
- 2654
- 2655
- 2656
- 2657
- 2658
- 2659
- 2660
- 2661
- 2662
- 2663
- 2664
- 2665
- 2666
- 2667
- 2668
- 2669
- 2670
- 2671
- 2672
- 2673
- 2674
- 2675
- 2676
- 2677
- 2678
- 2679
- 2680
- 2681
- 2682
- 2683
- 2684
- 2685
- 2686
- 2687
- 2688
- 2689
- 2690
- 2691
- 2692
- 2693
- 2694
- 2695
- 2696
- 2697
- 2698
- 2699
- 2700
- 2701
- 2702
- 2703
- 2704
- 2705
- 2706
- 2707
- 2708
- 2709
- 2710
- 2711
- 2712
- 2713
- 2714
- 2715
- 2716
- 2717
- 2718
- 2719
- 2720
- 2721
- 2722
- 2723
- 2724
- 2725
- 2726
- 2727
- 2728
- 2729
- 2730
- 2731
- 2732
- 2733
- 2734
- 2735
- 2736
- 2737
- 2738
- 2739
- 2740
- 2741
- 2742
- 2743
- 2744
- 2745
- 2746
- 2747
- 2748
- 2749
- 2750
- 2751
- 2752
- 2753
- 2754
- 2755
- 2756
- 2757
- 2758
- 2759
- 2760
- 2761
- 2762
- 2763
- 2764
- 2765
- 2766
- 2767
- 2768
- 2769
- 2770
- 2771
- 2772
- 2773
- 2774
- 2775
- 2776
- 2777
- 2778
- 2779
- 2780
- 2781
- 2782
- 2783
- 2784
- 2785
- 2786
- 2787
- 2788
- 2789
- 2790
- 2791
- 2792
- 2793
- 2794
- 2795
- 2796
- 2797
- 2798
- 2799
- 2800
- 2801
- 2802
- 2803
- 2804
- 2805
- 2806
- 2807
- 2808
- 2809
- 2810
- 2811
- 2812
- 2813
- 2814
- 2815
- 2816
- 2817
- 2818
- 2819
- 2820
- 2821
- 2822
- 2823
- 2824
- 2825
- 2826
- 2827
- 2828
- 2829
- 2830
- 2831
- 2832
- 2833
- 2834
- 2835
- 2836
- 2837
- 2838
- 2839
- 2840
- 2841
- 2842
- 2843
- 2844
- 2845
- 2846
- 2847
- 2848
- 2849
- 2850
- 2851
- 2852
- 2853
- 2854
- 2855
- 2856
- 2857
- 2858
- 2859
- 2860
- 2861
- 2862
- 2863
- 2864
- 2865
- 2866
- 2867
- 2868
- 2869
- 2870
- 2871
- 2872
- 2873
- 2874
- 2875
- 2876
- 2877
- 2878
- 2879
- 2880
- 2881
- 2882
- 2883
- 2884
- 2885
- 2886
- 2887
- 2888
- 2889
- 2890
- 2891
- 2892
- 2893
- 2894
- 2895
- 2896
- 2897
- 2898
- 2899
- 2900
- 2901
- 2902
- 2903
- 2904
- 2905
- 2906
- 2907
- 2908
- 2909
- 2910
- 2911
- 2912
- 2913
- 2914
- 2915
- 2916
- 2917
- 2918
- 2919
- 2920
- 2921
- 2922
- 2923
- 2924
- 2925
- 2926
- 2927
- 2928
- 2929
- 2930
- 2931
- 2932
- 2933
- 2934
- 2935
- 2936
- 2937
- 2938
- 2939
- 2940
- 2941
- 2942
- 2943
- 2944
- 2945
- 2946
- 2947
- 2948
- 2949
- 2950
- 2951
- 2952
- 2953
- 2954
- 2955
- 2956
- 2957
- 2958
- 2959
- 2960
- 2961
- 2962
- 2963
- 2964
- 2965
- 2966
- 2967
- 2968
- 2969
- 2970
- 2971
- 2972
- 2973
- 2974
- 2975
- 2976
- 2977
- 2978
- 2979
- 2980
- 2981
- 2982
- 2983
- 2984
- 2985
- 2986
- 2987
- 2988
- 2989
- 2990
- 2991
- 2992
- 2993
- 2994
- 2995
- 2996
- 2997
- 2998
- 2999
- 3000
- 3001
- 3002
- 3003
- 3004
- 3005
- 3006
- 3007
- 3008
- 3009
- 3010
- 3011
- 3012
- 3013
- 3014
- 3015
- 3016
- 3017
- 3018
- 3019
- 3020
- 3021
- 3022
- 3023
- 3024
- 3025
- 3026
- 3027
- 3028
- 3029
- 3030
- 3031
- 3032
- 3033
- 3034
- 3035
- 3036
- 3037
- 3038
- 3039
- 3040
- 3041
- 3042
- 3043
- 3044
- 3045
- 3046
- 3047
- 3048
- 3049
- 3050
- 3051
- 3052
- 3053
- 3054
- 3055
- 3056
- 3057
- 3058
- 3059
- 3060
- 3061
- 3062
- 3063
- 3064
- 3065
- 3066
- 3067
- 3068
- 3069
- 3070
- 3071
- 3072
- 3073
- 3074
- 3075
- 3076
- 3077
- 3078
- 3079
- 3080
- 3081
- 3082
- 3083
- 3084
- 3085
- 3086
- 3087
- 3088
- 3089
- 3090
- 3091
- 3092
- 3093
- 3094
- 3095
- 3096
- 3097
- 3098
- 3099
- 3100
- 3101
- 3102
- 3103
- 3104
- 3105
- 3106
- 3107
- 3108
- 3109
- 3110
- 3111
- 3112
- 3113
- 3114
- 3115
- 3116
- 3117
- 3118
- 3119
- 3120
- 3121
- 3122
- 3123
- 3124
- 3125
- 3126
- 3127
- 3128
- 3129
- 3130
- 3131
- 3132
- 3133
- 3134
- 3135
- 3136
- 3137
- 3138
- 3139
- 3140
- 3141
- 3142
- 3143
- 3144
- 3145
- 3146
- 3147
- 3148
- 3149
- 3150
- 3151
- 3152
- 3153
- 3154
- 3155
- 3156
- 3157
- 3158
- 3159
- 3160
- 3161
- 3162
- 3163
- 3164
- 3165
- 3166
- 3167
- 3168
- 3169
- 3170
- 3171
- 3172
- 3173
- 3174
- 3175
- 3176
- 3177
- 3178
- 3179
- 3180
- 3181
- 3182
- 3183
- 3184
- 3185
- 3186
- 3187
- 3188
- 3189
- 3190
- 3191
- 3192
- 3193
- 3194
- 3195
- 3196
- 3197
- 3198
- 3199
- 3200
- 3201
- 3202
- 3203
- 3204
- 3205
- 3206
- 3207
- 3208
- 3209
- 3210
- 3211
- 3212
- 3213
- 3214
- 3215
- 3216
- 3217
- 3218
- 3219
- 3220
- 3221
- 3222
- 3223
- 3224
- 3225
- 3226
- 3227
- 3228
- 3229
- 3230
- 3231
- 3232
- 3233
- 3234
- 3235
- 3236
- 3237
- 3238
- 3239
- 3240
- 3241
- 3242
- 3243
- 3244
- 3245
- 3246
- 3247
- 3248
- 3249
- 3250
- 3251
- 3252
- 3253
- 3254
- 3255
- 3256
- 3257
- 3258
- 3259
- 3260
- 3261
- 3262
- 3263
- 3264
- 3265
- 3266
- 3267
- 3268
- 3269
- 3270
- 3271
- 3272
- 3273
- 3274
- 3275
- 3276
- 3277
- 3278
- 3279
- 3280
- 3281
- 3282
- 3283
- 3284
- 3285
- 3286
- 3287
- 3288
- 3289
- 3290
- 3291
- 3292
- 3293
- 3294
- 3295
- 3296
- 3297
- 3298
- 3299
- 3300
- 3301
- 3302
- 3303
- 3304
- 3305
- 3306
- 3307
- 3308
- 3309
- 3310
- 3311
- 3312
- 3313
- 3314
- 3315
- 3316
- 3317
- 3318
- 3319
- 3320
- 3321
- 3322
- 3323
- 3324
- 3325
- 3326
- 3327
- 3328
- 3329
- 3330
- 3331
- 3332
- 3333
- 3333
推荐文章