CN107729525A - 基于垂直的查询选择化 - Google Patents

基于垂直的查询选择化 Download PDF

Info

Publication number
CN107729525A
CN107729525A CN201711027046.2A CN201711027046A CN107729525A CN 107729525 A CN107729525 A CN 107729525A CN 201711027046 A CN201711027046 A CN 201711027046A CN 107729525 A CN107729525 A CN 107729525A
Authority
CN
China
Prior art keywords
search
search inquiry
inquiry
user
data storage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201711027046.2A
Other languages
English (en)
Inventor
斯里拉姆·桑卡尔
伊戈尔·里贝罗·德阿西斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Meta Platforms Inc
Original Assignee
Facebook Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Facebook Inc filed Critical Facebook Inc
Publication of CN107729525A publication Critical patent/CN107729525A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • G06F16/24534Query rewriting; Transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24575Query processing with adaptation to user needs using context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/3332Query translation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9538Presentation of query results

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • User Interface Of Digital Computer (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了基于垂直的查询选择化。在一个实施方式中,计算设备从客户端系统接收搜索查询,搜索查询包括多个搜索词;通过从搜索查询中去除第一搜索词,修改搜索查询,第一搜索词被确定为与多个对象类型的第一对象类型相关联;从多个数据存储器中的第一数据存储器检索对于经修改的搜索查询进行响应的第一搜索结果,第一数据存储器存储第一对象类型的对象;以及响应于搜索查询,将一个或多个第一搜索结果发送至客户端系统。根据本发明,提供了优化搜索查询的方法。

Description

基于垂直的查询选择化
本申请是分案申请,其母案申请的申请号为201480031913.8,申请日为2014年4月3日,发明名称为“基于垂直的查询选择化”。
技术领域
本公开内容大体涉及数据库。
背景技术
可包括社交网络网站的社交网络系统能够使其用户(诸如,个人或组织)与其交互并且通过其彼此交互。社交网络系统可以利用用户输入在社交网络系统中创建并储存与用户相关联的用户配置文件。用户配置文件可包括用户的人口统计信息、通信渠道信息以及个人兴趣信息。社交网络系统还可利用来自用户的输入创建并存储用户与社交网络系统中的其他用户的关系的记录,以及提供便于两个用户或多个用户之间的社交交互的服务(例如,留言板、照片分享、事件组织、消息、游戏或者广告)。
社交网络系统可通过一个或多个网络将与其服务有关的内容或者消息发送至用户的手机或者其他计算设备。用户还可以在用户的手机或其他计算设备上安装软件应用程序,用于访问用户的用户配置文件以及社交网络系统内的其他数据。社交网络系统可生成一组个性化的内容对象以显示给用户,诸如,连接至该用户的其他用户的聚合的故事的新鲜事。
发明内容
具体实施方式描述用于通过识别搜索查询中的搜索词并且通过选择化搜索词修改该搜索查询来优化搜索查询的方法。在具体实施方式中,一个或多个计算设备可以接收搜索查询,并且识别搜索查询中与多个对象类型中的第一对象类型相关联的搜索词。计算设备可以通过选择化该搜索查询中的搜索词修改搜索查询。计算设备可以发送修改的搜索查询用于针对存储第一对象类型的对象的第一数据的执行。计算设备还可以发送没有修改的搜索查询用于针对存储对象类型中的第二对象类型的对象的第二数据存储器的执行,并使来自修改的搜索查询的执行的第一结果与来自没有修改的搜索查询的执行的第二搜索结果聚合。
附图说明
图1示出了与社交网络系统相关联的示例性网络环境。
图2示出了示例性社交图谱。
图3示出用于存储社交网络系统的对象的示例性分区。
图4示出用于优化搜索查询的示例性方法。
图5示出了示例性计算机系统。
具体实施方式
图1示出了与社交网络系统相关联的示例性网络环境100。网络环境100包括通过网络110彼此连接的用户101、客户端系统130、社交网络系统160以及第三方系统170。尽管图1示出了用户101、客户端系统130、社交网络系统160、第三方系统170以及网络110的具体布置,但是本公开内容考虑用户101、客户端系统130、社交网络系统160、第三方系统170以及网络110的任何合适的布置。作为示例而不是限制的方式,客户端系统130、社交网络系统160以及第三方系统170中的两个或更多个可旁通网络110直接彼此连接。作为另一示例,客户端系统130、社交网络系统160以及第三方系统170中的两个或更多个可物理地或逻辑地整体或部分共同位于同一位置。此外,尽管图1示出了用户101、客户端系统130、社交网络系统160、第三方系统170以及网络110的具体数量,但是本公开内容考虑用户101、客户端系统130、社交网络系统160、第三方系统170以及网络110的任何合适的数量。作为示例而不是限制的方式,网络环境100可包括多个用户101、客户端系统130、社交网络系统160、第三方系统170以及网络110。
在具体实施方式中,用户101可以是与社交网络系统160交互或通过社交网络系统160通信的个体(人类用户)、实体(例如,企业、商家或第三方应用)或者(例如,个体的或者实体的)组。在具体实施方式中,社交网络系统160可以是承载线上社交网络的网络可寻址计算系统。社交网络系统160可生成、存储、接收、以及发送社交网络数据,例如,用户配置文件数据、概念配置文件数据、社交图谱信息、或者与在线社交网络相关的其他合适数据。社交网络系统160可由网络环境100的其他组件直接或者经由网络110访问。在具体实施方式中,社交网络系统160可包括授权服务器(或者其他合适的组件),其允许用户101(诸如,通过设定适当的隐私设置)选择启用还是不启用使他们的动作被社交网络系统160记录或者与其他系统(例如,第三方系统170)共享。用户的隐私设置可以确定可以记录与用户相关联的什么信息,可以如何记录与用户相关联的信息,何时可以记录与用户相关联的信息,谁可以记录与用户相关联的信息,可以与谁共享与用户相关联的信息,以及可以出于什么目的记录或者共享与用户相关联的信息。授权服务器可以用于视情况通过阻拦、数据散列、匿名、或者其他适用技术执行社交网络系统160的用户的一个或多个隐私设置。在具体实施方式中,第三方系统170可以是能够承载网址和应用的网络可寻址计算系统。第三方系统170可以生成、存储、接收、并发送第三方系统数据,诸如,网页、文本、图像、视频、音频或者应用。第三方系统170可通过网络环境100的其他组件直接或者经由网络110访问。在具体实施方式中,一个或多个用户101可使用一个或多个客户端系统130以访问社交网络系统160或第三方系统170,向社交网络系统160或第三方系统170发送数据以及从社交网络系统160或第三方系统170接收数据。客户端系统130可直接地、通过网络110或者通过第三方系统访问社交网络系统160或第三方系统170。作为示例而不是限制的方式,客户端系统130可通过社交网络系统160访问第三方系统170。客户端系统130可以是诸如个人电脑、膝上型电脑、蜂窝电话、智能手机、或者平板电脑等任何合适的计算设备。
本公开内容考虑任何合适的网络110。作为示例而不是限制的方式,网络110的一个或多个部分可包括自组织网络、内联网、外联网、虚拟专用网络(VPN)、局域网络(LAN)、无线LAN(WLAN)、广域网络(WAN)、无线WAN(WWAN)、城域网(MAN)、互联网的一部分、公用交换电话网(PSTN)的一部分、蜂窝电话网络、或者这些的两种或更多种的组合。网络110可以包括一个或多个网络110。
链路150可将客户端系统130、社交网络系统160以及第三方系统170连接到通信网络110或者彼此连接。本公开内容考虑任何合适的链路150。在具体实施方式中,一个或多个链路150包括一个或多个有线链路(诸如,数字用户线路(DSL)或电缆数据服务接口规范(DOCSIS))、无线链路(诸如,Wi-Fi或全球互通微波存取(WiMAX))、或者光链路(诸如,同步光纤网(SONET)或同步数字体系(SDH))。在具体实施方式中,一个或多个链路150各自包括自组织网络、内联网、外联网、VPN、LAN、WLAN、WAN、WWAN、MAN、互联网的一部分、PSTN的一部分、以蜂窝技术为基础的网络、以卫星通信技术为基础的网络、另一个链路150或者两个或者更多个此类链路150的组合。链路150在整个网络环境100中不必相同。就一个或多个方面而言,一个或多个第一链路150可以与一个或多个第二链路150不同。
图2示出了示例性社交图谱200。在具体实施方式中,社交网络系统160可将一个或多个社交图谱200存储在一个或多个数据存储器中。在具体实施方式中,社交图谱200可包括多个节点——其可包括多个用户节点202或多个概念节点204——以及连接节点的多个边线206。为了教导的目的,以二维直观图示出了图2中示出的示例性社交图谱200。在具体实施方式中,社交网络系统160、客户端系统130或者第三方系统170可访问社交图谱200和相关社交图谱信息用于适当应用。例如,社交图谱200的节点和边线可作为数据对象存储在数据存储器(诸如,社交图谱数据库)中。这种数据存储器可包括社交图谱200的节点或边线的一个或多个可搜索的或者可查询的索引。
在具体实施方式中,用户节点202可与社交网络系统160的用户对应。作为示例而不是限制的方式,用户可以是与社交网络系统160交互或通过社交网络系统160通信的个体(人类用户)、实体(例如,企业、商家或第三方应用)或者(例如,个体的或者实体的)组。在具体实施方式中,当用户在社交网络系统160中注册账户时,社交网络系统160可创建对应于该用户的用户节点202,并且将用户节点202存储在一个或多个数据存储器中。在适当的情况下,本文中所描述的用户和用户节点202可指代注册用户以及与注册用户相关联的用户节点202。另外或者可替代地,在适当情况下,此处所描述的用户和用户节点202可指代未向社交网络系统160注册的用户。在具体实施方式中,用户节点202可与用户提供的信息或者各种系统(包括社交网络系统160)收集的信息相关联。作为示例而不是限制的方式,用户可以提供他或她的名字、资料图片、联系信息、生日、性别、婚姻状况、家庭状况、工作情况、教育背景、偏好、兴趣或其他人口统计信息。在具体实施方式中,用户节点202可与对应于与用户相关联的信息的一个或多个数据对象相关联。在具体实施方式中,用户节点202可与一个或多个网页对应。
在具体实施方式中,概念节点204可对应于一个概念。作为示例而不是限制的方式,一个概念可对应于一个地点(诸如,电影院、餐馆、地标或城市);网站(诸如,与社交网络系统160相关联的网站或与网络应用服务器相关联的第三方网站);实体(诸如,个人、商家、群体、运动队或名人);可以位于社交网络系统160内或外部服务器(诸如,网络应用服务器)上的资源(诸如,例如音频文件、视频文件、数字照片、文本文件、结构文档或者应用);不动产或知识产权(诸如,雕塑、绘画、电影、游戏、歌曲、想法、照片或书面著作);游戏;活动;想法或理论;另一个合适的概念;或者两个或更多个这种概念。概念节点204可以与用户提供的概念信息或者各种系统(包括社交网络系统160)收集的信息相关联。作为示例而不是限制的方式,概念信息可包括名称或标题;一个或多个图像(例如,书籍的封面图像);位置(例如,地址或地理位置);网站(可与URL相关联);联系信息(例如,电话号码或电子邮件地址);其他合适的概念信息;或者这种信息的任何合适的组合。在具体实施方式中,概念节点204可以与对应于与概念节点204相关联的信息的一个或多个数据对象相关联。在具体实施方式中,概念节点204可与一个或多个网页对应。
在具体实施方式中,社交图谱200中的节点可以表示网页(其可被称为“配置文件页面”)或者由网页表示。配置文件页面可由社交网络系统160承载或者社交网络系统160可访问配置文件页面。配置文件页面还可以在与第三方服务器170相关联的第三方网站上承载。作为示例而不是限制的方式,对应于具体的外部网页的配置文件页面可以是具体的外部网页,并且配置文件页面可以对应于具体的概念节点204。所有的其他用户或者其他用户的选择子集可查看配置文件页面。作为示例而不是限制的方式,用户节点202可具有对应的用户配置文件页面,其中,对应的用户可以添加内容,做出声明或者他或她自己的其他表达。作为另一个示例并非限制的方式,概念节点204可具有对应的概念配置文件页面,其中,一个或多个用户可添加内容,做出声明或者表达他们的想法,具体地,涉及对应于概念节点204的概念。
在具体实施方式中,概念节点204可以表示第三方网页或者由第三方系统170承载的资源。除了其他元素,第三方网页或资源可包括内容、可选择的或其他图标、或者表示动作或活动的其他可互动的对象(例如,其可以JavaScript、AJAX或PHP编码实现)。作为示例而不是限制的方式,第三方网页可包括可选择的图标,诸如,“喜欢”、“签到”、“吃”、“推荐”或者另一个合适的动作或活动。浏览第三方网页的用户可通过选择图标之一(例如“吃”)而进行动作,使客户端系统130向社交网络系统160发送表示用户的动作的消息。响应于该消息,社交网络系统160可在对应于用户的用户节点202与对应于第三方网页或资源的概念节点204之间创建边线(例如,“吃”边线)并且在一个或多个数据存储器中存储边线206。
在具体实施方式中,社交图谱200中的一对节点可以通过一个或多个边线206彼此连接。连接一对节点的边线206可以表示该对节点之间的关系。在具体实施方式中,边线206可包括或表示一个或多个数据对象或者对应于一对节点之间的关系的属性。作为示例而不是限制的方式,第一用户可以表示第二用户是第一用户的“好友”。社交网络系统160可响应此指示将“好友请求”发送至第二用户。如果第二用户确认该“好友请求”,则社交网络系统160可以在社交图谱200中创建将第一用户的用户节点202连接至第二用户的用户节点202的边线206,并且在一个或多个数据存储器164中存储边线206作为社交图谱信息。在图2的示例中,社交图谱200包括指示用户“A”与用户“B”的用户节点202之间的好友关系的边线206,以及指示用户“C”与用户“B”的用户节点202之间的好友关系的边线。尽管本公开内容描述或示出了具有连接具体用户节点202的具体属性的具体边线206,但是本公开内容考虑具有连接用户节点202的任何合适属性的任何合适的边线206。作为示例而不是限制的方式,边线206可以表示友谊、亲属关系、业务或工作关系、爱好者关系、粉丝关系、访客关系、客户关系、上级/下属关系、相互关系、非相互关系、另一合适类型的关系或者两种或更多种此类关系。此外,尽管本公开内容总体将节点描述为被连接的,但是本公开内容还将用户或概念描述为被连接的。在本文中,在适当的情况下,参考连接的用户或概念可以指代对应于通过一个或多个边线206在社交图谱200中被连接的这些用户或概念的节点。
在具体实施方式中,用户节点202与概念节点204之间的边线206可以表示由与用户节点202相关联的用户向与概念节点204相关联的概念执行的具体动作或活动。作为示例而不是限制的方式,如图2中所示,用户可以“喜欢”、“参加了”、“播放了”、“收听了”、“烹饪了”、“就职于”或“观看了”概念,其中的每个可以对应于边线的类型或子类型。例如,对应于概念节点204的概念配置文件页面可包括可选择的“签到”图标(诸如,可点击的“签到”图标)或者可选择的“添加到收藏夹”图标。类似地,在用户点击这些图标之后,响应于对应于各自动作的用户的动作,社交网络系统160可以创建“收藏夹”边线或“签到”边线。作为另一示例而不是限制的方式,用户(用户“C”)可以使用具体的应用程序(SPOTIFY,它是在线音乐应用程序)收听具体的歌曲(“Imagine”)。在该情况下,社交网络系统160可以在对应于用户的用户节点202与对应于歌曲和应用程序的概念节点204之间创建“收听了”边线206和“使用了”边线(如图2中所示),以指示用户听过该歌曲并且使用过该应用程序。此外,社交网络系统160可以在对应于歌曲和应用程序的概念节点204之间创建“播放了”边线206(如图2中所示),以指示通过具体的应用程序播放了具体的歌曲。在这种情况下,“播放了”边线206对应于在外部音频文件(歌曲“Imagine”)上通过外部应用程序(SPOTIFY)执行的动作。尽管本公开内容描述了具有连接用户节点202与概念节点204的具体属性的具体边线206,但是本公开内容考虑具有连接用户节点202和概念节点204的任何合适属性的任何合适的边线206。而且,尽管本公开内容描述了表示单一关系的用户节点202与概念节点204之间的边线,但是本公开内容考虑表现用户节点202与概念节点204之间的一种或多种关系的边线。作为示例而不是限制的方式,边线206可以表示用户喜欢并且以具体的概念使用了边线206。可替代地,另一个边线206可以表示用户节点202与概念节点204之间(如图2中示出的用户“E”的用户节点202与“SPOTIFY”的概念节点204之间)的每个类型的关系(或者多个单一关系)。
在具体实施方式中,社交网络系统160可以在社交图谱200中的用户节点202与概念节点204之间创建边线206。作为示例而不是限制的方式,查看概念配置文件页面(诸如,通过使用网络浏览器或者用户的客户端系统130承载的专用应用)的用户通过单击或者选择“喜欢”图标可以指示他或她喜欢通过概念节点204表示的概念,这可以引起用户的客户端系统130向社交网络系统160传输指示用户对与概念配置文件页面相关联的概念的喜欢的消息。响应于该消息,社交网络系统160可以在与用户相关联的用户节点202与概念节点204之间创建边线206,如通过用户与概念节点204之间的“喜欢”边线206所示出的。在具体实施方式中,社交网络系统160可将边线206存储在一个或多个数据存储器中。在具体实施方式中,响应于具体的用户动作,边线206可以自动地由社交网络系统160形成。作为示例而不是限制的方式,如果第一用户上传图片,观看电影或者收听歌曲,则边线206可在对应于第一用户的用户节点202与对应于这些概念的概念节点204之间形成。尽管本公开内容描述了以具体的方式形成具体边线206,但是本公开内容考虑以任何合适的方式形成任何合适的边线206。
另外,任何两个节点之间的分离度被定义为从一个节点到另一节点穿越社交图谱所需的最小跳数(或者边线)。两个节点之间的分离度可被视为由社交图谱中的两个节点表示的用户或者概念之间的关联性的测量。
如之前描述的,社交网络系统可以将社交图谱信息及其他社交网络系统相关的信息存储在一个或多个数据存储器中。在具体实施方式中,可根据具体数据结构组织数据存储器中存储的信息。每个数据存储器可以是相关的、圆柱形的、交互的或者其他合适的数据库。具体实施方式考虑任何合适类型的数据库。具体实施方式可提供能够使社交网络系统、客户端系统、或者第三方系统管理、检索、修改、添加或者删除存储在数据存储器中的信息的接口。
另外,数据库可以被分成多个分区。每个分区可以由单独的服务器保持或者可以保持在单独的物理位置。因为用于数据库的每个分区的索引小于用于总数据库的索引,所以进行分区可以提高访问数据库的性能。因为分区可以分布于大量服务器(同时在地理不同的位置可以复制每个分区),所以进行分区还可以提高访问数据库的性能和可靠性。可以通过单独存储数据库的行(或者列)对数据库进行分区。还可以通过使用散列算法对数据库进行分区。还可以通过由数据库保持的数据的一些现实世界的分段(例如,美国的各时区的消费者)对数据库进行分区。具体实施方式可以基于对象类型对一批数据的存储进行分区。具体实施方式可以将数据对象存储在多个分区中,同时每个分区保持单个对象类型的数据对象。
图3示出用于存储社交网络系统的对象,或者用于存储一批数据的任何合适的系统的示例性分区。在图3的示例中,多个数据存储器或者垂直(例如,P1、P2、P3等)可以存储社交网络系统的对象。在具体实施方式中,每个数据存储器可以被配置为将多个对象类型中的具体一个的对象存储在各个数据存储装置340中。对象类型可以是用户、网页、应用程序、组、音乐、照片、视频、帖子、新闻、问题、评论、事件、消息、提供物(例如,赠券)、和评审。具体实施方式考虑用于社交网络系统或者存储一批数据的任何系统的任何合适的对象类型。例如,在图3中示出的垂直P1可以存储用户对象;垂直P2可以存储网页对象;垂直P3可以存储应用对象。即,每个数据存储器可以存储单个对象类型的对象。在具体实施方式中,可以通过搜索索引来索引存储在每个数据存储器或者垂直中的对象。搜索索引可以由包括一个或多个计算设备(例如,服务器)的各个索引服务器330承载。
在具体实施方式中,通过一个或多个计算设备(例如,社交网络系统的服务器)承载的服务器处理可以将对象存储在图3中示出的垂直中。服务器处理可以接收对象,并识别接收的对象的对象类型。例如,服务器处理可以接收通过具体用户上传至社交网络系统的应用,并识别应用的对象类型(例如,应用)。服务器处理可以分配标识符(例如,字符串)至接收的应用程序。另外,服务器处理可以确定与接收的对象相关联的信息。例如,服务器处理可以确定使用应用的一个或多个用户、关于应用的评论、或者应用的位置。服务器处理可以将接收的物体存储在被配置为存储识别的对象类型的对象的至少一个具体数据存储器中。例如,服务器处理可以将接收的应用存储在图3中示出的应用程序垂直P3中。服务器处理可以将与接收的对象相关联的信息存储在具体数据存储器中。服务器处理可以至少部分地基于接收的对象更新具体数据存储器中的搜索索引。
在一些实施方式中,接收的对象(例如,接收的应用)可以对应于社交网络系统的社交图谱的具体节点。连接具体节点与其他节点的边线可以指示接收的对象与对应于另一节点的用户(或者概念)之间的关系。即,服务器处理可以将接收的对象的信息和连接在社交图谱中对应于接收的对象的节点的一个或多个边线的信息存储在(识别的对象类型的)具体数据存储器中。服务器处理可以基于接收的对象、与接收的对象相关联的关系(即,边线)更新数据存储器的搜索索引。
用户或者计算处理可以将用于执行的搜索查询提交至在图3中示出的垂直,使垂直的索引服务器检索并返回针对该搜索查询的一个或多个搜索结果。索引服务器可以使用全部搜索查询来检索搜索结果。然而,基于整个搜索查询的搜索结果可能不是最佳的。例如,用户可能提交搜索查询“farmville app”以寻找名称为“farmville”的游戏应用。如果将整个搜索查询“farmville app”提交至在图3中示出的应用程序垂直P3,应用程序垂直P3的索引服务器可能不能返回匹配的结果,因为应用程序垂直P3可能仅存储诸如“farmville”或者“Farmville 2”的应用对象,而不是“farmville app.”的应用对象。相比之下,如果将搜索查询“farmville”提交至应用程序垂直P3,应用程序垂直P3的索引服务器可以返回匹配的结果(例如,应用“farmville”和“farmville 2”)。即,如果在将搜索查询提交至具体垂直时去除搜索查询中的一个或多个措辞或者可选择搜索查询中的一个或多个术语,搜索查询可以得到更好的搜索结果。具体实施方式描述用于通过选择化搜索查询中的搜索词来优化搜索查询的方法。具体实施方式可以在搜索查询中识别搜索词及其对应的垂直,通过选择化搜索词来修改搜索查询,并将修改的搜索查询发送至对应的垂直用于执行。
图4示出用于优化搜索查询的示例性方法400。方法400可以通过由社交网络系统的一个或多个计算设备(例如,服务器)承载的聚合过程(例如,在图3中示出的顶部聚合器320),或者包括一个或多个数据库的任何合适的系统实施。方法可以从步骤410开始。在具体实施方式中,在步骤410,聚合过程可以接收搜索查询。例如,如在图3中示出的,聚合过程可以接收搜索查询。搜索查询可以包括文本串。搜索查询可以是用户通过PHP处理(或者社交网络系统的另外的处理)提交的结构化的或者基本上非结构化的文本串。搜索查询可以是诸如“farmville app”、“becks company”、“lake tahoe”、或者“the US President”的文本串。
在具体实施方式中,社交网络系统可以指定在提交至具体垂直用于执行的搜索查询中的一个或多个搜索词是可选择的。例如,社交网络系统可以指定在提交至应用程序垂直P3的搜索查询中的搜索词“app”、“应用”、和“游戏”是可选择的。社交网络系统可以指定在提交至页面垂直P2的搜索查询中的搜索词“页面”、“多个页面”、“公司”、“关于”、和“com”是可选择的。社交网络系统可以指定提交至用户垂直P1的搜索查询中的搜索词“好友”和“个人”是可选择的。社交网络系统还可以指定提交至存储组对象类型的对象的数据存储器的搜索查询中的搜索词“组”和“多个组”是可选择的。在具体实施方式中,在步骤420,聚合过程可以在搜索查询中识别与多个对象类型的第一对象类型相关联的搜索词。即,聚合过程可以在搜索查询中识别对应于存储第一对象类型的对象的具体垂直的搜索词。在提交至具体垂直用于执行的搜索查询中选择化搜索词。
在具体实施方式中,在步骤430,聚合过程可以通过选择化搜索查询中的搜索词修改搜索查询。聚合过程可以通过从搜索查询去除搜索词来选择化搜索词。例如,聚合过程可以在搜索查询“farmville app”中识别与应用对象类型相关联的搜索词“app”。聚合过程可以通过从搜索查询去除搜索词选择化搜索词“app”。即,聚合过程可以将搜索查询修改为“farmville”。对于另一示例,聚合过程可以(例如,从寻找名称为“Beck”或者“Beck’s”的公司的用户)接收搜索查询“becks company”。聚合过程可以在搜索查询“贝克公司”中识别与网页对象类型相关联的搜索词“company”。聚合过程可以通过从搜索查询去除搜索词“company”选择化该搜索词“company”。即,聚合过程可以将搜索查询修改为“becks”。在一个实施方式中,聚合过程可以从搜索查询去除一个或多个停用词诸如“a”、“an”、或者“the”。例如,聚合过程可以从搜索查询“the US President”去除“the”。
在其他实施方式中,聚合过程可以通过向搜索查询中的搜索词分配值来选择化搜索词。修改的搜索查询可以要求来自修改的搜索查询的执行的匹配搜索词的结果与所有结果的比率超过该值。例如,聚合过程可以向搜索查询“farmville app.”中的搜索词“app”分配值0.2。聚合过程可以将搜索查询修改为“farmville app 0.2”。修改的搜索查询“farmville app 0.2”可以要求20%(即,0.2)的搜索结果必须与搜索词“app”匹配,同时剩余的80%的搜索结果可以省去该搜索词。即,如果修改的搜索查询“farmville app 0.2”具有100个搜索结果,那么20个结果必须与搜索词“app”匹配,同时80个结果可以仅与其余的搜索查询(即,“farmville”)匹配。对于另一示例,聚合过程可以接收搜索查询“laketahoe”。聚合过程可以在搜索查询“lake tahoe”中识别与网页对象类型相关联的搜索词“lake”。聚合过程可以向搜索查询“lake tahoe”中的搜索词“lake”分配值0.4。修改的搜索查询“lake 0.4tahoe”可以要求40%的搜索结果必须与搜索词“lake”匹配,同时剩余的60%的搜索结果可以省去该搜索词。即,如果修改的搜索查询“lake 0.4tahoe”具有100个搜索结果,那么40个结果必须与搜索词“lake”匹配,同时60个结果可以仅与其余的搜索查询(即,“tahoe”)匹配。
在具体实施方式中,在步骤440,聚合过程可以针对存储第一对象类型的对象的第一数据存储器发送修改的搜索查询以供执行。即,聚合过程可以针对对应于识别的搜索词的垂直发送修改的搜索查询以供执行。例如,对于具有与应用对象类型相关联的所识别的搜索词“app”的搜索查询“farmville app”,聚合过程可以向在图3中示出的应用程序垂直P3发送修改的搜索查询“farmville”(或者“farmville app 0.2)。如之前描述的,修改的搜索查询可以得到更好的搜索结果,因为更可能的是应用程序垂直P3存储具有包括“farmville”的名称的应用对象,同时较小可能的是应用程序垂直P3存储具有名称“farmville app”的应用对象。对于另一示例,对于具有与网页对象类型相关联的经识别的搜索词“company”的搜索查询“becks company”,聚合过程可以向在图3中示出的页面垂直P2发送修改的搜索查询“becks”。对于另一示例,对于具有与网页对象类型相关联的经识别的搜索词“lake”的搜索查询“lake tahoe”,聚合过程可以向图3中示出的页面垂直P2发送修改的搜索查询“lake 0.4tahoe”。
除了针对存储第一对象类型的对象的第一数据存储器发送修改的搜索查询用于执行,在具体实施方式中,聚合过程可以针对存储对象类型的第二对象类型的对象的第二数据存储器发送没有修改的搜索查询用于执行。即,除了向存储(识别的)第一对象类型的对象的数据存储器发送修改的搜索查询,聚合过程可以向每个存储不同于第一对象类型的对象类型的对象的其他数据存储器发送没有修改的搜索查询。例如,聚合过程可以向图3中示出的用户垂直P1或者页面垂直P2发送未修改的搜索查询“farmville app”。对于另一示例,聚合过程可以向图3中示出的用户垂直P1或者应用程序垂直P3发送未修改的搜索查询“becks company”。聚合过程可以向图3中示出的用户垂直P1或者应用程序垂直P3发送未修改的搜索查询“lake tahoe”。
在具体实施方式中,聚合过程可以使来自修改的搜索查询的执行的第一结果与来自没有修改的搜索查询的执行的第二搜索结果聚合。例如,对于上述的搜索查询“farmville app”,聚合过程可以使从(基于修改的搜索查询“farmville”或者“farmvilleapp 0.2”)应用程序垂直P3检索的搜索结果的第一列表和从(基于未修改的搜索查询farmville app”)用户垂直P1和页面垂直P2检索的搜索结果的第二列表聚合。聚合过程可以通过向搜索结果的第一列表和第二列表应用OR运算符使搜索结果的第一列表和第二列表聚合。即,聚合的结果是搜索结果的第一列表和第二列表的合并。另外,在具体实施方式中,聚合过程可以至少部分基于第一搜索结果排序聚合的结果。例如,聚合过程可以使(例如,基于修改的搜索查询“farmville”或者“farmville app 0.2”从应用程序垂直P3检索的)第一搜索结果排序高于(例如,基于未修改的搜索查询“farmville app”从用户垂直P1和页面垂直P2检索的)第二搜索结果。
在适当的情况下,具体实施方式可重复图4的方法的一个或多个步骤。尽管本公开内容描述和示出了图4的方法的具体步骤以具体顺序发生,但是本公开内容考虑图4的方法的任何合的适步骤以任何合适的顺序发生。此外,尽管本公开内容描述并且示出了执行图4中的方法的具体步骤的具体组件、设备或者系统,但是本公开内容考虑了执行图4中的方法的任何合适步骤的任何合适组件、设备或者系统的任何合适的组合。
图5示出了示例性计算机系统500。在具体实施方式中,一个或多个计算机系统500执行此处所描述或者示出的一种或者多种方法的一个或多个步骤。在具体实施方式中,一个或多个计算机系统500提供此处所描述或者示出的功能。在具体实施方式中,在一个或多个计算机系统500上运行的软件执行此处所描述或者示出的一种或者多种方法的一个或多个步骤或者提供此处所描述或者示出的功能。具体实施方式包括一个或多个计算机系统500的一个或多个部分。在此,在适当的情况下,对计算机系统的引用可包含计算设备,反之亦然。此外,在适当的情况下,对计算机系统的引用可包括一个或多个计算机系统。
本公开内容考虑任何合适数量的计算机系统500。本公开内容考虑了采用任何合适的物理形式的计算机系统500。作为示例而不是限制的方式,计算机系统500可以是嵌入式计算机系统、片上系统(SOC)、单板计算机系统(SBC)(诸如,电脑模组(COM)或者系统模组(SOM))、桌面计算机系统、膝上型或者笔记本计算机系统、交互式自助服务机、主机、计算机系统网络、移动电话、个人数字助理(PDA)、服务器、平板计算机系统、或者这些中两种或者多种的组合。在适当的情况下,计算机系统500可包括跨多个位置;跨多台机器;跨多个数据中心;或者驻留在云中的单一式或者分布式的一个或多个计算机系统500,云可包括一个或多个网络中的一个或多个云组件。在适当的情况下,一个或多个计算机系统500可在无大致空间或者时间限制的情况下执行此处所描述或者示出的一种或者多种方法的一个或多个步骤。作为示例而不是限制的方式,一个或多个计算机系统500可实时或者以分批模式执行此处所描述或者示出的一种或多种方法的一个或多个步骤。在适当的情况下,一个或多个计算机系统500可在不同时间或者在不同位置执行此处所描述或者示出的一种或多种方法的一个或多个步骤。
在具体实施方式中,计算机系统500包括处理器502、存储器504、存储介质506、输入/输出(I/O)接口508、通信接口510以及总线512。尽管本公开内容描述并示出了具有按照具体布置的具体数量的具体组件的具体计算机系统,但是本公开内容考虑具有按照任何合适布置的任何合适数量的任何合适组件的任何合适的计算机系统。
在具体实施方式中,处理器502包括用于执行诸如装配计算机程序的指令的硬件。作为示例而不是限制的方式,为了执行指令,处理器502可以从内部寄存器、内部缓存、存储器504、或存储介质506检索(或取得)指令;解码并执行他们;并且然后将一个或多个结果写入到内部寄存器、内部缓存、存储器504、或存储介质506。在具体实施方式中,处理器502可包括用于数据、指令或地址的一个或多个内部缓存。在适当的情况下,本公开内容考虑了包括任何合适数量的任何合适的内部缓存的处理器502。作为示例而不是限制的方式,处理器502可包括一个或多个指令缓存、一个或多个数据缓存、以及一个或多个转译后备缓冲器(TLB)。指令缓存中的指令可以是存储器504或者存储介质506中的指令的副本,并且指令缓存可加快处理器502对这些指令的检索。数据缓存中的数据可以是使在处理器502上执行的指令运行的存储器504或者存储介质506中的数据副本、在处理器502上执行以用于在处理器502上执行的后续指令进行访问或者用于写入存储器504或者存储介质506中的之前指令结果、或者其他合适的数据。数据缓存可加速处理器502的读取或写入操作。TLB可以加速处理器502的虚拟地址转换。在具体实施方式中,处理器502可包括用于数据、指令或地址的一个或多个内部寄存器。在适当的情况下,本公开内容考虑处理器502包括任何合适的数量的任何合适的内部寄存器。在适当的情况下,处理器502可包括一个或多个算法逻辑单元(ALU);可以是多核处理器;或者包括一个或多个处理器502。尽管本公开内容描述和示出了具体处理器,但是本公开内容考虑任何合适的处理器。
在具体实施方式中,存储器504包括用于存储处理器502执行的指令或者处理器502运行的数据的主存储器。作为示例而不是限制的方式,计算机系统500可将指令从存储介质506或者另一来源(诸如,另一计算机系统500)加载到存储器504中。然后,处理器502可将指令从存储器504加载到内部寄存器或者内部缓存中。为了执行该指令,处理器502可从内部寄存器或者内部缓存检索指令并且将它们进行解码。在执行指令过程中或者之后,处理器502可将一个或多个结果(其可以是中间结果或者最终结果)写入内部寄存器或者内部缓存中。然后,处理器502可将这些结果中的一个或多个写入存储器504中。在具体实施方式中,处理器502仅执行一个或多个内部寄存器或者内部缓存中或者存储器504(与存储介质506相对或者其他地方)中的指令并且仅运行一个或多个内部寄存器或者内部缓存中或者存储器504(与存储介质506相对或者其他地方)中的数据。一个或多个存储器总线(每条均可包括地址总线和数据总线)可将处理器502耦接至存储器504。总线512可包括如下所述一个或多个存储器总线。在具体实施方式中,一个或多个存储器管理单元(MMU)驻留在处理器502与存储器504之间并且便于访问由处理器502请求的存储器504。在具体实施方式中,存储器504包括随机存取存储器(RAM)。在适当的情况下,该RAM可以是易失性存储器,在适当的情况下,该RAM可以是动态RAM(DRAM)或静态RAM(SRAM)。此外,在适当的情况下,该RAM可以是单端口或多端口的RAM。本公开内容考虑任何合适的RAM。在适当的情况下,存储器504可包括一个或多个存储器504。尽管本公开内容描述和示出了具体的存储器,但是本公开内容考虑任何合适的存储器。
在具体实施方式中,存储介质506包括用于数据或者指令的大容量存储介质。作为示例而不是限制的方式,存储介质506可包括硬盘驱动(HDD)、软盘驱动、闪存、光盘、磁光盘、磁带、或者通用串行总线(USB)驱动、或者这些的两个或更多个的组合。在适当的情况下,存储介质506可包括可移动式或者非移动式(或者固定)媒介。在适当的情况下,存储介质506可以位于计算机系统500内部或者外部。在具体实施方式中,存储介质506是非易失性固态存储器。在具体实施方式中,存储介质506包括只读存储器(ROM)。在适当的情况下,该ROM可以是掩码编程ROM、可编程ROM(PROM)、可擦PROM(EPROM)、电可擦PROM(EEPROM)、电可改写ROM(EAROM)或闪存或这些的两个或更多个的组合。本公开内容考虑采用任何合适物理形式的大容量存储介质506。在适当的情况下,存储介质506可包括便于处理器502与存储介质506之间通信的一个或多个储存控制单元。在适当的情况下,存储介质506可包括一个或多个存储介质506。尽管本公开内容描述和说明了具体的存储介质,但是本公开内容考虑了任何合适的存储介质。
在具体实施方式中,I/O接口508包括提供用于计算机系统500与一个或多个I/O设备之间通信的一个或多个接口的硬件、软件、或者两者。在适当的情况下,计算机系统500可包括一个或者多个这种I/O设备。这些I/O设备中的一个或多个可支持人与计算机系统500之间的通信。作为示例而不是限制的方式,I/O设备可包括键盘、键板、麦克风、监控器、鼠标、打印机、扫描仪、扬声器、照相机、触控笔、平板电脑、触摸屏、追踪球、摄影机、其他合适的I/O设备或它们中两个或更多个的组合。I/O设备可包括一个或多个传感器。本公开内容考虑任何合适的I/O设备和与其有关的任何合适的I/O接口508。在适当的情况下,I/O接口508可包括使处理器502能够驱动这些I/O设备中的一个或多个的一个或多个设备或软件驱动器。在适当的情况下,I/O接口508可包括一个或多个I/O接口508。尽管本公开内容描述和示出了具体的I/O接口,但是本公开内容预期任何合适的I/O接口。
在具体实施方式中,通信接口510包括提供用于计算机系统500与一个或多个其他计算机系统500或者一个或多个网络之间通信(诸如,基于分组的通信)的一个或多个接口的硬件、软件、或者硬件和软件。作为示例而不是限制的方式,通信接口510可包括网络接口控制器(NIC)、或者用于与以太网或其他基于有线的网络通信的网络适配器、或者用于与诸如WI-FI网络等无线网络通信的无线NIC(WNIC)或无线适配器。本公开内容考虑任何合适的网络和与其有关的任何合适通信接口510。作为示例而不是限制的方式,计算机系统500可与自组织网络、个人局域网(PAN)、局域网(LAN)、广域网(WAN)、城域网(MAN)、或者互联网的一个或多个部分、或者其中的两种或者多种的组合通信。这些网络中的一个或多个的一个或多个部分可以是有线或无线的。例如,计算机系统500可与无线PAN(WPAN)(诸如,例如,蓝牙WPAN)、WI-FI网络、WI-MAX网络、蜂窝电话网络(诸如,例如,全球移动通信系统(GSM)网络)、或其他合适的无线网络、或这些中两个或更多个的组合通信。在适当的情况下,计算机系统500可包括用于这些网络中的任何一个的任何合适的通信接口510。在适当的情况下,通信接口510可包括一个或多个通信接口510。尽管本公开内容描述和示出了具体的通信接口,但是本公开内容考虑任何合适的通信接口。
在具体实施方式中,总线512包括将计算机系统500的组件耦接至彼此的硬件、软件、或者硬件和软件。作为示例而不是限制的方式,总线512可包括图形加速端口(AGP)或者其他图形总线、增强型产业标准体系(EISA)总线、前端总线(FSB)、超传输(HT)互连、工业标准结构(ISA)总线、无线带宽互连、低脚位(LPC)总线、存储器总线、微通道结构(MCA)总线、外设组件互连(PCI)总线、PCI-Express(PCIe)总线、串行高级技术附件(SATA)总线、视频电子标准协会局部(VLB)总线、或者另一合适的总线或者这些的两种或更多种的组合。在适当的情况下,总线512可包括一个或多个总线512。尽管本公开内容描述和示出了具体的总线,然而本公开内容考虑任何合适的总线或者互连。
本文中,在适当的情况下,计算机可读非易失性存储介质或者媒介可包括一个或多个基于半导体的或者其他集成电路(IC)(诸如,现场可编程门阵列(FPGA)或者专用集成电路(ASIC))、硬盘驱动器(HDD)、混合硬盘驱动器(HHD)、光盘、光碟驱动器(ODD)、磁光盘、磁光驱动器、软盘、软盘驱动器(FDD)、磁带、固态驱动器(SSD)、RAM驱动器、安全数码卡或者驱动器、任何其他合适的计算机可读非易失性存储媒介、或者这些的两种或更多种的任何合适的组合。在适当的情况下,计算机可读非易失性存储介质可以是易失的、非易失的,或易失和非易失的结合。
此处,除非另有明确表示或通过上下文另有表示,否则“或”是包括性的而不是排除性的。因此,在本文中,除非另有明确表示或通过上下文的其他表示,否则“A或B”意味着“A、B、或这两者”。此外,除非另有明确指明或者由上下文指明,否则“和”是两者共同和单独的。因此,本文中,除非另有明确指明或者由上下文指明,否则“A和B”是指“A和B,共同或单独”。
本公开内容的范围包括本领域技术人员应当理解的对本文中描述或示出的示例性实施方式的所有改变、替代、变化、变更以及修改。本公开内容的范围并不限于本文中描述或示出的示例性实施方式。此外,尽管本公开内容将本文中各个实施方式描述并且示出为包括具体组件、元件、功能、操作或步骤,但是本领域普通技术人员应当理解的是,这些实施方式中的任何一个可包括本文中任何地方描述或示出的任何组件、元件、功能、操作或步骤的任何组合或排列。此外,无论是否它或该具体功能被激活、打开或者解锁,只要该装置、系统或组件是如此适应、布置、能够、配置、启动、可操作、或者操作的,所附权利要求涉及的装置或者系统或者装置或者系统的组件适用于、布置为、能够、被配置为、启动、能操作以、或者操作执行包括装置、系统、组件的具体功能。

Claims (20)

1.一种方法,包括由一个或多个计算设备的一个或多个处理器:
从客户端系统接收搜索查询,所述搜索查询包括多个搜索词;
通过从所述搜索查询中去除第一搜索词,修改所述搜索查询,所述第一搜索词被确定为与多个对象类型的第一对象类型相关联;
从多个数据存储器中的第一数据存储器检索对于经修改的所述搜索查询进行响应的第一搜索结果,所述第一数据存储器存储所述第一对象类型的对象;以及
响应于所述搜索查询,将一个或多个所述第一搜索结果发送至所述客户端系统。
2.根据权利要求1所述的方法,进一步包括:
访问社交图谱,所述社交图谱包括多个节点以及连接所述节点的多条边线,两个所述节点之间的每条边线代表这两个节点之间的单一分离度,所述节点包括:
与所述客户端系统的第一用户对应的第一节点,其中,所述第一用户是在线社交网络的用户;以及
与所述在线社交网络相关联的多个对象分别对应的多个第二节点。
3.根据权利要求2所述的方法,其中,所述第一数据存储器进一步包括以下信息:所述信息关于将与所述第一对象类型的一个或多个对象对应的一个或多个第二节点与所述社交图谱的一个或多个其他节点连接的一条或多条边线。
4.根据权利要求2所述的方法,其中,发送至所述客户端系统的一个或多个所述搜索结果中的每一者对应于一个或多个所述第二节点。
5.根据权利要求2所述的方法,进一步包括:当所述在线社交网络接收到新的对象时,更新所述第一数据存储器,所述第一数据存储器的所述更新包括:对于有关将对应于所述新的对象的第二节点连接至所述第一节点的一条或多条边线的信息进行更新。
6.根据权利要求1所述的方法,进一步包括:
发送没有修改的所述搜索查询用于针对存储多个所述对象类型的第二对象类型的对象的第二数据存储器的执行;并且
使所述第一搜索结果与来自针对没有修改的所述搜索查询的所述第二数据存储器的所述执行的第二搜索结果聚合。
7.根据权利要求6所述的方法,进一步包括:至少部分基于所述第一搜索结果排序经聚合的所述搜索结果。
8.根据权利要求7所述的方法,其中,所述第一搜索结果排序高于所述第二搜索结果。
9.根据权利要求7所述的方法,其中,多个所述数据存储器包括多个对象类型的对象,每个数据存储器仅包括单一对象类型的对象。
10.根据权利要求1所述的方法,进一步包括:
识别对象的对象类型;
分配标识符给所述对象;以及
在被配置为存储所识别的对象类型的对象的数据存储器中存储所述对象。
11.根据权利要求1所述的方法,其中,修改所述搜索查询进一步包括:
将值分配至所述搜索查询中的第二搜索词;以及
要求搜索结果匹配所述第二搜索词的百分比,所述百分比等于所分配的值。
12.根据权利要求1所述的方法,进一步包括:使用社交网络系统的聚合处理,发送所述搜索查询用于针对所述第一数据存储器的执行。
13.根据权利要求1所述的方法,其中,所述第一对象类型是用户、网页、应用、或组。
14.根据权利要求1所述的方法,其中,一个或多个所述计算设备以及多个所述数据存储器与社交网络系统相关联。
15.一个或多个计算机可读非易失性存储介质,包括软件,当所述软件被执行时,所述软件能够:
从客户端系统接收搜索查询,所述搜索查询包括多个搜索词;
通过从所述搜索查询中去除第一搜索词,修改所述搜索查询,所述第一搜索词被确定为与多个对象类型的第一对象类型相关联;
从多个数据存储器中的第一数据存储器检索对于经修改的所述搜索查询进行响应的搜索结果,所述第一数据存储器存储所述第一对象类型的对象;以及
响应于所述搜索查询,将一个或多个所述搜索结果发送至所述客户端系统。
16.根据权利要求15所述的介质,当所述软件被执行时,所述软件能够进一步:
发送没有修改的所述搜索查询用于针对存储多个所述对象类型的第二对象类型的对象的第二数据存储器的执行;并且
使所述第一搜索结果与来自针对没有修改的所述搜索查询的所述第二数据存储器的所述执行的第二搜索结果聚合。
17.根据权利要求15所述的介质,其中,为了修改所述搜索查询,当所述软件被执行时,所述软件能够:
将值分配至所述搜索查询中的第二搜索词;以及
要求所述搜索结果匹配所述第二搜索词的百分比,所述百分比等于所分配的值。
18.一种系统,包括:
一个或多个处理器;以及一个或多个处理器;以及耦接至所述处理器的非易失性存储装置,所述非易失性存储装置包括能够由所述处理器执行的指令,所述处理器当执行所述指令时能够:
从客户端系统接收搜索查询,所述搜索查询包括多个搜索词;
通过从所述搜索查询中去除第一搜索词,修改所述搜索查询,所述第一搜索词被确定为与多个对象类型的第一对象类型相关联;
从多个数据存储器中的第一数据存储器检索对于经修改的所述搜索查询进行响应的第一搜索结果,所述第一数据存储器存储所述第一对象类型的对象;以及
响应于所述搜索查询,将一个或多个第一搜索结果发送至所述客户端系统。
19.根据权利要求18所述的系统,其中,一个或多个所述处理器当执行指令时能够进一步:
发送没有修改的所述搜索查询,用于针对存储多个所述对象类型的第二对象类型的对象的第二数据存储器的执行;并且
使所述第一搜索结果与来自针对没有修改的所述搜索查询的所述第二数据存储器的所述执行的第二搜索结果聚合。
20.根据权利要求18所述的系统,其中,为了修改所述搜索查询,一个或多个所述处理器当执行指令时能够:
将值分配至所述搜索查询中的第二搜索词;以及
要求所述搜索结果匹配所述第二搜索词的百分比,所述百分比等于所分配的值。
CN201711027046.2A 2013-04-08 2014-04-03 基于垂直的查询选择化 Pending CN107729525A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/858,775 2013-04-08
US13/858,775 US9336312B2 (en) 2013-04-08 2013-04-08 Vertical-based query optionalizing
CN201480031913.8A CN105264526B (zh) 2013-04-08 2014-04-03 基于垂直的查询选择化

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201480031913.8A Division CN105264526B (zh) 2013-04-08 2014-04-03 基于垂直的查询选择化

Publications (1)

Publication Number Publication Date
CN107729525A true CN107729525A (zh) 2018-02-23

Family

ID=51655225

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201711027046.2A Pending CN107729525A (zh) 2013-04-08 2014-04-03 基于垂直的查询选择化
CN201480031913.8A Active CN105264526B (zh) 2013-04-08 2014-04-03 基于垂直的查询选择化

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201480031913.8A Active CN105264526B (zh) 2013-04-08 2014-04-03 基于垂直的查询选择化

Country Status (11)

Country Link
US (2) US9336312B2 (zh)
EP (1) EP2984592B1 (zh)
JP (2) JP5986339B2 (zh)
KR (2) KR102099205B1 (zh)
CN (2) CN107729525A (zh)
AU (3) AU2014251231B2 (zh)
BR (1) BR112015025722A8 (zh)
CA (2) CA2973749A1 (zh)
IL (2) IL241899A (zh)
MX (1) MX346840B (zh)
WO (1) WO2014168805A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10019477B2 (en) * 2015-04-06 2018-07-10 International Business Machines Corporation Anticipatory query completion by pattern detection
US10445755B2 (en) 2015-12-30 2019-10-15 Paypal, Inc. Data structures for categorizing and filtering content
US20180068023A1 (en) * 2016-09-07 2018-03-08 Facebook, Inc. Similarity Search Using Polysemous Codes
US10880685B2 (en) * 2018-01-08 2020-12-29 Facebook, Inc. Provisioning content across multiple devices
WO2024015323A1 (en) * 2022-07-11 2024-01-18 Pryon Incorporated Methods and systems for improved document processing and information retrieval

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060004710A1 (en) * 2004-06-16 2006-01-05 Veritas Operating Corporation System and method for directing query traffic
US20070011167A1 (en) * 2005-07-08 2007-01-11 Muralidhar Krishnaprasad Optimization of queries on a repository based on constraints on how the data is stored in the repository
US20070038601A1 (en) * 2005-08-10 2007-02-15 Guha Ramanathan V Aggregating context data for programmable search engines
JP2007323394A (ja) * 2006-06-01 2007-12-13 Ritsumeikan メタ検索システム及びメタ検索方法とこれに用いるユーザ端末及びプログラム
US20080010269A1 (en) * 2006-07-05 2008-01-10 Parikh Jignashu G Automatic relevance and variety checking for web and vertical search engines
CN101401062A (zh) * 2006-02-16 2009-04-01 移动容量网络公司 确定相关来源、查询及合并多个内容来源的结果的方法和系统
US20100250587A1 (en) * 2009-03-26 2010-09-30 Novero Gmbh Method for Operating a Portable Mobile Internet Media Recorder
JP2010267075A (ja) * 2009-05-14 2010-11-25 Canon Inc 情報処理装置、情報処理方法、プログラム及び記憶媒体
CN102016825A (zh) * 2007-08-17 2011-04-13 谷歌公司 对社交网络对象进行排名
CN102339304A (zh) * 2009-06-21 2012-02-01 詹姆斯·默克斯 基于知识的搜索引擎
US20120166925A1 (en) * 2006-12-12 2012-06-28 Marco Boerries Automatic feed creation for non-feed enabled information objects
US20120166276A1 (en) * 2010-12-28 2012-06-28 Microsoft Corporation Framework that facilitates third party integration of applications into a search engine
CN102549563A (zh) * 2009-08-17 2012-07-04 微软公司 语义交易所
CN102591880A (zh) * 2011-01-14 2012-07-18 阿里巴巴集团控股有限公司 信息提供方法及装置
CN102591890A (zh) * 2011-01-17 2012-07-18 腾讯科技(深圳)有限公司 一种展示搜索信息的方法及搜索信息展示装置
US20120323909A1 (en) * 2011-06-20 2012-12-20 Google Inc. Query-based user groups in social networks

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5873080A (en) * 1996-09-20 1999-02-16 International Business Machines Corporation Using multiple search engines to search multimedia data
US6898592B2 (en) 2000-12-27 2005-05-24 Microsoft Corporation Scoping queries in a search engine
US7743045B2 (en) 2005-08-10 2010-06-22 Google Inc. Detecting spam related and biased contexts for programmable search engines
US20050131872A1 (en) * 2003-12-16 2005-06-16 Microsoft Corporation Query recognizer
US8086605B2 (en) * 2005-06-28 2011-12-27 Yahoo! Inc. Search engine with augmented relevance ranking by community participation
US8005825B1 (en) 2005-09-27 2011-08-23 Google Inc. Identifying relevant portions of a document
US7805441B2 (en) 2006-03-06 2010-09-28 Yahoo! Inc. Vertical search expansion, disambiguation, and optimization of search queries
US20090125504A1 (en) 2007-11-08 2009-05-14 Randy Adams Systems and methods for visualizing web page query results
US9519716B2 (en) * 2009-03-31 2016-12-13 Excalibur Ip, Llc System and method for conducting a profile based search
US9495460B2 (en) * 2009-05-27 2016-11-15 Microsoft Technology Licensing, Llc Merging search results
US8386482B2 (en) 2009-09-02 2013-02-26 Xurmo Technologies Private Limited Method for personalizing information retrieval in a communication network
US8392411B2 (en) * 2010-05-20 2013-03-05 Google Inc. Automatic routing of search results
US9633109B2 (en) 2011-05-17 2017-04-25 Etsy, Inc. Systems and methods for guided construction of a search query in an electronic commerce environment
US8949232B2 (en) * 2011-10-04 2015-02-03 Microsoft Corporation Social network recommended content and recommending members for personalized search results
US20130159288A1 (en) * 2011-12-16 2013-06-20 Rawllin International Inc. Information graph
US9158801B2 (en) * 2012-07-27 2015-10-13 Facebook, Inc. Indexing based on object type
US9116918B1 (en) * 2012-11-14 2015-08-25 Google Inc. Methods, systems, and media for interpreting queries
US9171063B2 (en) * 2013-03-13 2015-10-27 Facebook, Inc. Short-term hashes

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060004710A1 (en) * 2004-06-16 2006-01-05 Veritas Operating Corporation System and method for directing query traffic
US20070011167A1 (en) * 2005-07-08 2007-01-11 Muralidhar Krishnaprasad Optimization of queries on a repository based on constraints on how the data is stored in the repository
US20070038601A1 (en) * 2005-08-10 2007-02-15 Guha Ramanathan V Aggregating context data for programmable search engines
CN101401062A (zh) * 2006-02-16 2009-04-01 移动容量网络公司 确定相关来源、查询及合并多个内容来源的结果的方法和系统
JP2007323394A (ja) * 2006-06-01 2007-12-13 Ritsumeikan メタ検索システム及びメタ検索方法とこれに用いるユーザ端末及びプログラム
US20080010269A1 (en) * 2006-07-05 2008-01-10 Parikh Jignashu G Automatic relevance and variety checking for web and vertical search engines
US20120166925A1 (en) * 2006-12-12 2012-06-28 Marco Boerries Automatic feed creation for non-feed enabled information objects
CN102016825A (zh) * 2007-08-17 2011-04-13 谷歌公司 对社交网络对象进行排名
US20100250587A1 (en) * 2009-03-26 2010-09-30 Novero Gmbh Method for Operating a Portable Mobile Internet Media Recorder
JP2010267075A (ja) * 2009-05-14 2010-11-25 Canon Inc 情報処理装置、情報処理方法、プログラム及び記憶媒体
CN102339304A (zh) * 2009-06-21 2012-02-01 詹姆斯·默克斯 基于知识的搜索引擎
CN102549563A (zh) * 2009-08-17 2012-07-04 微软公司 语义交易所
US20120166276A1 (en) * 2010-12-28 2012-06-28 Microsoft Corporation Framework that facilitates third party integration of applications into a search engine
CN102591880A (zh) * 2011-01-14 2012-07-18 阿里巴巴集团控股有限公司 信息提供方法及装置
CN102591890A (zh) * 2011-01-17 2012-07-18 腾讯科技(深圳)有限公司 一种展示搜索信息的方法及搜索信息展示装置
US20120323909A1 (en) * 2011-06-20 2012-12-20 Google Inc. Query-based user groups in social networks

Also Published As

Publication number Publication date
AU2018203101B2 (en) 2019-07-04
AU2014251231B2 (en) 2016-08-11
CN105264526B (zh) 2017-12-12
CA2908149C (en) 2017-08-29
KR101669184B1 (ko) 2016-10-25
JP2016516252A (ja) 2016-06-02
US20160188666A1 (en) 2016-06-30
KR20150140333A (ko) 2015-12-15
CA2973749A1 (en) 2014-10-16
CA2908149A1 (en) 2014-10-16
AU2018203101A1 (en) 2018-05-24
KR20160120801A (ko) 2016-10-18
EP2984592A4 (en) 2016-10-12
BR112015025722A2 (pt) 2017-07-18
IL247622B (en) 2018-02-28
CN105264526A (zh) 2016-01-20
IL241899A (en) 2016-10-31
WO2014168805A1 (en) 2014-10-16
MX346840B (es) 2017-04-03
US9336312B2 (en) 2016-05-10
KR102099205B1 (ko) 2020-04-09
JP2016212908A (ja) 2016-12-15
AU2016222355A1 (en) 2016-09-22
JP6511417B2 (ja) 2019-05-15
US10649992B2 (en) 2020-05-12
JP5986339B2 (ja) 2016-09-06
AU2014251231A1 (en) 2015-11-19
EP2984592B1 (en) 2019-03-06
BR112015025722A8 (pt) 2019-12-17
MX2015014200A (es) 2016-05-05
EP2984592A1 (en) 2016-02-17
US20140304250A1 (en) 2014-10-09

Similar Documents

Publication Publication Date Title
US10409868B2 (en) Blending search results on online social networks
JP6689389B2 (ja) ディープラーニングモデルを用いたエンティティの識別
CN105378726B (zh) 利用更新层的数据库分区
CN105122235B (zh) 推断上下文的用户状态和持续时间
CA2917557C (en) Network-aware product rollout in online social networks
CN105283845B (zh) 显示对象预生成
US10699320B2 (en) Marketplace feed ranking on online social networks
US20140181652A1 (en) Contextual and Personalized Help
EP3929853A1 (en) Systems and methods for feature engineering based on graph learning
AU2014290339A1 (en) Large scale page recommendations on online social networks
KR20180080276A (ko) 딥-러닝 모델을 사용한 컨텐츠 아이템의 식별
JP2019096352A (ja) フレキシブルなイメージ・レイアウト
CN105229639B (zh) 短词散列
CN105264526B (zh) 基于垂直的查询选择化
US10699184B2 (en) Updating predictions for a deep-learning model
US10983973B2 (en) Database sharding with incorporated updates

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20180223