JP6695973B2 - 計算機システム及びデータベース管理方法 - Google Patents
計算機システム及びデータベース管理方法 Download PDFInfo
- Publication number
- JP6695973B2 JP6695973B2 JP2018524614A JP2018524614A JP6695973B2 JP 6695973 B2 JP6695973 B2 JP 6695973B2 JP 2018524614 A JP2018524614 A JP 2018524614A JP 2018524614 A JP2018524614 A JP 2018524614A JP 6695973 B2 JP6695973 B2 JP 6695973B2
- Authority
- JP
- Japan
- Prior art keywords
- processing
- query
- column
- accelerators
- join
- 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
Links
- 238000007726 management method Methods 0.000 title claims description 19
- 238000000034 method Methods 0.000 claims description 154
- 238000004220 aggregation Methods 0.000 claims description 74
- 230000002776 aggregation Effects 0.000 claims description 74
- 239000000523 sample Substances 0.000 claims description 20
- 230000004044 response Effects 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 3
- 230000015654 memory Effects 0.000 description 24
- 238000013403 standard screening design Methods 0.000 description 6
- 230000004931 aggregating effect Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000013523 data management Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2471—Distributed queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2255—Hash tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
- G06F16/24558—Binary matching operations
- G06F16/2456—Join operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/24569—Query processing with adaptation to specific hardware, e.g. adapted for using GPUs or SSDs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
・ビルド処理:2つのDB表のうちの小さい方の表(典型的にはDimension表)のハッシュ表を作成する処理。ハッシュ表は、ビルド表と呼ばれてもよい。
・プローブ処理:2つのDB表のうちの大きい方の表(典型的にはFact表)における値のハッシュ値を算出し、算出されたハッシュ値と、ハッシュ表におけるハッシュ値との一致判定を行う処理。大きい方の表は、プローブ表と呼ばれてもよい。
Claims (6)
- 複数のデータベース表(DB表)を含んだデータベースを格納した1以上の記憶媒体からデータを読み出す1以上のアクセラレータに接続された1以上のインターフェースであるインターフェース部と、
前記インターフェース部に接続された1以上のプロセッサであるプロセッサ部と
を有し、
前記プロセッサ部は、
クエリに応答して、シーケンシャルに実行される第1処理及び第2処理を含み前記複数のDB表のうち前記クエリで指定された第1DB表と第2DB表とのジョイン処理のうち前記第1処理を実行し、
前記ジョイン処理のうち前記第2処理の一部の処理を実行するための1以上のコマンドを前記1以上のアクセラレータに送信し、
前記1以上のコマンドに応答して前記1以上のアクセラレータから受信した実行結果を基に前記第2処理の残りの処理を実行し、
前記残りの処理の実行結果を基に、前記クエリの結果を返し、
前記1以上のアクセラレータの各々は、
前記プロセッサ部からコマンドを受信し、
前記一部の処理のうちの、前記受信したコマンドに従う処理であるローカル処理を実行し、
前記ローカル処理の実行結果を返し、
前記プロセッサ部は、
前記1以上のアクセラレータの使用可否を判断し、
前記判断の結果が肯定の場合、前記一部の処理を実行するための1以上のコマンドを前記1以上のアクセラレータに送信し、
前記判断の結果が否定の場合、前記1以上のアクセラレータ無しに前記ジョイン処理を実行し、
前記ジョイン処理は、ハッシュジョイン処理であり、
前記第1処理は、前記指定された第1DB表のハッシュ表の作成を含んだ処理であるビルド処理を含んだ処理であり、
前記第2処理は、前記指定された第2DB表における値のハッシュ値と前記ハッシュ表におけるハッシュ値との一致判定とを含んだ処理であるプローブ処理を含んだ処理であり、
前記クエリには、集約方法と、第1グループ化カラム名が指定されており、
前記1以上のコマンドの各々には、
前記クエリに指定されている第1グループ化カラム名に対応したカラム名であって、前記第2DB表におけるカラム名である第2グループ化カラム名と、
前記クエリにおいて指定されている集約方法に従う集約方法と
が指定されており、
前記第1DB表の第1グループ化カラムにおける同一の値に対応する値として、前記第1グループ化カラム以外のいずれかのカラムに複数の異なる値が有り得ない場合、前記判断の結果が肯定であり、
前記第1DB表の第1グループ化カラムにおける同一の値に対応する値として、前記第1グループ化カラム以外のいずれかのカラムに複数の異なる値が有り得る場合、前記判断の結果が否定である、
計算機システム。 - 前記インターフェース部及び前記プロセッサ部を含んだ計算機と、
前記計算機に接続された前記1以上のアクセラレータと
を有する請求項1記載の計算機システム。 - 1以上のストレージパッケージを更に有し、
前記1以上のストレージパッケージの各々が、
少なくとも1つの記憶媒体と、
前記少なくとも1つの記憶媒体からデータを読み出す少なくとも1つのアクセラレータと
を有する、
請求項2記載の計算機システム。 - 前記インターフェース部、前記プロセッサ部、及び、前記1以上のアクセラレータのうちの少なくとも1つのアクセラレータを含んだ計算機、
を有する請求項1記載の計算機システム。 - クエリに応答して、シーケンシャルに実行される第1処理及び第2処理を含むジョイン処理のうち前記第1処理を実行し、
前記ジョイン処理のうち前記第2処理の一部の処理を実行するための1以上のコマンドを、複数のデータベース表(DB表)を含んだデータベースを格納した1以上の記憶媒体からデータを読み出す1以上のアクセラレータに送信し、
前記1以上のアクセラレータの各々からローカル処理の実行結果を受け、
前記1以上のアクセラレータの各々について、前記ローカル処理は、前記一部の処理のうちの、受信したコマンドに従う処理であり、
前記1以上のアクセラレータの各々からの実行結果を基に前記第2処理の残りの処理を実行し、
前記残りの処理の実行結果を基に、前記クエリの結果を返し、
前記1以上のアクセラレータの使用可否を判断し、
前記判断の結果が肯定の場合、前記一部の処理を実行するための1以上のコマンドを前記1以上のアクセラレータに送信し、
前記判断の結果が否定の場合、前記1以上のアクセラレータ無しに前記ジョイン処理を実行し、
前記ジョイン処理は、ハッシュジョイン処理であり、
前記第1処理は、前記クエリで指定された第1DB表のハッシュ表の作成を含んだ処理であるビルド処理を含んだ処理であり、
前記第2処理は、前記クエリで指定された第2DB表における値のハッシュ値と前記ハッシュ表におけるハッシュ値との一致判定とを含んだ処理であるプローブ処理を含んだ処理であり、
前記クエリには、集約方法と、第1グループ化カラム名が指定されており、
前記1以上のコマンドの各々には、
前記クエリに指定されている第1グループ化カラム名に対応したカラム名であって、前記第2DB表におけるカラム名である第2グループ化カラム名と、
前記クエリにおいて指定されている集約方法に従う集約方法と
が指定されており、
前記第1DB表の第1グループ化カラムにおける同一の値に対応する値として、前記第1グループ化カラム以外のいずれかのカラムに複数の異なる値が有り得ない場合、前記判断の結果が肯定であり、
前記第1DB表の第1グループ化カラムにおける同一の値に対応する値として、前記第1グループ化カラム以外のいずれかのカラムに複数の異なる値が有り得る場合、前記判断の結果が否定である、
データベース管理方法。 - クエリに応答して、シーケンシャルに実行される第1処理及び第2処理を含むジョイン処理のうち前記第1処理を実行し、
前記ジョイン処理のうち前記第2処理の一部の処理を実行するための1以上のコマンドを、複数のデータベース表(DB表)を含んだデータベースを格納した1以上の記憶媒体からデータを読み出す1以上のアクセラレータに送信し、
前記1以上のアクセラレータの各々からローカル処理の実行結果を受け、
前記1以上のアクセラレータの各々について、前記ローカル処理は、前記一部の処理のうちの、受信したコマンドに従う処理であり、
前記1以上のアクセラレータの各々からの実行結果を基に前記第2処理の残りの処理を実行し、
前記残りの処理の実行結果を基に、前記クエリの結果を返し、
前記1以上のアクセラレータの使用可否を判断し、
前記判断の結果が肯定の場合、前記一部の処理を実行するための1以上のコマンドを前記1以上のアクセラレータに送信し、
前記判断の結果が否定の場合、前記1以上のアクセラレータ無しに前記ジョイン処理を実行し、
前記ジョイン処理は、ハッシュジョイン処理であり、
前記第1処理は、前記クエリで指定された第1DB表のハッシュ表の作成を含んだ処理であるビルド処理を含んだ処理であり、
前記第2処理は、前記クエリで指定された第2DB表における値のハッシュ値と前記ハッシュ表におけるハッシュ値との一致判定とを含んだ処理であるプローブ処理を含んだ処理であり、
前記クエリには、集約方法と、第1グループ化カラム名が指定されており、
前記1以上のコマンドの各々には、
前記クエリに指定されている第1グループ化カラム名に対応したカラム名であって、前記第2DB表におけるカラム名である第2グループ化カラム名と、
前記クエリにおいて指定されている集約方法に従う集約方法と
が指定されており、
前記第1DB表の第1グループ化カラムにおける同一の値に対応する値として、前記第1グループ化カラム以外のいずれかのカラムに複数の異なる値が有り得ない場合、前記判断の結果が肯定であり、
前記第1DB表の第1グループ化カラムにおける同一の値に対応する値として、前記第1グループ化カラム以外のいずれかのカラムに複数の異なる値が有り得る場合、前記判断の結果が否定である、
ことを計算機に実行させるコンピュータプログラムを記録した計算機読取り可能な記録媒体。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2016/069094 WO2018003004A1 (ja) | 2016-06-28 | 2016-06-28 | 計算機システム及びデータベース管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2018003004A1 JPWO2018003004A1 (ja) | 2018-12-20 |
JP6695973B2 true JP6695973B2 (ja) | 2020-05-20 |
Family
ID=60786120
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018524614A Active JP6695973B2 (ja) | 2016-06-28 | 2016-06-28 | 計算機システム及びデータベース管理方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20190065559A1 (ja) |
JP (1) | JP6695973B2 (ja) |
WO (1) | WO2018003004A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114363248B (zh) * | 2020-09-29 | 2023-04-07 | 华为技术有限公司 | 计算系统、加速器、交换平面及聚合通信方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5276639B2 (ja) * | 2010-10-01 | 2013-08-28 | 日本電信電話株式会社 | 分散データベース管理装置および分散データベース管理プログラム |
WO2015155846A1 (ja) * | 2014-04-09 | 2015-10-15 | 株式会社日立製作所 | データベースのハッシュ結合処理をストレージ装置が実行するシステム |
-
2016
- 2016-06-28 JP JP2018524614A patent/JP6695973B2/ja active Active
- 2016-06-28 US US16/080,113 patent/US20190065559A1/en not_active Abandoned
- 2016-06-28 WO PCT/JP2016/069094 patent/WO2018003004A1/ja active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2018003004A1 (ja) | 2018-01-04 |
US20190065559A1 (en) | 2019-02-28 |
JPWO2018003004A1 (ja) | 2018-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11082206B2 (en) | Layout-independent cryptographic stamp of a distributed dataset | |
US10841234B2 (en) | Constructing virtual motherboards and virtual storage devices | |
KR101930117B1 (ko) | 비휘발성 스토리지 장치 세트의 휘발성 메모리 표현 기법 | |
US8397240B2 (en) | Method to dynamically provision additional computer resources to handle peak database workloads | |
US9515951B2 (en) | Computing system architecture that facilitates forming of customized virtual disks | |
US20150128150A1 (en) | Data processing method and information processing apparatus | |
US11157299B2 (en) | Thin provisioning virtual desktop infrastructure virtual machines in cloud environments without thin clone support | |
US20210096981A1 (en) | Identifying differences in resource usage across different versions of a software application | |
US11625192B2 (en) | Peer storage compute sharing using memory buffer | |
JP6269140B2 (ja) | アクセス制御プログラム、アクセス制御方法、およびアクセス制御装置 | |
JP5104855B2 (ja) | 負荷分散プログラム、負荷分散方法、及びストレージ管理装置 | |
US9183243B2 (en) | Building a metadata index from source metadata records when creating a target volume for subsequent metadata access from the target volume | |
JP2005234834A (ja) | 論理ボリュームの再配置方法 | |
JP6823626B2 (ja) | データベース管理システム及び方法 | |
US11023354B2 (en) | Hyper-converged infrastructure (HCI) log system | |
JP6695973B2 (ja) | 計算機システム及びデータベース管理方法 | |
EP3264254A1 (en) | System and method for a simulation of a block storage system on an object storage system | |
JP2017041040A (ja) | 制御装置、ストレージシステム、及び制御プログラム | |
US11226769B2 (en) | Large-scale storage system and data placement method in large-scale storage system | |
US11200210B2 (en) | Method of efficient backup of distributed file system files with transparent data access | |
US12008130B1 (en) | Secure data access management system | |
US11372556B2 (en) | Snapshot access using nocopy undefined thin devices | |
US20130318102A1 (en) | Data Handling in a Cloud Computing Environment | |
JP6123931B1 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
US20130073548A1 (en) | Product attribute enforcement rules |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180809 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20191029 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20191203 |
|
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: 20200408 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200422 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6695973 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |