JP6936596B2 - Data management systems, data management methods, and programs - Google Patents

Data management systems, data management methods, and programs Download PDF

Info

Publication number
JP6936596B2
JP6936596B2 JP2017051083A JP2017051083A JP6936596B2 JP 6936596 B2 JP6936596 B2 JP 6936596B2 JP 2017051083 A JP2017051083 A JP 2017051083A JP 2017051083 A JP2017051083 A JP 2017051083A JP 6936596 B2 JP6936596 B2 JP 6936596B2
Authority
JP
Japan
Prior art keywords
data
search
data management
source data
delayed update
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.)
Active
Application number
JP2017051083A
Other languages
Japanese (ja)
Other versions
JP2018156237A (en
Inventor
淳一郎 北川
淳一郎 北川
尚樹 平井
尚樹 平井
洋太朗 鈴木
洋太朗 鈴木
山下 勝司
勝司 山下
典久 瀧澤
典久 瀧澤
松本 均
均 松本
壮 望月
壮 望月
寛和 横山
寛和 横山
春樹 静
春樹 静
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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)

Description

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

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

特開2016−139424号公報Japanese Unexamined Patent Publication No. 2016-139424

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

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

本発明の一態様は、ソースデータを検索用データベースに登録するデータ管理部と、前記ソースデータの一部または全部を前記データ管理部と並行して取得すると共に、前記ソースデータの一部または全部について特定処理を実行し、前記特定処理の結果として生成された遅延更新データを前記検索用データベースに反映させるための処理を行う遅延更新処理部と、を備えるデータ管理システムである。 One aspect of the present invention is a data management unit that registers source data in a search database, and 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. This is a data management system including a delayed update processing unit that executes specific processing for and reflects the delayed update data generated as a result of the specific processing in the search database.

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

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

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

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

[全体構成]
図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 delay update processing server 300, the search utilization 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, WAN (Wide Area Network), LAN (Local Area Network) and the like. The hardware classification shown in FIG. 1 is merely an example. 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 shown 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 to request an image, send a query, or perform other processing to the auction server 100. From the terminal device 500 used by the seller of the auction, data regarding the goods or services to be put up (hereinafter, simply referred to as goods) is transmitted to the auction server 100. From the terminal device 500 used by the auction bidder (including the user who is about to bid), a query for the bidder to search for a product of interest, information indicating the intention to bid, the 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 about the auction to the search server 200 as source data. The source data includes data provided by the seller of the auction, as well as data on the progress of the auction. Further, 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 that the software notifies each other.

バッファ管理部120は、例えば、オークションの出品者からのソースデータをバッファに蓄積し、所望のタイミングで検索サーバ200と遅延更新処理サーバ300に送信する。この送信されるソースデータには、出品された商品の識別情報であるドキュメントIDが付与されている。ドキュメントIDは、オークション管理部110によって商品に対して付与されるものである。なお、バッファ管理部120は、ソースデータを検索サーバ200にのみ送信し、検索サーバ200において、ソースデータの一部または全部を遅延更新処理サーバ300に転送するようにしてもよい。 For example, the buffer management unit 120 stores the source data from the seller of the auction in the buffer and transmits it to the search server 200 and the delay update processing server 300 at a desired timing. A document ID, which is identification information of the exhibited product, is given to the transmitted source data. The document ID is given 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 a 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. In addition, some or all of these functional parts may be realized by hardware such as LSI (Large Scale Integration), ASIC (Application Specific Integrated Circuit), FPGA (Field-Programmable Gate Array), or software. It may be realized by the cooperation of hardware and hardware. The first storage unit 250 is realized by, for example, an HDD (Hard Disk Drive) or a flash memory. For example, the search DB 252 and the inverted index 254 are stored in the first storage unit 250.

ソースデータ取得部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 a 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 appropriately processes the source data and registers it in the search DB 252. FIG. 2 is a diagram showing an example of the contents of the search DB 252. Information such as a document ID, a title, an image URL (Uniform Resource Locator), a price, a number of bids, a number of favorites registered, and delayed update data is registered in the search DB 252.

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

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

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

検索実行部230は、転置インデックス254を用いて、オークションサーバ100から依頼された検索を実行する。例えば、オークションサーバ100からクエリ「テレビ」について検索を依頼された場合、検索実行部230は、転置インデックス254からドキュメントID=001、005、…を取得する。そして、検索実行部230は、ドキュメントID=001、005、…である商品の情報を検索用DB252から抽出する。 The search execution unit 230 uses the inverted index 254 to execute the search requested by the auction server 100. For example, when the auction server 100 requests a search for the query "television", the search execution unit 230 acquires the document IDs = 001, 005, ... From the inverted index 254. Then, the search execution unit 230 extracts the product information having the 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 products is transmitted to the auction server 100 together with the ranking information.

ランキング処理部240による順位付けの手法としては、種々のものが採用され得る。例えば、ランキング処理部240は、入札数が多い商品に高いスコアを付与してよい。また、ランキング処理部240は、お気に入り登録数が多い商品に高いスコアを付与してよい。また、ランキング処理部240価格が安い商品に高いスコアを付与してよい。 As a ranking method by the ranking processing unit 240, various methods can be adopted. For example, the ranking processing unit 240 may give a high score to a product having a large number of bids. In addition, the ranking processing unit 240 may give a high score to a product having a large number of favorite registrations. In addition, a high score may be given to a product having a low price in the ranking processing unit 240.

また、ランキング処理部240は、遅延更新データとして登録された画像特徴から、商品の画像が鮮明であることが分かる商品に高いスコアを付与してよい。画像特徴としては、画像の明るさ、カラフルさ、コントラスト、L*a*bヒストグラム、細部の鮮鋭度などがある。遅延更新データとして画像特徴などの高度な情報を含めておくことで、精度の高いランキング処理を行うことができる。 In addition, the ranking processing unit 240 may give a high score to a product whose image is clear from the image features registered as delayed update data. Image features include image brightness, colorfulness, contrast, L * a * b histogram, and fineness of detail. 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 delay 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. Be prepared. Hereinafter, when it is not distinguished which specific processing unit it is, 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 by, for example, a processor such as a CPU executing a program. Further, a part or all of these functional units may be realized by hardware such as LSI, ASIC, FPGA, or may be realized by the 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 showing an example of the contents of the delayed update DB 332. In the delayed update DB 332, for example, information such as target specific information, delayed update data, transmitted flag, registration date and time is associated with the document ID. The target-specific information is information that identifies data to be specified in a specific process, such as an image URL of an image of a target for which image features are to be obtained, and identification information (or text itself) of text to be distributed and expressed.

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

それぞれの特定処理部320−1〜320−nは、固有の特定処理を実行する。例えば、特定処理部320−1は画像特徴を求める処理を実行し、特定処理部320−2はテキストを分散表現化する処理を実行する。特定処理部320は、処理の結果として生成される遅延更新データを、ドキュメントIDや対象特定情報、登録日時等の情報と共に遅延更新用DB332に格納する。 Each specific processing unit 320-1 to 320-n executes a unique specific process. For example, the specific processing unit 320-1 executes a process for obtaining an image feature, and the specific processing unit 320-2 executes a process for decentralizing the text. 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 the document ID, the target identification information, and the registration date and time.

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

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

[処理フロー]
図5は、検索サーバ200のソースデータ取得部210とデータ管理部220により実行される処理の流れの一例を示すフローチャートである。まず、ソースデータ取得部210が繰り返しソースデータを取得する(S1)。検索用DB252の更新タイミングが到来すると(S2)、データ管理部220が、既に取得されたソースデータに基づいて、検索用DB252を更新する(S3)。そして、データ管理部220は、遅延更新データの項目にデフォルト値をセットする(S4)。検索サーバ200は、係る処理を繰り返し実行する。
[Processing flow]
FIG. 5 is a flowchart showing an example of a processing flow 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 the source data (S1). When the update timing of the search DB 252 arrives (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 executes such processing.

図6は、検索サーバ200のデータ管理部220により実行される処理の流れの一例を示すフローチャートである。遅延更新処理サーバ300からプッシュ通知があると(S10)、データ管理部220は、遅延更新データでデフォルト値を置き換える(S11)。 FIG. 6 is a flowchart showing an example of a processing flow 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 showing an example of a processing flow 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 the query from the auction server 100 (S20), the search execution unit 230 refers to the inverted index 254 and acquires the document ID (S21). Next, the search execution unit 230 extracts the product corresponding to the document ID acquired in S21 from the search DB 252 (S22). Next, the ranking processing unit 240 calculates the ranking of the products 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 showing an example of a processing flow 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 or not there is delayed update data having the same document ID or target specific information as the source data (S30). S32). If the same thing does not exist, 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 the processing of each phase (phase) realized by the processing described above. First, in Phase 1, when the seller puts up an item on the auction server 100, the auction server 100 assigns a document ID, generates source data, and transmits the source data to the search server 200. The search server 200 registers the 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 sends the query to the search server 200. The search server 200 performs search and ranking processing using the inverted index 254 and the search DB 252. The search and ranking results are provided to bidders via the auction server 100. At this point, the default value is registered in the item of the delayed update data of the corresponding document ID in the search DB 252.

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

フェーズ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 sends the query to the search server 200. The search server 200 performs search and ranking processing using the inverted index 254 and the search DB 252. The search and ranking results are provided to bidders via the auction server 100. At this point, the delayed update data received in Phase 3 is registered in the item of the delayed update data of the corresponding document ID in the search DB 252.

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

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

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

Figure 0006936596
Figure 0006936596

以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。 Although the embodiments for carrying out the present invention have been described above using the embodiments, the present invention is not limited to these embodiments, and various modifications and substitutions are made without departing from the gist of the present invention. 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 Delay update processing server 310 Front processing unit 320 Specific processing unit 330 Second storage unit 340 Push notification unit 400 Search usage service server 500 Terminal device

Claims (7)

電子商取引によって販売される商品に関する情報であるソースデータを検索用データベースに登録するデータ管理部と、
前記ソースデータの一部または全部を前記データ管理部と並行して取得すると共に、前記ソースデータの一部または全部について特定処理を実行し、前記特定処理の結果として生成された遅延更新データを前記検索用データベースに反映させるための処理を行う遅延更新処理部と、
前記データ管理部により前記ソースデータが前記検索用データベースに登録され、前記遅延更新データが未だ登録されていない時点から、前記登録されたソースデータを対象として商品の検索処理を行い、前記遅延更新データが登録された後は、前記遅延更新データと前記ソースデータを含むデータを対象として商品の検索処理を行う検索実行部と、
を備え
前記特定処理は、テキストを分散表現化する処理を含む、
データ管理システム。
A data management department that registers source data, which is information about products sold by electronic commerce, in a search database,
A part or all of the source data is acquired in parallel with the data management unit, a specific process is executed for a part or all of the source data, and the delayed update data generated as a result of the specific process is obtained. Delayed update processing unit that performs processing to reflect in the search database,
Wherein the data management unit the source data is registered in the search database, from said time delay update data is not yet registered, have row search processing of the product as a target source data that is the registration, the delay updating After the data is registered, the search execution unit that performs the product search process for the data including the delayed update data and the source data, and
Equipped with a,
The specific process includes a process of decentralizing the text.
Data management system.
前記遅延更新処理部は、前記遅延更新データを前記検索用データベースに登録するように前記データ管理部に通知し、
前記通知を受けた前記データ管理部が、前記特定処理の結果を前記検索用データベースに反映させる、
請求項1記載のデータ管理システム。
The delayed update processing unit notifies the data management unit to register the delayed update data in the search database, and then notifies the data management unit.
Upon receiving the notification, the data management unit 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 the 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.
After that, the data management unit or the delay update processing unit replaces the provisional data with the delay update data.
The data management system according to any one of claims 1 to 3.
前記遅延更新処理部は、前記ソースデータの用途に鑑み価値の低いデータを除外して前記特定処理を行う、
請求項1から4のうちいずれか1項記載のデータ管理システム。
The delayed update processing unit performs the specific processing by excluding data having low value 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, which is information about the products sold by electronic commerce, in the search database.
The delayed update processing unit acquires a part or all of the source data in parallel with the data management unit, executes a specific process for a part or all of the source data, and is generated as a result of the specific process. Perform processing to reflect the delayed update data in the search database.
The search execution unit performs a product search process for the registered source data from the time when the source data is registered in the search database by the data management unit and the delayed update data is not yet registered. After the delayed update data is registered, a product search process is performed on the data including the delayed update data and the source data.
The specific process includes a process of decentralizing the text.
Data management method.
コンピュータに、
電子商取引によって販売される商品に関する情報であるソースデータを検索用データベースに登録させ、
検索用データベースに登録させる処理と並行して前記ソースデータの一部または全部を取得すると共に、前記ソースデータの一部または全部について特定処理を実行させ、
前記特定処理の結果として生成された遅延更新データを前記検索用データベースに反映させるための処理を行わせ、
前記ソースデータが前記検索用データベースに登録され、前記遅延更新データが未だ登録されていない時点から、前記登録されたソースデータを対象として商品の検索処理を行わせ、
前記遅延更新データが登録された後は、前記遅延更新データと前記ソースデータを含むデータを対象として商品の検索処理を行わせ、
前記特定処理は、テキストを分散表現化する処理を含む、
プログラム。
On the computer
Register the source data, which is information about the products sold by electronic commerce, in the search database, and register it in the search database.
In parallel with the process of registering in the search database, a part or all of the source data is acquired, and a specific process is executed for a part or all of the source data.
A process for reflecting the delayed update data generated as a result of the specific process in the search database is performed.
From the time when the source data is registered in the search database and the delayed update data is not yet registered, the product search process is performed on the registered source data.
After the delayed update data is registered, a product search process is performed on the data including the delayed update data and the source data.
The specific process includes a process of decentralizing the text.
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 JP2018156237A (en) 2018-10-04
JP6936596B2 true 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)

Families Citing this family (1)

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

Family Cites Families (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
JP4700452B2 (en) * 2005-09-16 2011-06-15 株式会社リコー Information management apparatus, information management method, information management program, and recording medium
JP4981630B2 (en) * 2007-01-05 2012-07-25 ヤフー株式会社 Kansei matching method, apparatus 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
JP5678620B2 (en) * 2010-12-03 2015-03-04 株式会社日立製作所 Data processing method, data processing system, and data processing apparatus

Also Published As

Publication number Publication date
JP2018156237A (en) 2018-10-04

Similar Documents

Publication Publication Date Title
US11694427B2 (en) Identification of items depicted in images
JP6122199B2 (en) System, method and storage medium for improving access to search results
US20220391646A1 (en) Image evaluation
JP6041326B2 (en) Determining information related to online video
US10719836B2 (en) Methods and systems for enhancing web content based on a web search query
US20140278939A1 (en) Advertisement extraction device and advertisement extraction method
JP2016507840A (en) Method, device, and system for publishing product information
WO2016007382A1 (en) Methods for automatic query translation
WO2014182889A1 (en) Performing image searches in a network-based publication system
US20150248694A1 (en) Attributing offline purchases to online advertising
US11972093B2 (en) System and method for aggregation and comparison of multi-tab content
US20120203865A1 (en) Apparatus and methods for providing behavioral retargeting of content from partner websites
JP6928690B2 (en) Matching the display of the product provided by the user to the seller of the product
US9741039B2 (en) Click modeling for ecommerce
JP6936596B2 (en) Data management systems, data management methods, and programs
US20170278119A1 (en) Method and apparatus for content distribution in online marketplace applications
JP2018088282A (en) Extracting apparatus, extracting method, and extracting program
US20190318386A1 (en) Information processing method, program, information processing system, and information processing apparatus
US20140358819A1 (en) Tying Objective Ratings To Online Items
JP6664580B2 (en) Calculation device, calculation method and calculation program
JP2010092364A (en) Item management system, item management device, and item management method for acquiring information about user&#39;s real life
TWI639093B (en) Object set and processing method and device thereof
JP6007300B1 (en) Calculation device, calculation method, and calculation program
KR20220054990A (en) Method and Device for Providing Information of Clothing Goods Based on Image and Video Search
KR20140098532A (en) Page searching system and providing method thereof

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