WO2020044935A1 - 検索装置、検索方法及び検索プログラム - Google Patents

検索装置、検索方法及び検索プログラム Download PDF

Info

Publication number
WO2020044935A1
WO2020044935A1 PCT/JP2019/030286 JP2019030286W WO2020044935A1 WO 2020044935 A1 WO2020044935 A1 WO 2020044935A1 JP 2019030286 W JP2019030286 W JP 2019030286W WO 2020044935 A1 WO2020044935 A1 WO 2020044935A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
stored
user
source
search
Prior art date
Application number
PCT/JP2019/030286
Other languages
English (en)
French (fr)
Inventor
明子 吉田
清孝 粕渕
信貴 棚橋
茂森 和士
良隆 我孫子
克之 三宅
Original Assignee
株式会社Screenホールディングス
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 株式会社Screenホールディングス filed Critical 株式会社Screenホールディングス
Publication of WO2020044935A1 publication Critical patent/WO2020044935A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • 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/901Indexing; Data structures therefor; Storage structures
    • 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

Definitions

  • the present invention relates to a search device, a search method, and a search program.
  • the search device extracts data that matches the search condition from the plurality of data stored in the source, and includes the extracted data in the search result.
  • the search device reflects the access authority in the search result.
  • the search device includes, in the search result, data that the user is permitted to access with the access right to be reflected, but does not include, in the search result, data that the user is not permitted to access with the access right. .
  • the techniques described in Patent Documents 1 and 2 are examples.
  • the following first method and second method are generally used as a method of reflecting the access authority in the search result.
  • the search device manages access authority.
  • a source to which the user is permitted to access is set.
  • the search device includes, in the search result, data stored in a source to which the user is permitted to access by the access right to be managed, but stores the data in a source to which the user is not permitted to access by the access right. Do not include search data in search results.
  • the source manages access authority.
  • the managed access authority data that the user is permitted to access is set.
  • the search device obtains the managed access right from the source, and includes in the search result data that the user is permitted to access by the obtained access right. Do not include in the search results data that the user is not permitted to access due to authority.
  • the search device when an event of adding, deleting, or updating data to a plurality of data stored in the source occurs, the addition, deletion, or update of the data is reflected in access control and search results in real time. It is desired to do.
  • the conventional search apparatus has a problem that addition, deletion, or update of data cannot be reflected in access control and search results in real time, and addition, deletion, or update of data is reflected in access control and search results in real time. Therefore, there is a problem that complicated management of data and access authority must be performed.
  • a problem to be solved by the present invention is to provide a search device, a search method, and a method that can add, delete, or update data in an access control and a search result in real time without performing complicated management of data and access authority. And a search program.
  • the present invention is directed to a search device.
  • the search device includes a receiving unit, a data storage unit, a data acquisition unit, an access authority management unit, a login unit, an access authority acquisition unit, and a search unit.
  • the receiving unit receives a notification indicating that an event of adding, deleting, or updating data to a plurality of data stored in at least one source has occurred.
  • the data acquisition unit acquires the plurality of data and stores the data in the data storage unit. Further, when the receiving unit receives the notification after acquiring the plurality of data, the data acquisition unit reflects the addition, deletion, or update of the data on the plurality of data stored in the data storage unit.
  • the login section accepts login by the user. Further, when the login is accepted, the login authority acquires the access authority of the user set in the plurality of data stored in the data storage from at least one source, and stores the acquired access authority in the access authority management unit.
  • the access authority acquisition unit sets the added, deleted, or updated data when the receiving unit receives a notification after acquiring the user access authority set for a plurality of data stored in the data storage unit.
  • the access authority of the user is acquired from at least one source and reflected in the access authority stored in the access authority management unit.
  • the search unit extracts, from the plurality of data stored in the data storage unit, data that matches the search condition and is permitted to be accessed by the user with the access authority stored by the access authority management unit.
  • the present invention is also directed to a search method and a search program.
  • a plurality of stored data are updated in conjunction with occurrence of an event of adding, deleting, or updating data to a plurality of data stored in at least one source.
  • the stored access authority is updated. Therefore, addition, deletion, or updating of data can be reflected in access control and search results in real time without complicated management of data and access authority.
  • FIG. 2 is a block diagram illustrating hardware of the search device according to the first embodiment.
  • FIG. 2 is a block diagram illustrating a search system including the search device according to the first embodiment.
  • FIG. 3 is a diagram illustrating a structure of access management data managed by the search device according to the first embodiment.
  • FIG. 3 is a diagram illustrating a structure of a plurality of data stored in the search device according to the first embodiment.
  • 5 is a flowchart illustrating a flow of acquiring a plurality of data performed in the search device of the first embodiment.
  • 6 is a flowchart illustrating a flow of access authority acquisition performed in the search device of the first embodiment.
  • FIG. 1 is a block diagram illustrating hardware of the search device according to the first embodiment.
  • the search device 1000 illustrated in FIG. 1 is a personal computer (PC) on which the search program 1020 is installed.
  • the search device 1000 includes a central processing unit (CPU) 1040, a memory 1042, a hard disk drive 1044, an input device 1046, and an output device 1048.
  • the search device 1000 may include elements other than these elements.
  • the search program 1020 is installed in the hard disk drive 1044.
  • the search program 1020 is installed in the hard disk drive 1044 by writing data read from an external storage medium 1060 such as a compact disk (CD), a digital versatile disk (DVD), or a universal serial bus (USB) memory to the hard disk drive 1044. This may be performed, or may be performed by writing data received via the network 1080 to the hard disk drive 1044.
  • the hard disk drive 1044 may be replaced with another type of auxiliary storage device.
  • the hard disk drive 1044 may be replaced with a solid state drive or a random access memory (RAM) disk.
  • the hard disk drive 1044, the external storage medium 1060, the solid state drive, the RAM disk, and the like are computer-readable recording media on which the search program 1020 is recorded.
  • the CPU 1040 loads the search program 1020 into the memory 1042, and executes the loaded search program 1020.
  • the PC functions as the search device 1000.
  • the input device 1046 is a keyboard, a mouse, a touchpad, a trackball, a touch panel, a switch, a dial, a microphone, or the like.
  • the output device 1048 is a display, a printer, a speaker, and the like.
  • FIG. 2 is a block diagram illustrating a search system including the search device of the first embodiment.
  • the search system 1200 illustrated in FIG. 2 includes the search device 1000 described above, and includes a source 1220 and a user management server 1222.
  • the search system 1200 may include elements other than these elements.
  • Four sources 1220 may be replaced by three or less or five or more sources.
  • the source 1220 stores a plurality of data.
  • the source 1220 is a source to be searched.
  • the plurality of data stored in the source 1220 is a plurality of data to be searched.
  • Each of the four sources 1220 stores data constituting the plurality of data.
  • the search device 1000 acquires a plurality of data stored in the source 1220. Further, search device 1000 accepts login by user 1240 and accepts input of search conditions by user 1240. Also, the search device 1000 extracts, from the plurality of data stored in the source 1220, data that matches the search condition and is permitted to be accessed by the user 1240, and presents the extracted data to the user 1240. .
  • the search device 1000 and the source 1220 perform common user management using a common user management server 1222 using a mechanism such as an active directory.
  • the search device 1000 and the source 1220 set and manage only the user 1240 that can log in, the group to which the user 1240 belongs, and the authority that the user 1240 has.
  • the retrieval apparatus 1000 includes, as shown in FIG. Is provided.
  • the search device 1000 may include elements other than these elements.
  • the receiving unit 1260, the data acquisition unit 1264, the login unit 1268, the access authority acquisition unit 1270, and the search unit 1272 are configured by causing the CPU 1040 to execute a search program 1020.
  • the data storage unit 1262 and the access authority management unit 1266 are configured by at least one of the memory 1042 and the hard disk drive 1044.
  • All or a part of the processing performed by the CPU 1040 may be performed by another type of processing device.
  • all or a part of the processing performed by the CPU 1040 may be performed by a graphics processing device (GPU).
  • All or a part of the processing performed by the CPU 1040 may be performed by hardware that does not execute a program.
  • the receiving unit 1260 receives a notification (hereinafter, referred to as “event occurrence notification”) indicating that an event of adding, deleting, or updating data to a plurality of data stored in the source 1220 has occurred.
  • the event occurrence notification is transmitted by the source where the event has occurred.
  • the reception of the event occurrence notification is performed in the background.
  • the data acquisition unit 1264 acquires a plurality of data stored in the source 1220.
  • the data acquiring unit 1264 collectively acquires all of the plurality of data stored in the source 1220 at the designated time.
  • the designated time is, for example, a fixed time every night.
  • the data acquisition unit 1264 acquires a plurality of IDs (identifiers) for respectively identifying the plurality of data.
  • the data acquisition unit 1264 stores the acquired data in the data storage unit 1262.
  • the data acquiring unit 1264 acquires only the added, deleted, or updated data.
  • the data acquiring unit 1264 acquires an ID for identifying the added, deleted or updated data.
  • the data acquisition unit 1264 reflects addition, deletion, or update of data on a plurality of data stored in the data storage unit 1262. The addition, deletion, or updating of data is repeatedly performed while the search device 1000 is operating. Accordingly, in conjunction with the occurrence of an event of adding, deleting, or updating data to a plurality of data stored in the source 1220, the plurality of data stored in the data storage unit 1262 is transferred in real time. The data presented to the user 1240 can be updated in real time.
  • the login unit 1268 receives a login by the user 1240.
  • the login unit 1268 inquires of the user management server 1222 whether or not the user 1240 can log in.
  • the login unit 1268 accepts the login by the user 1240.
  • the login unit 1268 when the login unit 1268 receives the login, the login unit 1268 collectively acquires the access authority of the user 1240 set in the plurality of data stored in the data storage unit 1262 from the source 1220.
  • the acquired access authority includes an ID for identifying data that the user 1240 is permitted to access.
  • the login unit 1268 causes the access authority management unit 1266 to store the acquired access authority.
  • the access authority acquisition unit 1270 adds, deletes, or deletes the event when the reception unit 1260 receives the event occurrence notification after acquiring the access authority of the user 1240 set in the plurality of data stored in the data storage unit 1262.
  • the access right set for the updated data is acquired from the source 1220.
  • the access right acquisition unit 1270 reflects the acquired access right on the access right stored in the access right management unit 1266.
  • the reflection of the access authority is repeatedly performed while the user 1240 is logged in. Accordingly, the access right managed by the access right management unit 1266 is changed in real time in conjunction with the occurrence of an event of adding, deleting, or updating data to a plurality of data stored in the source 1220.
  • the data presented to the user 1240 can be updated in real time.
  • the search unit 1272 refers to the access authority stored in the access authority management unit 1266, and extracts data from a plurality of data stored in the data storage unit 1262.
  • the extracted data is data that matches the search condition and is permitted to be accessed by the user 1240 with the access right stored in the access right management unit 1266.
  • the extracted data is included in the search result and output by the output device 1048.
  • the output device 1048 is a display, the extracted data is displayed on the display.
  • the plurality of data stored in the data storage unit 1262 are linked to the occurrence of an event of adding, deleting, or updating data to a plurality of data stored in the source 1220.
  • the data is updated, and the access right stored in the access right management unit 1266 is updated. Therefore, addition, deletion, or updating of data can be reflected in access control and search results in real time without complicated management of data and access authority. This effect may appear when the search system 1200 includes only one source, but is particularly prominent when the search system 1200 includes a plurality of sources.
  • FIG. 3 is a diagram illustrating a structure of access management data managed by the search device of the first embodiment.
  • the structure of the access management data illustrated in FIG. 3 is a data structure indicating the access authority managed by the access authority management unit 1266.
  • the user ID 1300 is associated with the accessible ID 1302 of the source 1, the accessible ID 1304 of the source 2, and the like.
  • the accessible ID 1302 of the source 1 is an ID for identifying data that is stored in the source 1 and is permitted to be accessed by the user 1240 identified by the user ID 1300.
  • the accessible ID 1304 of the source 2 is an ID that identifies data that is stored in the source 2 and is permitted to be accessed by the user 1240 identified by the user ID 1300.
  • FIG. 4 is a diagram illustrating the structure of a plurality of data stored in the search device of the first embodiment.
  • the structure of the plurality of data illustrated in FIG. 4 is the structure of the plurality of data stored in the data storage unit 1262.
  • the ID 1400 is associated with the subject 1402, the content 1404, the person in charge 1406, and the like.
  • the subject 1402 is the subject of the data identified by the ID 1400.
  • the content 1404 is the content of the data identified by the ID 1400.
  • the person in charge 1406 is a person in charge of the data identified by the ID 1400.
  • the content 1422 is the content of the data identified by the ID 1420.
  • the case 1424 is a case of the data identified by the ID 1420.
  • the reporter 1426 is a reporter of the data identified by the ID 1420.
  • FIG. 5 is a flowchart illustrating a flow of acquiring a plurality of data performed in the search device of the first embodiment.
  • step S101 shown in FIG. 5 the data acquisition unit 1264 determines whether or not a designated time to acquire all data stored in the source 1220 has arrived. When it is determined that the designated time has arrived, steps S102 and S103 are sequentially performed, and then step S104 is performed. If it is determined that the designated time has not arrived, step S104 is executed without executing steps S102 and S103.
  • step S102 the data acquisition unit 1264 acquires all data stored in the source 1220 from the source 1220. Acquisition of all data is performed by batch processing, and is performed from all sources included in the source 1220.
  • step S103 the data acquisition unit 1264 stores all acquired data in the data storage unit 1262.
  • a plurality of data stored in the source 1220 is periodically acquired at the designated time, and the acquired plurality of data is stored in the data storage unit 1262.
  • step S104 the receiving unit 1260 determines whether an event occurrence notification has been received. If it is determined that the event occurrence notification has been received, steps S105 to S107 are sequentially performed. If it is determined that the event occurrence notification has not been received, step S101 is executed again.
  • step S105 the data acquisition unit 1264 further acquires only the added, deleted, or updated data.
  • step S106 the data acquisition unit 1264 reflects addition, deletion, or update of data on a plurality of data stored in the data storage unit 1262.
  • steps S104 to S106 only the added, deleted, or updated data is acquired in conjunction with the occurrence of the event of adding, deleting, or updating data.
  • the data is reflected on a plurality of data stored in the data storage unit 1262.
  • step S107 it is determined whether the search device 1000 has been completed. If it is determined that the search device 1000 has ended, the data acquisition ends. If it is determined that the search device 1000 has not ended, step S101 is executed again. Thus, steps S101 to S106 are repeatedly executed until the search program ends and the search device 1000 ends.
  • the data acquisition unit 1264 is in a standby state until the designated time has arrived or an event occurrence notification has been received.
  • the data acquisition unit 1264 acquires all data and stores the acquired data in the data storage unit 1262.
  • the data acquisition unit 1264 further acquires only the added, deleted, or updated data, and adds, deletes, or updates the data stored in the data storage unit 1262. To reflect the data.
  • FIG. 6 is a flowchart illustrating a flow of acquisition of access authority performed in the search device of the first embodiment.
  • step S121 illustrated in FIG. 6 the login unit 1268 determines whether the user 1240 can log in to the user management server 1222. If it is determined that the user 1240 can log in, steps S122 and S123 are sequentially performed. When it is determined that the user 1240 cannot log in. Acquisition of access authority ends.
  • step S122 the login unit 1268 acquires from the source 1220 the access authority set for the plurality of data stored in the data storage unit 1262.
  • the acquired access authority is stored in the access authority management unit 1266 and managed by the access authority management unit 1266.
  • step S123 the receiving unit 1260 determines whether an event occurrence notification has been received. If it is determined that the event occurrence notification has been received, step S124 is performed and then step S125 is performed. If it is determined that the event occurrence notification has not been received, step S125 is executed without executing step S124.
  • step S124 the access right obtaining unit 1270 obtains the access right set for the added, deleted, or updated data from the source 1220.
  • the acquired access right is reflected in the access right stored in the access right management unit 1266.
  • the access authority acquisition unit 1270 acquires the ID, inquires of the source 1220 whether or not the user 1240 is permitted to access the data identified by the acquired ID, and obtains a response from the source 1220, The access right of the user 1240 set in the data is acquired.
  • step S125 the login unit 1268 determines whether the user 1240 has logged out. If it is determined that the user 1240 has logged out, the acquisition of the access right ends after step S126 is executed. If it is determined that the user 1240 has not logged out, step S123 is executed again. Thus, steps S121 to S124 are repeatedly executed until the user 1240 logs out.
  • step S126 the access right stored in the access right management unit 1266 is discarded.

Abstract

データの追加、削除又は更新をアクセス制御及び検索結果にリアルタイムに反映する。ソースに記憶されている複数のデータが取得され格納される。その後にデータの追加等を行うイベントが発生したことを示す通知が受信された際に、データの追加等が格納されている複数のデータに反映される。ユーザによるログインが受け付けられた際に、格納されている複数のデータに設定されているユーザのアクセス権限がソースから取得され記憶される。その後に通知が受信された際に、追加等されたデータに設定されているユーザのアクセス権限がソースから取得され記憶されているアクセス権限に反映される。格納されている複数のデータから、検索条件に合致し記憶されているアクセス権限によりユーザがアクセスすることを許可されているデータが抽出される。

Description

検索装置、検索方法及び検索プログラム
 本発明は、検索装置、検索方法及び検索プログラムに関する。
 検索装置は、ソースに記憶されている複数のデータから検索条件に合致するデータを抽出し、抽出したデータを検索結果に含める。また、検索装置は、アクセス制御を行う場合は、アクセス権限を検索結果に反映させる。すなわち、検索装置は、反映させるアクセス権限によりユーザがアクセスすることが許可されているデータを検索結果に含めるが、当該アクセス権限によりユーザがアクセスすることが許可されていないデータを検索結果に含めない。特許文献1及び2に記載された技術は、その例である。
 アクセス権限を検索結果に反映する方法としては、下記の第1の方法及び第2の方法が一般的である。
 第1の方法においては、検索装置が、アクセス権限を管理する。管理されるアクセス権限においては、ユーザがアクセスすることが許可されているソースが設定されている。検索装置は、管理するアクセス権限によりユーザがアクセスすることが許可されているソースに記憶されているデータを検索結果に含めるが、当該アクセス権限によりユーザがアクセスすることが許可されていないソースに記憶されているデータを検索結果に含めない。
 第2の方法においては、ソースが、アクセス権限を管理する。管理されるアクセス権限においては、ユーザがアクセスすることが許可されているデータが設定されている。検索装置は、ユーザがログインを行った際に、管理されているアクセス権限をソースから取得し、取得したアクセス権限によりユーザがアクセスすることが許可されているデータを検索結果に含めるが、当該アクセス権限によりユーザがアクセスすることが許可されていないデータを検索結果に含めない。
特開2013-114331号公報 特開2010-160577号公報
 検索装置においては、ソースに記憶されている複数のデータに対してデータの追加、削除又は更新を行うイベントが発生した場合に、データの追加、削除又は更新をアクセス制御及び検索結果にリアルタイムに反映することが望まれる。
 しかし、従来の検索装置は、データの追加、削除又は更新をアクセス制御及び検索結果にリアルタイムに反映することができないという問題、データの追加、削除又は更新をアクセス制御及び検索結果にリアルタイムに反映するためにデータ及びアクセス権限の複雑な管理を行わなければならないという問題等を有する。
 本発明は、これらの問題に鑑みてなされた。本発明が解決しようとする課題は、データ及びアクセス権限の複雑な管理を行うことなく、データの追加、削除又は更新をアクセス制御及び検索結果にリアルタイムに反映することができる検索装置、検索方法、及び検索プログラムを提供することである。
 本発明は、検索装置に向けられる。
 検索装置は、受信部、データ格納部、データ取得部、アクセス権限管理部、ログイン部、アクセス権限取得部及び検索部を備える。
 受信部は、少なくともひとつのソースに記憶されている複数のデータに対してデータの追加、削除又は更新を行うイベントが発生したことを示す通知を受信する。
 データ取得部は、当該複数のデータを取得しデータ格納部に格納する。また、データ取得部は、当該複数のデータを取得した後に受信部が通知を受信した際に、データの追加、削除又は更新をデータ格納部に格納されている複数のデータに反映させる。
 ログイン部は、ユーザによるログインを受け付ける。また、ログイン部は、ログインを受け付けた際に、データ格納部に格納されている複数のデータに設定されているユーザのアクセス権限を少なくともひとつのソースから取得しアクセス権限管理部に記憶させる。
 アクセス権限取得部は、データ格納部に格納されている複数のデータに設定されているユーザのアクセス権限を取得した後に受信部が通知を受信した際に、追加、削除又は更新されたデータに設定されているユーザのアクセス権限を少なくともひとつのソースから取得しアクセス権限管理部に記憶されているアクセス権限に反映させる。
 検索部は、データ格納部に格納されている複数のデータから、検索条件に合致し前記アクセス権限管理部により記憶されているアクセス権限によりユーザがアクセスすることが許可されているデータを抽出する。
 本発明は、検索方法及び検索プログラムにも向けられる。
 本発明によれば、少なくともひとつのソースに記憶されている複数のデータに対してデータの追加、削除又は更新を行うイベントが発生するのに連動して、格納されている複数のデータが更新され、記憶されているアクセス権限が更新される。このため、データ及びアクセス権限の複雑な管理を行うことなく、データの追加、削除又は更新をアクセス制御及び検索結果にリアルタイムに反映することができる。
 この発明の目的、特徴、局面、及び利点は、以下の詳細な説明と添付図面とによって、より明白となる。
第1実施形態の検索装置のハードウェアを図示するブロック図である。 第1実施形態の検索装置を備える検索システムを図示するブロック図である。 第1実施形態の検索装置により管理されるアクセス管理データの構造を図示する図である。 第1実施形態の検索装置に格納される複数のデータの構造を図示する図である。 第1実施形態の検索装置において行われる複数のデータの取得の流れを図示するフローチャートである。 第1実施形態の検索装置において行われるアクセス権限の取得の流れを図示するフローチャートである。
 1 検索装置のハードウェア
 図1は、第1実施形態の検索装置のハードウェアを図示するブロック図である。
 図1に図示される検索装置1000は、検索プログラム1020がインストールされたパーソナルコンピューター(PC)である。検索装置1000は、中央処理装置(CPU)1040、メモリー1042、ハードディスクドライブ1044、入力機器1046及び出力機器1048を備える。検索装置1000がこれらの要素以外の要素を備えてもよい。
 ハードディスクドライブ1044には、検索プログラム1020がインストールされる。ハードディスクドライブ1044への検索プログラム1020のインストールは、コンパクトディスク(CD)、デジタル多目的ディスク(DVD)、ユニバーサルシリアルバス(USB)メモリー等の外部記憶媒体1060から読み出したデータをハードディスクドライブ1044に書き込むことにより行われてもよいし、ネットワーク1080を経由して受信したデータをハードディスクドライブ1044に書き込むことにより行われてもよい。ハードディスクドライブ1044が他の種類の補助記憶装置に置き換えられてもよい。例えば、ハードディスクドライブ1044がソリッドステートドライブ、ランダムアクセスメモリー(RAM)ディスクに置き換えられてもよい。ハードディスクドライブ1044、外部記憶媒体1060、ソリッドステートドライブ、RAMディスク等は、検索プログラム1020を記録したコンピュータ読み取り可能な記録媒体である。
 CPU1040は、検索プログラム1020をメモリー1042にロードし、ロードした検索プログラム1020を実行する。これにより、PCは、検索装置1000として機能する。
 入力機器1046は、キーボード、マウス、タッチパッド、トラックボール、タッチパネル、スイッチ、ダイヤル、マイクロフォン等である。
 出力機器1048は、ディスプレイ、プリンタ、スピーカ等である。
 2 検索システム
 図2は、第1実施形態の検索装置を備える検索システムを図示するブロック図である。
 図2に図示される検索システム1200は、上述した検索装置1000を備え、ソース1220及びユーザ管理サーバ1222を備える。検索システム1200がこれらの要素以外の要素を備えてもよい。4個のソース1220が、3個以下又は5個以上のソースに置き換えられてもよい。
 ソース1220は、複数のデータを記憶する。ソース1220は、検索の対象となるソースである。ソース1220に記憶されている複数のデータは、検索の対象となる複数のデータである。4個のソース1220の各々は、当該複数のデータを構成するデータを記憶する。
 検索装置1000は、ソース1220に記憶されている複数のデータを取得する。また、検索装置1000は、ユーザ1240によるログインを受け付け、ユーザ1240による検索条件の入力を受け付ける。また、検索装置1000は、ソース1220に記憶されている複数のデータから、検索条件に合致しユーザ1240がアクセスすることがを許可されているデータを抽出し、抽出したデータをユーザ1240に提示する。
 検索装置1000及びソース1220は、アクティブ・ディレクトリ等の仕組みを利用し、共通のユーザ管理サーバ1222を用いて共通のユーザ管理を行う。検索装置1000及びソース1220は、ログイン可能なユーザ1240、ユーザ1240が属するグループ、及びユーザ1240が有する権限のみを設定し管理する。
 3 検索装置
 検索装置1000は、図2に図示されるように、受信部1260、データ格納部1262、データ取得部1264、アクセス権限管理部1266、ログイン部1268、アクセス権限取得部1270及び検索部1272を備える。検索装置1000がこれらの要素以外の要素を備えてもよい。
 受信部1260、データ取得部1264、ログイン部1268、アクセス権限取得部1270及び検索部1272は、CPU1040に検索プログラム1020を実行させることにより構成される。データ格納部1262及びアクセス権限管理部1266は、メモリー1042及びハードディスクドライブ1044の少なくとも一方により構成される。
 CPU1040により行われる処理の全部又は一部が他の種類の処理装置により行われてもよい。例えば、CPU1040により行われる処理の全部又は一部がグラフィックス処理装置(GPU)により行われてもよい。CPU1040により行われる処理の全部又は一部がプログラムを実行しないハードウェアにより行われてもよい。
 受信部1260は、ソース1220に記憶されている複数のデータに対してデータの追加、削除又は更新を行うイベントが発生したことを示す通知(以下、「イベント発生通知」という)を受信する。イベント発生通知は、イベントが発生したソースにより送信される。イベント発生通知の受信は、バックグラウンドで行われる。
 データ取得部1264は、ソース1220に記憶されている複数のデータを取得する。データ取得部1264は、指定時刻に、ソース1220に記憶されている複数のデータの全部を一括して取得する。指定時刻は、例えば毎日の夜間の一定の時刻である。データ取得部1264は、複数のデータを取得する際に、複数のデータをそれぞれ識別する複数のID(識別子)を取得する。また、データ取得部1264は、取得した複数のデータをデータ格納部1262に格納する。
 また、データ取得部1264は、複数のデータを取得した後に受信部1260がイベント発生通知を受信した際に、追加、削除又は更新されたデータのみを取得する。データ取得部1264は、追加、削除又は更新されたデータを取得する際に、追加、削除又は更新されたデータを識別するIDを取得する。また、データ取得部1264は、データの追加、削除又は更新をデータ格納部1262に格納されている複数のデータに反映させる。データの追加、削除又は更新の反映は、検索装置1000が動作している間は繰り返し行われる。これにより、ソース1220に記憶されている複数のデータに対してデータの追加、削除又は更新を行うイベントが発生するのに連動して、データ格納部1262に格納されている複数のデータをリアルタイムに更新することができ、ユーザ1240に提示するデータをリアルタイムに更新することができる。
 ログイン部1268は、ユーザ1240によるログインを受け付ける。ログイン部1268は、ユーザ1240がログイン可能であるか否かをユーザ管理サーバ1222に問い合わせ、ユーザ1240がログイン可能であることがユーザ管理サーバ1222から回答された場合にユーザ1240によるログインを受け付ける。
 また、ログイン部1268は、ログインを受け付けた際に、データ格納部1262に格納されている複数のデータに設定されているユーザ1240のアクセス権限をソース1220から一括で取得する。取得されるアクセス権限は、ユーザ1240がアクセスすることが許可されているデータを識別するIDを含む。また、ログイン部1268は、取得したアクセス権限をアクセス権限管理部1266に記憶させる。
 アクセス権限取得部1270は、データ格納部1262に格納されている複数のデータに設定されているユーザ1240のアクセス権限を取得した後に受信部1260がイベント発生通知を受信した際に、追加、削除又は更新されたデータに設定されているアクセス権限をソース1220から取得する。また、アクセス権限取得部1270は、取得したアクセス権限をアクセス権限管理部1266に記憶されているアクセス権限に反映する。アクセス権限の反映は、ユーザ1240がログインしている間は繰り返し行われる。これにより、ソース1220に記憶されている複数のデータに対してデータの追加、削除又は更新を行うイベントが発生するのに連動して、アクセス権限管理部1266に管理されているアクセス権限をリアルタイムに更新することができ、ユーザ1240に提示するデータをリアルタイムに更新することができる。
 検索部1272は、アクセス権限管理部1266に記憶されているアクセス権限を参照し、データ格納部1262に格納されている複数のデータからデータを抽出する。抽出されるデータは、検索条件に合致しアクセス権限管理部1266に記憶されているアクセス権限によりユーザ1240がアクセスすることが許可されているデータである。抽出されたデータは、検索結果に含められ、出力機器1048により出力される。出力機器1048がディスプレイである場合は、抽出されたデータはディスプレイに表示される。
 検索装置1000によれば、ソース1220に記憶されている複数のデータに対してデータの追加、削除又は更新を行うイベントが発生するのに連動して、データ格納部1262に格納されている複数のデータが更新され、アクセス権限管理部1266に記憶されているアクセス権限が更新される。このため、データ及びアクセス権限の複雑な管理を行うことなく、データの追加、削除又は更新をアクセス制御及び検索結果にリアルタイムに反映することができる。この効果は、検索システム1200がひとつのソースを備えるにすぎない場合もあらわれるが、検索システム1200が複数のソースを備える場合に特に顕著にあらわれる。
 4 アクセス管理データの構造
 図3は、第1実施形態の検索装置により管理されるアクセス管理データの構造を図示する図である。
 図3に図示されるアクセス管理データの構造は、アクセス権限管理部1266により管理されるアクセス権限を示すデータの構造である。
 図3に図示されるアクセス管理データの構造においては、ユーザID1300に、ソース1のアクセス可能ID1302、ソース2のアクセス可能ID1304等が対応づけられている。ソース1のアクセス可能ID1302は、ソース1に記憶されユーザID1300より識別されるユーザ1240がアクセスすることが許可されているデータを識別するIDである。同様に、ソース2のアクセス可能ID1304は、ソース2に記憶されユーザID1300より識別されるユーザ1240がアクセスすることが許可されているデータを識別するIDである。
 5 複数のデータの構造
 図4は、第1実施形態の検索装置に格納される複数のデータの構造を図示する図である。
 図4に図示される複数のデータの構造は、データ格納部1262に格納される複数のデータの構造である。
 図4に図示される複数のデータの構造においては、ソース1について、ID1400に、件名1402、内容1404、担当者1406等が対応づけられている。件名1402は、ID1400により識別されるデータの件名である。内容1404は、ID1400により識別されるデータの内容である。担当者1406は、ID1400により識別されるデータの担当者である。
 また、図4に図示される複数のデータの構造においては、ソース2について、ID1420に、内容1422、事例1424、報告者1426等が対応づけられている。内容1422は、ID1420により識別されるデータの内容である。事例1424は、ID1420により識別されるデータの事例である。報告者1426は、ID1420により識別されるデータの報告者である。
 6 データの取得
 図5は、第1実施形態の検索装置において行われる複数のデータの取得の流れを図示するフローチャートである。
 図5に図示されるステップS101においては、データ取得部1264が、ソース1220に格納されている全データを取得する指定時刻が到来したか否かを判定する。指定時刻が到来したと判定された場合は、ステップS102及びS103が順次に実行されてからステップS104が実行される。指定時刻が到来していないと判定された場合は、ステップS102及びS103が実行されることなくステップS104が実行される。
 ステップS102においては、データ取得部1264が、ソース1220に格納されている全データをソース1220から取得する。全データの取得は、バッチ処理により行われ、ソース1220に含まれる全ソースから行われる。
 ステップS103においては、データ取得部1264が、取得した全データをデータ格納部1262に格納する。
 ステップS101からS103までによれば、ソース1220に記憶されている複数のデータが指定時刻に定期的に取得され、取得された複数のデータがデータ格納部1262に格納される。
 ステップS104においては、受信部1260が、イベント発生通知を受信したか否かを判定する。イベント発生通知を受信したと判定された場合は、ステップS105からS107までが順次に実行される。イベント発生通知を受信していないと判定された場合は、再びステップS101が実行される。
 ステップS105においては、データ取得部1264が、追加、削除又は更新されたデータのみをさらに取得する。
 ステップS106においては、データ取得部1264が、データの追加、削除又は更新をデータ格納部1262に格納されている複数のデータに反映する。
 ステップS104からS106までによれば、データの追加、削除又は更新を行うイベントが発生するのに連動して、追加、削除又は更新されたデータのみがさらに取得され、データの追加、削除又は更新がデータ格納部1262に格納されている複数のデータに反映される。
 ステップS107においては、検索装置1000が終了したか否かが判定される。検索装置1000が終了したと判定された場合は、データの取得が終了する。検索装置1000が終了していないと判定された場合は、再びステップS101が実行される。これにより、検索プログラムが終了し検索装置1000が終了するまでは、ステップS101からS106までが繰り返し実行される。
 ステップS101からS107までによれば、データ取得部1264は、指定時刻が到来するか又はイベント発生通知が受信されるまでは待機状態となっている。また、データ取得部1264は、指定時刻が到来した場合に、全データを取得し、取得した全データをデータ格納部1262に格納する。また、データ取得部1264は、イベント発生通知が受信された場合に、追加、削除又は更新されたデータのみをさらに取得し、データの追加、削除又は更新をデータ格納部1262に格納されている複数のデータに反映させる。
 7 アクセス権限の取得の流れ
 図6は、第1実施形態の検索装置において行われるアクセス権限の取得の流れを図示するフローチャートである。
 図6に図示されるステップS121においては、ログイン部1268が、ユーザ1240がユーザ管理サーバ1222にログイン可能であるか否かを判定する。ユーザ1240がログイン可能であると判定された場合は、ステップS122及びS123が順次に実行される。ユーザ1240がログイン可能でないと判定された場合は。アクセス権限の取得が終了する。
 ステップS122においては、ログイン部1268が、データ格納部1262に格納されている複数のデータに設定されているアクセス権限をソース1220から取得する。取得されたアクセス権限は、アクセス権限管理部1266に記憶させられ、アクセス権限管理部1266により管理される。
 ステップS123においては、受信部1260が、イベント発生通知を受信したか否かを判定する。イベント発生通知を受信したと判定された場合は、ステップS124が実行されてからステップS125が実行される。イベント発生通知を受信していないと判定した場合は、ステップS124が実行されることなくステップS125が実行される。
 ステップS124においては、アクセス権限取得部1270が、追加、削除又は更新されたデータに設定されているアクセス権限をソース1220から取得する。取得されたアクセス権限は、アクセス権限管理部1266に記憶されているアクセス権限に反映される。アクセス権限取得部1270は、IDを取得し、取得したIDにより識別されるデータにユーザ1240がアクセスすることが許可されているか否かをソース1220に問い合わせ、ソース1220から回答を得ることにより、当該データに設定されているユーザ1240のアクセス権限を取得する。
 ステップS125においては、ログイン部1268が、ユーザ1240がログアウトしたか否かを判定する。ユーザ1240がログアウトしたと判定された場合は、ステップS126が実行されてから、アクセス権限の取得が終了する。ユーザ1240がログアウトしてないと判定された場合は、再びステップS123が実行される。これにより、ユーザ1240がログアウトするまでは、ステップS121からS124までが繰り返し実行される。
 ステップS126においては、アクセス権限管理部1266に記憶されているアクセス権限が破棄される。
 この発明は詳細に説明されたが、上記した説明は、すべての局面において、例示であって、この発明がそれに限定されるものではない。例示されていない無数の変形例が、この発明の範囲から外れることなく想定され得るものと解される。
 1000 検索装置
 1020 検索プログラム
 1200 検索システム
 1220 ソース
 1222 ユーザ管理サーバ
 1240 ユーザ
 1260 受信部
 1262 データ格納部
 1264 データ取得部
 1266 アクセス権限管理部
 1268 ログイン部
 1270 アクセス権限取得部
 1272 検索部

Claims (4)

  1.  少なくともひとつのソースに記憶されている複数のデータに対してデータの追加、削除又は更新を行うイベントが発生したことを示す通知を受信する受信部と、
     データ格納部と、
     前記複数のデータを取得して前記データ格納部に格納し、前記複数のデータを取得した後に前記受信部が前記通知を受信した際に、前記データの追加、削除又は更新を前記データ格納部に格納されている複数のデータに反映させるデータ取得部と、
     アクセス権限管理部と、
     ユーザによるログインを受け付け、前記ログインを受け付けた際に、前記データ格納部に格納されている複数のデータに設定されている前記ユーザのアクセス権限を前記少なくともひとつのソースから取得し前記アクセス権限管理部に記憶させるログイン部と、
     前記データ格納部に格納されている複数のデータに設定されている前記ユーザのアクセス権限を取得した後に前記受信部が前記通知を受信した際に、追加、削除又は更新されたデータに設定されている前記ユーザのアクセス権限を前記少なくともひとつのソースから取得し前記アクセス権限管理部に記憶されているアクセス権限に反映させるアクセス権限取得部と、
     前記データ格納部に格納されている複数のデータから、検索条件に合致し前記アクセス権限管理部に記憶されているアクセス権限により前記ユーザがアクセスすることが許可されているデータを抽出する検索部と、
    を備える検索装置。
  2.  前記少なくともひとつのソースは、複数のソースである
    請求項1の検索装置。
  3.  少なくともひとつのソースに記憶されている複数のデータを取得して格納する工程と、
     前記複数のデータに対してデータの追加、削除又は更新を行うイベントが発生したことを示す通知を受信する工程と、
     前記複数のデータを取得した後に前記通知を受信した際に、前記データの追加、削除又は更新を格納している複数のデータに反映させる工程と、
     ユーザによるログインを受け付ける工程と、
     前記ログインを受け付けた際に、格納している複数のデータに設定されている前記ユーザのアクセス権限を前記少なくともひとつのソースから取得し記憶する工程と、
     格納している複数のデータに設定されている前記ユーザのアクセス権限を取得した後に前記通知を受信した際に、追加、削除又は更新されたデータに設定されている前記ユーザのアクセス権限を前記少なくともひとつのソースから取得し記憶しているアクセス権限に反映させる工程と、
     格納している複数のデータから、検索条件に合致し記憶しているアクセス権限により前記ユーザがアクセスすることが許可されているデータを抽出する工程と、
    を備える検索方法。
  4.  少なくともひとつのソースに記憶されている複数のデータを取得して格納する工程と、
     前記複数のデータに対してデータの追加、削除又は更新を行うイベントが発生したことを示す通知を受信する工程と、
     前記複数のデータを取得した後に前記通知を受信した際に、前記データの追加、削除又は更新を格納している複数のデータに反映させる工程と、
     ユーザによるログインを受け付ける工程と、
     前記ログインを受け付けた際に、格納している複数のデータに設定されている前記ユーザのアクセス権限を前記少なくともひとつのソースから取得し記憶する工程と、
     格納している複数のデータに設定されている前記ユーザのアクセス権限を取得した後に前記通知を受信した際に、追加、削除又は更新されたデータに設定されている前記ユーザのアクセス権限を前記少なくともひとつのソースから取得し記憶しているアクセス権限に反映させる工程と、
     格納している複数のデータから、検索条件に合致し記憶しているアクセス権限により前記ユーザがアクセスすることが許可されているデータを抽出する工程と、
    をコンピュータに実行させる検索プログラム。
PCT/JP2019/030286 2018-08-28 2019-08-01 検索装置、検索方法及び検索プログラム WO2020044935A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-159211 2018-08-28
JP2018159211A JP7171312B2 (ja) 2018-08-28 2018-08-28 検索装置、検索方法及び検索プログラム

Publications (1)

Publication Number Publication Date
WO2020044935A1 true WO2020044935A1 (ja) 2020-03-05

Family

ID=69643543

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/030286 WO2020044935A1 (ja) 2018-08-28 2019-08-01 検索装置、検索方法及び検索プログラム

Country Status (3)

Country Link
JP (1) JP7171312B2 (ja)
TW (1) TWI728405B (ja)
WO (1) WO2020044935A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013114331A (ja) * 2011-11-25 2013-06-10 Ricoh Co Ltd インデックス管理プログラム、インデックス管理装置及び検索システム
JP2015170076A (ja) * 2014-03-06 2015-09-28 株式会社東芝 データベースシステム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005293196A (ja) 2004-03-31 2005-10-20 Dainippon Printing Co Ltd データベースアクセス制御装置および制御方法、顧客情報データベースシステム
JP2010160577A (ja) 2009-01-06 2010-07-22 Canon Inc 検索装置及びその制御方法、並びにコンピュータプログラム
JP5842426B2 (ja) 2011-07-15 2016-01-13 株式会社リコー インデックス管理プログラ及び検索システム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013114331A (ja) * 2011-11-25 2013-06-10 Ricoh Co Ltd インデックス管理プログラム、インデックス管理装置及び検索システム
JP2015170076A (ja) * 2014-03-06 2015-09-28 株式会社東芝 データベースシステム

Also Published As

Publication number Publication date
TW202013210A (zh) 2020-04-01
TWI728405B (zh) 2021-05-21
JP2020035050A (ja) 2020-03-05
JP7171312B2 (ja) 2022-11-15

Similar Documents

Publication Publication Date Title
US10754835B2 (en) High-efficiency deduplication module of a database-management system
JP6050343B2 (ja) 最近使用した文書のリストの自動同期
US20120124063A1 (en) Method and system for specifying, preparing and using parameterized database queries
US11080344B2 (en) Cloud-native documents integrated with legacy tools
US20210303537A1 (en) Log record identification using aggregated log indexes
US20070214195A1 (en) Idempotent journal mechanism for file system
US20150095286A1 (en) Database auditing for bulk operations
WO2018133762A1 (zh) 文件合并方法和装置
US20190213240A1 (en) Multimodal sharing of content between documents
US20130138612A1 (en) Provisioning and/or synchronizing using common metadata
US8965879B2 (en) Unique join data caching method
CA2901247A1 (en) Systems and methods for ranking a plurality of documents based on user activity
US11531575B1 (en) Tenant copy operation in a microservice architecture
US10686879B2 (en) Replication with adjustable consistency levels
WO2020044935A1 (ja) 検索装置、検索方法及び検索プログラム
CN110928885B (zh) Mysql数据库的数据更新到Es数据库的方法及装置
JP5718974B2 (ja) 情報処理装置、情報処理方法、および、情報処理プログラム
US20140325271A1 (en) Terminal device, information processing method, and computer program product
JP2016170453A (ja) データ格納制御装置、データ格納制御システム、データ格納制御方法、及び、データ格納制御プログラム
US11113296B1 (en) Metadata management for a transactional storage system
US20240054113A1 (en) Automatic computer data deduplication process for application whitelisting system
JP5316015B2 (ja) 情報処理装置及びプログラム
WO2018109818A1 (ja) データの格納を制御する計算機システム及び方法
JP2007164265A (ja) ファイルバックアップシステム及び方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19853451

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19853451

Country of ref document: EP

Kind code of ref document: A1