System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及边缘函数计算,尤其是涉及一种基于cdn系统的边缘分布式kv系统。
技术介绍
1、内容分发网络(contentdeliverynetwork,简称cdn)是一种将内容分发到靠近客户的边缘服务器,从而实现客户就近访问的方法,cdn通过大规模的服务器设备,满足客户就近接入的同时,具备大规模内容存储的能力;
2、分布式kv存储技术是一套解决海量数据资源存储的方法,它一般包含存储单元、计算单元和接入网关部分;
3、边缘计算是一种有效的将计算能力分散到海量服务器的解决方案。它将需要收敛到数据中心的庞大计算任务,分散为较小的计算任务,在海量服务器资源中执行,再汇聚计算后的结果。这样可以有效的降低数据中心的计算压力,提高整体服务器资源的利用率。
4、上述中的现有技术方案存在以下缺陷:传统的方法没有提供一种符合cdn网络海量边缘服务器资源、大规模存储能力和低访问延迟的网络能力特点,又符合kv键值系统存储海量数据、快速检索查询的特点的系统,不满足边缘计算领域场景的需求。
技术实现思路
1、本专利技术的目的是提供一种符合cdn网络海量边缘服务器资源、大规模存储能力和低访问延迟的网络能力特点,又符合kv键值系统存储海量数据、快速检索查询特点的基于cdn系统的边缘分布式kv系统。
2、为实现上述目的,本专利技术提供了如下技术方案:
3、一种基于cdn系统的边缘分布式kv系统,系统包含三个部分:
4、s1:专用于kv系统的存
5、s2:改造cdn网关,利用http协议,提供针对kv系统的访问优化,操作优化的解决方案;
6、s3:利用cdn存储和操作能力满足数据冗余和数据迁移的解决方案。
7、进一步地,所述s1中专用于kv系统的存储单元kv-agent使用lsm-tree进行kv键值的存储。
8、进一步地,所述s1中存储kv键值时,从key中按照字符-分割,第一个字段作为键值的租户属性,每个租户的kv键值数据写入同一个或同一组本地文件中,降低文件系统中小文件的规模,将key对应的键值数据,以及对应的过期时间信息ttl写入文件,lsm-tree使用日志追加的模式顺序写入。
9、进一步地,所述s1中lsm-tree使用日志追加的模式顺序写入后,当文件被写入超过一定大小时,触发lsm-tree的压缩流程:重新遍历数据、将重复的、删除的、过期的数据删除,建立新的文件,并利用lsm-tree本身内存lru机制,加速最新的kv键值访问速度,不需要访问磁盘。
10、进一步地,所述s1中当单个租户的压缩后仍然超过一定大小时,创建第二个文件进行写入,后续的新数据只操作第二个文件,第一个文件归档,且当单个租户多文件存储的总量超过一点大小时进行多文件的压缩,清理历史过期的数据,降低资源消耗。
11、进一步地,所述s1中kv-agent部署在每台cdn的边缘服务器和父层服务器的具体步骤为:
12、a1:部署内置域名kv.domain于cdn网络中;
13、a2:父层服务器配置域名回源不会到客户源站,而是本机部署的kv-agent,当父层服务器访问kv资源时由本级kv-agent提供,即本机存储;
14、a3:边缘服务器的cdn网关提供接口暴露kv.domain域名的父层服务器节点;
15、a4:将kv键值对的请求转化为kv.domain下的http请求地址如kv.domain/key;
16、a5:边缘服务器的cdn对请求地址使用一致性hash的方式,决策访问向上层访问的父层服务器节点;
17、a6:kv-agent利用相同的方式一致性hash访问父层服务器部署的kv-agent,获取资源。保证针对同一个资源,cdn和kv-agent访问到相同的父层服务器。
18、进一步地,所述s2中针对kv系统的访问优化的具体操作为使用restfulhttpapi获取和操作kv键值内容:
19、b1:定义httpget读取kv资源。get请求访问边缘服务器,cdn转发到本机的kv-agent,本机kv-agent访问本地文件获取键值内容,返回客户,如果本机kv-agent没有内容,访问父层服务器的kv-agent获取内容,如果内容不存在或过期,返回404;
20、b2:定义httppost写入kv资源,post请求访问边缘服务器,cdn转发到本机kv-agent,本机kv-agent访问父层服务器的kv-agent执行写入,父层服务器kv-agent写入成功后返回成功,边缘服务器kv-agent再写入数据到本地文件,并返回客户写入成功,边缘服务器kv-agent相对于父层服务器有较快的过期时间,边缘服务器kv-agent过期后会访问父层服务器获取最新的资源,通过自动的过期机制保障边缘服务器数据的最终一致性;
21、b3:定义httpdelete删除kv资源,delete请求访问边缘服务器,cdn转发到本机kv-agent,本机kv-agent删除在本地文件中删除kv数据,返回删除成功,本机kv-agent访问父层服务器kv-agent执行删除。
22、进一步地,所述s2中将不同租户的kv操作统一为针对内置域名的操作。
23、进一步地,所述s2中kv操作统一具体为:
24、c1:不同的租户分配不同的id;
25、c2:租户发出的kv操作请求中的key完整编码内置域名的地址为kv.domain/id-key;
26、c3:kv-agent根据id-key解析出租户的id,操作租户对应的本地文件存储。
27、进一步地,所述s3的具体步骤为:
28、d1:配置冗余备份域名kv.domain2,关联与kv.domain不同的cdn资源;
29、d2:kv-agent执行kv.domain包含的kv键值操作时,记录操作指令,定时统一触发kv.domain2的kv键值操作;
30、d3:kv.domain2在上述流程执行是kv-agent根据指令,通过cdn网络访问kv.domain的资源,同步到本机上,完成kv键值数据的冗余备份或数据迁移。
31、综上所述,本专利技术的有益技术效果为:
32、1、本专利技术结合cdn网络的能力和kv存储系统的特点,满足边缘计算的需求,快速搭建分布式kv存储系统的技术底座,实现kv-agent优化cdn网络存储小数据内容的能力,满足kv系统存储海量数据的需求,同时将kv系统数据分散到cdn的存储容量中,提高机器容量使用率;
33、2、本专利技术利用cdn本文档来自技高网...
【技术保护点】
1.一种基于CDN系统的边缘分布式KV系统,其特征在于,系统包含三个部分:
2.根据权利要求1所述的一种基于CDN系统的边缘分布式KV系统,其特征在于:所述S1中专用于KV系统的存储单元kv-agent使用LSM-Tree进行KV键值的存储。
3.根据权利要求2所述的一种基于CDN系统的边缘分布式KV系统,其特征在于:所述S1中存储KV键值时,从Key中按照字符-分割,第一个字段作为键值的租户属性,每个租户的KV键值数据写入同一个或同一组本地文件中,降低文件系统中小文件的规模,将Key对应的键值数据,以及对应的过期时间信息TTL写入文件,LSM-Tree使用日志追加的模式顺序写入。
4.根据权利要求3所述的一种基于CDN系统的边缘分布式KV系统,其特征在于:所述S1中LSM-Tree使用日志追加的模式顺序写入后,当文件被写入超过一定大小时,触发LSM-Tree的压缩流程:重新遍历数据、将重复的、删除的、过期的数据删除,建立新的文件,并利用LSM-Tree本身内存LRU机制,加速最新的KV键值访问速度,不需要访问磁盘。
5.根据权利要
6.根据权利要求5所述的一种基于CDN系统的边缘分布式KV系统,其特征在于:所述S1中kv-agent部署在每台CDN的边缘服务器和父层服务器的具体步骤为:
7.根据权利要求6所述的一种基于CDN系统的边缘分布式KV系统,其特征在于:所述S2中针对KV系统的访问优化的具体操作为使用RESTfulHTTPAPI获取和操作KV键值内容:
8.根据权利要求7所述的一种基于CDN系统的边缘分布式KV系统,其特征在于:所述S2中将不同租户的KV操作统一为针对内置域名的操作。
9.根据权利要求8所述的一种基于CDN系统的边缘分布式KV系统,其特征在于:所述S2中KV操作统一具体为:
10.根据权利要求9所述的一种基于CDN系统的边缘分布式KV系统,其特征在于:所述S3的具体步骤为:
...【技术特征摘要】
1.一种基于cdn系统的边缘分布式kv系统,其特征在于,系统包含三个部分:
2.根据权利要求1所述的一种基于cdn系统的边缘分布式kv系统,其特征在于:所述s1中专用于kv系统的存储单元kv-agent使用lsm-tree进行kv键值的存储。
3.根据权利要求2所述的一种基于cdn系统的边缘分布式kv系统,其特征在于:所述s1中存储kv键值时,从key中按照字符-分割,第一个字段作为键值的租户属性,每个租户的kv键值数据写入同一个或同一组本地文件中,降低文件系统中小文件的规模,将key对应的键值数据,以及对应的过期时间信息ttl写入文件,lsm-tree使用日志追加的模式顺序写入。
4.根据权利要求3所述的一种基于cdn系统的边缘分布式kv系统,其特征在于:所述s1中lsm-tree使用日志追加的模式顺序写入后,当文件被写入超过一定大小时,触发lsm-tree的压缩流程:重新遍历数据、将重复的、删除的、过期的数据删除,建立新的文件,并利用lsm-tree本身内存lru机制,加速最新的kv键值访问速度,不需要访问磁盘。
5.根据权利要求4所述的...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。