当前位置: 首页 > 专利查询>邻客音公司专利>正文

对数据库进行分区制造技术

技术编号:14890264 阅读:58 留言:0更新日期:2017-03-28 22:41
描述了用于对数据库进行分区的技术。与一些实施例一致,技术可以包括维护多个数据库实例,所述多个数据库实例具有第一分区和第二分区。此外,方法可以包括将第一邀请分配到第一分区并且将现有邀请分配到第二分区。第一邀请可以在第一日期之后被创建。现有邀请可以在第一日期之前并且在第二日期之后被创建,并且其中第二日期出现在第一日期之前。此外,方法可以包括对旧邀请进行归档,旧邀请在第二日期之前被创建。随后,方法可以包括接收邀请请求并且请求与邀请请求相关联的邀请信息,邀请请求具有被邀请者标识符、邀请者标识符和唯一标识符中的至少一个。

【技术实现步骤摘要】
【国外来华专利技术】优先权申请本申请要求在2014年5月31日提交的临时美国专利申请序列号62/006,129和在2014年7月22日提交的非临时美国专利申请序列号14/338,211的优先权,并且其被整体地通过引用并入本文中。
在本文中公开的主题一般地涉及对数据库的分区。具体地,本公开一般地涉及用于将数据库分区成多个数据库碎片的技术。
技术介绍
数据库碎片可以是数据库或搜素引擎中的分区。每个单独的分区可以被称为碎片。例如,水平分区可以是数据库设计原理,由此数据库表的行被单独地保持。每个分区形成碎片的部分,其可能进而位于分离的数据库服务器或物理位置上。通过将数据库分区成多个碎片,数据库表可以被划分并且分布到多个服务器中。作为结果,减少每个数据库中的每个表中的行的总数量。此外,每个数据库中的每个表中的行的数量中的减少可以减少索引大小,其可以改进搜索性能。此外,数据库碎片可以被放置在分离的硬件上,并且多个碎片可以被放置在多个机器上。这使能数据库在大量机器上的分布,其意味着数据库性能可以分散在多个机器上,从而大大改进性能。此外,如果仅使用与所有数据相关联的一个已知变量(例如,成员资格标识)对数据库碎片进行分片和查询,则推断适当的碎片成员资格可以是可能的。作为结果,可以基于已知变量对数据库进行自动地分片。然而,在一些实现中,可以根据与数据相关联的多个变量而不是仅一个已知变量来查询一些数据库。在当前实现中,当不能基于一个已知变量对数据库进行分片时,可能需要通过用手编码进行的手动分区用于对数据库进行分片。附图说明在附图中的图中图示一些实施例作为示例而不是限制。图1是图示根据一些示例实施例的适合于社交网络的网络环境的网络图。图2是图示根据一些实施例的社交网络服务的各种模块的框图。图3图示根据一些实施例的邀请档案系统的高层架构。图4是图示根据一些实施例的针对图3的邀请档案流程的方法的流程图。图5图示根据本专利技术的一些实施例的水轮式(waterwheel)分片的初始阶段。图6图示根据本专利技术的一些实施例的水轮式分片的旋转阶段。图7图示根据本专利技术的一些实施例的水轮式分片的稳定阶段。图8是图示根据一些实施例的在图5-7中描述的水轮式分片方法的流程图。图9是图示根据一些示例实施例的能够从机器可读介质读取指令并且执行在本文中讨论的方法中的任何一个或多个的机器的部件的框图。具体实施方式示例方法和系统针对用于对数据库进行自动地分区的技术。更具体地,本公开涉及用于不能基于一个已知变量对数据库进行分片时的分片技术的方法、系统和计算机程序产品。诸如用于社交网络的邀请数据库之类的数据库在索引表达到硬件的物理限制时可以被分区成多个碎片。例如,在社交网络中,当成员向另一个成员请求用以联系的邀请时,邀请可以被存储在邀请数据库中。在常规实现中,邀请服务可以用一个单个(例如,未分片的)数据库实例进行通信。数据库(例如,邀请贮藏所(store))可以管理针对社交网络的所有邀请。作为结果,单个索引表连续增大,其可能达到硬件限制。因此,随着社交网络增大,与每个邀请相关联的索引表的数据大小可能达到数据库的存储限制。然而,在一些实例中,数据库模式和数据的绝对大小可以达到物理硬件安装的限制。尽管邀请以字节计的大小是小的并且假设充足的经费,物理存储可以被无限地添加,但是由于要被维护的数据的索引,存储器和CPU容量可能是限制性的。在常规实现中,当数据库的大小太大时,数据库被分片。例如,在社交网络系统中,数据库的另一个实例被添加,并且数据库查询可以基于特定关键字(例如,成员ID)。然而,可能需要根据三个单独的关键字来对邀请服务进行分片。三个单独的关键字可以是邀请者标识符(ID)、被邀请者ID和邀请ID。邀请者ID可以是请求者的成员ID。被邀请者ID可以是被请求的成员ID或电子邮件地址。邀请ID可以是全局唯一邀请标识符。例如,邀请电子邮件可以被发送到被邀请者的电子邮件地址。因此,当被邀请者接受邀请时,由(如在图2中所示的)(一个或多个)邀请模块206接收的仅有信息可以是被邀请者的电子邮件地址或唯一邀请ID。为了保护成员的隐私,可以不与邀请电子邮件一起发送邀请者ID,其可以是邀请者的成员ID,。假如可以使用三个单独关键字来查询数据库,则对数据库进行分片的常规方法可能不正确地工作。当使用常规方法进行分片时,可能需要存储器中的多个映射表。此外,分片在使用常规方法时可能不被快速实现。在一些实施例中,不能基于单个已知变量对邀请数据库进行分区。在一些实例中,每个邀请可以包括取决于邀请来自哪里的三个不同的标识。不同的标识可能归因于安全和隐私顾虑,以便保护成员数据。为了说明,每个邀请可以与请求联系(connection)的成员(即,被邀请者标识符(ID))、被请求联系的成员(即,邀请者ID)以及唯一邀请ID相关联。如先前提及的那样,由于安全和隐私顾虑,可以不总是基于特定已知变量(例如,被邀请者ID、邀请者ID、唯一邀请ID)来查询邀请。例如,当第一用户想要查看所有未决邀请请求时,基于作为邀请者ID的第一用户的成员ID来查询数据库。替代地,当第二用户想要查看该第二用户已经发送出的所有未决邀请时,基于作为被邀请者ID的第二用户的成员ID来查询数据库。因此,在一些实例中,邀请数据库的当前实现可以不被自动地分区,由于社交网络可能能够容易地查询邀请数据库。为了进一步说明,取决于邀请的类型,可以仅基于一个变量(例如,被邀请者ID、邀请者ID、唯一邀请ID)来查询邀请。如先前提及的那样,当第一用户想要查看所有未决邀请请求时,社交网络系统可以仅用邀请者ID来查询邀请数据库。此外,第一用户可以是社交网络的部分(例如,使用第一用户的成员ID查询数据库),或者社交网络外部的成员(例如,使用与第一用户相关联的电子邮件地址查询数据库)。替代地,当第二用户想要查看由该第二用户发送出的所有邀请时,社交网络可以仅用被邀请者ID来查询邀请数据库(例如,使用第二用户的成员ID来查询数据库)。如由该示例说明的那样,假如数据库查询可以具有不同的非重叠的信息,则不能仅基于一个已知变量容易地对邀请数据库进行分区。手动归档在当前实现中,手动归档可以发生在邀请数据库达到归因于数据的索引的存储器和CPU容量限制时。例如,给定设置的时间段,可以从数据库移除比开始日期旧的所有邀请并且将其复制到档案。这可以是由数据库管理员执行的手动操作。手动归档可以是难以置信地复杂的,并且在归档过程中可能存在错误的风险。此外,对社交网络而言可能存在当机时间。此外,在一些实例中,被归档的旧未决邀请可能不起作用。例如,当用户在长时间段之后接受未决邀请时,邀请可能已经被归档,这可能不导致在数据库中更新邀请并且在被邀请者与邀请者之间形成关系链接。自动积极归档本专利技术的实施例可以提供对邀请的数据大小的自动管理。物理大小可以由服务控制,所述服务负责通过对数据归档从贮藏所扫除旧的或过期的数据。图1是图示根据一些示例实施例的适合于社交网络服务的网络环境100的网络图。网络环境100包括服务器机器110、数据库115、第一用户132的第一设备130和第二用户152的第二设备150,所有都经由网络190通信地耦合到彼此。服务器机器110可以形成基于网络的系统105(例如,被配置本文档来自技高网...
<a href="http://www.xjishu.com/zhuanli/55/201580040690.html" title="对数据库进行分区原文来自X技术">对数据库进行分区</a>

【技术保护点】
一种方法,包括:维护多个数据库实例,所述多个数据库实例具有第一分区和第二分区;使用邀请模块将第一邀请分配到第一分区,第一邀请在第一日期之后被创建;将现有邀请分配到第二分区,现有邀请在第一日期之前并且在第二日期之后被创建,并且其中第二日期出现在第一日期之前;对旧邀请进行归档,旧邀请在第二日期之前被创建;使用网络接口设备接收邀请请求,邀请请求具有被邀请者标识符、邀请者标识符和唯一标识符中的至少一个;使用被邀请者标识符、邀请者标识符和唯一标识符中的至少一个向第一分区和第二分区请求与邀请请求相关联的邀请信息;以及接收所请求的邀请信息。

【技术特征摘要】
【国外来华专利技术】2014.05.31 US 62/006129;2014.07.22 US 14/3382111.一种方法,包括:维护多个数据库实例,所述多个数据库实例具有第一分区和第二分区;使用邀请模块将第一邀请分配到第一分区,第一邀请在第一日期之后被创建;将现有邀请分配到第二分区,现有邀请在第一日期之前并且在第二日期之后被创建,并且其中第二日期出现在第一日期之前;对旧邀请进行归档,旧邀请在第二日期之前被创建;使用网络接口设备接收邀请请求,邀请请求具有被邀请者标识符、邀请者标识符和唯一标识符中的至少一个;使用被邀请者标识符、邀请者标识符和唯一标识符中的至少一个向第一分区和第二分区请求与邀请请求相关联的邀请信息;以及接收所请求的邀请信息。2.权利要求1的方法,进一步包括:在自第一日期以来阈值量的时间已经流逝之后在所述多个数据库实例中创建新分区;对来自第二分区的现有邀请进行归档;以及将新创建的邀请存储在新分区中,新创建的邀请在自第一日期以来阈值量的时间已经流逝之后被创建。3.权利要求1的方法,进一步包括:在自第一日期以来阈值量的时间已经流逝之后在所述多个数据库实例中创建新分区;从第二分区删除现有邀请;以及将新创建的邀请存储在新分区中,新创建的邀请在自第一日期以来阈值量的时间已经流逝之后被创建。4.权利要求1的方法,进一步包括:响应于由被邀请者对邀请请求的接受而在被邀请者与邀请者之间建立联系;以及更新存储在第一分区或第二分区中的邀请信息以包括由被邀请者对邀请请求的接受。5.权利要求1的方法,进一步包括:响应于邀请者撤回邀请请求而对存储在第一分区或第二分区中的邀请信息进行归档。6.权利要求1的方法,进一步包括:响应于由被邀请者对邀请请求的拒绝而更新存储在第一分区或第二分区中的邀请信息以包括由被邀请者对邀请请求的拒绝。7.权利要求1的方法,进一步包括:响应于由被邀请者对邀请请求的忽略请求而更新存储在第一分区或第二分区中的邀请信息以包括被邀请者的忽略请求。8.权利要求1的方法,其中邀请模块具有第一分区中的读取许可、更新许可和写入许可。9.权利要求1的方法,其中邀请模块具有第二分区中的读取许可和更新许可。10.权利要求1的方法,其中所述多个数据库实例是在线的,并且被归档的旧邀请被离线采用。11.一种系统,包括:邀请模块,其被配置成:维护多个数据库实例,所述多个数据库实例具有第一分区和第二分区;将第一邀请分配到第一分区,第一邀请在第一日期之后被创建;将现有邀请分配到第二分区,现有邀请在第一日期之前并且在第二日期之后被创建,并且其中第二日期出现在第一日期之前;对旧邀请进行归档,旧邀请在第二日期之前被创建;以及网络接口,其被配...

【专利技术属性】
技术研发人员:N维亚斯NC伍德汉斯J陈
申请(专利权)人:邻客音公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1