利用更新层的数据库分区的制作方法

文档序号:9620906阅读:356来源:国知局
利用更新层的数据库分区的制作方法
【技术领域】
[0001]本公开总体上涉及搜索算法。
【背景技术】
[0002]可以包括社交网络网站的社交网络系统能够使其用户(例如,个人或组织)与该系统并且通过该系统彼此互动。通过用户的输入,社交网络可以在社交网络系统内创建和储存与用户相关联的用户配置文件。用户配置文件可以包括联系信息、人口统计信息、通信信道信息以及关于用户的个人兴趣的信息。通过用户的输入,社交网络系统还可以创建和储存用户与社交网络系统的其他用户的关系的记录,并且提供服务(例如,涂鸦墙、照片共享、活动组织、消息传送、游戏或广告),以在用户之间或之中促进社会互动。
[0003]社交网络系统可以通过一个或多个网络将与其服务相关的内容或消息传输给用户的移动或其他计算装置。用户还可以在用户的移动或其他计算装置上安装软件应用程序,用于评估用户的用户配置文件以及在社交网络系统内的其他数据。社交网络系统可以生成一组个性化的内容对象,以向用户显示,例如,与该用户联系的其他用户的聚合故事的新闻馈送。

【发明内容】

[0004]在【具体实施方式】中,可以提供用于减少数据库负荷的索引服务器的双叉架构,用于对数据库查询。该架构的第一叉状物(“项目分区”(TS)索引)可以包括具有N个或更少的搜索结果(即,短倒排列表(posing list))的搜索项,其中,服务器可以包括所有类型(通过类型组织的)文档的标识符。该架构的第二叉状物可以包括多个“文档分区”(DS)索引,用于具有大于N个搜索结果(即,长倒排列表)的那些搜索项,其中,每个DS索引仅仅包含用于一个或多个特定类型的文档的标识符(例如,照片、用户、评论、喜欢、登记)。在接收复杂查询时,顶部聚合器可以在查询中查找每个搜索项,以确定每个项目具有长倒排列表或者短倒排列表。然后,顶部聚合器访问用于具有短倒排列表的项目的TS索引以及用于具有长倒排列表的项目的DS索引。例如,“Gangnam Style”的搜索可以包括两个搜索项(“Gangnam”和“Style”),其中,“Gangnam”具有短倒排列表以及“Style”具有非常长的倒排列表。在这种情况下,可以从TS索引中拉出用于“Gangnam”的第一倒排列表,并且可以从DS索引中拉出用于“Style”的第二倒排列表(在所有相关文档类型之上),然后,可以计算这两组文档标识符的交集,以确定实际的一组搜索结果。
[0005]在与新项目相关联的文档第一次开始出现在社交网络上时,只要倒排列表的长度小于N,就可在TS索引中为新项目生成倒排列表。在倒排列表内的条目可以标有文档类型。一旦倒排列表的长度超过N,根据在倒排列表内的项目的文档类型,倒排列表的组块分布到DS索引内。如果在提升(promot1n)过程发生故障转移,那么最近实时服务器可以查询TS索引,用于提升的项目。一旦所有块体经证实在相关DS索引中创建,就可以从TS索引中删除该项目及其倒排列表。
[0006]每个索引可以保持不可变层并且将实时更新加入可变层中。每当从不可变层中检索索引数据,就也可以从相应的可变层中检索索引数据。在可变层内的数据可以定期包含在不可变层内,在这个任务期间,也可以处理提升。
【附图说明】
[0007]图1示出了与社交网络系统相关联的一个实例网络环境;
[0008]图2示出了社交网络系统的实例搜索索引的实例划分;
[0009]图3示出了具有更新层的实例搜索的一个实例方法;
[0010]图4示出了具有包含的更新的实例搜索的一个实例方法;
[0011]图5示出了一个实例社交图谱;
[0012]图6示出了一个实例计算机系统。
【具体实施方式】
[0013]图1示出了与社交网络系统相关联的一个实例网络环境100。网络环境100包括通过网络110彼此连接的客户端系统130、社交网络系统160以及第三方系统170。虽然图1示出了客户端系统130、社交网络系统160、第三方系统170以及网络110的特定设置,但是本公开预计客户端系统130、社交网络系统160、第三方系统170以及网络110具有任何合适的设置。作为一个实例,并非通过限制的方式,客户端系统130、社交网络系统160以及第三方系统170中的两个或多个彼此直接连接,旁通网络110。作为另一个实例,客户端系统130、社交网络系统160以及第三方系统170中的两个或多个在物理上或逻辑上彼此完全或部分共同定位。而且,虽然图1示出了特定数量的客户端系统130、社交网络系统160、第三方系统170以及网络110,但是本公开预计客户端系统130、社交网络系统160、第三方系统170以及网络110具有任何合适的数量。作为一个实例,并非通过限制的方式,网络环境100可以包括多个客户端系统130、社交网络系统160、第三方系统170以及网络110。
[0014]本公开预计任何合适的网络110。作为一个实例,并非通过限制的方式,网络110的一个或多个部分可以包括自组织网络、内联网、外联网、虚拟专用网络(VPN0、局域网(LAN)、无线LAN(WLAN)、广域网(WAN)、无线WAN(ffffAN)、城域网(MAN)、一部分互联网、一部分公共交换电话网(PSTN)、蜂窝电话网络、或其中的两个或多个的组合。网络110可以包括一个或多个网络110。
[0015]链路150可以使客户端系统130、社交网络系统160以及第三方系统170与通信网络110或者彼此连接。本公开预计任何合适的链路150。在【具体实施方式】中,一个或多个链路150包括一个或多个有线(例如,数字用户线路(DSL)或电缆数据服务接口规范(DOCSIS))、无线(例如,W1-Fi或全球微波接入互操作性(WiMAX))、或光学(例如,同步光纤网络(S0NET)或同步数字系列(SDH))链路。在【具体实施方式】中,一个或多个链路150均包括自组织网络、内联网、外联网、VPN、LAN、WLAN、WAN、WWAN、MAN、一部分互联网、一部分PSTN、基于蜂窝技术的网络、基于卫星通信技术的网络、另一个链路150或两个或多个这种链路150的组合。在整个网络设备100中,链路150不必相同。一个或多个第一链路150可以在一个或多个方面与一个或多个第二链路150不同。
[0016]在【具体实施方式】中,客户端系统130可以是电子装置,其包括硬件、软件或嵌入式逻辑元件或两个或多个这种元件的组合,并且能够执行由客户端系统130实现或支持的合适功能。作为一个实例,并非通过限制的方式,客户端系统130可以包括计算机系统,例如,台式电脑、笔记本或膝上型电脑、笔记本、平板电脑、电子阅读器、GPS装置、照相机、个人数字助理(PDA)、手持式电子装置、蜂窝电话、智能电话、其他合适的电子装置、或其任何合适的组合。本公开预计任何合适的客户端系统130。客户端系统130可以使在客户端系统130上的网络用户访问网络110。客户端系统130可以使其用户与在其他客户端系统130上的其他用户通信。
[0017]在【具体实施方式】中,客户端系统130可以包括网页浏览器132,例如,MICROSOFTINTERNET EXPLORER、GOOGLE CHROME 或 M0ZILLA FIREF0X,并且可以具有一个或多个附加组件、插件或其他延伸部分,例如,TOOLBAR或ΥΑΗ00 TOOLBAR。在客户端系统130上的用户可以输入统一资源定位符(URL)或其他地址,将网页浏览器132引向特定用户(例如,服务器162或与第三方系统170相关联的服务器),并且网页浏览器132可以生成超文本传输协议(HTTP)请求,并且将HTTP请求传送给服务器。服务器可以接受HTTP请求并且将响应于HTTP请求的一个或多个超文本标记语言(HTML)文件传送给客户端系统130。客户端系统130可以基于来自服务器的HTML文件渲染网页,用于呈现给用户。本公开预计任何合适的网页文件。作为一个实例,并非通过限制的方式,网页可以根据特定的需要从HTML文件、可扩展超文本标记语言(XHTML)文件或可扩展标记语言(XML)文件中渲染。这种页面还可以执行脚本,例如,例如并且没有限制地,通过JAVASCRIPT、JAVA、MICR0S0FT SILVERLIGHT、标记语言和脚本(例如,AJAX(异步JAVASCRIPT和XML)的组合等编写的脚本。在本文中,在适当的情况下,网页的引用包括一个或多个相应的网页文件(浏览器可以用于渲染网页的文件),反之亦然。
[0018]在【具体实施方式】中,社交网络系统160可以是可以托管在线社交网络的网络可寻址计算系统。社交网络系统160可以生成、储存、接收并且发送社交网络数据,例如,用户配置文件数据、概念配置文件数据、社交图谱信息、或与在线社交网络相关的其他合适数据。社交网络系统160可以由网络环境100的其他元件直接或者通过网络110访问。在【具体实施方式】中,社交网络系统160可以包括一个或多个服务器162。每个服务器162可以是单一式服务器或分布式服务器,其跨过多个计算机或多个数据中心。服务器162可以是各种类型,例如,例如并且没有限制地,网络服务器、新闻服务器、邮件服务器、消息服务器、广告服务器、文件服务器、应用程序服务器、交换服务器、数据库服务器、代理服务器、适合于执行在本文中描述的功能或过程的另一个服务器、或其任何组合。在【具体实施方式】中,每个服务器162可以包括硬件、软件或嵌入式逻辑元件或两个或多个这种元件的组合,用于执行由服务器162实现或支持的合适功能。在【具体实施方式】中,社交网络系统160可以包括一个或多个数据储存164。数据储存164可以用于储存各种类型的信息。在【具体实施方式】中,可以根据特定的数据结构,组织储存在数据储存164内的信息。在【具体实施方式】中,每个数据储存164可以关联式、柱状、相关性或其他合适的数据库。虽然本公开描述或显示了特定类型的数据库,但是本公开预计任何合适类型的数据库。【具体实施方式】可以提供接口,所述接口使客户端系统130、社交网络系统160或者第三方系统170能够管理、检索、增加或删除储存在数据储存164内的信息。
[0019]在【具体实施方式】中,社交网络系统160可以在一个或多个数据储存164内储存一个或多个社交图谱。在【具体实施方式】中,社交图谱可以包括多个节点-其可以包括多个用户节点(每个节点与特定的用户对应)或多个概念节点(每个节点与特定的概念对应)-以及连接所述节点的多个矢线。社交网络系统160可以给在线社交网络的用户提供与其他用户通信和互动的能力。在【具体实施方式】中,用户可以通过社交网络系统160加入在线社交网络,然后,增加与用户希望联系的社交网络系统160的多个其他用户的联系(例如,关系)。在本文中,术语“朋友”可以表示用户通过社交网络系统160与其形成联系、关联性或关系的社交网络系统160的任何其他用户。
[0020]在【具体实施方式】中,社交网络系统160可以给用户提供对由社
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1