CN110291515A - 计算系统中的分布式索引搜索 - Google Patents

计算系统中的分布式索引搜索 Download PDF

Info

Publication number
CN110291515A
CN110291515A CN201880011562.2A CN201880011562A CN110291515A CN 110291515 A CN110291515 A CN 110291515A CN 201880011562 A CN201880011562 A CN 201880011562A CN 110291515 A CN110291515 A CN 110291515A
Authority
CN
China
Prior art keywords
search
content
server
distributed index
item
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.)
Granted
Application number
CN201880011562.2A
Other languages
English (en)
Other versions
CN110291515B (zh
Inventor
N·拉古纳坦
L·布巴郎
A·N·拉古纳坦
T·斯里拉姆
D·S·乌塔亚桑卡拉林加姆
R·托马斯
T·谢里夫
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN110291515A publication Critical patent/CN110291515A/zh
Application granted granted Critical
Publication of CN110291515B publication Critical patent/CN110291515B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2471Distributed queries
    • 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/248Presentation of query results
    • 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/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Abstract

在本文中公开了提供分布式索引搜索的计算机系统、设备以及相关联的方法。在一个实施例中,一种方法包括:在数据库服务器处从成员接收在对内容的搜索查询中所包括的搜索项;并且响应于接收到所述搜索项,基于在数据库服务器上接收到的搜索项以及搜索特征的一个或多个记录,响应于搜索查询而确定待搜索的分布式索引的子集。所述方法还包括基于搜索查询中的搜索项来提供确定出的待搜索的分布式索引的列表。

Description

计算系统中的分布式索引搜索
背景技术
公司、学校、慈善机构、政府实体以及其他类型的组织常常部署私有计算机网络,通常被称为内联网。这样的内联网能够包括服务器、网络设备或者在组织控制下的其他合适的设备,或者能够包括基于web的解决方案,诸如Google或计算平台。内联网能够允许组织的成员在企业内安全地共享信息。例如,内联网能够被配置为存储、跟踪或者以其他方式管理组织的内部文档。相反,术语“互联网”通常指代将个人和组织互连的公共计算机网络。一个这样的示例是因特网,其基于TCP/IP协议在全世界包含数十亿互连的计算机。
发明内容
提供本发明内容是为了以简化的形式介绍一些概念,这些概念将在下文的具体实施方式中进一步描述。本发明内容并不旨在标识所要求保护的主题的关键特征或必要特征,也并不旨在用于限制所要求保护的主题的范围。
内联网能够为组织的成员提供搜索组织内的各种类型的内容项的能力。例如,内联网能够包括存储电子邮件、文档、视频、音频、网页或者其他合适类型的内容的一个或多个储存库。内联网还能够包括允许组织的成员搜索和取回任意存储内容的搜索引擎。这样的搜索能够基于例如关键字、替代短语或者其他合适的标准。然后,搜索引擎能够将内容项的列表作为搜索结果返回给成员。
促进对内容的搜索和取回的一个挑战是在对内联网上的各种内容项的索引进行编译和维护时所涉及的努力。例如,某些内联网可能包括数千个包含不同内容项的内容服务器。为了编译和更新引用跨这样的众多内容服务器的所有内容项的主索引可能由于准确性、延迟以及其他要求而涉及大量的努力和成本。例如,内容项中的改变可能需要在主索引中快速地更新以确保对内容项的准确索引。编译这样的主索引也不容易缩放,因为每个内容项对应于主索引中的条目。另外,服务器或者支持主索引的其他合适的组件能够是针对整个搜索和取回系统的单点故障。
用于解决前述挑战的一种技术是将主索引划分为多个分布式子索引(或“碎片”)。替代直接引用内容项,而是主索引引用子索引之一,而该子索引继而直接引用内容项。在搜索期间,主索引能够标识可能包含(一个或多个)搜索到的内容项的碎片,并且以通常被称为“扇出(fan out)”的技术将对(一个或多个)内容项的搜索和取回委托给(一个或多个)碎片。然而,这样的技术仍然涉及在编译、更新和维护在主索引与子索引之间的引用方面的巨大努力。例如,一旦建立、更改或者移除了在子索引与内容项之间的引用,则必须立即相应地更新主索引,以便确保任何提供的搜索数据是准确并且“新鲜的”。
所公开的技术的若干实施例能够通过提供以下项来解决前述挑战中的至少一些挑战:(i)托管接近于对应内容项的分布式索引(或碎片)的服务器,以及(ii)托管包含与组织、子组织、成员组或者组织的个体成员有关的内容项的搜索特征的记录的数据库的数据库服务器。例如,这样的搜索特征能够包括组织、子组织、成员组和/或组织的成员中的热门(top)关键字、查询历史、搜索量或者其他活动。能够使用爬虫(crawler)或者其他合适的组件和/或技术从托管分布式索引的个体服务器周期性地收集这样的搜索特征的数据。
在某些实施例中,能够在搜索引擎处从组织的成员接收针对内容的搜索请求,所述搜索引擎包含搜索历史的记录和/或关于成员的其他合适类型的简档信息。然后,搜索引擎能够将搜索请求与对应的搜索项(例如,“工程文档”)以及成员的简档信息传输到包含搜索特征的记录的数据库服务器。然后,数据库服务器能够基于搜索特征的记录、成员的简档信息和/或在搜索请求中所包括的搜索项来确定待搜索的分布式索引的子集。在一个示例中,数据库服务器能够确定待搜索的分布式索引的子集仅包括与成员的子组织(例如,“工程部门”)有关的索引。在其他示例中,数据库服务器能够确定分布式索引的子集能够包括在组织、组织的子组织或者成员与之交互最多的其他成员的组中最多地搜索的那些。在其他实施例中,搜索引擎还能够基于例如成员的搜索历史或者其他合适的信息来补充、减去或者以其他方式修改分布式索引的子集。
然后,数据库服务器能够将确定出的分布式索引的子集提供给搜索引擎。作为响应,搜索引擎能够例如通过请求托管分布式索引的子集的对应内容服务器而“扇出”,以基于接收到的搜索请求进行内容项搜索。然后,内容服务器能够基于关键字、替代表达或者其他合适的搜索技术来执行所请求的搜索。然后,内容服务器能够将导出的搜索结果提供回到搜索引擎。然后,搜索引擎能够编译、组织或者以其他方式处理接收到的搜索结果,并且响应于搜索请求而向成员提供内容项的列表。
所公开的技术的若干实施例能够消除维护组织的内联网上的所有内容项的主索引所涉及的大量努力。与每个都包括数百万个内容项或子索引的记录的大量主索引(例如,千兆字节)不同,搜索特征记录的数据库大小能够非常小(例如,千字节)。搜索特征并不旨在捕获可用内容项的所有引用。替代地,搜索特征旨在捕获与如何搜索分布式索引中所引用的这样的内容项有关的统计信息或简档信息。因此,所公开的技术的若干实施例能够是可缩放的。与实施主索引的技术不同,分布式索引中的引用的修改可能不一定增加搜索特征的数据库大小,因为经修改的引用的搜索活动可以与现有的搜索特征相组合。因此,每个分布式索引能够独立地创建、更新或管理对对应内容项的引用,而不需要在搜索特征的数据库中立即更新。
附图说明
图1是图示了根据所公开的技术的实施例的实施对内容的分布式索引搜索的计算系统的示意图。
图2A-2C是图示了根据所公开的技术的实施例的在内容搜索操作期间图1的计算系统的硬件/软件组件的示意图。
图3是图示了根据所公开的技术的实施例的适合于图1的计算系统的特征跟踪器的硬件/软件组件的示意图。
图4A-4B是根据所公开的技术的实施例的适合于搜索特征的记录的示例性数据模式。
图5A-5B是图示了根据所公开的技术的实施例的提供分布式索引搜索的各种过程的流程图。
图6是图示了根据所公开的技术的实施例的编译搜索特征的数据库的过程的流程图。
图7是适合于图1中的计算系统的某些组件的计算设备。
具体实施方式
下文描述了用于计算机网络中的分布式索引搜索的系统、设备、组件、模块、例程、数据结构和进程的某些实施例。在以下描述中,包括了对组件的具体细节以提供对所公开的技术的某些实施例的透彻理解。相关领域的技术人员还将理解,该技术能够具有另外的实施例。该技术也能够在没有下文参考图1-7所描述的实施例的若干细节的情况下来实践。
如在本文中所使用的,术语“内容项”通常指代经由计算机网络能访问的信息资源项。例如,内容项能够包括被存储在网络储存库中并且经由计算机网络能访问的文档,所述文档包含文本、图像、声音、视频或动画。在另一示例中,内容项还能够包括具有经由计算机网络能访问的一个或多个网页的网站。在另外的示例中,内容项能够包括博客站点、讨论论坛、电子商务站点或者其他合适类型的资源。
在本文中还使用的术语“分布式索引”或“碎片”通常指代数据库或搜索引擎中的记录的分区。每个分布式索引或碎片都能够在单独的内容服务器上托管和维护。个体碎片能够被实施为整体索引的水平、垂直或者其他合适的分区。在某些实施例中,一个或多个数据库记录可以存在于多于一个的分布式索引中。在其他实施例中,数据库记录可以仅出现在单个分布式索引中。
如在本文中所使用的,术语“搜索特征”通常指代元数据、数据库记录或者包含与内联网、互联网或者其他合适类型的计算系统有关的内容搜索或交互简档的信息的其他合适类型的数据。在一个示例中,能够基于组织、子组织、成员组或组织的个体成员的搜索历史将简档编译为数据库记录。例如,简档记录能够包含内联网上的组织、子组织、成员组或组织的个体成员的搜索的热门关键字、查询历史、搜索量。在另一示例中,简档还能够包括基于子组织、成员组或组织的个体成员的交互历史而编译的数据库记录。例如,另一简档记录能够包含通过内联网发送的电子邮件、收到的评论或者成员之间的其他合适类型的交互。下文参考图4A-4B更详细地描述了适合于存储搜索特征的示例性数据库记录。
内联网能够为组织的成员提供搜索组织内的各种类型的内容项的能力。然而,在编译、更新和维护内容项的分布式索引所涉及的工作会快速扩大到不可持续的水平。例如,编译和更新引用数千或者甚至数百万内容项的主索引可能由于准确性、延迟以及其他要求而涉及大量的努力和成本。所公开的技术的若干实施例能够通过维护包含与组织、子组织、成员组或组织的个体成员有关的搜索特征的记录的数据库,而不是在内容服务器上托管的引用所有内容项的主索引或子索引,来解决前述挑战中的至少一些挑战。在搜索期间,能够基于搜索请求和数据库中的搜索特征来标识内容服务器的子集。然后,能够将搜索请求扇出到内容服务器的子集以搜索分布式索引并且取回合适的内容项,如下文参考图1-7更详细描述的。
图1是图示了根据所公开的技术的实施例的实施个性化内容建议的计算系统100的示意图。如在图1中所示的,计算系统100能够包括互连客户端设备102、搜索引擎106、特征跟踪器112以及一个或多个内容服务器118的计算机网络104。在所图示的实施例中,示出了两个内容服务器118用于说明目的。在其他实施例中,计算系统100能够包括三个、四个或者任意合适数量的内容服务器118。计算机网络104能够包括组织内联网、社交网络、因特网或者其他合适类型的网络。
计算系统100还能够包括被可操作地耦合到内容服务器118的网络储存库108以及被可操作地耦合到特征跟踪器112的网络存储装置114。如在图1中所示的,网络储存库108能够被配置为存储经由计算机网络104能访问的内容项110的记录以及对应的分布式索引111。网络存储装置114能够被配置为存储搜索特征116的记录,所述记录包含表示搜索简档的数据以及通过计算机网络104在成员101之间的交互。
在所图示的实施例中,计算系统100还能够包括被可操作地耦合到搜索引擎106的搜索存储装置109。搜索存储装置109能够被配置为存储成员简档113的记录。在某些示例中,成员简档113能够包括电子邮件地址、组织层级、与其他成员101的交互以及成员101的内容访问历史。在其他示例中,成员简档113还能够包括成员101所属的(一个或多个)子组织、内容浏览历史、或者与成员101有关的其他适当的简档信息。在其他实施例中,成员简档113的记录能够被存储在网络存储装置114或者一个或多个网络储存库108中。
尽管在图1中示出了计算系统100的特定组件和相关联的布置,但是在其他实施例中,计算系统100能够包括额外的和/或不同的组件。例如,在某些实施例中,网络储存库108和网络存储装置114能够被组合成单个物理或逻辑存储空间。在其他实施例中,计算系统100还能够包括高速缓存服务器、负载平衡器或者其他合适的组件。
客户端设备102能够个体地包括便于成员101(被标识为第一、第二和第三成员101a-10lc)经由计算机网络104访问网络储存库108的计算设备。例如,在说明性实施例中,第一客户端设备102a包括膝上型计算机。第二客户端设备102b包括台式计算机。第三客户端设备102c包括平板计算机。在其他实施例中,客户端设备102还能够包括智能电话或者其他合适的计算设备。尽管出于说明目的在图1中示出了三个成员101,但是在其他实施例中,计算系统100能够促进任意合适数量的成员101经由计算机网络104访问网络储存库108。
在某些实施例中,搜索引擎106、特征跟踪器112和内容服务器118均能够包括一个或多个互连的计算机服务器,如在图1中所示的。在其他实施例中,计算系统100的前述组件均能够包括在一个或多个远程计算设施(诸如数据中心)上托管的基于云的服务。在另外的实施例中,某些组件(例如,内容服务器118)可以从计算系统100中省略并且由外部计算系统(未示出)来提供。
内容服务器118能够被配置为提供成员101经由计算机网络104能访问的一个或多个内容项110。例如,在一个实施例中,内容服务器118能够被配置为提供组织文件管理系统,其允许成员101安全地创建、修改、删除或者以其他方式处理内容项110。在另外的实施例中,内容服务器118还能够被配置为向社交网络网站提供允许成员101发布内容项110、评论彼此的内容项110、与额外成员101共享和/或推荐内容项110或者执行其他合适的动作的网页。
内容服务器118也能够被配置为独立地接收、存储、编目或者以其他方式管理对应网络储存库108中的内容项110。如在图1中所示的,内容服务器118能够个体地编译、更新或维护被存储在对应内容服务器118上的内容项110或者与内容项110共同定位在对应内容服务器118上的分布式索引111。分布式索引111能够包括关键字、有关词语或者便于定位特定内容项110的其他合适的引用。例如,第一内容服务器118'能够独立地编译、更新和维护第一分布式索引111',以用于搜索被存储在可操作地耦合到第一内容服务器118'的第一网络储存库108'上的内容项110'的第一集合。第二内容服务器118”也能够独立地编译、更新和维护第二分布式索引111”,以用于搜索被存储在可操作地耦合到第二内容服务器118”的第二网络储存库108”上的内容项110”的第二集合。这样,第一分布式索引118'能够包括与第二分布式索引118”不同的条目。内容服务器118还能够被配置为基于搜索项或者其他合适的信息来搜索对应的分布式索引111,如下文更详细描述的。
特征跟踪器112能够被配置为生成、更新或者以其他方式管理(i)针对利用计算机系统100的组织以及(ii)在个体成员101之间的搜索特征的记录以及被存储在网络储存库108中的一个或多个内容项110。例如,在一个实施例中,特征跟踪器112能够经由在线发布、电子邮件、电话呼叫、文本消息、在线聊天或者其他合适的交互来记录成员101对之间的交互。在另一实施例中,特征跟踪器112还能够记录在个体成员101和一个或多个内容项110之间的交互。示例性交互能够包括由成员101在内容项110上创建、编辑、保存、查看、评论或者执行其他合适的动作。
在另外的实施例中,特征跟踪器112还能够被配置为记录与个体成员101有关的组织位置、专业知识或者其他合适的信息。在又另外的实施例中,特征跟踪器112能够使用爬虫或者其他合适的技术从内容服务器108收集组织、子组织、成员101组或个体成员101的搜索历史。在其他实施例中,特征跟踪器112能够被配置为基于搜索特征116的记录来标识待搜索的内容服务器118的列表,如下文所描述的。下文参考图2A-3描述了适合于特征跟踪器112的某些硬件/软件组件。
搜索引擎106能够被配置为响应于从成员101接收到的搜索查询138,向成员101提供网络储存库108中的内容项110的列表。在某些实施例中,搜索引擎106能够被配置为从成员101接收搜索查询138。搜索查询138能够包含一个或多个搜索项(例如,“工程文档”)。作为响应,在某些实施例中,搜索引擎106能够被配置为将接收到的搜索查询138以及与成员101相对应的成员简档113的记录中的信息传输到特征跟踪器112。
继而,特征跟踪器112能够基于被存储在网络存储装置114中的搜索特征116来标识内容服务器118的列表和/或待搜索的在内容服务器118上维护的分布式索引111的列表。然后,特征跟踪器112能够将标识出的内容服务器的列表和/或分布式索引111传输到搜索引擎106,搜索引擎106继而将一个或多个搜索请求传输到(一个或多个)标识出的内容服务器118,以用于基于搜索查询138中的搜索项来搜索对应的分布式索引111。然后,(一个或多个)内容服务器118能够执行所请求的搜索并且将搜索结果的集合返回到搜索引擎106以呈现给成员101。在某些实施例中,特征跟踪器112和搜索引擎106每个都能够包括计算系统100中的独立服务器或服务器集群。在其他实施例中,特征跟踪器112和/或搜索引擎106也能够是被部署在例如一个或多个内容服务器118或者其他适当组件上的计算系统100中的计算服务。下文参考图2A-2C更详细讨论了搜索引擎106、特征跟踪器112以及内容服务器118的组件和操作的各种实施例。
图2A-2C是图示了根据所公开的技术的实施例的在搜索期间图1的搜索引擎106、特征跟踪器112和内容服务器118的硬件/软件组件的示意图。在以下描述中,为了清楚起见,从某些附图中省略了计算系统100的某些组件。例如,在图2A中省略了内容服务器110,并且从图2C中省略了特征跟踪器112。
另外,在图2A-2C以及在本文中的其他图中,个体软件组件、对象、类、模块和例程可以是以C、C++、C#、Java和/或者其他合适的编程语言作为源代码编写的计算机程序、流程或进程。组件可以包括但不限于一个或多个模块、对象、类、例程、属性、进程、线程、可执行文件、库或者其他组件。组件可以是源或二进制形式。组件可以包括在编译之前的源代码的各方面(例如,类、属性、流程、例程)、经编译的二进制单元(例如,库、可执行文件)或者在运行时实例化和使用的工件(例如,对象、进程、线程)。在某些实施例中,下文所描述的各种组件和模块能够利用角色来实施。在其他实施例中,还能够使用单片应用、多层应用或者其他合适的组件来实施应用和/或相关服务的生成。
系统内的组件能够采用系统内的不同形式。作为一个示例,包括第一组件、第二组件和第三组件的系统能够包括但不限于具有第一组件是源代码中的属性、第二组件是二进制编译库并且第三组件是运行时创建的线程的系统。计算机程序、流程或进程可以被编译成对象、中间件或机器代码,并且被呈现用于由个人计算机、网络服务器、膝上型计算机、智能电话和/或者其他合适的计算设备的一个或多个处理器执行。同样地,组件可以包括硬件电路。
本领域普通技术人员将认识到,硬件可以被认为是石化软件,并且软件可以被认为是液化硬件。仅作为一个示例,组件中的软件指令可以被烧制到可编程逻辑阵列电路,或者可以被设计为具有适当集成电路的硬件电路。同样地,硬件可以通过软件来模拟。源、中间和/或目标代码以及相关联数据的各种实施方式可以被存储在计算机存储器中,所述计算机存储器包括只读存储器、随机存取存储器、磁盘存储介质、光学存储介质、闪存设备和/或除传播的信号之外的其他合适的计算机可读存储介质
如在图2A中所示的,搜索引擎106能够包括可操作地彼此耦合的输入/输出组件152、选择组件154和过滤器组件156。尽管在图2A以及本文中的其他图中示出了搜索引擎106的特定组件,但是在其他实施例中,搜索引擎106还能够包括高速缓存组件、排序组件、数据库组件或者其他合适的组件。在另外的实施例中,可以从搜索引擎106中省略过滤器组件156和/或者其他组件。
输入/输出组件152能够被配置为经由客户端设备102从成员101接收搜索查询138。在一个实施例中,搜索查询138能够包括在网页上显示的搜索框中的输入,例如,由图1的内容服务器118之一所提供的。在另一实施例中,搜索查询138能够包括浏览器的地址字段中的输入、来自成员101的表达命令或者来自成员101的其他合适类型的用户输入。输入/输出组件152能够被配置为将接收到的搜索查询138提供给选择组件154以供进一步处理。在某些实施例中,输入/输出组件152能够包括例如web浏览器上的用户界面。在其他实施例中,输入/输出组件152能够包括应用编程接口或者其他合适类型的接口。
选择组件154能够被配置为基于接收到的搜索查询138来确定内容服务器118(图1)的列表和/或对应的分布式索引118以搜索内容项。在某些实施例中,选择组件152能够从与成员101相对应的搜索存储装置109中取回成员简档113的记录。然后,选择组件154能够将搜索查询138和成员简档113的至少一部分传输到特征跟踪器112。在接收到搜索查询138和成员简档113后,特征跟踪器112能够被配置为基于被存储在网络存储装置116中的搜索特征116来确定包含内容服务器110和/或对应的分布式索引118的标识的搜索列表140,如下文参考图3更详细描述的。特征跟踪器112然后能够将确定出的搜索列表140返回到搜索引擎106。
如在图2B中所示的,在某些实施例中,选择组件154能够经由计算机网络104(图1)将一个或多个搜索请求142传输到在接收到的搜索列表140中标识的内容服务器118。在某些示例中,搜索请求142能够包含表示搜索查询138中的搜索项的数据以及基于搜索项搜索内容项110的分布式索引111的指令。在其他示例中,搜索请求142还能够包含搜索结果的目标大小、延迟要求和/或者其他合适的信息。
在其他实施例中,选择组件154能够在传输搜索请求142之前修改搜索列表140。例如,选择组件154能够尤其基于在成员101的成员简档113中所包含的信息利用内容服务器110的额外标识来补充搜索列表140。例如,选择组件154能够标识包含分布式索引118的一个或多个内容服务器110,所述分布式索引118响应于来自成员101的先前搜索查询138而被频繁地搜索。在另一示例中,选择组件154能够标识包含与成员101与之频繁交互的内容项110相对应的分布式索引118的一个或多个内容服务器110。在另外的示例中,选择组件154还能够删除、修改或者以其他方式来调节搜索列表140。
如在图2C中所示的,内容服务器118然后能够使用对应的分布式索引111来执行内容搜索,以定位与搜索查询138相对应的相关内容项110。在完成所请求的内容搜索后,内容服务器118能够将搜索结果114的个体集合提供给搜索引擎106的过滤器组件156。然后,过滤器组件156能够被配置为对接收到的搜索结果144的集合进行排序、过滤、组合或者以其他方式汇总以生成整体搜索结果144”。例如,过滤器组件156能够基于相关性、数据大小、数据类型或者其他合适的标准对接收到的搜索结果144进行排序和分类。然后,过滤器组件156能够经由输入/输出组件152向客户端设备102提供整体搜索结果144”。
上文所描述的计算系统100的若干实施例能够消除维护经由计算机网络104(图1)能访问的所有内容项110的主索引所涉及的大量努力。当包括数百万或者甚至数十亿内容项的记录时,主索引会变得庞大(例如,千兆字节)。相反,搜索特征116的记录的大小能够非常小(例如,千字节),因为搜索特征116并不旨在捕获在计算机网络104上可用的内容项110的所有引用。替代地,搜索特征116包含与已经如何搜索分布式索引111中所引用的内容项110有关的统计信息或简档信息。
利用搜索特征116而不是主索引还能够允许改进计算机系统100的可缩放性。与使用主索引不同,对分布式索引111中的引用的修改可能不以一对一的方式影响搜索特征116的记录。替代地,在某些实施例中,搜索特征116捕获已经如何搜索分布式索引中的引用。因此,对分布式索引111的新添加不需要在搜索特征116中立即更新。替代地,当已经检测到与新添加有关的搜索活动时,可以更新搜索特征116。
图3是图示了根据所公开的技术的实施例的适合于图1的计算系统的特征跟踪器112的硬件/软件组件的示意图。如在图3中所示的,特征跟踪器112能够包括可操作地彼此耦合的收集组件122和搜索组件124。尽管在图3中示出了特定组件,但是在其他实施例中,特征跟踪器112还能够包括接口组件、数据库组件和/或者其他合适的组件。
收集组件122能够被配置为收集与内容服务器110上的搜索活动130有关的历史信息或统计信息。在某些实施例中,收集组件122能够包括爬虫,其被配置为经由计算机网络104(图1)联系和收集来自内容服务器110(图1)的搜索历史、搜索统计和/或者其他合适的信息。在其他实施例中,内容服务器110能够被配置为周期性或者以其他合适的基础向收集组件122提供这样的信息。在另外的实施例中,收集组件122能够周期性地从内容服务器接收这样的信息并且利用爬虫用于定期更新。
在某些实施例中,收集组件122还能够被配置为接收组织图表132、交互简档134和/或者与个体成员101(图1)有关的其他合适的信息。在一个示例中,组织图表132能够标识与特定成员101有关的一个或多个对等成员101。在另一示例中,组织图表132能够标识成员101所属的组、部门或者其他合适类型的子组织。在另外的示例中,交互简档134能够包括与搜索历史/频率、通信历史/频率或者与成员101有关的其他合适的信息有关的信息。在其他实施例中,能够收集与个体成员101有关的前述信息,并且由搜索引擎106编译为成员简档113(图1)。
收集组件122还能够被配置为基于接收到的搜索历史、搜索统计和/或者其他合适的信息来编译、更新或者以其他方式管理搜索特征116的记录。例如,收集组件122能够将最频繁搜索的关键字、与关键字有关的搜索频率和/或者其他合适的信息编译成搜索特征的记录。在其他示例中,收集组件122还能够收集成员101(图1)的交互,并且将这样的信息编译成与个体成员101有关的搜索特征的记录。下文参考图4A和图4B更详细描述了适合于搜索特征116的示例性模式。
搜索组件124能够被配置为:响应于接收到的搜索查询138和可选的成员简档113,基于搜索特征116来确定内容服务器110的搜索列表140和/或对应的分布式索引118。例如,搜索组件124能够确定搜索列表140包括托管成员101的子组织(例如,“工程部门”)的内容项110的内容服务器118的标识。在其他示例中,搜索组件124能够确定搜索列表140能够包括成员与之交互最多的组织、组织的子组织或者其他成员的组中搜索最多的那些。在确定搜索列表140后,搜索组件124能够将搜索列表140返回到搜索引擎106(图1)。
图4A-4B是根据所公开的技术的实施例的适合于搜索特征116的记录的示例性数据模式。如在图4A中所示的,针对搜索特征116的记录的模式160能够包括ID字段161、电子邮件地址字段162、热门关键字字段163、查询历史字段164、访问字段165、活动字段165以及交互字段166。
ID字段161能够被配置为包含组织或子组织的标识。电子邮件地址字段162能够被配置为包含组织或子组织的电子邮件地址。热门关键字字段163能够被配置为包含在组织或子组织中搜索的(一个或多个)热门关键字。查询历史字段164能够被配置为包含组织或子组织的搜索历史。访问字段165能够被配置为包含已经访问组织或子组织的成员101的标识。活动字段165能够被配置为包含组织或子组织中的活动统计(例如,发送的电子邮件的数量)。交互字段166能够被配置为包含指示组织或子组织中的交互(例如,喜欢)或者其统计的数据。以下是在所图示的模式中的搜索特征116的示例性记录:
ID {91A08A55-A853-4A9A-8BF9-28DDF30A0FB6}
电子邮件地址 group1@xyz.com
热门关键字 ["云","存储","Apps","更新"]
查询历史 ["Windows 10","Redstone","Apps"]
访问 {"Key":{"DateUtc":"VDate(1448928000000+0000)V"},"Value":456}
活动 [{"Key":{"DateUtc":"VDate(1448928000000+0000)V"},"Value":75}]
交互 [{"Key":{"DateUtc":"VDate(1448928000000+0000)V"},"Value":47}
图4B示出了用于搜索特征116的另一个合适的数据模式170。如在图4B中所示的,搜索特征116的记录能够包括ID字段171、电子邮件地址字段172、组织层级字段173、交互字段174以及访问字段175。ID字段171能够被配置为包含一组成员101(图1)或个体成员101的标识。电子邮件地址字段172能够被配置为包含一组成员101或个体成员101的电子邮件地址。组织层级字段173能够被配置为包含一组成员101或个体成员101的组织位置。交互字段174能够被配置为包含一组成员101或个体成员101的交互历史。访问字段175能够被配置为包含由一组成员101或个体成员101所访问的内容项110。以下是在所图示的模式中的搜索特征116的示例性记录:
ID {91A08A55-A853-4A9A-8BF9-28DDF30A0FB6}
电子邮件地址 member1@xyz.com
组织层级 [{"Key":0,"Value":l},{"Key":l,"Value":l},{"Key":2,"Value":l l}]
交互 [{"Key":{"DateUtc":"VDate(1448928000000+0000)V"},"Value":47}]
访问 [{"Key":{"DateUtc":"VDate(1456790400000+0000)V"},"Value":20}]
图5A是图示了根据所公开的技术的实施例的提供分布式索引搜索的过程200的流程图。尽管在计算系统100的上下文中描述了过程200的实施例,但是在其他实施例中,过程200也能够在具有额外的和/或不同的组件的计算系统中实施。
如在图5A中所示的,过程200能够包括在阶段202处从成员接收搜索查询。在某些实施例中,搜索查询能够包括一个或多个搜索项。在其他实施例中,搜索查询还能够包括成员的标识、成员所使用的客户端设备或软件应用的标识或者其他合适的信息。
在接收到搜索查询后,过程200能够包括在阶段204处基于在接收到的搜索查询中的搜索项来确定待搜索的分布式索引的子集。在某些实施例中,能够不基于分布式索引的主索引,而是基于从个体内容服务器118(图1)收集的搜索特征的记录,来确定分布式索引的子集。搜索特征能够包括表示与组织或组织的个体成员有关的内容搜索或交互简档的数据或数据记录。例如,搜索特征能够包括组织、子组织、成员组或组织的个体成员的搜索的热门关键字、查询历史、搜索量。在另一示例中,搜索特征还能够包括交互历史,例如,发送的电子邮件、接收到的评论或者组织的成员组或个体成员之间的其他合适类型的交互。在某些实施例中,能够在接收搜索查询的服务器上执行前述确定。在其他实施例中,前述确定能够至少部分地由包含搜索特征的记录的数据库服务器来执行。接收搜索查询的服务器能够可选地补充、移除或者以其他方式修改确定出的分布式索引的子集。下文参考图5B更详细描述了这样的确定的示例性操作。
然后,过程200能够包括在阶段206处将搜索请求传输到托管分布式索引的子集的内容服务器118。在某些实施例中,搜索请求能够包括在接收到的搜索查询中的搜索项。在其他实施例中,搜索请求还能够包括表示成员简档或者其他合适的信息的数据。然后,过程200能够包括在阶段208处接收和处理搜索结果。在某些实施例中,能够汇总从内容服务器接收到的搜索结果。在其他实施例中,能够对搜索结果进行分类、过滤、排序或者以其他方式进行处理。然后,过程200能够包括在阶段210处响应于接收到的搜索查询而将汇总的搜索结果输出给成员。
图5B是图示了根据所公开的技术的实施例的适合于确定分布式索引的子集的操作的流程图。如在图5B中所示的,所述操作能够包括将搜索查询和可选的成员简档信息传输到包含从个体内容服务器118(图1)收集到的搜索特征的记录的数据库服务器。然后,所述操作能够包括在阶段214处从数据库服务器接收待搜索的分布式索引的列表。可选地,所述操作还能够包括通过例如补充、减去或者以其他方式调节分布式索引的列表中的项来修改分布式索引的列表。
图6是图示了根据所公开的技术的实施例的编译搜索特征的数据库的过程220的流程图。如在图6中所示的,过程220能够包括在阶段222处收集搜索特征。在某些实施例中,爬虫能够被用于从内容服务器118(图1)收集搜索特征。在其他实施例中,可以通过内容服务器118报告或者其他合适的技术来收集搜索特征。然后,过程220能够包括在阶段224处更新搜索特征记录。在某些实施例中,能够修订、创建、删除或者以其他方式改变搜索特征记录中的条目。在其他实施例中,可以创建新的搜索特征记录。然后,过程220能够包括决策阶段226,以确定自上次更新以来经过的时间是否超过预设阈值(例如,1天或者其他合适的时段)。响应于确定自上次更新以来经过的时间超过了预设阈值,过程220能够恢复到在阶段222处收集搜索特征。否则,过程220继续以监视经过的时间。
图7是适合于图1中的计算系统100的某些组件的计算设备300。例如,计算设备300能够适于图1的搜索引擎106、特征跟踪器112或内容服务器118。在非常基本的配置302中,计算设备300能够包括一个或多个处理器304和系统存储器306。存储器总线308能够被用于在处理器304与系统存储器306之间进行通信。
取决于期望的配置,处理器304能够是任何类型,包括但不限于:微处理器(μP)、微控制器(μC)、数字信号处理器(DSP)或者其任何组合。处理器304能够包括一个或多个级别的高速缓存,诸如一级高速缓存310和二级高速缓存312、处理器核心314以及寄存器316。示例性处理器核心314能够包括算术逻辑单元(ALU)、浮点单元(FPU)、数字信号处理核心(DSP核心)或者其任何组合。示例性存储器控制器318也能够与处理器304一起使用,或者在一些实施方式中,存储器控制器318能够是处理器304的内部部分。
取决于期望的配置,系统存储器306能够是任何类型,包括但不限于:易失性存储器(诸如RAM)、非易失性存储器(诸如ROM、闪存等)或者其任何组合。系统存储器306能够包括操作系统320、一个或多个应用322以及程序数据324。该描述的基本配置302在图7中由内部虚线内的那些组件图示。
计算设备300能够具有额外特征或功能,以及用于促进在基本配置302与任何其他设备和接口之间的通信的额外接口。例如,总线/接口控制器330能够被用于促进经由存储接口总线334在基本配置302与一个或多个数据存储设备332之间的通信。数据存储设备332能够是可移除存储设备336、不可移除存储设备338或者其组合。可移除存储设备和不可移除存储设备的示例包括:诸如软盘驱动器和硬盘驱动器(HDD)的磁盘设备、诸如压缩盘(CD)驱动器或数字通用盘(DVD)驱动器的光盘驱动器、固态驱动器(SSD)和磁带驱动器等等。示例性计算机存储介质能够包括以用于存储信息(诸如计算机可读指令、数据结构、程序模块或者其他数据)的任何方法或技术实施的易失性和非易失性、可移除和不可移除介质。术语“计算机可读存储介质”或“计算机可读存储设备”不包括传播的信号和通信介质。
系统存储器306、可移除存储设备336和不可移除存储设备338是计算机可读存储介质的示例。计算机可读存储介质包括但不限于:RAM、ROM、EEPROM、闪存或者其他存储器技术、CD-ROM、数字通用盘(DVD)或者其他光学存储装置、磁带盒、磁带、磁盘存储装置或者其他磁存储设备,或者能够被用于存储所需信息并且能够由计算设备300访问的任何其他介质。任何这样的计算机可读存储介质能够是计算设备300的一部分。术语“计算机可读存储介质”不包括传播的信号和通信介质。
计算设备300还能够包括接口总线340,其用于促进经由总线/接口控制器330从各种接口设备(例如,输出设备342、外围接口344和通信设备346)到基本配置302的通信。示例性输出设备342包括图形处理单元348和音频处理单元350,其能够被配置为经由一个或多个A/V端口352通信到诸如显示器或扬声器的各种外部设备。示例性外围接口344包括串行接口控制器354或者并行接口控制器356,其能够被配置为经由一个或多个I/O端口358与诸如输入设备(例如,键盘、鼠标、笔、语音输入设备、触摸输入设备等)或者其他外围设备(例如,打印机、扫描仪等)的外部设备进行通信。示例性通信设备346包括网络控制器360,其能够被布置为促进经由一个或多个通信端口364在网络通信链路上与一个或多个其他计算设备362进行通信。
网络通信链路能够是通信介质的一个示例。通信介质通常能够由计算机可读指令、数据结构、程序模块或者调制数据信号中的其他数据(诸如载波或者其他传输机制)来体现,并且能够包括任何信息递送介质。“经调制数据信号”能够是以对信号中的信息进行编码的方式设置或改变其特性中的一个或多个特性的信号。通过示例而非限制,通信介质能够包括诸如有线网络或直连线连接的有线介质,以及诸如声学、射频(RF)、微波、红外(IR)以及其他无线介质的无线介质。在本文中所使用的术语“计算机可读介质”能够包括存储介质和通信介质。
计算设备300能够被实施为小型便携式(或移动)电子设备的一部分,所述电子设备诸如是蜂窝电话、个人数字助理(PDA)、个人媒体播放器设备、无线网络-手表设备、个人耳机设备、专用设备或者包括任何上述功能的混合设备。计算设备300还能够被实施为包括膝上型计算机和非膝上型计算机配置的个人计算机。
上文出于说明的目的已经描述了本技术的特定实施例。然而,在不背离前述公开内容的情况下,能够进行各种修改。另外,除了其他实施例的元件之外或者替代其他实施例的元件,一个实施例的元件中的许多元件能够与其他实施例组合。因此,除了所附权利要求之外,该技术不受限制。

Claims (10)

1.一种用于在成员经由计算机网络能访问的计算机系统中提供分布式索引搜索的方法,所述计算机系统包括个体地托管对应内容项和所述内容项的分布式索引的内容服务器的集合,所述方法包括:
在服务器处经由所述计算机网络从成员接收针对内容的搜索查询,所述搜索查询包含搜索项;以及
响应于接收到所述搜索查询而在所述服务器处:
将所述搜索项传输到数据库服务器,所述数据库服务器包含与所述计算机系统有关的搜索特征的记录,所述搜索特征的记录包含组织、子组织或所述组织的个体成员的内容搜索简档的信息;
从所述数据库服务器接收由所述数据库服务器基于所述搜索项和所述搜索特征的记录而确定的分布式索引的列表;
经由所述计算机网络将搜索请求传输到与所述列表中的所述分布式索引相对应的所述内容服务器的子集,所述搜索请求请求所述内容服务器基于所述搜索项来搜索对应的分布式索引;并且
从所述内容服务器的子集接收搜索结果的集合,所述搜索结果标识在与所述搜索项有关的对应内容服务器上托管的内容项。
2.根据权利要求1所述的方法,还包括:
汇总来自所述内容服务器的所接收到的搜索结果的集合;以及
响应于接收到所述搜索查询而经由所述计算机网络将汇总的搜索结果提供给所述成员。
3.根据权利要求1所述的方法,还包括:
将表示所述成员的成员简档的数据与所述搜索查询中的所述搜索项一起传输到所述数据库服务器;并且
其中,待搜索的所述分布式索引的列表是由所述数据库服务器基于所述搜索项、表示所述成员简档的所述数据和所述搜索特征的组合来确定的。
4.根据权利要求1所述的方法,其中,所述搜索特征的记录包含表示以下中的至少一项的数据:搜索的热门关键字、查询历史、活动统计或者在所述组织或所述子组织中的交互。
5.根据权利要求1所述的方法,其中,所述搜索特征的记录包含表示以下中的至少一项的数据:组织层级或者所述成员与所述组织中的其他成员的交互。
6.根据权利要求1所述的方法,其中,所述数据库服务器不包含在所述对应内容服务器上托管的所述分布式索引的主索引。
7.根据权利要求1所述的方法,还包括:在经由所述计算机网络将所述搜索请求传输到所述内容服务器的子集之前,补充在所述服务器处接收到的分布式索引的列表。
8.一种用于在成员经由计算机网络能访问的计算机系统中提供分布式索引搜索的方法,所述计算机系统包括在内容服务器上托管的内容项以及在对应内容服务器上托管的所述内容项的子集的分布式索引的集合,所述方法包括:
在数据库服务器处并且经由所述计算机网络从成员接收在针对内容的搜索查询中所包括的搜索项;以及
响应于接收到所述搜索项而在所述数据库服务器处:
基于接收到的搜索项以及所述数据库服务器上的搜索特征的一个或多个记录,响应于所述搜索查询而确定待搜索的所述分布式索引的子集,所述搜索特征包含表示以下中的至少一项的内容搜索简档的数据:组织或所述组织的个体成员;并且
基于所述搜索查询中的所述搜索项,从所述数据库服务器并且经由所述计算机网络提供确定出的待搜索的分布式索引的列表。
9.根据权利要求8所述的方法,还包括:响应于接收到所述搜索项而从所述数据库服务器并且经由所述计算机网络提供与确定出的列表中的所述分布式索引相对应的所述内容服务器的子集。
10.根据权利要求8所述的方法,其中:
所述搜索特征包括表示在所述组织中搜索的关键字的数据;并且
确定出的索引的子集包括已经基于所述关键字被搜索的一个或多个分布式索引。
CN201880011562.2A 2017-02-13 2018-02-07 计算系统中的分布式索引搜索 Active CN110291515B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/430,708 2017-02-13
US15/430,708 US10482096B2 (en) 2017-02-13 2017-02-13 Distributed index searching in computing systems
PCT/US2018/017137 WO2018148226A1 (en) 2017-02-13 2018-02-07 Distributed index searching in computing systems

Publications (2)

Publication Number Publication Date
CN110291515A true CN110291515A (zh) 2019-09-27
CN110291515B CN110291515B (zh) 2023-08-15

Family

ID=61599577

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880011562.2A Active CN110291515B (zh) 2017-02-13 2018-02-07 计算系统中的分布式索引搜索

Country Status (4)

Country Link
US (1) US10482096B2 (zh)
EP (1) EP3552122B1 (zh)
CN (1) CN110291515B (zh)
WO (1) WO2018148226A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022033291A1 (zh) * 2020-08-14 2022-02-17 百果园技术(新加坡)有限公司 榜单服务系统、榜单生成方法、服务器及存储介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019074732A1 (en) * 2017-10-12 2019-04-18 Kinsey Stanley Bruce INDEX BASED ON A CLOUD AND CENTRALIZED CONCENTRATOR INTERFACE BASED ON A CLOUD FOR CLOUD STORAGE MEDIA
US20230237107A1 (en) * 2022-01-27 2023-07-27 Microsoft Technology Licensing, Llc Optimizing request sizes in a search engine fanout

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080065600A1 (en) * 2006-09-12 2008-03-13 Harold Batteram Method and apparatus for providing search results from content on a computer network
US20080071772A1 (en) * 2006-09-14 2008-03-20 Thomson Global Resources Information-retrieval systems, methods, and software with content relevancy enhancements
CN102187360A (zh) * 2008-08-01 2011-09-14 汤姆森路透社全球资源公司 用于建立多在线法律研究应用的系统和方法
CN102930035A (zh) * 2011-11-10 2013-02-13 微软公司 从多个不同的内容源导出内容项
CN102999574A (zh) * 2011-11-14 2013-03-27 微软公司 跨多个不同的内容源来定位相关内容项
CN103226553A (zh) * 2011-11-02 2013-07-31 微软公司 将使用信息与系统的操作集成
US20130238587A1 (en) * 2010-10-30 2013-09-12 Blekko, Inc. Search Query Transformations
CN103310023A (zh) * 2013-07-05 2013-09-18 深圳中兴网信科技有限公司 分布式搜索系统和分布式搜索方法
US8631068B1 (en) * 2005-08-11 2014-01-14 Myspace Music Llc Peer-based communications system with scalable data model
CN104115146A (zh) * 2012-02-14 2014-10-22 阿尔卡特朗讯公司 在分布式系统中存储和搜索带标签的内容项的方法
WO2014209925A1 (en) * 2013-06-29 2014-12-31 Microsoft Corporation Person search utilizing entity expansion
CN104903894A (zh) * 2013-01-07 2015-09-09 脸谱公司 用于分布式数据库查询引擎的系统和方法
CN106068523A (zh) * 2014-03-03 2016-11-02 微软技术许可有限责任公司 基于隐式和显式信号来发现企业内容
US20170011084A1 (en) * 2014-08-21 2017-01-12 Dropbox, Inc. Multi-User Search System Using Tokens

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5960194A (en) 1995-09-11 1999-09-28 International Business Machines Corporation Method for generating a multi-tiered index for partitioned data
US7372976B2 (en) 1998-04-16 2008-05-13 Digimarc Corporation Content indexing and searching using content identifiers and associated metadata
US6502086B2 (en) * 1999-01-04 2002-12-31 International Business Machines Corporation Mapping binary objects in extended relational database management systems with relational registry
US20040002901A1 (en) * 2002-07-01 2004-01-01 Robert Baker System for combining on-line commerce with retail stores
US7254580B1 (en) * 2003-07-31 2007-08-07 Google Inc. System and method for selectively searching partitions of a database
US7836076B2 (en) * 2004-08-20 2010-11-16 Hewlett-Packard Development Company, L.P. Distributing content indices
US7725470B2 (en) 2006-08-07 2010-05-25 Bea Systems, Inc. Distributed query search using partition nodes
US7818170B2 (en) 2007-04-10 2010-10-19 Motorola, Inc. Method and apparatus for distributed voice searching
US8046367B2 (en) 2007-08-20 2011-10-25 Microsoft Corporation Targeted distribution of search index fragments over a wireless communication network
US8335776B2 (en) 2008-07-02 2012-12-18 Commvault Systems, Inc. Distributed indexing system for data storage
EP2347345A2 (en) 2008-10-13 2011-07-27 Faroo Assets Limited System and method for distributed index searching of electronic content
CN101546342B (zh) 2009-05-08 2012-07-04 阿里巴巴集团控股有限公司 实现搜索服务的方法与系统
US8843507B2 (en) 2011-03-28 2014-09-23 Microsoft Corporation Serving multiple search indexes
US9589056B2 (en) 2011-04-05 2017-03-07 Microsoft Technology Licensing Llc User information needs based data selection
US9852134B2 (en) * 2016-01-29 2017-12-26 International Business Machinces Corporation Dynamic document collection and custom portal creation

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8631068B1 (en) * 2005-08-11 2014-01-14 Myspace Music Llc Peer-based communications system with scalable data model
US20080065600A1 (en) * 2006-09-12 2008-03-13 Harold Batteram Method and apparatus for providing search results from content on a computer network
US20080071772A1 (en) * 2006-09-14 2008-03-20 Thomson Global Resources Information-retrieval systems, methods, and software with content relevancy enhancements
CN102187360A (zh) * 2008-08-01 2011-09-14 汤姆森路透社全球资源公司 用于建立多在线法律研究应用的系统和方法
US20130238587A1 (en) * 2010-10-30 2013-09-12 Blekko, Inc. Search Query Transformations
CN103226553A (zh) * 2011-11-02 2013-07-31 微软公司 将使用信息与系统的操作集成
CN102930035A (zh) * 2011-11-10 2013-02-13 微软公司 从多个不同的内容源导出内容项
CN102999574A (zh) * 2011-11-14 2013-03-27 微软公司 跨多个不同的内容源来定位相关内容项
CN104115146A (zh) * 2012-02-14 2014-10-22 阿尔卡特朗讯公司 在分布式系统中存储和搜索带标签的内容项的方法
CN104903894A (zh) * 2013-01-07 2015-09-09 脸谱公司 用于分布式数据库查询引擎的系统和方法
WO2014209925A1 (en) * 2013-06-29 2014-12-31 Microsoft Corporation Person search utilizing entity expansion
CN105493082A (zh) * 2013-06-29 2016-04-13 微软技术许可有限责任公司 利用实体扩展的人搜索
CN103310023A (zh) * 2013-07-05 2013-09-18 深圳中兴网信科技有限公司 分布式搜索系统和分布式搜索方法
CN106068523A (zh) * 2014-03-03 2016-11-02 微软技术许可有限责任公司 基于隐式和显式信号来发现企业内容
US20170011084A1 (en) * 2014-08-21 2017-01-12 Dropbox, Inc. Multi-User Search System Using Tokens

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022033291A1 (zh) * 2020-08-14 2022-02-17 百果园技术(新加坡)有限公司 榜单服务系统、榜单生成方法、服务器及存储介质

Also Published As

Publication number Publication date
EP3552122B1 (en) 2022-11-16
US10482096B2 (en) 2019-11-19
CN110291515B (zh) 2023-08-15
EP3552122A1 (en) 2019-10-16
US20180232424A1 (en) 2018-08-16
WO2018148226A1 (en) 2018-08-16

Similar Documents

Publication Publication Date Title
US11023441B2 (en) Distributed storage and processing of hierarchical data structures
Khan et al. Big data: survey, technologies, opportunities, and challenges
Chen et al. Big data: related technologies, challenges and future prospects
CA2900498C (en) Hive table links
US10652246B2 (en) Security descriptors for record access queries
CN107077476A (zh) 利用动态类型的大数据对事件进行丰富以用于事件处理
US9798762B2 (en) Real time big data master data management
Kaur et al. Scholarometer: A social framework for analyzing impact across disciplines
US10715626B2 (en) Account routing to user account sets
US10909575B2 (en) Account recommendations for user account sets
AU2014257044A1 (en) Variable search query vertical access
US20150112995A1 (en) Information retrieval for group users
Gong et al. Keywords‐driven web APIs group recommendation for automatic app service creation process
CN110291515A (zh) 计算系统中的分布式索引搜索
JP2022522916A (ja) グループベース通信システムに通信バリアを実装するための方法、装置、およびコンピュータプログラム製品
EP2767913B1 (en) Hive table links
US20210272129A1 (en) Systems, methods, and apparatuses for implementing cross cloud engagement activity visualization without requiring database merge or data replication
US20190387009A1 (en) Techniques and Architectures for Privilege Escalation Detection
Corbellini et al. An analysis of distributed programming models and frameworks for large-scale graph processing
US20110246476A1 (en) Method and system for performing a search of a feed in an on-demand enterprise services environment
CN109074399B (zh) 计算机网络中的个性化内容建议
Lavbič et al. Traversal and relations discovery among business entities and people using semantic web technologies and trust management
Ioannou et al. Searching web 2.0 data through entity-based aggregation
US20140114939A1 (en) System, method and computer program product for determining issues between rules
Laxmi Lydia et al. Challenging Data Models and Data Confidentiality Through “Pay-As-You-Go” Approach Entity Resolution

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
GR01 Patent grant
GR01 Patent grant