CN114286996A - 使用数据仓库授权进行搜索 - Google Patents
使用数据仓库授权进行搜索 Download PDFInfo
- Publication number
- CN114286996A CN114286996A CN202080060596.8A CN202080060596A CN114286996A CN 114286996 A CN114286996 A CN 114286996A CN 202080060596 A CN202080060596 A CN 202080060596A CN 114286996 A CN114286996 A CN 114286996A
- Authority
- CN
- China
- Prior art keywords
- search
- index
- data
- filter
- access authorizations
- 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
Links
- 238000013475 authorization Methods 0.000 title claims abstract description 106
- 230000004044 response Effects 0.000 claims abstract description 27
- 238000000034 method Methods 0.000 claims description 34
- 238000004590 computer program Methods 0.000 claims description 17
- 230000004048 modification Effects 0.000 claims description 4
- 238000012986 modification Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 14
- 238000012545 processing Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 4
- 238000013500 data storage Methods 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 241000699670 Mus sp. Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 230000001627 detrimental effect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/283—Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2272—Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/282—Hierarchical databases, e.g. IMS, LDAP data stores or Lotus Notes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2145—Inheriting rights or properties, e.g., propagation of permissions or restrictions within a hierarchy
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Bioethics (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
使用数据仓库授权进行搜索包括:为用户确定对于基于云的数据仓库的一个或多个访问授权,所述访问授权中的每一个包括所述用户能访问的数据对象的对象标识符;基于所述访问授权中的每一个生成包括一个或多个搜索项和过滤器的搜索查询;将所述搜索查询发送到被配置为维护所述基于云的数据仓库的索引的搜索索引服务;以及响应于所述搜索查询接收响应于所述一个或多个搜索项并且包括在基于过滤器的范围中的第一搜索结果。
Description
技术领域
本发明的领域是数据处理,或者更具体地说,是使用数据仓库授权进行搜索的方法、装置和产品。
背景技术
现代企业可以在基于云的数据仓库内的远程数据库中存储大量数据。可以使用数据库查询语言,例如结构化查询语言(SQL)来访问该数据。但是,某些查询响应可能包含太多数据而不能在Web应用程序中有效呈现。
发明内容
使用数据仓库授权进行搜索的方法、系统和装置。使用数据仓库授权进行搜索包括:为用户确定对于基于云的数据仓库的一个或多个访问授权,所述访问授权中的每一个包括所述用户能访问的数据对象的对象标识符;基于所述访问授权中的每一个生成包括一个或多个搜索项和过滤器的搜索查询;将所述搜索查询发送到被配置为维护所述基于云的数据仓库的索引的搜索索引服务;以及响应于所述搜索查询接收响应于所述一个或多个搜索项并且包括在基于过滤器的范围中的第一搜索结果。
本发明的上述和其它目的、特征和优点将从下面对本发明的示例性的实施方案的更具体的描述中变得显而易见,如附图中所示,其中相同的附图标记通常表示本发明的示例性的实施方案的相同部分。
附图说明
图1示出了根据本发明的实施方案的示例性系统的框图,该示例性系统被配置用于使用数据仓库授权进行搜索。
图2示出了根据本发明的实施方案的示例性系统的框图,该示例性系统被配置用于使用数据仓库授权进行搜索。
图3示出了流程图,其说明了根据本发明的实施方案的用于使用数据仓库授权进行搜索的示例性方法。
图4示出了流程图,其说明了根据本发明的实施方案的用于使用数据仓库授权进行搜索的示例性方法。
图5示出了流程图,其说明了根据本发明的实施方案的用于使用数据仓库授权进行搜索的示例性方法。
图6示出了流程图,其说明了根据本发明的实施方案的用于使用数据仓库授权进行搜索的示例性方法。
具体实施方式
参考附图,从图1开始,描述了用于在根据本发明的用于使用数据仓库授权进行搜索的示例性方法、装置和产品。图1示出了根据本发明的实施方案的自动计算机器的框图,该自动计算机器包括被配置为用于使用数据仓库授权进行搜索的示例性数据访问计算系统(152)。图1的数据访问计算系统(152)包括至少一个计算机处理器(156)或“CPU”,以及通过高速存储器总线(166)和总线适配器(158)连接到处理器(156)和数据访问计算系统(152)的其它部件的随机存取存储器(168)(“RAM”)。
存储在RAM(168)中的是操作系统(154)。根据本发明的实施方案的被配置成用于使用数据仓库授权进行搜索的计算机中有用的操作系统包括UNIXTM、LinuxTM、MicrosoftWindowsTM、AIXTM、IBM的i OSTM;以及本领域技术人员会想到的其它操作系统。图1的示例中的操作系统(154)在RAM(168)中示出,但是这种软件的许多组件通常也存储在非易失性存储器中,例如,存储在数据存储器(170)上,例如磁盘驱动器上。搜索模块(126)也被存储在RAM中,根据本发明的实施方案,该搜索模块(126)是用于使用数据仓库授权进行搜索的模块。
图1的数据访问计算系统(152)包括通过扩展总线(160)和总线适配器(158)耦合到处理器(156)和数据访问计算系统(152)的其它部件的盘驱动器适配器(172)。盘驱动器适配器(172)以数据存储器(170)的形式将非易失性数据存储器连接到数据访问计算系统(152)。根据本发明的实施方案,可用于配置成用于使用数据仓库授权进行搜索的计算机中的盘驱动器适配器包括集成驱动器电子设备(“IDE”)适配器,小型计算机系统接口(“SCSI”)适配器,以及本领域技术人员将想到的其它适配器。如本领域技术人员可想到的,非易失性计算机存储器也可以实现为光盘驱动器,电可擦除可编程只读存储器(所谓的“EEPROM”;或“闪存”存储器),RAM驱动器等。
图1的示例性数据访问计算系统(152)包括一个或多个输入/输出(‘I/O’)适配器(178)。I/O适配器通过例如软件驱动器和计算机硬件实现面向用户的输入/输出,用于控制对诸如计算机显示屏之类的显示设备的输出,以及来自诸如键盘和鼠标之类的用户输入设备(181)的用户输入。图1的示例性数据访问计算系统(152)包括视频适配器(209),该视频适配器是专门设计用于图形输出到诸如显示屏或计算机监视器之类的显示设备(180)的I/O适配器的示例。视频适配器(209)通过高速视频总线(164)、总线适配器(158)和也是高速总线的前侧总线(162)连接到处理器(156)。
图1的示例性数据访问计算系统(152)包括用于与其它计算机进行数据通信以及用于与数据通信网络进行数据通信的通信适配器(167)。这样的数据通信可以通过RS-232连接,通过诸如通用串行总线(“USB”)之类的外部总线,通过诸如IP数据通信网络之类的数据通信网络,以及以本领域技术人员可想到的其它方式串行地执行。通信适配器实现数据通信的硬件级别,一台计算机通过该数据通信直接发送或通过数据通信网络发送数据通信至另一台计算机。根据本发明的实施方案的被配置成用于使用数据仓库授权进行搜索的计算机中有用的通信适配器的示例包括:用于有线拨号通信的调制解调器、用于有线数据通信的以太网(IEEE 802.3)适配器、以及用于无线数据通信的802.11适配器。
通信适配器(167)通信地耦合到广域网(190),广域网(190)还包括基于云的数据仓库(192)和客户端计算系统(194)。基于云的数据仓库(192)是托管用于通过广域网(190)访问的数据库的计算系统或计算系统组。客户端计算系统(194)是通过数据访问计算系统(152)访问数据库的计算系统。
图2示出了根据本发明的实施方案的使用数据仓库授权进行搜索的系统的示例性框图。如图2所示,该系统包括数据访问计算系统(152)、基于云的数据仓库(192)和搜索索引服务(196)。数据访问计算系统(152)包括搜索模块(126)。基于云的数据仓库(192)包括数据库(206)。
搜索索引服务(196)是硬件、软件或硬件和软件的集合,其被配置为索引存储在基于云的数据仓库(192)中的数据以促进由搜索模块(126)进行的搜索。尽管搜索索引服务(196)被显示为独立于数据访问计算系统(152)和基于云的数据仓库(192)的实体,但应理解的是搜索索引服务(196)可以替代地至少部分地通过数据访问计算系统(152)和/或基于云的数据仓库(192)的模块、部件或服务来实现。
搜索索引服务(196)被配置为生成描述存储在基于云的数据仓库(192)中的数据的索引(202)。然后将由搜索模块(126)提供的搜索查询应用于索引(202)以识别与搜索查询相关的数据。搜索索引服务(196)可以被配置为响应于数据对象的创建、数据对象的移除、数据对象在文件系统内的移动、以预定义的时间间隔或响应于其他事件或标准,爬行或以其他方式更新基于云的数据仓库(192)的索引(202)。
索引(202)中的每个条目可以对应于存储在基于云的数据仓库(192)中的数据项(例如,表格、视图、工作表或存储数据的其他呈现、文件、文件夹等)。索引(202)中的每个条目可以包括唯一标识基于云的数据仓库(192)中的对应数据对象的对象标识符。索引(202)中的每个条目还可以包括一个或多个关键字或描述用于与搜索查询中包括的搜索项匹配的对应数据对象的其他元数据。
索引(202)中的每个条目还可以包括对应数据对象的对象谱系。例如,假设数据对象根据层级结构(例如,分层文件系统)存储在基于云的数据仓库中。每个数据对象可以具有一个或多个父数据对象。例如,嵌套在一个或多个文件夹中的文件数据对象将具有一个或多个文件夹数据对象作为父对象。每个数据对象还可以具有一个或多个子数据对象。例如,文件夹数据对象可以具有一个或多个文件数据对象或一个或多个其他文件夹数据对象作为子对象。作为另一个示例,文件数据对象可以没有子数据对象。对于给定数据对象,索引(202)条目的对象谱系可以指示该给定数据对象的每个父数据对象。索引(202)条目的对象谱系还可以指示给定数据对象的每个子数据对象。对象谱系可以表示为一个或多个对象标识符。
数据库(206)是存储在基于云的数据仓库(192)和数据管理系统中的数据的集合。管理系统可以接收诸如结构查询语言(SQL)查询之类的数据库查询,并用数据集响应查询。数据库(206)可以维护成组的用户并且针对特定用户或用户组对数据的特定部分(例如,表格、视图、文件、文件夹等)的访问强制执行某些授权(例如,许可)。例如,特定表格可以具有允许某些用户或用户组从表格中读取数据的授权,允许某些用户或用户组添加、删除或修改表格中的行的授权等等。授权可以指示子或叶数据对象(例如,没有关联子数据对象的文件数据对象)。授权还可以指示与一个或多个子数据对象相关联的父数据对象(例如,具有一个或多个文件夹数据对象或文件数据对象作为子对象的文件夹数据对象)。因此,允许访问父数据对象的授权也将授权对其子数据对象的访问,而无需显式标识对其每个子数据对象的授权。
类似地,数据访问计算系统(152)也可以维护它自己的成组的用户并且强制执行它自己的授权。例如,数据访问计算系统(152)可以强制通过数据访问计算系统(152)访问数据库(206)中的特定表格或视图。数据访问计算系统(152)还可以强制访问提供给用户的分析工具以分析存储在数据库(206)(例如,工作表、用户界面、仪表板等)中的数据。由于基于云的数据仓库(192)和数据分析计算系统(152)都可以维护它们自己的成组的用户和授权,因此数据访问计算系统(152)中给定用户账户的授权应反映基于云的数据仓库(192)中的相应用户账户的授权。例如,数据访问计算系统(152)中的用户账户的许可可以与基于云的数据仓库(192)中的对应用户账户同步。
搜索模块(126)被配置为向搜索索引服务(196)提交搜索查询并且从搜索索引服务(196)接收响应于搜索查询的搜索结果。搜索结果可以包括响应于搜索查询的索引(202)的子集。搜索查询可以包括一个或多个搜索项(例如,关键字、短语等)。因此,搜索结果可以包括具有与所有或部分搜索项匹配的关键字或元数据的索引(202)条目的子集。可以从(例如,与数据访问计算系统(152)的用户账户相关联的)用户接收搜索项。
为了通过响应于搜索查询返回所有搜索结果来减少将使用的网络带宽和处理资源,搜索索引服务(196)可以被配置为响应于搜索查询返回搜索结果的分页。搜索结果的分页是小于或等于搜索结果的预定义阈值的多个搜索结果。例如,假设100个搜索结果的分页阈值,搜索索引服务(196)可以响应于搜索查询返回前100个搜索结果。搜索模块(126)然后可以提交对搜索结果的下一分页的请求,并且响应于最初提交的搜索查询接收接下来100个搜索结果。
如上所述,可以向数据访问计算系统(152)的用户账户分配指示特定数据对象可由用户账户访问的授权。因此,搜索索引(202)的用户账户可能无法访问索引(202)中列出的所有数据对象。指示不可访问的数据对象的搜索结果将不利于用户体验。要求搜索模块(126)将搜索结果过滤后再呈现给用户也存在几个缺点。额外的计算负担将放在数据访问计算系统(152)上以过滤搜索结果。在实现搜索结果分页的情况下,搜索模块(126)可能需要重复请求和过滤搜索结果,直到通过过滤的搜索结果的数量满足分页阈值。
为了解决这些和其他缺点,搜索模块(126)可以为用户确定基于云的数据仓库(192)的一个或多个访问授权,每个访问授权包括用户可访问的数据对象的对象标识符。例如,搜索模块(126)可以响应于从用户接收到一个或多个搜索项来确定一个或多个访问授权。确定一个或多个访问授权可以包括检索对于用户的用户账户或包括该用户账户的角色或组的一个或多个访问授权的列表。所确定的一个或多个访问授权可以被表达或编码为对象标识符的列表。
然后,搜索模块(126)可以基于每个访问授权而生成包括一个或多个搜索项(例如,从用户接收的一个或多个搜索项)和过滤器的搜索查询。例如,生成搜索查询可以包括:生成包括一个或多个搜索项以及作为过滤器的一个或多个访问授权的每个对象标识符的搜索查询。因此,所得到的搜索查询包括每个数据对象的对象标识符,对于每个数据对象的授权已分配给用户账户。
例如,假设用户具有对数据对象“A”、“C”和“E”的访问授权。进一步假设用户提供了搜索项“Dekalb County”。搜索模块(126)然后将生成搜索查询,该搜索查询包括搜索项“Dekalb County”和用户对其具有访问授权的每个数据对象(例如,数据对象“A”、“C”和“E”)的对象标识符。
然后搜索模块(126)可以将搜索查询发送到搜索索引服务(192),该搜索索引服务(192)被配置为维护基于云的数据仓库(196)的索引(202)。因此,搜索索引服务接收将应用于索引的搜索项和用户对其具有访问授权的每个数据对象的对象标识符。响应于搜索查询,搜索模块(126)可以接收响应于一个或多个搜索项并且包括在基于过滤器的范围中的第一搜索结果。响应于一个或多个搜索项的搜索结果可以包括索引(202)的条目,该条目包括与一个或多个搜索项匹配的关键字或元数据,具有相对于满足阈值的一个或多个搜索项的一定程度的相关性或相似性,或者以其他方式响应一个或多个搜索项。
该范围可以包括一个或多个访问授权的每个对象标识符(例如,包括在搜索查询的过滤器中)和一个或多个访问授权中标识的每个数据对象的对象谱系(例如,在搜索查询的过滤器中标识的每个数据对象的对象谱系)。因此,当条目包括与过滤器中的对象标识符匹配的索引对象标识符(例如,对于用户账户的一个或多个访问授权)或包括包含过滤器中的对象标识符的对象谱系时,搜索结果(例如,索引(202)条目)被认为在该范围内。换言之,索引(202)条目在其对应的数据对象在过滤器中被显式标识时,或者在对应的数据对象的父数据对象在过滤器中被标识时是在该范围内。
例如,搜索索引服务(196)可以被配置为从索引(202)的多个索引(202)条目中识别响应于一个或多个搜索项并且包括以下项的一个或多个索引(202)条目:包括在过滤器中的索引对象标识符或至少部分地包括在过滤器中的对象谱系。搜索索引服务(196)然后可以基于所识别的一个或多个条目来生成第一搜索结果。
作为示例,假设数据对象“A”、“B”、“C”和“D”的索引(202)条目响应于来自用户的搜索查询中包括的搜索项。假设搜索查询的过滤器识别数据对象“A”、“C”和“E”。换言之,用户拥有对数据对象“A”、“C”和“E”的访问授权。在该示例中,数据对象“A”和“C”的索引(202)条目将被包括在搜索结果中,因为它们都响应于搜索查询的搜索项并且包括在基于过滤器的范围内。
继续上面的示例,假设数据对象“B”的索引(202)条目还包括“E->F”的对象谱系,表明数据对象“B”是父数据对象“E”的子对象,数据对象“E”本身是父数据对象“F”的子对象。尽管数据对象“B”未在过滤器中显式指示,但数据对象“B”的索引(202)条目仍将包括在该范围内,因为其对象谱系包括在过滤器中包括的数据对象标识符(数据对象“E”)。
进一步继续该示例,假设数据对象“D”的索引(202)条目还包括“G->F”的对象谱系,表明数据对象“D”是父数据对象“G”的子对象,数据对象“G”本身是父数据对象“F”的子对象。此处,数据对象“D”的索引(202)条目将不包括在该范围内,因为其索引对象标识符和其对象谱系中的任何对象标识符都不包括在过滤器中。
第一搜索结果可以包括搜索结果的第一分页。因此,搜索模块(126)可以请求搜索结果的第二分页并且接收包括搜索结果的第二分页的第二搜索结果。第二搜索结果也响应于一个或多个搜索项并且包括在基于过滤器的范围内。例如,搜索索引服务(196)可以被配置成响应于一个或多个搜索项并且包括在基于过滤器的范围中来生成搜索结果的语料库。然后,搜索索引服务(196)可以响应于搜索查询,将第一搜索结果(例如,搜索结果的第一分页)作为搜索结果的语料库的子集返回。搜索索引服务(196)然后可以响应于来自搜索模块(126)的请求返回搜索结果的附加子集(例如,分页),而无需重新生成搜索结果的语料库或执行附加的搜索操作。
为了进一步解释,图3示出了说明根据本发明的实施方案的使用数据仓库授权进行搜索的示例性方法的流程图,该方法包括为用户确定(302)对基于云的数据仓库(192)的一个或多个访问授权,每个访问授权包括用户可访问的数据对象的对象标识符。例如,搜索模块(126)可以响应于从用户接收到一个或多个搜索项来确定(302)一个或多个访问授权。确定一个或多个访问授权可以包括检索用户的用户账户或包括用户账户的角色或组的一个或多个访问授权的列表。所确定的一个或多个访问授权可以被表达或编码为对象标识符的列表,或另一种数据结构。
图3的方法还包括生成(304)搜索查询(305),该搜索查询(305)包括一个或多个搜索项(例如,从用户接收的一个或多个搜索项)和基于对该用户的每个访问授权的过滤器。图3的方法还包括将搜索查询(305)发送(306)到搜索索引服务(192),该搜索索引服务(192)被配置为维护基于云的数据仓库(196)的索引(202)。索引(202)中的每个条目可以对应于存储在基于云的数据仓库(192)中的数据项(例如,表格、视图、工作表或存储的数据的其他呈现、文件、文件夹等)。索引(202)中的每个条目可以包括唯一标识基于云的数据仓库(192)中的对应数据对象的对象标识符。索引(202)中的每个条目还可以包括描述用于与搜索查询中包括的搜索项匹配的对应数据对象的一个或多个关键字或其他元数据。
索引(202)中的每个条目还可以包括对应数据对象的对象谱系。例如,假设数据对象根据层级结构(例如,分级文件系统)存储在基于云的数据仓库中。每个数据对象可以具有一个或多个父数据对象。例如,嵌套在一个或多个文件夹中的文件数据对象将具有一个或多个文件夹数据对象作为父对象。每个数据对象还可以具有一个或多个子数据对象。例如,文件夹数据对象可以具有一个或多个文件数据对象或一个或多个其他文件夹数据对象作为子对象。作为另一示例,文件数据对象可以没有子数据对象。对于给定数据对象,索引(202)条目的对象谱系可以指示该给定数据对象的每个父数据对象。索引(202)条目的对象谱系还可以指示给定数据对象的每个子数据对象。对象谱系可以表示为一个或多个对象标识符。
图3的方法还包括响应于搜索查询(305)接收(308)响应于一个或多个搜索项并且包括在基于过滤器的范围中的第一搜索结果(309)。响应于一个或多个搜索项的搜索结果可以包括索引(202)的条目,该条目包括与一个或多个搜索项匹配的关键字或元数据,具有相对于满足阈值的一个或多个搜索项的一定程度的相关性或相似性,或者以其他方式响应一个或多个搜索项。
过滤器可以包括一个或多个访问授权的每个数据对象标识符。然后,该范围可以包括一个或多个访问授权的每个对象标识符(例如,包括在搜索查询的过滤器中)和一个或多个访问授权中标识的每个数据对象的对象谱系(例如,在搜索查询的过滤器中标识的每个数据对象的对象谱系)。因此,当条目包括与过滤器中的对象标识符匹配的索引对象标识符(例如,对于用户账户的一个或多个访问授权)或包括包含过滤器中的对象标识符的对象谱系时,搜索结果(例如,索引(202)条目)被认为在该范围内。换言之,索引(202)条目在其对应的数据对象在过滤器中被显式标识时,或者在对应的数据对象的父数据对象在过滤器中被标识时是在该范围内。
例如,搜索索引服务(196)可以被配置为从索引(202)的多个索引(202)条目中识别响应于一个或多个搜索项并且包括以下项的一个或多个索引(202)条目:包括在过滤器中的索引对象标识符或至少部分地包括在过滤器中的对象谱系。搜索索引服务(196)然后可以基于所识别的一个或多个条目来生成第一搜索结果(309)。
作为示例,假设数据对象“A”、“B”、“C”和“D”的索引(202)条目响应于来自用户的搜索查询中包括的搜索项。假设搜索查询的过滤器识别数据对象“A”、“C”和“E”。换言之,用户拥有对数据对象“A”、“C”和“E”的访问授权。在该示例中,数据对象“A”和“C”的索引(202)条目将被包括在搜索结果中,因为它们都响应于搜索查询的搜索项并且包括在基于过滤器的范围内。
继续上面的示例,假设数据对象“B”的索引(202)条目还包括“E->F”的对象谱系,表明数据对象“B”是父数据对象“E”的子对象,数据对象“E”本身是父数据对象“F”的子对象。尽管数据对象“B”未在过滤器中显式指示,但数据对象“B”的索引(202)条目仍将包括在该范围内,因为其对象谱系包括在过滤器中包括的数据对象标识符(数据对象“E”)。
进一步继续该示例,假设数据对象“D”的索引(202)条目还包括“G->F”的对象谱系,表明数据对象“D”是父数据对象“G”的子对象,数据对象“G”本身就是父数据对象“F”的子对象。此处,数据对象“D”的索引(202)条目将不包括在该范围内,因为其索引对象标识符和其对象谱系中的任何对象标识符都不包括在过滤器中。
为了进一步解释,图4示出了说明根据本发明的实施方案的使用数据仓库授权进行搜索的示例性方法的流程图,该方法包括:为用户确定(302)对基于云的数据仓库(192)的一个或多个访问授权,每个访问授权包括用户可访问的数据对象的对象标识符;基于每个访问授权生成(304)包括一个或多个搜索项和过滤器的搜索查询(305);将搜索查询(305)发送(306)到搜索索引服务(192),该搜索索引服务(192)被配置为维护基于云的数据仓库(196)的索引(202);以及响应于搜索查询(305),接收(308)响应于一个或多个搜索项并且包括在基于过滤器的范围内的第一搜索结果。
图4的方法与图3的不同之处在于,基于每个访问授权生成(304)包括一个或多个搜索项和过滤器的搜索查询(305)包括:生成(402)包括一个或多个搜索项以及作为过滤器的一个或多个访问授权的每个对象标识符的搜索查询。例如,假设用户具有对数据对象“A”、“C”和“E”的访问授权。进一步假设用户提供了搜索项“Dekalb County”。搜索模块(126)然后将生成搜索查询,该搜索查询包括搜索项“Dekalb County”和用户对其具有访问授权的每个数据对象(例如,数据对象“A”、“C”和“E”)的对象标识符。然后,该范围可以包括一个或多个访问授权的每个对象标识符(例如,包括在搜索查询的过滤器中)和一个或多个访问授权中标识的每个数据对象的对象谱系(例如,在搜索查询的过滤器中标识的每个数据对象的对象谱系)。因此,搜索索引范围接收搜索查询(305),该搜索查询(305)包括搜索项和基于云的数据仓库(196)中的数据对象(用户对该数据对象具有显式访问授权)的每个对象标识符的列表。应理解,用户还可以对具有父数据对象(用户对该父数据对象具有显式访问授权)的数据对象具有隐式访问授权。
为了进一步解释,图5示出了说明根据本发明的实施方案的使用数据仓库授权进行搜索的示例性方法的流程图,该方法包括:为用户确定(302)对基于云的数据仓库(192)的一个或多个访问授权,每个访问授权包括用户可访问的数据对象的对象标识符;基于每个访问授权生成(304)包括一个或多个搜索项和过滤器的搜索查询(305);将搜索查询(305)发送(306)到搜索索引服务(192),该搜索索引服务(192)被配置为维护基于云的数据仓库(196)的索引(202);以及响应于搜索查询(305),接收(308)响应于一个或多个搜索项并且包括在基于过滤器的范围内的第一搜索结果。
图5的方法与图3的不同之处在于,图5的方法包括请求(502)(例如,由搜索模块(126)从搜索索引服务(192)请求搜索结果的第二分页)。例如,第一搜索结果(309)可以包括搜索结果的第一分页。搜索结果的分页是搜索结果的子集,该子集包括小于或等于分页阈值的多个搜索结果。例如,假设100个搜索结果的分页阈值,第一搜索结果(309)可以包括由搜索索引服务(192)生成的搜索结果的语料库的前100个搜索结果。然后,对搜索结果的第二分页的请求可以包括对接下来最多100个搜索结果的请求。
图5的方法还包括接收(504)包括搜索结果的第二分页的第二搜索结果(505)。因此,可以由搜索模块(126)从搜索索引服务(192)请求和接收搜索结果的附加分页,而无需重新生成搜索结果的语料库或执行附加的搜索操作。
为了进一步解释,图6示出了说明根据本发明的实施方案的使用数据仓库授权进行搜索的示例性方法的流程图,该方法包括:为用户确定(302)对基于云的数据仓库(192)的一个或多个访问授权,每个访问授权包括用户可访问的数据对象的对象标识符;基于每个访问授权生成(304)包括一个或多个搜索项和过滤器的搜索查询(305);将搜索查询(305)发送(306)到搜索索引服务(192),该搜索索引服务(192)被配置为维护基于云的数据仓库(196)的索引(202);以及响应于搜索查询(305),接收(308)响应于一个或多个搜索项并且包括在基于过滤器的范围内的第一搜索结果。
图6的方法与图3的不同之处在于,图6的方法包括基于数据对象的更新(例如,通过搜索索引服务(196))来更新(602)索引(202)。数据对象的更新可以包括在基于云的数据仓库(196)中添加、移除或修改数据对象。例如,响应于修改数据对象,可以更新对应的索引(202)条目以包括描述数据对象的修改的关键字或元数据。作为另一示例,响应于移除数据对象,可以移除对应的索引(202)条目。作为另一示例,响应于添加数据对象,可以创建索引(202)条目。
对数据对象的更新还可以包括数据对象在对象谱系中的重新定位。例如,数据对象可以从文件系统中的一个文件夹或位置移动到该文件系统中的另一个文件夹或位置。因此,可以更新对应索引(202)条目的对象谱系以反映用作重新定位的数据对象的父数据对象的数据对象。重新定位的数据对象的子数据对象的索引(202)条目的对象谱系也可以被更新以反映数据对象的重新定位。
鉴于上述解释,读者将认识到根据本发明的实施方案使用数据仓库授权进行搜索的好处包括:
·通过确保搜索结果反映用户的访问授权来改进计算系统的操作。
·通过允许将单个搜索查询提供给搜索索引服务以检索过滤的搜索结果来改进计算系统的操作。
·通过允许搜索索引服务承担基于访问授权过滤搜索结果的计算负担来改进计算系统的操作。
本发明的示例性的实施方案主要在用于使用数据仓库授权进行搜索的全功能计算机系统的上下文中描述。然而,本领域的技术人员将认识到,本发明也可以体现在设置在计算机可读存储介质上的计算机程序产品中,以与任何合适的数据处理系统一起使用。这样的计算机可读存储介质可以是用于机器可读信息的任何存储介质,包括磁性介质、光学介质或其它合适的介质。这样的介质的示例包括硬盘驱动器中的磁盘或软盘,用于光驱的光盘,磁带,以及本领域技术人员所想到的其它介质。本领域技术人员将立即认识到,具有适当编程装置的任何计算机系统将能够执行体现在计算机程序产品中的本发明的方法的步骤。本领域的技术人员还将认识到,尽管本说明书中描述的一些示例性的实施方案是针对在计算机硬件上安装和执行的软件,然而,实现为固件或硬件的替代的实施方案也完全在本发明的范围之内。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括其上具有用于使处理器执行本发明的各方面的计算机可读程序指令的计算机可读存储介质(或媒介)。
计算机可读存储介质可以是有形设备,其可以保留和存储由指令执行设备使用的指令。所述计算机可读存储介质可以是,例如,但不限于,电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备、或前述设备的任何适当组合。计算机可读存储介质的更具体示例的非穷举列表包括以下项:便携式计算机软盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式光盘只读存储器(CD-ROM)、数字通用盘(DVD),存储棒、软盘、例如在其上记录有指令的打孔卡或凹槽中的凸起结构之类的机械编码设备、以及上述的任何适当组合。如本文所使用的,计算机可读存储介质,不应被解释为本身是瞬时信号,例如无线电波或其它自由传播的电磁波,通过波导或其它传输介质传播的电磁波(例如,通过光纤电缆的光脉冲),或通过导线传输的电信号。
这里描述的计算机可读程序指令可以从计算机可读存储介质下载到相应的计算/处理设备,或者经由网络(例如因特网、局域网、广域网和/或无线网络)下载到外部计算机或外部存储设备。该网络可以包括铜传输电缆、光传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配器卡或网络接口从网络接收计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。
用于执行本发明操作的计算机可读程序指令可以是汇编器指令,指令集体系结构(ISA)指令,机器指令,机器相关指令,微码,固件指令,状态设置数据,或者用一种或多种编程语言(包括面向对象的编程语言,例如Smalltalk,C++等)和常规过程编程语言(例如,“C”编程语言或类似编程语言)的任意组合来编写的源代码或目标代码。计算机可读程序指令可以完全在用户的计算机上执行,作为独立的软件包,部分在用户的计算机上执行,部分在用户的计算机上且部分在远程计算机上执行,或全部在远程计算机或服务器上执行。在后一种情况下,远程计算机可以通过任何类型的网络(包括局域网(LAN)或广域网(WAN))连接到用户的计算机,或者可以进行到外部计算机的连接(例如,通过使用互联网服务提供商的互联网)。在一些实施方案中,包括(例如)可编程逻辑电路,现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA)在内的电子电路可以通过利用计算机可读程序指令的状态信息来执行计算机可读程序指令,以使电子电路个性化,从而执行本发明的各个方面。
参考根据本发明的实施方案的方法、装置(系统)和计算机程序产品的流程图和/或框图来描述本发明的各方面。应当理解,流程图图示和/或框图的每个框,以及流程图图示和/或框图中的框的组合,可以通过计算机可读程序指令来实现。
这些计算机可读程序指令可以被提供给通用计算机的处理器,专用计算机或其它可编程数据处理装置,以产生机器,使得经由计算机的处理器或其它可编程数据处理装置执行的指令创建用于实现流程图和/或框图的一个或多个框中指定的功能/动作的装置。这些计算机可读程序指令也可以被存储在能够引导计算机、可编程数据处理设备和/或以特定方式工作的其它设备的计算机可读存储介质中,使得其中存储有指令的计算机可读存储介质包括制造的产品,该制造的产品包括实现流程图和/或框图的一个或多个框中指定的功能/动作的方面的指令。
计算机可读程序指令也可以加载到计算机,其它可编程数据处理装置,或使一系列操作步骤在计算机上执行的其它设备,用于产生计算机实现的过程的其它可编程设备或其它装置上,使得在计算机、其它可编程装置或其它设备上执行的指令实现流程图和/或框图的一或多个框中指定的功能/动作。
图中的流程图和框图示出了根据本发明的各种的实施方案的系统、方法和计算机程序产品的可能实现方式的体系结构、功能和操作。在这点上,流程图或框图中的每个框可以表示指令的模块、段或部分,其包括用于实现指定逻辑功能的一个或多个可执行指令。在一些替代的实现方式中,框中指出的功能可以不按照图中指出的顺序发生。例如,实际上根据所涉及的功能,连续示出的两个框可以基本上同时执行,或者这些框有时可以以相反的顺序执行。还将注意到,框图和/或流程图图示的每个框,以及框图和/或流程图图示中的框的组合,可以由执行指定功能或动作或者执行专用硬件和计算机指令的组合的基于专用硬件的系统来实现。
从前面的描述中应当理解,在不偏离本发明的真实精神的情况下,可以在本发明的各种实施方案中进行修改和改变。本说明书中的描述仅是为了说明的目的,而不应被解释为限制性的。本发明的范围仅由所附权利要求的语言限定。
Claims (20)
1.一种使用数据仓库授权进行搜索的方法,所述方法包括:
为用户确定对于基于云的数据仓库的一个或多个访问授权,所述访问授权中的每一个包括所述用户能访问的数据对象的对象标识符;
基于所述访问授权中的每一个生成包括一个或多个搜索项和过滤器的搜索查询;
将所述搜索查询发送到被配置为维护所述基于云的数据仓库的索引的搜索索引服务;以及
响应于所述搜索查询接收响应于所述一个或多个搜索项并且包括在基于所述过滤器的范围中的第一搜索结果。
2.根据权利要求1所述的方法,其中,所述范围包括所述一个或多个访问授权的每个对象标识符以及在所述一个或多个访问授权中标识的每个数据对象的对象谱系。
3.根据权利要求1所述的方法,其还包括:
由所述搜索索引服务从所述索引的多个索引条目中识别响应于所述一个或多个搜索项并且包括以下项的一个或多个索引条目:包括在所述过滤器中的索引的对象标识符或至少部分包括在所述过滤器中的对象谱系;以及
基于所识别的所述一个或多个索引条目生成所述搜索结果。
4.根据权利要求1所述的方法,其中生成所述搜索查询包括:生成包括所述一个或多个搜索项以及作为所述过滤器的所述一个或多个访问授权的每个对象标识符的所述搜索查询。
5.根据权利要求1所述的方法,其中,所述第一搜索结果包括搜索结果的第一分页,所述方法还包括:
请求搜索结果的第二分页;以及
接收包括所述搜索结果的所述第二分页的第二搜索结果。
6.根据权利要求1所述的方法,其还包括响应于数据对象的更新,通过所述搜索索引服务更新所述索引。
7.根据权利要求6所述的方法,其中,所述更新包括所述数据对象的修改或所述数据对象在对象谱系中的重新定位中的一者或多者。
8.一种使用数据仓库授权进行搜索的装置,所述装置包括计算机处理器,计算机存储器能操作地耦合到所述计算机处理器,所述计算机存储器在其中设置有计算机程序指令,所述计算机程序指令当由该计算机处理器执行时使所述装置执行以下步骤:
为用户确定对于基于云的数据仓库的一个或多个访问授权,所述访问授权中的每一个包括所述用户能访问的数据对象的对象标识符;
基于所述访问授权中的每一个生成包括一个或多个搜索项和过滤器的搜索查询;
将所述搜索查询发送到被配置为维护所述基于云的数据仓库的索引的搜索索引服务;以及
响应于所述搜索查询接收响应于所述一个或多个搜索项并且包括在基于所述过滤器的范围中的第一搜索结果。
9.根据权利要求8所述的装置,其中,所述范围包括所述一个或多个访问授权的每个对象标识符以及在所述一个或多个访问授权中标识的每个数据对象的对象谱系。
10.根据权利要求8所述的装置,其中所述步骤还包括:
由所述搜索索引服务从所述索引的多个索引条目中识别响应于所述一个或多个搜索项并且包括以下项的一个或多个索引条目:包括在所述过滤器中的索引的对象标识符或至少部分包括在所述过滤器中的对象谱系;以及
基于所识别的所述一个或多个索引条目生成所述搜索结果。
11.根据权利要求8所述的装置,其中生成所述搜索查询包括:生成包括所述一个或多个搜索项以及作为所述过滤器的所述一个或多个访问授权的每个对象标识符的所述搜索查询。
12.根据权利要求8所述的装置,其中,所述第一搜索结果包括搜索结果的第一分页,所述步骤还包括:
请求搜索结果的第二分页;以及
接收包括所述搜索结果的所述第二分页的第二搜索结果。
13.根据权利要求8所述的装置,其中所述步骤还包括响应于数据对象的更新,通过所述搜索索引服务更新所述索引。
14.根据权利要求13所述的装置,其中,所述更新包括所述数据对象的修改或所述数据对象在对象谱系中的重新定位中的一者或多者。
15.一种使用数据仓库授权进行搜索的计算机程序产品,所述计算机程序产品设置在计算机可读介质上,所述计算机程序产品包括计算机程序指令,所述计算机程序指令在执行时使计算机执行以下步骤:
为用户确定对于基于云的数据仓库的一个或多个访问授权,所述访问授权中的每一个包括所述用户能访问的数据对象的对象标识符;
基于所述访问授权中的每一个生成包括一个或多个搜索项和过滤器的搜索查询;
将所述搜索查询发送到被配置为维护所述基于云的数据仓库的索引的搜索索引服务;以及
响应于所述搜索查询接收响应于所述一个或多个搜索项并且包括在基于所述过滤器的范围中的第一搜索结果。
16.根据权利要求15所述的计算机程序产品,其中,所述范围包括所述一个或多个访问授权的每个对象标识符以及在所述一个或多个访问授权中标识的每个数据对象的对象谱系。
17.根据权利要求15所述的计算机程序产品,其中所述步骤还包括:
由所述搜索索引服务从所述索引的多个索引条目中识别响应于所述一个或多个搜索项并且包括以下项的一个或多个索引条目:包括在所述过滤器中的索引的对象标识符或至少部分包括在所述过滤器中的对象谱系;以及
基于所识别的所述一个或多个索引条目生成所述搜索结果。
18.根据权利要求15所述的计算机程序产品,其中生成所述搜索查询包括:生成包括所述一个或多个搜索项以及作为所述过滤器的所述一个或多个访问授权的每个对象标识符的所述搜索查询。
19.根据权利要求15所述的计算机程序产品,其中,所述第一搜索结果包括搜索结果的第一分页,所述步骤还包括:
请求搜索结果的第二分页;以及
接收包括所述搜索结果的所述第二分页的第二搜索结果。
20.根据权利要求15所述的计算机程序产品,其中所述步骤还包括响应于数据对象的更新,通过所述搜索索引服务更新所述索引。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962867381P | 2019-06-27 | 2019-06-27 | |
US62/867,381 | 2019-06-27 | ||
PCT/US2020/039869 WO2020264332A1 (en) | 2019-06-27 | 2020-06-26 | Search using data warehouse grants |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114286996A true CN114286996A (zh) | 2022-04-05 |
Family
ID=71784641
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080060596.8A Pending CN114286996A (zh) | 2019-06-27 | 2020-06-26 | 使用数据仓库授权进行搜索 |
Country Status (4)
Country | Link |
---|---|
US (2) | US11361001B2 (zh) |
EP (1) | EP3973408A1 (zh) |
CN (1) | CN114286996A (zh) |
WO (1) | WO2020264332A1 (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101218590A (zh) * | 2005-07-14 | 2008-07-09 | 国际商业机器公司 | 强制实行对于索引文档的本地访问控制 |
CN101221584A (zh) * | 2008-02-01 | 2008-07-16 | 北大方正集团有限公司 | 搜索引擎、搜索方法和系统 |
CN101320373A (zh) * | 2008-06-13 | 2008-12-10 | 华中科技大学 | 网站支撑数据库安全搜索引擎系统 |
CN102968501A (zh) * | 2012-12-07 | 2013-03-13 | 福建亿榕信息技术有限公司 | 一种通用的全文搜索方法 |
US9904602B1 (en) * | 2014-12-22 | 2018-02-27 | EMC IP Holding Company LLC | Secure search |
CN108009444A (zh) * | 2017-12-15 | 2018-05-08 | 广州市齐明软件科技有限公司 | 全文搜索的权限控制方法、装置与计算机可读存储介质 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7110976B2 (en) * | 2000-08-22 | 2006-09-19 | Scott Allen Heimermann | Centralized, requisition-driven, order formulating, e-procurement method using reverse auction |
US20070005564A1 (en) * | 2005-06-29 | 2007-01-04 | Mark Zehner | Method and system for performing multi-dimensional searches |
US8655914B2 (en) * | 2006-10-17 | 2014-02-18 | Commvault Systems, Inc. | System and method for storage operation access security |
WO2008052059A2 (en) * | 2006-10-25 | 2008-05-02 | Gomez, Inc. | Methods and apparatus for real user monitoring |
US8239351B2 (en) * | 2007-06-07 | 2012-08-07 | Apple Inc. | Methods and systems for managing permissions data |
US8078624B2 (en) * | 2007-12-20 | 2011-12-13 | International Business Machines Corporation | Content searching for portals having secure content |
US8612439B2 (en) * | 2009-06-30 | 2013-12-17 | Commvault Systems, Inc. | Performing data storage operations in a cloud storage environment, including searching, encryption and indexing |
US8667456B1 (en) * | 2011-04-20 | 2014-03-04 | Google Inc. | Cloud-based indexing for integrated development environments |
US20120304247A1 (en) * | 2011-05-25 | 2012-11-29 | John Badger | System and process for hierarchical tagging with permissions |
US20130042008A1 (en) * | 2011-08-12 | 2013-02-14 | Splunk Inc. | Elastic scaling of data volume |
US20130110827A1 (en) * | 2011-10-26 | 2013-05-02 | Microsoft Corporation | Relevance of name and other search queries with social network feature |
US20130212081A1 (en) * | 2012-02-13 | 2013-08-15 | Microsoft Corporation | Identifying additional documents related to an entity in an entity graph |
US9355384B2 (en) * | 2012-03-19 | 2016-05-31 | David W. Victor | Providing access to documents requiring a non-disclosure agreement (NDA) in an online document sharing community |
US10607219B2 (en) * | 2012-06-11 | 2020-03-31 | Visa International Service Association | Systems and methods to provide privacy protection for activities related to transactions |
US9158801B2 (en) * | 2012-07-27 | 2015-10-13 | Facebook, Inc. | Indexing based on object type |
US9189557B2 (en) * | 2013-03-11 | 2015-11-17 | Xerox Corporation | Language-oriented focused crawling using transliteration based meta-features |
US9514217B2 (en) * | 2013-05-31 | 2016-12-06 | Linkedin Corporation | Message index subdivided based on time intervals |
US20140379631A1 (en) * | 2013-06-25 | 2014-12-25 | Linkedln Corporation | Transactional key-value database with searchable indexes |
US10122714B2 (en) * | 2013-08-01 | 2018-11-06 | Bitglass, Inc. | Secure user credential access system |
US9953011B1 (en) * | 2013-09-26 | 2018-04-24 | Amazon Technologies, Inc. | Dynamically paginated user interface |
US20170083914A1 (en) * | 2015-09-17 | 2017-03-23 | Mastercard International Incorporated | Method and system for managing authentication services customer data |
-
2020
- 2020-06-26 CN CN202080060596.8A patent/CN114286996A/zh active Pending
- 2020-06-26 WO PCT/US2020/039869 patent/WO2020264332A1/en unknown
- 2020-06-26 EP EP20745356.4A patent/EP3973408A1/en active Pending
- 2020-06-26 US US16/913,103 patent/US11361001B2/en active Active
-
2022
- 2022-05-26 US US17/826,152 patent/US20220284044A1/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101218590A (zh) * | 2005-07-14 | 2008-07-09 | 国际商业机器公司 | 强制实行对于索引文档的本地访问控制 |
CN101221584A (zh) * | 2008-02-01 | 2008-07-16 | 北大方正集团有限公司 | 搜索引擎、搜索方法和系统 |
CN101320373A (zh) * | 2008-06-13 | 2008-12-10 | 华中科技大学 | 网站支撑数据库安全搜索引擎系统 |
CN102968501A (zh) * | 2012-12-07 | 2013-03-13 | 福建亿榕信息技术有限公司 | 一种通用的全文搜索方法 |
US9904602B1 (en) * | 2014-12-22 | 2018-02-27 | EMC IP Holding Company LLC | Secure search |
CN108009444A (zh) * | 2017-12-15 | 2018-05-08 | 广州市齐明软件科技有限公司 | 全文搜索的权限控制方法、装置与计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2020264332A1 (en) | 2020-12-30 |
EP3973408A1 (en) | 2022-03-30 |
US20220284044A1 (en) | 2022-09-08 |
US20200409979A1 (en) | 2020-12-31 |
US11361001B2 (en) | 2022-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10754835B2 (en) | High-efficiency deduplication module of a database-management system | |
US11074242B2 (en) | Bulk data insertion in analytical databases | |
US11093461B2 (en) | Method for computing distinct values in analytical databases | |
US11593375B2 (en) | Dashboard loading from a cloud-based data warehouse cache | |
US20170371978A1 (en) | Method and apparatus for managing a document index | |
US20170109407A1 (en) | Joining operations in document oriented databases | |
US11860873B2 (en) | Dashboard loading using a filtering query from a cloud-based data warehouse cache | |
CN114443701A (zh) | 数据流处理方法、电子设备和计算机程序产品 | |
US9135253B2 (en) | Simulating accesses for archived content | |
US11361001B2 (en) | Search using data warehouse grants | |
US11487768B2 (en) | Generating search results utilizing access control | |
US10839030B2 (en) | Persistent filter content refinement system | |
US10824671B2 (en) | Organizing multiple versions of content | |
US11494400B2 (en) | Servicing database requests using subsets of canonicalized tables | |
US11360981B2 (en) | Servicing database requests using canonicalized tables | |
US11360960B2 (en) | Servicing database requests using derivations of canonicalized tables | |
US20230153295A1 (en) | Prefetching query results using expanded queries | |
CN116894022A (zh) | 利用结构化审计日志来提高数据库审计的准确性和效率 | |
CN114341836A (zh) | 在基于云的数据仓库之间共享数据 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20220405 |