JP2018156237A - Data management system, data management method, and program - Google Patents

Data management system, data management method, and program Download PDF

Info

Publication number
JP2018156237A
JP2018156237A JP2017051083A JP2017051083A JP2018156237A JP 2018156237 A JP2018156237 A JP 2018156237A JP 2017051083 A JP2017051083 A JP 2017051083A JP 2017051083 A JP2017051083 A JP 2017051083A JP 2018156237 A JP2018156237 A JP 2018156237A
Authority
JP
Japan
Prior art keywords
data
data management
search
delayed update
unit
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
JP2017051083A
Other languages
Japanese (ja)
Other versions
JP6936596B2 (en
Inventor
淳一郎 北川
Junichiro Kitagawa
淳一郎 北川
尚樹 平井
Naoki Hirai
尚樹 平井
洋太朗 鈴木
Yotaro Suzuki
洋太朗 鈴木
山下 勝司
Katsuji Yamashita
勝司 山下
典久 瀧澤
Norihisa Takizawa
典久 瀧澤
松本 均
Hitoshi Matsumoto
均 松本
壮 望月
So Mochizuki
壮 望月
寛和 横山
Hirokazu Yokoyama
寛和 横山
春樹 静
Haruki Shizuka
春樹 静
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.)
Yahoo Japan Corp
Original Assignee
Yahoo Japan Corp
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 Yahoo Japan Corp filed Critical Yahoo Japan Corp
Priority to JP2017051083A priority Critical patent/JP6936596B2/en
Publication of JP2018156237A publication Critical patent/JP2018156237A/en
Application granted granted Critical
Publication of JP6936596B2 publication Critical patent/JP6936596B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a data management system, a data management method, and a program capable of registering more advanced information in a retrieval database while maintaining real-time property.SOLUTION: The data management system includes: a data managing unit for registering source data in a retrieval database; and a deferred update processing unit for acquiring a part or all of the source data in parallel with the data managing unit while executing specific processing on a part or all of the source data, and executing processing of reflecting, to the retrieval database, deferred update data generated as a result of the specific processing.SELECTED DRAWING: Figure 1

Description

本発明は、データ管理システム、データ管理方法、およびプログラムに関する。   The present invention relates to a data management system, a data management method, and a program.

従来、視覚クエリを受け取り、検索結果を提供する方法が知られている(特許文献1参照)。   Conventionally, a method of receiving a visual query and providing a search result is known (see Patent Document 1).

特開2016−139424号公報JP-A-2006-139424

ところで、ネットオークションなどのネットワークサービスにおいては、検索用データベースに登録されたデータを用いて、ランキング決定や検索結果の絞込みといった処理がなされることがある。この処理において、単なるメタ情報だけでなく、画像の特徴量やテキストの分散表現などの情報を利用する試みがなされているが、これらの情報は、生成する際の処理負荷が高く、これを検索用データベースに入れ込む場合、検索用データベースの更新が遅れ、リアルタイム性が損なわれる場合がある。   By the way, in a network service such as a net auction, processing such as ranking determination and search result narrowing may be performed using data registered in a search database. In this process, attempts have been made to use not only mere meta information but also information such as image feature quantities and distributed text representations. However, this information has a high processing load when it is generated. When entering the database, the search database update may be delayed, and real-time performance may be impaired.

本発明は、このような事情を考慮してなされたものであり、リアルタイム性を維持しつつ、より高度な情報を検索用データベースに登録することが可能なデータ管理システム、データ管理方法、およびプログラムを提供することを目的の一つとする。   The present invention has been made in consideration of such circumstances, and is capable of registering more advanced information in a search database while maintaining real-time performance, a data management method, and a program Is one of the purposes.

本発明の一態様は、ソースデータを検索用データベースに登録するデータ管理部と、前記ソースデータの一部または全部を前記データ管理部と並行して取得すると共に、前記ソースデータの一部または全部について特定処理を実行し、前記特定処理の結果として生成された遅延更新データを前記検索用データベースに反映させるための処理を行う遅延更新処理部と、を備えるデータ管理システムである。   According to one aspect of the present invention, a data management unit that registers source data in a search database, a part or all of the source data is acquired in parallel with the data management unit, and a part or all of the source data And a delayed update processing unit that performs a process for reflecting the delayed update data generated as a result of the specified process in the search database.

本発明の一態様によれば、リアルタイム性を維持しつつ、より高度な情報を検索用データベースに登録することができる。   According to one embodiment of the present invention, more advanced information can be registered in a search database while maintaining real-time characteristics.

データ管理システムを含むネットワークシステムの構成図である。1 is a configuration diagram of a network system including a data management system. 検索用DB252の内容の一例を示す図である。It is a figure which shows an example of the content of DB252 for search. 転置インデックス254の内容の一例を示す図である。It is a figure which shows an example of the content of the transposition index 254. FIG. 遅延更新用DB332の内容の一例を示す図である。It is a figure which shows an example of the content of DB for delay update 332. 検索サーバ200のソースデータ取得部210とデータ管理部220により実行される処理の流れの一例を示すフローチャートである。5 is a flowchart illustrating an example of a flow of processing executed by a source data acquisition unit 210 and a data management unit 220 of the search server 200. 検索サーバ200のデータ管理部220により実行される処理の流れの一例を示すフローチャートである。5 is a flowchart illustrating an example of a flow of processing executed by a data management unit 220 of the search server 200. 検索サーバ200の検索実行部230およびランキング処理部240により実行される処理の流れの一例を示すフローチャートである。5 is a flowchart illustrating an example of a flow of processing executed by a search execution unit 230 and a ranking processing unit 240 of the search server 200. 遅延更新処理サーバ300により実行される処理の流れの一例を示すフローチャートである。4 is a flowchart illustrating an example of a flow of processing executed by a delayed update processing server 300. 各フェーズ(局面)の処理を概念的に示す図である。It is a figure which shows notionally the process of each phase (phase).

以下、図面を参照し、本発明のデータ管理システム、データ管理方法、およびプログラムの実施形態について説明する。   Hereinafter, embodiments of a data management system, a data management method, and a program according to the present invention will be described with reference to the drawings.

[概要]
データ管理システムは、一以上のプロセッサにより実現される。データ管理システムは、ネットオークションにおける検索などに使用される検索用データベース(検索用DB)を管理するシステムである。データ管理システムは、例えば、オークションの出品者などにより提供されるデータを含むソースデータを検索用DBに登録する一方で、ソースデータの一部または全部について、画像特徴の計算、テキストの分散表現化などの特定処理を実行する。この特定処理がなされる間、データ管理システムは、特定処理が行われた結果として生成されるデータ(以下、遅延更新データ)の代わりに仮のデータ(以下、デフォルトデータ)を検索用DBに登録しておく。特定処理が完了した後、デフォルトデータが遅延更新データで置き換えられる。これによって、リアルタイム性を維持しつつ、より高度な情報を検索用データベースに登録することができる。
[Overview]
The data management system is realized by one or more processors. The data management system is a system that manages a search database (search DB) that is used for searching in an online auction. The data management system, for example, registers source data including data provided by an auction exhibitor or the like in the search DB, while calculating part of or all of the source data, calculating image characteristics, and expressing text in a distributed manner. Execute specific processing such as During this specific processing, the data management system registers temporary data (hereinafter referred to as default data) in the search DB instead of data generated as a result of the specific processing (hereinafter referred to as delayed update data). Keep it. After the specific process is completed, the default data is replaced with delayed update data. As a result, more advanced information can be registered in the search database while maintaining the real-time property.

[全体構成]
図1は、データ管理システムを含むネットワークシステムの構成図である。ネットワークシステムでは、オークションサーバ100、検索サーバ200、遅延更新処理サーバ300、検索利用サービスサーバ400、端末装置500などの装置がネットワークNWを介して通信を行う。これらの装置は、ネットワークNWに接続するためのインターフェースを備える。ネットワークNWは、インターネット、WAN(Wide Area Network)、LAN(Local Area Network)などを含む。なお、図1に示すハードウェアの区分はあくまで一例であり、例えば、検索サーバ200と遅延更新サーバ300は、統合されたサーバによって実現されてもよいし、更にオークションサーバ100に併合されてもよい。すなわち、図1に示す各種サーバのうち一部は、仮想サーバであってもよい。
[overall structure]
FIG. 1 is a configuration diagram of a network system including a data management system. In the network system, devices such as the auction server 100, the search server 200, the delayed update processing server 300, the search use service server 400, and the terminal device 500 communicate via the network NW. These devices include an interface for connecting to the network NW. The network NW includes the Internet, a WAN (Wide Area Network), a LAN (Local Area Network), and the like. 1 is merely an example, and for example, the search server 200 and the delayed update server 300 may be realized by an integrated server or may be further merged with the auction server 100. . That is, some of the various servers illustrated in FIG. 1 may be virtual servers.

[オークションサーバ]
オークションサーバ100は、例えば、オークション管理部110と、バッファ管理部120とを備える。オークション管理部(オークションマスタ)110は、端末装置500に対してネットオークションサービスを提供する。端末装置500では、ブラウザやアプリケーションプログラムなどのUA(User Agent)が起動し、オークションサーバ100に対して画像の要求、クエリの送信、その他の処理を行う。オークションの出品者の使用する端末装置500からは、出品する商品またはサービス(以下、単に商品という)に関するデータがオークションサーバ100に送信される。オークションの入札者(これから入札しようとするユーザも含むものとする)の使用する端末装置500からは、入札者が興味のある商品を検索するためのクエリ、入札する旨の意思を示す情報、入札額などがオークションサーバ100に送信される。
[Auction server]
The auction server 100 includes, for example, an auction management unit 110 and a buffer management unit 120. The auction management unit (auction master) 110 provides a net auction service to the terminal device 500. In the terminal device 500, a UA (User Agent) such as a browser or an application program is activated, and performs image request, query transmission, and other processing to the auction server 100. From the terminal device 500 used by the seller of the auction, data related to the product or service to be exhibited (hereinafter simply referred to as “product”) is transmitted to the auction server 100. From the terminal device 500 used by the bidder of the auction (including the user who is going to bid), a query for searching for a product that the bidder is interested in, information indicating the intention to bid, a bid amount, etc. Is transmitted to the auction server 100.

オークション管理部110は、オークションに関する種々の情報を、ソースデータとして検索サーバ200に提供する。ソースデータには、オークションの出品者から提供されたデータの他、オークションの進捗に関するデータなどが含まれる。また、オークション管理部110は、入札者の端末装置100から受信したクエリを用いた検索を、検索サーバ200に依頼する。なお、オークションサーバ100と検索サーバ200が一体である場合、これらの処理は、ソフトウェア間で通知を行うことを意味する。   The auction management unit 110 provides various information related to the auction to the search server 200 as source data. The source data includes data related to the progress of the auction as well as data provided by the auction seller. In addition, the auction management unit 110 requests the search server 200 to perform a search using the query received from the bidder's terminal device 100. When the auction server 100 and the search server 200 are integrated, these processes mean notification between software.

バッファ管理部120は、例えば、オークションの出品者からのソースデータをバッファに蓄積し、所望のタイミングで検索サーバ200と遅延更新処理サーバ300に送信する。この送信されるソースデータには、出品された商品の識別情報であるドキュメントIDが付与されている。ドキュメントIDは、オークション管理部110によって商品に対して付与されるものである。なお、バッファ管理部120は、ソースデータを検索サーバ200にのみ送信し、検索サーバ200において、ソースデータの一部または全部を遅延更新処理サーバ300に転送するようにしてもよい。   For example, the buffer management unit 120 accumulates source data from auction sellers in a buffer, and transmits the data to the search server 200 and the delayed update processing server 300 at a desired timing. The transmitted source data is given a document ID which is identification information of the exhibited product. The document ID is assigned to the product by the auction management unit 110. The buffer management unit 120 may transmit the source data only to the search server 200, and the search server 200 may transfer part or all of the source data to the delayed update processing server 300.

[検索サーバ]
検索サーバ200は、例えば、ソースデータ取得部210と、データ管理部220と、検索実行部230と、ランキング処理部240と、第1記憶部250とを備える。ソースデータ取得部210、データ管理部220、検索実行部230、およびランキング処理部240は、例えば、CPU(Central Processing Unit)などのプロセッサがプログラムを実行することにより実現される。また、これらの機能部のうち一部または全部は、LSI(Large Scale Integration)やASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)などのハードウェアにより実現されてもよいし、ソフトウェアとハードウェアの協働により実現されてもよい。第1記憶部250は、例えば、HDD(Hard Disk Drive)やフラッシュメモリにより実現される。第1記憶部250には、例えば、検索用DB252と、転置インデックス254とが格納される。
Search server
The search server 200 includes, for example, a source data acquisition unit 210, a data management unit 220, a search execution unit 230, a ranking processing unit 240, and a first storage unit 250. The source data acquisition unit 210, the data management unit 220, the search execution unit 230, and the ranking processing unit 240 are realized by, for example, a processor such as a CPU (Central Processing Unit) executing a program. Some or all of these functional units may be realized by hardware such as LSI (Large Scale Integration), ASIC (Application Specific Integrated Circuit), FPGA (Field-Programmable Gate Array), or software. And hardware cooperation. The first storage unit 250 is realized by, for example, an HDD (Hard Disk Drive) or a flash memory. The first storage unit 250 stores, for example, a search DB 252 and a transposed index 254.

ソースデータ取得部210は、オークションサーバ100からソースデータを取得し、データバッファ(不図示)に格納する。前述したように、ソースデータ取得部210は、オークションサーバ100から受信したソースデータのうち一部または全部を遅延更新処理サーバ300に転送する機能を有してもよい。   The source data acquisition unit 210 acquires source data from the auction server 100 and stores it in a data buffer (not shown). As described above, the source data acquisition unit 210 may have a function of transferring part or all of the source data received from the auction server 100 to the delayed update processing server 300.

データ管理部220は、ソースデータを適宜加工して検索用DB252に登録する。図2は、検索用DB252の内容の一例を示す図である。検索DB252には、例えば、ドキュメントID、タイトル、画像URL(Uniform Resource Locator)、価格、入札数、お気に入り登録数、遅延更新データなどの情報が登録される。   The data management unit 220 processes the source data as appropriate and registers it in the search DB 252. FIG. 2 is a diagram illustrating an example of the contents of the search DB 252. For example, information such as a document ID, a title, an image URL (Uniform Resource Locator), a price, the number of bids, the number of favorite registrations, and delayed update data is registered in the search DB 252.

タイトルは、例えば、商品の紹介画像へのリンクに表示されるテキスト情報である。画像URLは、商品の画像を参照するためのURL(参照情報)である。価格は、現時点での最高入札額である。未入札である場合、出品者により設定された最低入札額が格納される。入札数は、商品に入札した入札者の数である。お気に入り登録数は、その商品のオークションページをお気に入りに登録しているユーザの数である。   The title is, for example, text information displayed on a link to a product introduction image. The image URL is a URL (reference information) for referring to the product image. The price is the highest bid at the moment. If the bid is not yet bid, the lowest bid set by the seller is stored. The number of bids is the number of bidders who bid on the product. The number of favorite registrations is the number of users who register the auction page of the product as a favorite.

遅延更新データの項目には、遅延更新処理サーバ300により生成される遅延更新データが格納される。この遅延更新データの項目には、遅延更新処理サーバ300により処理が行われている間、代わりにデフォルト値が格納される。図2の例では、ドキュメントID=001の商品に対しては既に遅延更新データが格納されているが、ドキュメントID=002の商品に対してはデフォルト値が格納されている。デフォルト値は、後述するランキング処理部240の処理において、大きな影響を与えない値であることが望ましい。   In the item of delayed update data, delayed update data generated by the delayed update processing server 300 is stored. In this delayed update data item, while the process is being performed by the delayed update processing server 300, a default value is stored instead. In the example of FIG. 2, the delayed update data is already stored for the product with document ID = 001, but the default value is stored for the product with document ID = 002. The default value is desirably a value that does not significantly affect the processing of the ranking processing unit 240 described later.

また、データ管理部220は、検索実行部230による検索を高速化するために、転置インデックス254を生成する。図3は、転置インデックス254の内容の一例を示す図である。転置インデックス254は、クエリとなり得る単語に対して、ドキュメントIDが対応付けられた情報である。データ管理部220は、その単語或いは類似する単語をタイトルに含む商品、或いは、画像からその単語に該当すると推定される商品のドキュメントIDを、転置インデックス254に登録する。類似する単語の判定には、テキストを分散表現化したベクトルが使用されてよい。   In addition, the data management unit 220 generates a transposed index 254 in order to speed up the search performed by the search execution unit 230. FIG. 3 is a diagram illustrating an example of the contents of the transposed index 254. The transposed index 254 is information in which a document ID is associated with a word that can be a query. The data management unit 220 registers, in the transposed index 254, a document ID of a product that includes the word or a similar word in the title, or a product that is estimated to correspond to the word from the image. For the determination of similar words, a vector in which text is distributedly expressed may be used.

検索実行部230は、転置インデックス254を用いて、オークションサーバ100から依頼された検索を実行する。例えば、オークションサーバ100からクエリ「テレビ」について検索を依頼された場合、検索実行部230は、転置インデックス254からドキュメントID=001、005、…を取得する。そして、検索実行部230は、ドキュメントID=001、005、…である商品の情報を検索用DB252から抽出する。   The search execution unit 230 executes a search requested by the auction server 100 using the transposed index 254. For example, when a search is requested for the query “TV” from the auction server 100, the search execution unit 230 acquires document ID = 001, 005,... From the transposed index 254. Then, the search execution unit 230 extracts product information with document ID = 001, 005,... From the search DB 252.

ランキング処理部240は、検索実行部230により抽出された商品に対して、所定の基準によって順位付けを行うと共に、上位のk個の商品を選択する(kは任意の自然数)。そして、選択したk個の商品の情報を、順位付けの情報と共にオークションサーバ100に送信する。   The ranking processing unit 240 ranks the products extracted by the search execution unit 230 according to a predetermined criterion, and selects the top k products (k is an arbitrary natural number). Then, the information of the selected k items is transmitted to the auction server 100 together with the ranking information.

ランキング処理部240による順位付けの手法としては、種々のものが採用され得る。例えば、ランキング処理部240は、入札数が多い商品に高いスコアを付与してよい。また、ランキング処理部240は、お気に入り登録数が多い商品に高いスコアを付与してよい。また、ランキング処理部240価格が安い商品に高いスコアを付与してよい。   Various methods for ranking by the ranking processing unit 240 may be employed. For example, the ranking processing unit 240 may give a high score to a product with a large number of bids. The ranking processing unit 240 may give a high score to a product with a large number of favorite registrations. Moreover, you may give a high score to the goods with which the ranking process part 240 price is cheap.

また、ランキング処理部240は、遅延更新データとして登録された画像特徴から、商品の画像が鮮明であることが分かる商品に高いスコアを付与してよい。画像特徴としては、画像の明るさ、カラフルさ、コントラスト、L*a*bヒストグラム、細部の鮮鋭度などがある。遅延更新データとして画像特徴などの高度な情報を含めておくことで、精度の高いランキング処理を行うことができる。   In addition, the ranking processing unit 240 may give a high score to a product in which the product image is clear from the image features registered as the delayed update data. Image features include image brightness, colorfulness, contrast, L * a * b histogram, and sharpness of details. By including advanced information such as image features as delayed update data, highly accurate ranking processing can be performed.

[遅延更新処理サーバ]
遅延更新処理サーバ310は、例えば、フロント処理部310と、一以上の特定処理部320−1〜320−n(nは任意の自然数)と、第2記憶部330と、プッシュ通知部340とを備える。以下、いずれの特定処理部であるか区別しないときは、単に特定処理部320と称する。フロント処理部310、特定処理部320、およびプッシュ通知部340は、例えば、CPUなどのプロセッサがプログラムを実行することにより実現される。また、これらの機能部のうち一部または全部は、LSIやASIC、FPGAなどのハードウェアにより実現されてもよいし、ソフトウェアとハードウェアの協働により実現されてもよい。第2記憶部330は、例えば、HDDやフラッシュメモリにより実現される。第2記憶部330には、例えば、遅延更新用DB332が格納される。
[Delayed update processing server]
The delayed update processing server 310 includes, for example, a front processing unit 310, one or more specific processing units 320-1 to 320-n (n is an arbitrary natural number), a second storage unit 330, and a push notification unit 340. Prepare. Hereinafter, when it is not distinguished which specific processing unit, it is simply referred to as a specific processing unit 320. The front processing unit 310, the specific processing unit 320, and the push notification unit 340 are realized, for example, when a processor such as a CPU executes a program. Some or all of these functional units may be realized by hardware such as an LSI, ASIC, or FPGA, or may be realized by cooperation of software and hardware. The second storage unit 330 is realized by, for example, an HDD or a flash memory. For example, the delay update DB 332 is stored in the second storage unit 330.

図4は、遅延更新用DB332の内容の一例を示す図である。遅延更新用DB332は、例えば、ドキュメントIDに対して、対象特定情報、遅延更新データ、送信済フラグ、登録日時などの情報が対応付けられたものである。対象特定情報とは、特定処理の対象となるデータを特定する情報であり、画像特徴を求める対象の画像の画像URLや、分散表現化するテキストの識別情報(或いはテキストそのもの)などである。   FIG. 4 is a diagram illustrating an example of the contents of the delayed update DB 332. In the delayed update DB 332, for example, information such as target identification information, delayed update data, a transmitted flag, and a registration date is associated with the document ID. The target specifying information is information for specifying data to be specified, such as an image URL of an image for which an image feature is to be obtained, text identification information (or text itself) to be distributed and expressed, and the like.

フロント処理部310は、オークションサーバ100からソースデータの一部または全部を取得すると、まず、第2記憶部330の遅延更新用DBを参照し、同じドキュメントIDの遅延更新データ、或いは対象特定情報が同じ遅延更新データが存在するか否かを確認する。これらが存在しない場合、フロント処理部310は、ソースデータの一部または全部を、特定処理の対象として特定処理部320に分配する。なお、フロント処理部310は、ソースデータの内容を解析し、価値の低い商品に関するデータを除外してもよい。価値の低い商品とは、例えば、長期間オークションにかけられているにも関わらず、入札数がゼロである商品などである。   When the front processing unit 310 acquires part or all of the source data from the auction server 100, first, the delayed update data or the target specifying information of the same document ID is obtained by referring to the delayed update DB of the second storage unit 330. Check whether the same delayed update data exists. When these do not exist, the front processing unit 310 distributes part or all of the source data to the specific processing unit 320 as a target of the specific processing. Note that the front processing unit 310 may analyze the contents of the source data and exclude data related to low-value products. A low-value product is, for example, a product for which the number of bids is zero even though it has been auctioned for a long time.

それぞれの特定処理部320−1〜320−nは、固有の特定処理を実行する。例えば、特定処理部320−1は画像特徴を求める処理を実行し、特定処理部320−2はテキストを分散表現化する処理を実行する。特定処理部320は、処理の結果として生成される遅延更新データを、ドキュメントIDや対象特定情報、登録日時等の情報と共に遅延更新用DB332に格納する。   Each of the specific processing units 320-1 to 320-n executes a specific specific process. For example, the specific processing unit 320-1 executes processing for obtaining image features, and the specific processing unit 320-2 executes processing for expressing the text in a distributed manner. The specific processing unit 320 stores the delayed update data generated as a result of the processing in the delayed update DB 332 together with information such as a document ID, target specifying information, and registration date / time.

プッシュ通知部340は、例えば、検索サーバ200のデータ管理部220の動作に依存しない所望のタイミングで、遅延更新用DB332に格納された遅延更新データを検索用DB252に登録するように、検索サーバ200にプッシュ通知する。プッシュ通知とは、例えば、検索用DB252に登録するように要求するメッセージと共に、遅延更新データの内容を送信することである。なお、検索サーバ200と遅延更新処理サーバ300が一体である場合、プッシュ通知は、ソフトウェア間で通知を行うことを意味する。プッシュ通知を行うと、送信済フラグが立てられる。また、検索サーバ200と遅延更新処理サーバ300が一体である場合、プッシュ通知部340は、検索用DBの該当する項目に直接、遅延更新データを登録(書き込み)してもよい。   For example, the push notification unit 340 registers the delay update data stored in the delay update DB 332 in the search DB 252 at a desired timing independent of the operation of the data management unit 220 of the search server 200. Push notification to. The push notification is, for example, transmitting the content of the delayed update data together with a message requesting to be registered in the search DB 252. Note that when the search server 200 and the delayed update processing server 300 are integrated, the push notification means notification between software. When a push notification is made, a transmitted flag is set. When the search server 200 and the delayed update processing server 300 are integrated, the push notification unit 340 may register (write) the delayed update data directly in the corresponding item of the search DB.

プッシュ通知部340は、例えば、送信済フラグが立てられていないレコードを、プッシュ通知の対象とする。また、送信済フラグを省略し、プッシュ通知部340は、遅延更新用DB332の全てのレコードをプッシュ通知の対象としてもよい。プッシュ通知部340は、登録日時を参照し、ある程度の期間が経過したレコードを削除するようにしてもよい。   For example, the push notification unit 340 sets a record for which a transmission completion flag is not set as a target of push notification. Further, the transmission completion flag may be omitted, and the push notification unit 340 may set all records in the delayed update DB 332 as a target of push notification. The push notification unit 340 may delete a record after a certain period has elapsed with reference to the registration date and time.

[処理フロー]
図5は、検索サーバ200のソースデータ取得部210とデータ管理部220により実行される処理の流れの一例を示すフローチャートである。まず、ソースデータ取得部210が繰り返しソースデータを取得する(S1)。検索用DB252の更新タイミングが到来すると(S2)、データ管理部220が、既に取得されたソースデータに基づいて、検索用DB252を更新する(S3)。そして、データ管理部220は、遅延更新データの項目にデフォルト値をセットする(S4)。検索サーバ200は、係る処理を繰り返し実行する。
[Processing flow]
FIG. 5 is a flowchart illustrating an example of the flow of processing executed by the source data acquisition unit 210 and the data management unit 220 of the search server 200. First, the source data acquisition unit 210 repeatedly acquires source data (S1). When the update timing of the search DB 252 comes (S2), the data management unit 220 updates the search DB 252 based on the already acquired source data (S3). Then, the data management unit 220 sets a default value in the item of delayed update data (S4). The search server 200 repeatedly performs such processing.

図6は、検索サーバ200のデータ管理部220により実行される処理の流れの一例を示すフローチャートである。遅延更新処理サーバ300からプッシュ通知があると(S10)、データ管理部220は、遅延更新データでデフォルト値を置き換える(S11)。   FIG. 6 is a flowchart illustrating an example of a flow of processing executed by the data management unit 220 of the search server 200. When there is a push notification from the delayed update processing server 300 (S10), the data management unit 220 replaces the default value with the delayed update data (S11).

図7は、検索サーバ200の検索実行部230およびランキング処理部240により実行される処理の流れの一例を示すフローチャートである。検索実行部230は、オークションサーバ100からクエリを取得すると(S20)、転置インデックス254を参照してドキュメントIDを取得する(S21)。次に、検索実行部230は、検索用DB252からS21で取得したドキュメントIDに対応する商品を抽出する(S22)。次に、ランキング処理部240が、S22で抽出された商品についてランキング計算を行い(S23)、ランキング結果をオークションサーバ100に送信する(S24)。   FIG. 7 is a flowchart illustrating an example of a flow of processing executed by the search execution unit 230 and the ranking processing unit 240 of the search server 200. When the search execution unit 230 acquires a query from the auction server 100 (S20), the search execution unit 230 acquires the document ID with reference to the transposed index 254 (S21). Next, the search execution unit 230 extracts a product corresponding to the document ID acquired in S21 from the search DB 252 (S22). Next, the ranking processing unit 240 performs ranking calculation for the product extracted in S22 (S23), and transmits the ranking result to the auction server 100 (S24).

図8は、遅延更新処理サーバ300により実行される処理の流れの一例を示すフローチャートである。フロント処理部310は、ソースデータを取得すると(S30)、遅延更新用DB332を参照し(S31)、ドキュメントIDまたは対象特定情報がソースデータと同じ遅延更新データが存在するか否かを判定する(S32)。同じものが存在しない場合、フロント処理部310は、特定処理部320に対して特定処理を指示する(ステップS33)。   FIG. 8 is a flowchart illustrating an example of the flow of processing executed by the delayed update processing server 300. When the front processing unit 310 acquires the source data (S30), the front processing unit 310 refers to the delayed update DB 332 (S31) and determines whether there is delayed update data having the same document ID or target identification information as the source data (S31). S32). If the same is not present, the front processing unit 310 instructs the specific processing unit 320 to perform specific processing (step S33).

[処理イメージ]
図9は、以上説明した処理によって実現される各フェーズ(局面)の処理を概念的に示す図である。まず、フェーズ1において、出品者がオークションサーバ100に商品を出品すると、オークションサーバ100は、ドキュメントIDを付与してソースデータを生成し、ソースデータを検索サーバ200に送信する。検索サーバ200は、検索用DB252にソースデータを登録する。図示を省略しているが、ソースデータの一部または全部は遅延更新サーバ300にも送信されている。
[Processing image]
FIG. 9 is a diagram conceptually showing processing of each phase (phase) realized by the processing described above. First, in phase 1, when an exhibitor sells a product on the auction server 100, the auction server 100 generates a source data by giving a document ID, and transmits the source data to the search server 200. The search server 200 registers source data in the search DB 252. Although not shown, part or all of the source data is also transmitted to the delayed update server 300.

フェーズ2において、入札者がクエリをオークションサーバ100に伝えると、オークションサーバ100はクエリを検索サーバ200に送信する。検索サーバ200は、転置インデックス254と検索用DB252を用いて検索およびランキング処理を行う。検索およびランキングの結果はオークションサーバ100を介して入札者に提供される。この時点では、検索用DB252における、該当するドキュメントIDの遅延更新データの項目には、デフォルト値が登録されている。   In phase 2, when the bidder transmits the query to the auction server 100, the auction server 100 transmits the query to the search server 200. The search server 200 performs search and ranking processing using the transposed index 254 and the search DB 252. Search and ranking results are provided to bidders via the auction server 100. At this time, a default value is registered in the delayed update data item of the corresponding document ID in the search DB 252.

フェーズ3において、遅延更新サーバ300が検索サーバ200に対してプッシュ通知を行い、検索サーバ200は、検索用DB252における、該当するドキュメントIDの遅延更新データの項目を、デフォルト値から遅延更新データに置き換える。   In phase 3, the delayed update server 300 sends a push notification to the search server 200, and the search server 200 replaces the delayed update data item of the corresponding document ID in the search DB 252 from the default value to the delayed update data. .

フェーズ4において、入札者がクエリをオークションサーバ100に伝えると、オークションサーバ100はクエリを検索サーバ200に送信する。検索サーバ200は、転置インデックス254と検索用DB252を用いて検索およびランキング処理を行う。検索およびランキングの結果はオークションサーバ100を介して入札者に提供される。この時点では、検索用DB252における、該当するドキュメントIDの遅延更新データの項目には、フェーズ3で受信した遅延更新データが登録されている。   In phase 4, when the bidder transmits the query to the auction server 100, the auction server 100 transmits the query to the search server 200. The search server 200 performs search and ranking processing using the transposed index 254 and the search DB 252. Search and ranking results are provided to bidders via the auction server 100. At this time, the delayed update data received in the phase 3 is registered in the delayed update data item of the corresponding document ID in the search DB 252.

なお、図1に示す検索利用サービスサーバ400は、例えば、各種の検索サービスを実行するサーバである。サービスサーバ400は、自身が行う検索サービスの結果の中に、オークションサーバ100において出品されている商品の情報を含めて端末装置500に送信するなどの処理を行う。   The search utilization service server 400 shown in FIG. 1 is a server that executes various search services, for example. The service server 400 performs processing such as sending information to the terminal device 500 that includes information on the products for sale on the auction server 100 in the result of the search service performed by itself.

以上説明した実施形態のデータ管理システム、データ管理方法、およびプログラムによれば、ソースデータ取得部210がソースデータを取得し、データ管理部220が取得されたソースデータを検索用DB252に登録し、遅延更新処理サーバ300がソースデータの一部または全部をデータ管理部220と並行して取得すると共に、ソースデータの一部または全部について特定処理を実行し、遅延更新データを、検索用DB252に登録するための処理を行うことで、リアルタイム性を維持しつつ、より高度な情報を検索用DB252に登録することができる。データ管理部220は、処理時間を要する特定処理の結果を待たずにソースデータを検索用DB252に登録するため、出品後、間もない商品を検索結果に含ませることができる。なお、その時点では遅延更新データをランキング処理に反映させることはできないが、デフォルト値を用いてランキング計算を行うことで、速報的なランキング結果を返すことができる。また、事後的に遅延更新データを検索用DBに追加することで、価値の高い商品を高い順位で入札者に推奨することができる。   According to the data management system, data management method, and program of the embodiment described above, the source data acquisition unit 210 acquires the source data, the data management unit 220 registers the acquired source data in the search DB 252, The delayed update processing server 300 acquires part or all of the source data in parallel with the data management unit 220, executes specific processing for part or all of the source data, and registers the delayed update data in the search DB 252. By performing the processing for this purpose, more advanced information can be registered in the search DB 252 while maintaining real-time performance. Since the data management unit 220 registers the source data in the search DB 252 without waiting for the result of the specific processing that requires processing time, it is possible to include a product immediately after listing in the search result. At that time, the delayed update data cannot be reflected in the ranking process, but a preliminary ranking result can be returned by performing the ranking calculation using the default value. Further, by adding delayed update data to the search DB after the fact, it is possible to recommend high-value products to bidders in a high order.

上記説明した処理とは別に、検索サーバ200は、あるユーザがクリックした商品の画像の画像特徴に基づいて、Histogram Intersectionによってランキング計算を行ってもよい。この場合、検索サーバ200は、以下の手順で処理を行う。   Apart from the processing described above, the search server 200 may perform ranking calculation by Histogram Intersection based on the image feature of the image of the product clicked by a certain user. In this case, the search server 200 performs processing according to the following procedure.

(1)対象のサムネイル画像のRGBを1つにまとめ、ビンの数が64個のヒストグラムを計算する。
(2)ユーザの閲覧履歴(最大20件)から各サムネイル画像のヒストグラムを計算し、平均を求める(ユーザ特徴)。
(3)対象のサムネイル画像とユーザ特徴について、式(1)によってHistogram Intersectionを計算する。式中、Hはユーザ特徴のヒストグラムであり、Hは対象のサムネイル画像のヒストグラムである。このHistogram Intersectionが高い画像ほど、ユーザがこれまでに検索した画像に近い画像特徴を有すると考えられるため、順位を高くする。
(1) Combine the RGB of the target thumbnail image into one and calculate a histogram with 64 bins.
(2) A histogram of each thumbnail image is calculated from the user's browsing history (up to 20) and an average is obtained (user characteristics).
(3) Histogram Intersection is calculated for the target thumbnail image and user characteristics using equation (1). In the equation, H 1 is a histogram of user characteristics, and H 2 is a histogram of a target thumbnail image. An image with a higher Histogram Intersection is considered to have an image feature closer to the image searched by the user so far, and therefore the ranking is increased.

Figure 2018156237
Figure 2018156237

以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。   As mentioned above, although the form for implementing this invention was demonstrated using embodiment, this invention is not limited to such embodiment at all, In the range which does not deviate from the summary of this invention, various deformation | transformation and substitution Can be added.

100 オークションサーバ
110 オークション管理部
120 バッファ管理部
200 検索サーバ
210 ソースデータ取得部
220 データ管理部
230 検索実行部
240 ランキング処理部
250 第1記憶部
300 遅延更新処理サーバ
310 フロント処理部
320 特定処理部
330 第2記憶部
340 プッシュ通知部
400 検索利用サービスサーバ
500 端末装置
100 auction server 110 auction management unit 120 buffer management unit 200 search server 210 source data acquisition unit 220 data management unit 230 search execution unit 240 ranking processing unit 250 first storage unit 300 delayed update processing server 310 front processing unit 320 specific processing unit 330 Second storage unit 340 Push notification unit 400 Search service server 500 Terminal device

Claims (7)

ソースデータを検索用データベースに登録するデータ管理部と、
前記ソースデータの一部または全部を前記データ管理部と並行して取得すると共に、前記ソースデータの一部または全部について特定処理を実行し、前記特定処理の結果として生成された遅延更新データを前記検索用データベースに反映させるための処理を行う遅延更新処理部と、
を備えるデータ管理システム。
A data management unit for registering source data in a search database;
Acquiring a part or all of the source data in parallel with the data management unit, executing a specific process for a part or all of the source data, the delayed update data generated as a result of the specific process A delayed update processing unit that performs processing for reflecting in the search database;
A data management system comprising:
前記遅延更新処理部は、前記遅延更新データを前記検索用データベースに登録するように前記データ管理部に通知し、
前記通知を受けた前記データ管理部が、前記特定処理の結果を前記検索用データベースに反映させる、
請求項1記載のデータ管理システム。
The delayed update processing unit notifies the data management unit to register the delayed update data in the search database,
The data management unit that has received the notification reflects the result of the specific process in the search database.
The data management system according to claim 1.
前記遅延更新処理部は、前記データ管理部からのリクエストに依存せず、任意のタイミングで前記データ管理部に通知する、
請求項2記載のデータ管理システム。
The delayed update processing unit does not depend on a request from the data management unit, and notifies the data management unit at an arbitrary timing.
The data management system according to claim 2.
前記データ管理部は、
前記ソースデータを取得したときに、前記遅延更新データの代わりに仮のデータを前記検索用データベースに登録しておき、
その後、前記データ管理部または前記遅延更新処理部により、前記遅延更新データで前記仮のデータが置き換えられる、
請求項1から3のうちいずれか1項記載のデータ管理システム。
The data management unit
When the source data is acquired, temporary data is registered in the search database instead of the delayed update data,
Thereafter, the temporary data is replaced with the delayed update data by the data management unit or the delayed update processing unit.
The data management system according to any one of claims 1 to 3.
前記遅延更新処理部は、前記ソースデータの用途に鑑み価値の低いデータを除外して前記特定処理を行う、
請求項1から4のうちいずれか1項記載のデータ管理システム。
The delayed update processing unit performs the specifying process by excluding low-value data in view of the use of the source data.
The data management system according to any one of claims 1 to 4.
データ管理部が、ソースデータを検索用データベースに登録し、
遅延更新処理部が、前記ソースデータの一部または全部を前記データ管理部と並行して取得すると共に、前記ソースデータの一部または全部について特定処理を実行し、前記特定処理の結果として生成された遅延更新データを前記検索用データベースに反映させるための処理を行う、
データ管理方法。
The data management department registers the source data in the search database,
A delayed update processing unit obtains part or all of the source data in parallel with the data management unit, executes specific processing for part or all of the source data, and is generated as a result of the specific processing. Processing to reflect the delayed update data in the search database,
Data management method.
コンピュータに、
ソースデータを検索用データベースに登録させ、
前記ソースデータの一部または全部について特定処理を実行させ、
前記特定処理の結果として生成された遅延更新データを前記検索用データベースに反映させるための処理を行わせる、
プログラム。
On the computer,
Register the source data in the search database,
Specific processing is executed for a part or all of the source data;
Causing the delayed update data generated as a result of the specific process to be reflected in the search database;
program.
JP2017051083A 2017-03-16 2017-03-16 Data management systems, data management methods, and programs Active JP6936596B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017051083A JP6936596B2 (en) 2017-03-16 2017-03-16 Data management systems, data management methods, and programs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017051083A JP6936596B2 (en) 2017-03-16 2017-03-16 Data management systems, data management methods, and programs

Publications (2)

Publication Number Publication Date
JP2018156237A true JP2018156237A (en) 2018-10-04
JP6936596B2 JP6936596B2 (en) 2021-09-15

Family

ID=63716626

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017051083A Active JP6936596B2 (en) 2017-03-16 2017-03-16 Data management systems, data management methods, and programs

Country Status (1)

Country Link
JP (1) JP6936596B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111581431A (en) * 2020-04-28 2020-08-25 厦门市美亚柏科信息股份有限公司 Data exploration method and device based on dynamic evaluation

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03194655A (en) * 1989-12-25 1991-08-26 Nippon Telegr & Teleph Corp <Ntt> Method for accumulating and retrieving similar picture
JP2001052011A (en) * 1999-08-06 2001-02-23 Canon Inc Method and device for picture retrieval
US20070065045A1 (en) * 2005-09-16 2007-03-22 Masajiro Iwasaki Information management apparatus, information management method, and computer program product
JP2008186444A (en) * 2007-01-05 2008-08-14 Yahoo Japan Corp Sensitivity matching method, device and computer program
JP2009251850A (en) * 2008-04-04 2009-10-29 Albert:Kk Commodity recommendation system using similar image search
JP2010225082A (en) * 2009-03-25 2010-10-07 Noritsu Koki Co Ltd Image data management system and image data management method
JP2012117987A (en) * 2010-12-03 2012-06-21 Hitachi Ltd Data processing method, data processing system, and data processing device

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03194655A (en) * 1989-12-25 1991-08-26 Nippon Telegr & Teleph Corp <Ntt> Method for accumulating and retrieving similar picture
JP2001052011A (en) * 1999-08-06 2001-02-23 Canon Inc Method and device for picture retrieval
US20070065045A1 (en) * 2005-09-16 2007-03-22 Masajiro Iwasaki Information management apparatus, information management method, and computer program product
JP2007080210A (en) * 2005-09-16 2007-03-29 Ricoh Co Ltd Information management device, information management method, information management program and recording medium
JP2008186444A (en) * 2007-01-05 2008-08-14 Yahoo Japan Corp Sensitivity matching method, device and computer program
JP2009251850A (en) * 2008-04-04 2009-10-29 Albert:Kk Commodity recommendation system using similar image search
JP2010225082A (en) * 2009-03-25 2010-10-07 Noritsu Koki Co Ltd Image data management system and image data management method
JP2012117987A (en) * 2010-12-03 2012-06-21 Hitachi Ltd Data processing method, data processing system, and data processing device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111581431A (en) * 2020-04-28 2020-08-25 厦门市美亚柏科信息股份有限公司 Data exploration method and device based on dynamic evaluation
CN111581431B (en) * 2020-04-28 2022-05-20 厦门市美亚柏科信息股份有限公司 Data exploration method and device based on dynamic evaluation

Also Published As

Publication number Publication date
JP6936596B2 (en) 2021-09-15

Similar Documents

Publication Publication Date Title
US10489842B2 (en) Large-scale recommendations for a dynamic inventory
US11455672B2 (en) Systems and methods to adapt search results
US10719836B2 (en) Methods and systems for enhancing web content based on a web search query
US11930067B2 (en) Commerce applications: data handshake between an on-line service and a third-party partner
CN113792176A (en) Image evaluation
JP2014519277A (en) Determining information related to online video
US10109000B2 (en) View item related searches
WO2013049705A1 (en) Improved search and listing process
US11556969B2 (en) Method for performing sequence labelling on queries
US11972093B2 (en) System and method for aggregation and comparison of multi-tab content
US9741039B2 (en) Click modeling for ecommerce
US20190050877A1 (en) Method and apparatus for content distribution in online marketplace applications
US9135330B2 (en) Query expansion classifier for E-commerce
US20140280016A1 (en) Autocomplete-based advertisements
US20170193539A1 (en) Time-value estimation method and system for sharing environment
JP6936596B2 (en) Data management systems, data management methods, and programs
US20140358819A1 (en) Tying Objective Ratings To Online Items
JP6664580B2 (en) Calculation device, calculation method and calculation program
US8533056B2 (en) Customizing an online shopping experience for a user
US20140156620A1 (en) Enhanced online search
JP6007300B1 (en) Calculation device, calculation method, and calculation program
JP6927899B2 (en) Predictors, predictors, and programs

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190325

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20191101

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20191108

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200407

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200602

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201013

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201204

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20210323

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210618

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20210618

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20210628

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20210629

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210817

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210827

R150 Certificate of patent or registration of utility model

Ref document number: 6936596

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250