JP2023509812A - データ記憶方法、装置、クエリ方法、電子機器および可読媒体 - Google Patents

データ記憶方法、装置、クエリ方法、電子機器および可読媒体 Download PDF

Info

Publication number
JP2023509812A
JP2023509812A JP2022523671A JP2022523671A JP2023509812A JP 2023509812 A JP2023509812 A JP 2023509812A JP 2022523671 A JP2022523671 A JP 2022523671A JP 2022523671 A JP2022523671 A JP 2022523671A JP 2023509812 A JP2023509812 A JP 2023509812A
Authority
JP
Japan
Prior art keywords
tag
data
user
bucket
tag data
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
JP2022523671A
Other languages
English (en)
Other versions
JP7451697B2 (ja
Inventor
全威龍
王冬
Original Assignee
バイドゥ オンライン ネットワーク テクノロジー(ペキン) カンパニー リミテッド
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
Priority claimed from CN202011452209.3A external-priority patent/CN112559522A/zh
Application filed by バイドゥ オンライン ネットワーク テクノロジー(ペキン) カンパニー リミテッド filed Critical バイドゥ オンライン ネットワーク テクノロジー(ペキン) カンパニー リミテッド
Publication of JP2023509812A publication Critical patent/JP2023509812A/ja
Application granted granted Critical
Publication of JP7451697B2 publication Critical patent/JP7451697B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24553Query execution of query operations
    • G06F16/24554Unary operations; Data partitioning operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本発明は、各ユーザのタグデータが異なるタグテーブルに分布されるように、ユーザIDに基づいて全てのユーザのタグデータをバケット分けし、各ユーザのバケットデータを取得することと、同じユーザのバケットデータを同じ記憶モジュールに記憶することとを含むデータ記憶方法を開示する。該方法は、ネットワークにおけるデータの伝送量を減少し、クエリ速度を高めることができる。本発明は、データ記憶装置、クエリ方法、電子機器およびコンピュータ可読媒体を更に開示する。【選択図】図1

Description

本願は、2020年12月07日に中国専利局に提出された出願番号が202011452209.3である中国特許出願に対して優先権を主張するものであり、該出願の全ての内容を引用により本願に援用する。
本願は、コンピュータ技術分野に関し、例えば、ミニプログラム、ビッグデータ、クラウドコンピューティング、およびインターネットの技術分野に関し、例えば、データ記憶方法、装置、クエリ方法、電子機器およびコンピュータ可読媒体に関する。
ほとんどのミニプログラムは、トラフィックで運営されている。ミニプログラムの開発者は、通常、開発者プラットフォームでユーザ画像および行動特徴を選択して特定の群衆パッケージを指向的に生成し、また、該特定の群衆パッケージ内のユーザに正確にタッチする。
実際の操作過程において、ミニプログラムの開発者は、ユーザの行動に応じて異なる種類のタグデータを確立している。タグトピックの数が多い場合、通常、複数のテーブルを関連してクエリすることに関わることに起因して、ネットワークにおけるデータの伝送量は大きくなる。
本発明は、データ記憶方法、装置、クエリ方法、電子機器およびコンピュータ記憶媒体を提供する。
各ユーザのタグデータが異なるタグテーブルに分布されるように、ユーザIDに基づいて全てのユーザのタグデータをバケット分けし、各ユーザのバケットデータを取得することと、
同じユーザのバケットデータを同じ記憶モジュールに記憶することと、を含む、
データ記憶方法を提供する。
全てのユーザのタグデータを記憶し、且つ、同じユーザのバケットデータが同じ前記記憶モジュールに記憶されるように構成される複数の記憶モジュールを備え、各ユーザのタグデータは、異なるタグテーブルに分布され、前記バケットデータは、ユーザIDに基づいて前記全てのユーザのタグデータをバケット分けすることにより取得されるデータである、
データ記憶装置を更に提供する。
タグクエリ要求に応答し、同じ記憶モジュールのバケットデータからクエリ対象となるユーザのタグデータを取得することを含み、
前記タグクエリ要求が、前記クエリ対象となるユーザの身分を識別するためのユーザIDを含み、
前記バケットデータが、ユーザIDに基づいて全てのユーザのタグデータをバケット分けすることにより取得されるデータであり、且つ、同じユーザのバケットデータが同じ記憶モジュールに記憶される、
クエリ方法を更に提供する。
少なくとも1つのプロセッサと、
少なくとも1つのプロセッサに通信可能に接続されているメモリと、
を備え、
前記メモリには、前記少なくとも1つのプロセッサによって実行可能な命令が記憶され、前記命令は、前記少なくとも1つのプロセッサが上記データ記憶方法またはクエリ方法を実行可能であるように、前記少なくとも1つのプロセッサにより実行される、
電子機器を更に提供する。
上記データ記憶方法またはクエリ方法を前記コンピュータに実行させるためのコンピュータ命令が記憶されている、
非一時的なコンピュータ可読記憶媒体を更に提供する。
本願の実施例におけるデータ記憶方法のフローチャートである。 本願の実施例におけるデータ記憶方法の模式図である。 本願の実施例におけるデータ記憶装置の構造模式図である。 本願の実施例におけるクエリ方法のフローチャートである。 本願の実施例におけるデータ記憶方法またはクエリ方法を実現するための電子機器のブロック図である。
以下、図面を参照しながら本願の例示的な実施例について説明し、ここで、理解の便宜上、本願の実施例の様々な細かい内容が含まれているが、例示的なものに過ぎないと理解すべきである。以下の説明において、公知されている機能および構造の説明は省略している。
本明細書で使用される「および/または」という用語は、1つまたは複数の列挙される関連エントリのいずれかおよび全ての組み合わせを含む。
本明細書で使用される用語は、特定の実施例を記述するためのものに過ぎず、本願を限定するためのものではない。本明細書で使用される、「1つ」および「該」という単数形式は、文脈が明確に例外を示さない限り、複数形式も含むことを意味する。「含む」および/または「……で作製される」という用語が本明細書に使用されると、特徴、全体、ステップ、操作、素子および/または構成要素の存在を指定するが、1つまたは複数の他の特徴、全体、ステップ、操作、素子、構成要素および/またはその組み合わせの存在または追加を除外しない。
ミニプログラムの開発者は、トラフィック運営を行うために、開発者プラットフォームでユーザ画像および行動特徴を選択して特定の群衆パッケージを指向的に生成し、また、群衆パッケージ内のユーザに正確にタッチする。
開発者プラットフォームは、ユーザ行動に応じて異なる種類のタグデータを確立する必要があり、各種のタグデータを1つのトピックドメインと呼ぶ。例えば、開発者プラットフォームは、ユーザID(Identifier、ID)をユーザの一意のタグとし、ユーザ行動に応じて、基本属性タグデータと、活躍度タグデータと、支払行動タグデータとを確立する。ここで、基本属性タグデータはユーザの基本属性であり、表1に示すように、ユーザの性別および興味ポイントを含んでもよいが、これらに限定されない。
Figure 2023509812000002
活躍度タグデータは、ユーザがミニプログラムを開く行動特徴であり、例えば、表2に示すように、当日の活躍度および最近の30日間の活躍度である。
Figure 2023509812000003
支払行動タグデータは、ユーザのミニプログラム内での支払行動であり、例えば、表3に示すように、当日に支払った注文数および最近の30日間に支払行動があるか否かである。
Figure 2023509812000004
異なるタグデータは、下位層での記憶が関連しながら独立し、即ち、各タグテーブルは、下位層での記憶が相対的に独立するが、異なるタグテーブルにおける同じユーザに属するタグデータは関連する。ミニプログラムの開発者によるクエリがユーザの複数のタグトピックに関する場合、必要な結果を返すことができるために、複数のテーブルを関連してクエリする必要がある。
例えば、ユーザが20200102を現在のクエリ日付とし、最近の30日間に活躍で性別が「1」のユーザをクエリする。この場合、該クエリは、ユーザIDに基づいて2つのタグテーブルを関連してクエリする必要があり、即ち、基本属性タグテーブルと活躍度タグテーブルとを関連してクエリする。
ユーザが20200102を現在のクエリ日付とし、最近の30日間に活躍で性別が「1」で最近の7日間の支払った注文総数が10よりも大きいユーザをクエリする。この場合、該クエリは、ユーザIDに基づいて3つのタグテーブルを関連してクエリする必要があり、即ち、基本属性タグテーブルと、活躍度タグテーブルと、支払行動タグデータとを関連してクエリする。
ユーザ行動毎に1つのタグテーブルを設け、異なるユーザ行動のタグデータが異なるタグテーブルに記憶され、異なるタグテーブルが下位層で位置が異なる物理媒体に記憶されるため、関連してクエリする場合、ネットワークにおけるデータの伝送量が大きく、クエリ速度が遅く、クエリの性能に影響を及ぼす。更に、ビジネスが精細化を求めることに伴い、データベース内のテーブル数が急激に増加し、ビジネス使用複雑性およびデータベースのメンテナンスコストを増加する。
本願の実施例はデータ記憶方法を提供する。該データ記憶方法は、異なるタグテーブルに分布されている全てのユーザのタグデータをローカルに連携記憶し、複数のテーブルを関連してクエリする場合のネットワークにおけるデータの伝送量を減少し、クエリ速度を高めることができる。
図1は、本願の実施例におけるデータ記憶方法のフローチャートである。図2は、本願の実施例におけるデータ記憶方法の模式図である。図1および図2を参照すると、本願の実施例におけるデータ記憶方法は、以下のステップを含む。
ステップ101において、ユーザIDに基づいて、全てのユーザのタグデータをバケット分けし、各ユーザのバケットデータを取得する。
ユーザIDはユーザの身分の一意のタグであり、ユーザIDにより、ユーザを区分して確定することができる。ユーザは、ネットワークの使用過程で異なる行動を行い、これらの行動にタグを加えてタグテーブルを確立し、タグテーブルにおけるタグデータはユーザ行動を記録するデータである。該タグテーブルは、ユーザIDとユーザ行動との対応関係を確立する。タグは、サービスエンティティの分析角度を拡張でき、異なるタグを操作することにより、データ選別および分析を行うことができる。
バケット分け(Bucketing)とは、ユーザIDに従って同じタグタイプに属するタグデータをバケット分けし、同じユーザに属するタグデータを1つのバケット内に割り当てることを意味する。
いくつかの実施例において、ユーザIDに基づいて全てのユーザのタグデータをバケット分けし、各ユーザのバケットデータを取得することは、全てのユーザのタグデータをタグタイプに従って分類し、対応するタグテーブルを取得することと、ユーザIDに基づいて各タグテーブルにおけるタグデータをバケット分けし、各ユーザのバケットデータを取得することとを含む。
バケットデータは、1つのバケット内に割り当てられるデータであり、言い換えれば、同じユーザに属する異なるタグデータのセットである。
いくつかの実施例において、タグのクエリ方式に従ってタグデータを分類し、タグテーブルを生成する。例えば、タグタイプは、静的タグと、動的タグとを含み、静的タグに対応するタグデータは時間的に変化せず、動的タグに対応するデータは時間的に変化する。即ち、タグデータは静的タグデータおよび動的タグデータを含み、静的タグデータに基づいて静的タグデータテーブルを確立し、動的タグデータに基づいて動的タグデータテーブルを確立する。ここで、静的タグデータは時間的に変化しないデータであり、即ち、ユーザの1つ時点におけるタグ値である。例えば、静的タグデータは、表4に示すように、基礎属性タグデータおよび活躍度タグデータを含んでもよいが、これらに限定されない。
Figure 2023509812000005
動的タグデータは時間的に変化するデータであり、即ち、ユーザの1つの期間内のタグ値である。例えば、動的タグデータは、表5に示すように、支払タグデータを含んでもよいが、これらに限定されない。
Figure 2023509812000006
本実施例において、タグデータをクエリ方式に従って分類し、各タイプのタグデータのために1つのタグテーブルを確立することにより、行動方式に従ってタグテーブルを確立する場合よりもタグテーブルの数を減少し、ひいてはデータベースのメンテナンスコストおよびクエリ文の複雑性を低減することができる。更に、タグデータをクエリするとき、複数のテーブルを関連してクエリする確率を低減し、クエリ速度を高め、ひいてはクエリ性能を向上させ、超大規模なデータのシーンにおけるクエリ性能の問題を効果的に解決することができる。
例えば、表4の静的タグデータテーブルに全てのユーザの静的タグデータが含まれており、表5の動的タグデータテーブルに全てのユーザの動的タグデータが含まれている。従って、本願は、2つのタグテーブルだけで基礎属性タグと活躍度タグと支払タグとを分類することができる。行動方式に従ってタグテーブルを確立すれば、3つのタグテーブルが必要となるため、本願はタグテーブルの数を減少する。
本実施例において、クエリ方式に従ってタグテーブルを確立することにより、タグテーブルの数を減少することができ、精細化運営の過程においてタグテーブル数が膨張するという問題を回避することができる。更に、タグテーブルの数の減少は、クエリ文の複雑性の低減にも寄与する。
図2を参照すると、ユーザIDに基づいて各タグテーブルにおけるタグデータをバケット分けする。ユーザ1の静的タグデータを第1バケット211内に割り当て、ユーザ1の動的タグデータを第2バケット212内に割り当てる。第1バケット211および第2バケット212は同じ記憶モジュールに位置し、即ち、第1記憶モジュール21に位置する。他のユーザのタグデータも、これと同様に、同じユーザのタグデータが同じ記憶モジュールに記憶され、タグタイプに従って異なるバケットに分布される。
ローカルに連携記憶することを実現するために、第1バケット211および第2バケット212の記憶番号が同じであり、同じユーザのタグデータを同じ記憶モジュールに記憶することを実現する。
いくつかの実施例において、ユーザIDに基づいて全てのユーザのタグデータをバケット分けし、各ユーザのバケットデータを取得することは、ユーザIDに基づいてハッシュ・アルゴリズムにより全てのユーザのタグデータをバケット分けし、各ユーザのバケットデータを取得することを含む。
例えば、ユーザIDに従って各タグデータをハッシュ演算を行い、余りを取ってバケット番号を取得し、即ち、タグテーブルにおける各記録をハッシュ演算を行い、演算結果の余りを取り、記録毎に1つのバケット番号を生成し、バケット番号が同じであるタグデータは同じユーザのタグデータであり、バケット番号が同じであるタグデータを同じ記憶モジュールに記憶する。
ステップ102において、同じユーザのバケットデータを同じ記憶モジュールに記憶する。
いくつかの実施例において、同じユーザのバケットデータを同じ記憶モジュールに記憶し、即ち、同じ記憶モジュールに同じユーザの全てのタグデータが記憶される。
図2を参照すると、記憶モジュールは、第1記憶モジュール21および第2記憶モジュール22を含む。ユーザIDに基づいてユーザ1のタグデータを第1記憶モジュール21に記憶し、ユーザ2のタグデータを第2記憶モジュール22に記憶する。
例えば、第1記憶モジュール21は、第1バケット211および第2バケット212を含み、ここで、第1バケット211は、ユーザ1に対応する静的タグテーブルにおけるタグデータを記憶するように構成され、例えば、第1バケット1にユーザ1の基礎属性タグおよび活躍度タグが記憶されている。例えば、「ユーザ1,20200102,1,1001,1,1」の場合、ユーザIDがユーザ1で、日付が2020年01月02日で、性別が1で、興味ポイントが1001で、最近の30日間に活躍していたユーザであり、当日の活躍回数が1である。第2バケット212は、ユーザ1に対応する動的タグテーブルにおけるタグデータを記憶することに用いられ、例えば、第2バケットにユーザ1の支払タグが記憶されている。例えば、「ユーザ1,20200101,1,2」の場合、ユーザIDがユーザ1で、日付が2020年01月01日で、最近の30日間に支払ったことがあり、当日の支払回数が2である。
本実施例は、2つの記憶モジュールを例として説明するが、本願が2つの記憶モジュールしか提供できないことを意味するものではなく、実際には、記憶モジュールの数は2つ以上の任意の数であってもよい。
本願の実施例は、複数の記憶モジュールを用いて静的タグテーブルおよび動的タグテーブルをローカルに連携記憶し、且つ、異なるタグデータテーブルにおける同じユーザのタグデータを1つの記憶モジュールに記憶することにより、複数のテーブルをクエリする場合、ネットワークにおけるデータの伝送量を減少し、クエリ速度を高め、ひいてはクエリ性能を向上させることができる。
同じユーザのタグデータを同じ記憶モジュールに記憶することは、ユーザ毎に1つの記憶モジュールを占有することを意味するものではなく、同じ記憶モジュールは、同じユーザのタグデータを同じ記憶モジュールに記憶することを確保すれば、複数のユーザのタグデータを記憶することができ、これにより、複数のテーブルをクエリする場合、1つの記憶モジュールからクエリ対象となるユーザのタグデータを取得すれば良い。
いくつかの実施例において、同じ機器でタグデータを少なくとも1部バックアップしてもよく、即ち、タグテーブル毎に複数のレプリカを設け、冗長記憶を行い、データの安全性を確保する。
本実施例は、2つのタグデータテーブルを例として説明するが、本願が2つのタグテーブルのみを処理できることを意味するものではない。実際には、本願の実施例におけるデータ記憶方法は、3つ以上のタグテーブルに適用でき、複数のタグテーブルを関連してクエリする場合、ネットワークにおけるデータの伝送量を減少し、クエリ速度を高め、超大規模なデータのシーンにおけるクエリ性能を効果的に向上させることができる。
本願の技術案に係るユーザの個人情報の取得、記憶および使用等は、いずれも関連する法律法規の規定に該当し、且つ公序良俗に反しない。
本願に係るータ記憶方法は、ユーザIDに基づいて全てのユーザのタグデータをバケット分けし、各ユーザのバケットデータを取得し、各ユーザのタグデータが異なるタグテーブルに分布され、同じユーザのバケットデータを同じ記憶モジュールに記憶することにより、複数のタグテーブルを関連してクエリする場合、異なるタグテーブルにおける同じユーザに属するバケットデータが同じ記憶モジュールに記憶されるため、同じユーザのタグデータは、ネットワークを介して伝送する必要がなく、ネットワークにおけるデータの伝送量を減少し、クエリ速度を高め、超大規模なデータのシーンにおけるクエリ性能を効果的に向上させる。
本願の実施例は、異なるタグテーブルに分布された全てのユーザのタグデータをローカルに連携記憶し、複数のテーブルを関連してクエリする場合のネットワークにおけるデータの伝送量を減少し、クエリ速度を高めるデータ記憶装置を提供する。
図3は、本願の実施例におけるデータ記憶装置の構造模式図である。図3を参照すると、データ記憶装置は、
全てのユーザのタグデータを記憶し、且つ、同じユーザのバケットデータが同じ記憶モジュールに記憶されるように構成される複数の記憶モジュールを備える。
ユーザのタグデータは、ユーザIDを基準として各ユーザ行動を記録する記録である。ユーザIDはユーザの身分の一意のタグであり、ユーザIDにより、ユーザを区分して確定することができる。ユーザは、ネットワークの使用過程で異なる行動を行い、これらの行動にタグを加えてタグテーブルを確立し、タグデータはユーザ行動を記録するデータである。記録しやすいために、ユーザのタグデータは異なるタグテーブルに分布される。タグは、サービスエンティティの分析角度を拡張でき、異なるタグを操作することにより、データ選別および分析を行うことができる。
バケットデータは、ユーザIDに基づいて異なるタグデータテーブルにおけるタグデータをグループ分けし、また、同じタグテーブルにおける同じユーザに属するタグデータを1つのバケット内に割り当てることによるものである。同じユーザにとって、異なるタグデータテーブルによって異なるバケットを取得することができ、同じユーザのバケットデータを同じ記憶モジュールに記憶することができる。
本願の実施例において、記憶装置は、異なる物理ノードに分布されて設けられてもよいし、同じ物理ノードに設けられてもよいし、一部の記憶装置が1つの物理ノードに設けられ、他の一部の記憶装置が他の物理ノードに設けられてもよい。実際の応用において、必要に応じて記憶装置を1つの物理ノードに設けてもよいし、複数の物理ノードに分布して設けてもよい。
いくつかの実施例において、タグタイプは、クエリ方式によって確定される。即ち、タグデータがタグのクエリ方式に従って分類され、タグテーブルが生成され、更に、同じタイプに属するタグデータが1つのタグテーブル内に分布される。例えば、クエリ方式に従って全てのユーザのタグデータを静的タグデータおよび動的タグデータに分け、対応して静的タグデータテーブルおよび動的タグデータテーブルに分ける。ここで、静的タグデータは、ユーザの1つの時点におけるタグ値であり、即ち、タグデータは時間的に変化しない。例えば、静的タグデータは、基礎属性タグデータと活躍度タグデータとを含んでもよいが、これらに限定されない。動的タグデータは、ユーザの1つの期間内のタグ値であり、即ち、時間的に変化するデータである。例えば、動的タグデータは、支払タグデータを含んでもよいが、これらに限定されない。
本実施例において、クエリ方式に従ってタグテーブルを確立することにより、ユーザ行動に従ってタグテーブルを確立する場合よりもタグテーブルの数を減少し、データベースのメンテナンスコストおよびビジネスの使用の複雑性を低減することができる。更に、タグデータをクエリする場合、複数のテーブルを関連してクエリする確率を低減し、クエリ速度を高め、ひいてはクエリ性能を向上させることができる。
本願の実施例におけるデータ記憶装置は、全てのユーザのタグデータを記憶し、更に同じユーザのバケットデータが同じ記憶モジュールに記憶されるように構成される複数の記憶モジュールを備えるため、複数のタグテーブルを関連してクエリする場合、ネットワークにおけるデータの伝送量を減少し、クエリ速度を高め、超大規模なデータのシーンにおけるクエリ性能を効果的に向上させることができる。
本願の実施例は、複数のテーブルを関連してクエリする場合のネットワークにおけるデータの伝送量を減少し、クエリ速度を高めることができるクエリ方法を提供する。
図4は、本願の実施例におけるクエリ方法のフローチャートである。図4を参照すると、クエリ方法は、以下のステップを含む。
ステップ401において、タグクエリ要求に応答し、同じ記憶モジュールのバケットデータからクエリ対象となるユーザのタグデータを取得する。
タグクエリ要求は、ユーザの身分を識別するためのユーザIDを含む。ユーザID(ID)は、ユーザの身分の一意のタグであり、ユーザIDにより、ユーザを区分して確定することができる。
バケット分けとは、ユーザIDに従って同じタグタイプに属するタグデータをグループ分けすることを意味する。バケットデータは、ユーザIDに基づいて全てのユーザのタグデータをバケット分けして取得したデータである。更に、同じユーザのバケットデータは同じ記憶モジュールに記憶される。
いくつかの実施例において、バケットデータは、ユーザIDに基づいてタグデータをグループ分けし、同じタグテーブルにおける同じユーザに属するタグデータを1つのバケット内に割り当て、同じユーザのバケットを同じ記憶モジュールに記憶することによるものである。
いくつかの実施例において、タグのクエリ方式に従ってタグデータを分類し、タグテーブルを生成し、更に、同じタイプに属するタグデータを1つのタグテーブル内に分布する。例えば、クエリ方式に従って全てのユーザのタグデータを静的タグデータおよび動的タグデータに分け、対応して静的タグデータテーブルおよび動的タグデータテーブルに分ける。ここで、静的タグデータは、ユーザの1つの時点におけるタグ値であり、即ち、タグデータは時間的に変化しない。例えば、静的タグデータは、基礎属性タグデータと活躍度タグデータとを含んでもよいが、これらに限定されない。動的タグデータは、ユーザの1つの期間内のタグ値であり、即ち、時間的に変化するデータである。例えば、動的タグデータは、支払タグデータを含んでもよいが、これらに限定されない。
動的タグデータは、クエリ時に、時間次元により動的統合することができ、指定されたクエリ時間範囲内に値の要求を満たすデータに対応するユーザは、対象となるユーザである。
本実施例において、クエリ方式に従ってタグテーブルを確立することにより、ユーザ行動に従ってタグテーブルを確定する場合よりもタグテーブルの数を減少し、データベースのメンテナンスコストおよびビジネスの使用の複雑性を低減することができる。更に、タグデータをクエリする場合、複数のテーブルを関連してクエリする確率を低減し、クエリ速度を高め、ひいてはクエリ性能を向上させることができる。
本願の実施例によれば、本願は、電子機器と、可読記憶媒体とを更に提供する。
図5に示すように、図5は、本願の実施例におけるデータ記憶方法またはクエリ方法を実現するための電子機器のブロック図である。電子機器は、ラップトップ型コンピュータ、デスクトップ型コンピュータ、ワークステーション、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータのような様々な形式のデジタルコンピュータを表すことを目的とする。電子機器は、携帯端末、携帯電話、スマートフォン、ウェララブル機器および他の類似する計算装置のような様々な形式の移動装置を表すこともできる。本明細書に示されたコンポーネント、それらの接続、関係、およびそれらの機能は例示的なものに過ぎず、本明細書に記載および/または要求される本願の実現を限定するものではない。
図5に示すように、該電子機器は、1つのまたは複数のプロセッサ501と、メモリ502と、各コンポーネントを接続するように構成され、高速インターフェースおよび低速インターフェースを含むインターフェースとを備える。複数のコンポーネントは、異なるバスで互に接続され、共通のマザーボードに取り付けられるかまたは必要に応じて他の方式で取り付けることができる。プロセッサは、電子機器内で実行される命令を処理することができ、メモリ内またはメモリ上に記憶されて外部の入出力装置(例えば、インターフェースに結合された表示デバイス)にグラフィカル・ユーザ・インターフェース(Graphical User Interface、GUI)のグラフィクス情報を表示するための命令を含む。他の実施形態において、必要があれば、複数のプロセッサおよび/または複数本のバスと、複数のメモリとを共に使用することができる。それと同様に、複数の電子機器に接続することができ、各機器は、一部の必要な動作(例えば、サーバアレイ、ブレードサーバ群、またはマルチプロセッサシステムとする)を提供する。図5において、1つのプロセッサ501を例とする。
メモリ502は、本発明に係る非一時的なコンピュータ可読記憶媒体である。ここで、本願に係るデータ記憶方法またはクエリ方法を前記少なくとも1つのプロセッサに実行させるために、前記メモリには少なくとも1つのプロセッサにより実行可能な命令が記憶されている。本発明の非一時的なコンピュータ可読記憶媒体には、本願に係るデータ記憶方法またはクエリ方法をコンピュータに実行させるためのコンピュータ命令が記憶されている。
メモリ502は、非一時的なコンピュータ可読記憶媒体として、非一時的なソフトウェアプログラム、非一時的なコンピュータ実行可能プログラムおよびモジュール、例えば、本願の実施例におけるデータ記憶方法またはクエリ方法に対応するプログラム命令/モジュールを記憶するために使用できる。プロセッサ501は、メモリ502に記憶された非一時的なソフトウェアプログラム、命令およびモジュールを実行することにより、サーバの様々な機能アプリケーションおよびデータ処理を実行し、即ち、上記方法の実施例におけるデータ記憶方法またはクエリ方法を実現する。
メモリ502は、プログラム記憶エリアおよびデータ記憶エリアを備え、プログラム記憶エリアには、オペレーティングシステム、少なくとも1つの機能に必要なアプリケーションプログラムが記憶され、データ記憶エリアには、データ記憶方法またはクエリ方法を実現するための電子機器の使用に基づいて作成されたデータ等を記憶されてもよい。また、メモリ502は、高速ランダムアクセスメモリを含んでもよく、少なくとも1つの磁気ディスク記憶デバイス、フラッシュメモリ、または他の非一時的な固体記憶デバイスのような非一時的なメモリを更に含んでもよい。いくつかの実施例において、メモリ502は、プロセッサ501に対してリモートに設けられたメモリを含むことが好ましく、これらのリモートメモリは、ネットワークを介してデータ記憶方法またはクエリ方法を実現するための電子機器に接続することができる。上記ネットワークの実例は、インターネット、イントラネット、ローカルエリアネットワーク、移動体通信ネットワークおよびその組み合わせを含んでもよいが、それらに限定されない。
データ記憶方法またはクエリ方法を実現するための電子機器は、入力装置503と、出力装置504とを備えてもよい。プロセッサ501と、メモリ502と、入力装置503と、出力装置504とは、バスまたは他の方式で接続されることができ、図5における例として、バスを介して接続されている。
入力装置503は、入力された数字または文字情報を受信し、データ記憶方法またはクエリ方法を実現するための電子機器のユーザ設定および機能制御に関連するキー信号入力を生成することができ、例えば、タッチパネル、キーパッド、マウス、トラックパッド、タッチパッド、インジケータ、1つまたは複数のマウスボタン、トラックボール、ジョイスティック等の入力装置である。出力装置504は、表示デバイス、補助照明装置(例えば、発光ダイオード(Light-Emitting Diode、LED))、および触覚フィードバック装置(例えば、振動モータ)等を含んでもよい。該表示デバイスは、液晶ディスプレイ(Liquid Crystal Display、LCD)、LEDディスプレイ、およびプラズマディスプレイを含んでもよいが、これらに限定されない。いくつかの実施形態において、表示デバイスはタッチパネルであってもよい。
ここで説明するシステムおよび技術の様々な実施形態は、デジタル電子回路システム、集積回路システム、特定用途向け集積回路(Application Specific Integrated Circuit、ASIC)、コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはそれらの組み合わせで実現できる。これらの様々な実施形態は以下を含んでもよい。1つまたは複数のコンピュータプログラムに実施され、該1つまたは複数のコンピュータプログラムは、少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステムで実行および/または解釈することができ、該プログラマブルプロセッサは、ストレージシステムと、少なくとも1つの入力装置と、少なくとも1つの出力装置からデータおよび命令を受信し、且つデータおよび命令を、該ストレージシステムと、該少なくとも1つの入力装置と、該少なくとも1つの出力装置に伝送することができる専用または汎用のプログラマブルプロセッサであってもよい。
これらの計算プログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、またはコードとも呼ばれる)は、プログラマブルプロセッサの機械命令を含み、且つ、高度なプロセスおよび/またはオブジェクト指向プログラミング言語、および/またはアセンブリ/機械言語を用いてこれらの計算プログラムを実施することができる。例えば、「機械可読媒体」および「コンピュータ可読媒体」という用語は、機械命令および/またはデータをプログラマブルプロセッサに提供するための任意のコンピュータプログラム製品、機器、および/または装置(例えば、磁気ディスク、光ディスク、メモリ、プログラマブル論理デバイス(Programable Logic Device、PLD))を意味し、機械可読信号としての機械命令を受信する機械可読媒体を含む。「機械可読信号」という用語は、機械命令および/またはデータをプログラマブルプロセッサに提供するための任意の信号を意味する。
ユーザとのインタラクションを提供するために、ここで説明するシステムおよび技術をコンピュータで実施することができ、該コンピュータは、ユーザに情報を表示するための表示装置(例えば、陰極線管(Cathode Ray Tube、CRT))またはLCDモニタ)と、ユーザがそれにより入力をコンピュータに提供することができるキーボードおよび指向装置(例えば、マウスまたはトラックボール)とを有する。他の種類の装置は、更にユーザとのインタラクションを提供するために使用できる。例えば、ユーザに提供されるフィードバックは、任意の形式の感覚のフィードバック(例えば、視覚フィードバック、聴覚フィードバック、または触覚フィードバック)であってもよく、且つ、任意の形式(音入力、音声入力または、触覚入力を含む)でユーザからの入力を受信することができる。
ここで説明するシステムおよび技術を、バックエンド・コンポーネントを含むコンピューティングシステム(例えば、データサーバとする)、または中間コンポーネントを含むコンピューティングシステム(例えば、アプリケーションサーバ)、またはフロントエンド・コンポーネントを含むコンピューティングシステム(例えば、ユーザとここで説明したシステムおよび技術の実施形態とのインタラクションを実現するためのグラフィカル・ユーザ・インターフェース(GUI)、またはネットワークブラウザを有するユーザコンピュータ)、またはこのようなバックエンド・コンポーネント、中間コンポーネント、またはフロントエンド・コンポーネントの任意の組み合わせを含むコンピューティングシステムに実施することができる。任意の形式または媒体のデジタルデータ通信(例えば、通信ネットワーク)により、システムのコンポーネントを互に接続することができる。通信ネットワークの例は、ローカルエリアネットワーク(Local Area Network、LAN)、ワイドエリアネットワーク(Wide Area Network、WAN)、およびインターネットを含む。
コンピュータシステムは、クライアントと、サーバとを含んでもよい。クライアントとサーバとは、一般的に互いに離れ、且つ、通常、通信ネットワークを介してインタラクションを行う。対応するコンピュータで実行されて互いにクライアント-サーバ関係を持つコンピュータプログラムにより、クライアントとサーバとの関係を構築する。
上記に示す様々な形式のフローを用い、ステップを並べ替え、追加または削除することができることを理解すべきである。例えば、本発明に記載された各ステップは、並列に実行されてもよいし、順に実行されてもよいし、異なる順序で実行されてもよく、本願に開示された技術案の所望する結果を達成できる限り、本明細書はここで限定しない。

Claims (12)

  1. 各ユーザのタグデータが異なるタグテーブルに分布されるように、ユーザIDに基づいて全てのユーザのタグデータをバケット分けし、各ユーザのバケットデータを取得することと、
    同じユーザのバケットデータを同じ記憶モジュールに記憶することと、を含む、
    データ記憶方法。
  2. 前記ユーザIDに基づいて全てのユーザのタグデータをバケット分けし、各ユーザのバケットデータを取得することは、
    前記全てのユーザのタグデータをタグタイプに従って分類し、複数のタグテーブルを取得することと、
    ユーザIDに基づいて各タグテーブルにおけるタグデータをバケット分けし、各ユーザのバケットデータを取得することと、を含む、
    請求項1に記載の方法。
  3. 前記タグタイプは、クエリ方式によって確定されるタイプである、
    請求項1に記載の方法。
  4. 前記タグタイプは、静的タグと、動的タグとを含み、前記静的タグに対応するタグデータは時間的に変化せず、前記動的タグに対応するタグデータは時間的に変化する、
    請求項3に記載の方法。
  5. 前記ユーザIDに基づいて全てのユーザのタグデータをバケット分けし、各ユーザのバケットデータを取得することは、
    ユーザIDに基づき、ハッシュ・アルゴリズムにより前記全てのユーザのタグデータをバケット分けし、各ユーザのバケットデータを取得することを含む、
    請求項1に記載の方法。
  6. 全てのユーザのタグデータを記憶し、且つ、同じユーザのバケットデータが同じ記憶モジュールに記憶されるように構成される複数の記憶モジュールを備え、
    各ユーザのタグデータは、異なるタグテーブルに分布され、
    前記バケットデータは、ユーザIDに基づいて前記全てのユーザのタグデータをバケット分けすることにより取得されるデータである、
    データ記憶装置。
  7. 各ユーザのタグデータは、タグタイプに従って異なるタグテーブルに分布される、
    請求項6に記載の装置。
  8. 前記タグタイプは、クエリ方式によって確定される、
    請求項7に記載の装置。
  9. 前記タグタイプは、静的タグと、動的タグとを含み、前記静的タグに対応するタグデータは時間的に変化しないデータであり、前記動的タグに対応するタグデータは時間的に変化するデータである、
    請求項8に記載の装置。
  10. タグクエリ要求に応答し、同じ記憶モジュールのバケットデータからクエリ対象となるユーザのタグデータを取得することを含み、
    前記タグクエリ要求が、前記クエリ対象となるユーザの身分を識別するためのユーザIDを含み、
    前記バケットデータが、ユーザIDに基づいて全てのユーザのタグデータをバケット分けすることにより取得されるデータであり、且つ、同じユーザのバケットデータが同じ記憶モジュールに記憶される、
    クエリ方法。
  11. 少なくとも1つのプロセッサと、
    前記少なくとも1つのプロセッサに通信可能に接続されているメモリと、
    を備え、
    前記メモリには、前記少なくとも1つのプロセッサによって実行可能な命令が記憶され、前記命令は、前記少なくとも1つのプロセッサが請求項1~5または請求項10のいずれか1項に記載の方法を実行可能であるように、前記少なくとも1つのプロセッサにより実行される、
    電子機器。
  12. 請求項1~5または請求項10のいずれか1項に記載の方法を前記コンピュータに実行させるためのコンピュータ命令が記憶されている、
    非一時的なコンピュータ可読記憶媒体。
JP2022523671A 2020-12-07 2021-05-06 データ記憶方法、装置、クエリ方法、電子機器および可読媒体 Active JP7451697B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN202011452209.3A CN112559522A (zh) 2020-12-07 2020-12-07 数据存储方法、装置、查询方法、电子设备及可读介质
CN202011452209.3 2020-12-07
PCT/CN2021/091913 WO2022121227A1 (zh) 2020-12-07 2021-05-06 数据存储方法、装置、查询方法、电子设备及可读介质

Publications (2)

Publication Number Publication Date
JP2023509812A true JP2023509812A (ja) 2023-03-10
JP7451697B2 JP7451697B2 (ja) 2024-03-18

Family

ID=81845555

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022523671A Active JP7451697B2 (ja) 2020-12-07 2021-05-06 データ記憶方法、装置、クエリ方法、電子機器および可読媒体

Country Status (3)

Country Link
US (1) US20240104077A1 (ja)
JP (1) JP7451697B2 (ja)
KR (1) KR20220062669A (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111949912A (zh) * 2020-08-12 2020-11-17 北京一起教育信息咨询有限责任公司 一种基于标签的消息推送方法、装置和系统
CN112015775A (zh) * 2020-09-27 2020-12-01 北京百度网讯科技有限公司 标签数据处理方法、装置、设备和存储介质

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111949912A (zh) * 2020-08-12 2020-11-17 北京一起教育信息咨询有限责任公司 一种基于标签的消息推送方法、装置和系统
CN112015775A (zh) * 2020-09-27 2020-12-01 北京百度网讯科技有限公司 标签数据处理方法、装置、设备和存储介质

Also Published As

Publication number Publication date
KR20220062669A (ko) 2022-05-17
JP7451697B2 (ja) 2024-03-18
US20240104077A1 (en) 2024-03-28

Similar Documents

Publication Publication Date Title
JP7333424B2 (ja) 分散イベント処理システムのためのグラフ生成
JP6750102B2 (ja) マネージクエリサービス
CN109074377B (zh) 用于实时处理数据流的受管理功能执行
US11410403B1 (en) Precise scaling of virtual objects in an extended reality environment
US10002170B2 (en) Managing a table of a database
CN107133309B (zh) 流程实例的存储、查询方法及装置、存储介质及电子设备
US10942774B1 (en) Dynamic reassignment of search processes into workload pools in a search and indexing system
WO2022121227A1 (zh) 数据存储方法、装置、查询方法、电子设备及可读介质
EP3905071A1 (en) Comments-ordering method, apparatus, device and computer storage medium
US20220229657A1 (en) Extensible resource compliance management
US11693710B1 (en) Workload pool hierarchy for a search and indexing system
US10248668B2 (en) Mapping database structure to software
US12112010B1 (en) Data visualization in an extended reality environment
US11204925B2 (en) Enabling data source extensions
CN110545324A (zh) 数据处理方法、装置、系统、网络设备和存储介质
KR20210040310A (ko) 지도 검색 테스트 방법, 장치, 기기, 저장매체 및 프로그램
CN113242148B (zh) 监控告警相关信息的生成方法、装置、介质及电子设备
US10599728B1 (en) Metadata agent for query management
US20210336964A1 (en) Method for identifying user, storage medium, and electronic device
JP7451697B2 (ja) データ記憶方法、装置、クエリ方法、電子機器および可読媒体
WO2022220982A1 (en) Database query execution on multiple databases
US11853533B1 (en) Data visualization workspace in an extended reality environment
US20170161359A1 (en) Pattern-driven data generator
DE102017130229A1 (de) Systeme und Verfahren für das Bereitstellen netzwerkübergreifender Ereigniszuordnung
US12086618B2 (en) Service virtualization platform

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220421

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220421

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230509

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230808

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231031

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240129

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: 20240213

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240306

R150 Certificate of patent or registration of utility model

Ref document number: 7451697

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150