当前位置: 首页 > 专利查询>布雷克公司专利>正文

在数据库系统中计数项目的方法技术方案

技术编号:9519324 阅读:173 留言:1更新日期:2014-01-01 16:59
本发明专利技术涉及建立搜索引擎的组合算符。管理数据库系统的方法包括搜索引擎。该数据库系统从数据库系统中的一个或多个节点接收N个请求。在开始操作之前组合该N个请求,以处理请求。减少处理请求的操作的数量,并执行减少了数量的操作。该搜索引擎包括利用了蜂群算法的分散的蜂群系统。该N个请求包括N个增加请求,以向存储在数据库系统中的行增加一个值。组合N个请求包括将增加请求组合到数据库系统中存储的行;以及执行该减少了数量的操作包括执行下述操作,即对于少于N个处理中的N个增加请求,增加数据库系统中存储的行中的值。

【技术实现步骤摘要】
在数据库系统中计数项目的方法本申请是申请号为201080037040.3、申请日为2010年06月21日、专利技术名称为“可扩展的集群数据库”的PCT国际专利技术专利申请的分案申请。
本应用涉及数字计算或数据处理的领域,其包括数据结构和数据库/文件访问和管理,尤其是用于分布式数据库系统中的传播,搜索和检索数据。
技术介绍
分布式数据库系统可以用于存储和访问联网结构,例如大型集群,分布式计算系统,局域网,互联网和其他信息检索系统中的大规模数据。分布式数据库系统包括存储和处理设备,其典型地由中央数据库管理系统管理和控制。中央数据库管理系统可以存储在位于相同物理位置的多个计算机中,也可以分散在互联的计算机网络中。由中央数据库管理系统控制的分布式数据库系统受多种原因限制。如果主机故障,即使主机是容错的,中央主机控制管理功能的事实也会导致暂时不可用。并且,诸如网络分区的问题经常引起集群中至少一部分不可用。最后,用于主机容错的算法,例如Paxos,经常需要大量的时间从故障中恢复,在此期间,系统部分或全部不可用。具有中央主机也可能损害可扩展性。在大规模分布式系统中,由于异常情况,例如网络断开和电源故障,系统设备会频繁故障或失去网络连接。面对这些频繁故障,确保连续的系统可用性对于提供良好、等待时间短的操作是非常重要的。分布式数据库系统的另一个问题是支持高写速率的困难。即使像在具有许多网络服务器的网站上计算点击次数这样简单的事情在今天看来也是个难题。由于记录文件分析非常昂贵,导致其经常不能实时完成。统计数据,例如访问网站的独特顾客的数量的产生是非常昂贵的。今天在应用的尤其是应答搜索查询中的分布式数据库中,存在许多问题。搜索引擎对于在大型的文档数据库中定位文档,例如万维网(WWW)上的文档,或局域网的计算机上存储的文档,提供了有力的工具。响应于用户提交的搜索查询,定位文档。搜索查询由一个或多个搜索词组成。需要的是用于从数据库有效地和更智能地抽取相关信息的创新型技术。比仅仅是输入几个搜索词更智能的查询搜索引擎的能力对于今天的搜索引擎来说是更大的进步。查询结果的显示也可以使用这种改进。
技术实现思路
根据本公开的一个方面,涉及一种在数据库系统中计数项目的方法,包括:在具有一个或多个节点的数据库系统处,包括,一个或多个处理器和存储器,所述一个或多个节点的存储器存储要由所述一个或多个处理器执行的一个或多个程序;识别M个项目;计数M个项目中独特的项目;确定用于M个项目中独特项目的记录计数;和存储独特项目的记录计数,其中确定记录计数包括:将M个项目中每个独特的项目分为N个部分的集合,其中每个N个部分包括M个项目中独特项目的子集,其中独特项目的每个子集表述为位值;对于M个项目的每个子集,找到N个部分中每一个的最低未设定位;对于N个部分的集合中独特项目的每个子集,设定N个中间值中的最低位;对于N个部分的每个集合,将N个中间值的最低未设定位的值进行平均;以及将平均值作为二次幂表达的对数值进行应用。该方法还包括:将平均值作为二次幂表达的对数值进行应用之后,在数据库的存储器中存储所述N个中间值。其中,确定记录计数还包括确定该组独特项目的近似计数的精度近似等于正负50%。其中,N个中间值中较大的位值相对于较小的位值,更不可能被设置。其中,N个部分的集合中每个N个部分包括32位,所需的总共的记录计数存储器包括128位。其中,M个项目包括网站的导入链接的URL。其中,M个项目包括具有给定签名,用于检测垃圾邮件的电子邮件的收件人。其中,M个项目包括具有给定签名,用于检测来自僵尸网络的垃圾邮件的电子邮件发件人的C类IP网络。其中,M个项目包括链接网页的网页的地理位置。其中,M个项目包括互联网服务器的IP子网,其中该互联网服务器包含链接网页的网页。根据本公开的另一个方面,涉及一种在数据库系统中计数项目的方法,包括:在具有一个或多个节点的数据库系统处,包括一个或多个处理器和存储器,所述一个或多个节点的存储器存储要由所述一个或多个处理器执行的一个或多个程序;识别M个项目;计数M个项目中独特的项目;确定用于M个项目中独特项目的记录计数;存储独特项目的记录计数,其中确定记录计数包括:将M个项目中每个独特的项目分为N个部分的集合,其中每个N个部分包括M个项目中独特项目的子集,和其中独特项目的每个子集表述为位值;对于M个项目的每个子集,找到N个部分中每一个的最低未设定位;利用任意指数式衰减因数,选择在N个中间值中设定哪个位,对于N个部分的每个集合来说,将N个中间值的最低未设定位的值进行平均;以及将平均值作为以与任意指数衰减因数相关的任意底数表达的对数值进行应用。其中,N个中间值中较大的位值相对于较小的位值,更不可能被设置。其中,N个部分的集合中每个N个部分包括32位,所需的总共的记录计数存储器包括128位。其中,M个项目包括网站的导入链接的URL。其中,M个项目包括具有给定签名,用于检测垃圾邮件的电子邮件的收件人。附图说明为了更好的理解本申请中所述的实施例,应当结合附图,参照下面的具体实施方式,其中在所有附图中,相似的参考标记表示对应的部分。图1是根据一些实施例的分布式网络系统的框图;图2是根据一些实施例的具有多个集群的分布式数据库系统的框图;图3A是用于示意分布式数据库系统中主机系统的框图;图3B是根据一些实施例的分布式数据库系统中蜂群(swarm)系统的框图;图4是根据一些实施例,用于示意向蜂群系统中节点的集群增加新节点的框图;图5A和5B是根据一些其他实施例,用于示意分布式数据库的蜂群系统的框图;图5C是根据一些实施例,用于示意集群中节点网架(rack)的框图;图6A-6C是根据一些实施例的蜂群系统中映射和分配存储桶(bucket)的框图;图7A-7C是根据一些实施例的如何在分布式数据库中组织和存储数据的框图;图8是根据一些实施例,用于示意蜂群系统中数据交换的框图;图9是根据一些实施例的分布式数据库系统中获取操作的框图;图10是根据一些实施例的分布式数据库系统中处理获取请求的流程图;图11是根据一些其他实施例的在分布式数据库系统中处理请求的流程图;图12是根据一些实施例的在分布式数据库系统中修复和管理存储桶的过程的流程图;图13A是根据一些实施例,用于示意在蜂群系统350,500中如何删除文件的框图;图13B是根据一些实施例,用于示意并行映射作业过程的框图;图14A是根据一些实施例的组合算符(combinator)工具的集合;图14B是根据一些实施例,用于示意在分布式数据库系统中用于节点的加法组合算符的框图;图15是根据一些实施例,示意在分布式数据库系统中用于写入三个存储桶复制的组合算符的框图;图16A是根据一些实施例,用于示意TopN排名的数据结构的图示;图16B是根据一些实施例,用于示意在分布式数据库系统中概念性的记录计数(Logcount)结构和过程的图示;图16C是根据一些实施例的,利用记录计数对一组独特的项目进行计数的过程的流程图;图17A是根据一些实施例,用于示意映射数据位置的数据结构的框图;图17B是根据一些实施例的映射的本地化子集的框图;图18是根据一些实施例的服务器的框图;图19是根据一些实施例的,在图17的服务器中守护进程(daemon)本文档来自技高网
...
在数据库系统中计数项目的方法

【技术保护点】
一种在数据库系统中计数项目的方法,包括:在具有一个或多个节点的数据库系统处,包括,一个或多个处理器和存储器,所述一个或多个节点的存储器存储要由所述一个或多个处理器执行的一个或多个程序;识别M个项目;计数M个项目中独特的项目;确定用于M个项目中独特项目的记录计数;和存储独特项目的记录计数,其中确定记录计数包括:将M个项目中每个独特的项目分为N个部分的集合,其中每个N个部分包括M个项目中独特项目的子集,其中独特项目的每个子集表述为位值;对于M个项目的每个子集,找到N个部分中每一个的一最低未设定位;对于N个部分的集合中独特项目的每个子集,设定N个中间值中的最低位;对于N个部分的每个集合,将N个中间值的最低未设定位的值进行平均;以及将平均值作为二次幂表达的对数值进行应用。

【技术特征摘要】
2009.06.19 US 61/218,8891.一种在数据库系统中对项目进行计数的方法,包括:在具有一个或多个节点的数据库系统处,其中所述节点包括一个或多个处理器和存储器,所述一个或多个节点的存储器存储要由所述一个或多个处理器执行的一个或多个程序,识别M个项目;计数所述M个项目中的独特项目;确定所述M个项目中的独特项目的记录计数;以及存储所述记录计数;其中,确定所述记录计数包括:对所述独特项目的每一个进行散列;将所述独特项目中的每个独特项目的散列值分成N个部分,其中,每个部分表示为位值;对于所述N个部分的每一个部分,找到最低设定位;在N个中间值中的与各部分对应的中间值中设定与所述最低设定位相同的位;将所述独特项目的所述N个中间值的最低未设定位的值求平均;以及将平均值应用为以二次幂表示的对数值。2.如权利要求1所述的方法,还包括:将平均值应用为以二次幂表示的对数值之后,在数据库的存储器中存储所述N个中间值。3.如权利要求1所述的方法,其中独特项目的记录计数的精度是大约正负50%。4.如权利要求1所述的方法,其中在所述N个中间值中,较大的位比较小的位更少可能被设置。5.如权利要求1所述的方法,其中所述N个部分中的每个部分包括32位,所需的总共的记录计数存储器包括128位。6.如权利要求1所述的方法,其中M个项目包括网站的导入链接的URL。7.如权利要求1所述的方法,其中M个项目包括具有给定签名的电子邮件的收件人,其用于检测垃圾邮件。8.如权利要求1所述的方法,其中M个项...

【专利技术属性】
技术研发人员:布林·罗伯特·多尔格雷戈里·B·林达尔迈克尔·马克森基思·彼得斯罗伯特·迈克尔·萨利巴里奇·斯科伦塔罗伯特·N·图尔克利须那·斯里尼瓦桑
申请(专利权)人:布雷克公司
类型:发明
国别省市:

网友询问留言 已有1条评论
  • 来自[未知地区] 2014年12月10日 09:30
    合算是指1.总计计算2.代价少而收益大
    0
1