[go: up one dir, main page]

JP6381823B2 - データベース処理高速化のシステム、方法、及び、プログラム - Google Patents

データベース処理高速化のシステム、方法、及び、プログラム Download PDF

Info

Publication number
JP6381823B2
JP6381823B2 JP2017545609A JP2017545609A JP6381823B2 JP 6381823 B2 JP6381823 B2 JP 6381823B2 JP 2017545609 A JP2017545609 A JP 2017545609A JP 2017545609 A JP2017545609 A JP 2017545609A JP 6381823 B2 JP6381823 B2 JP 6381823B2
Authority
JP
Japan
Prior art keywords
storage device
data
parallel
execution plan
query execution
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
JP2017545609A
Other languages
English (en)
Other versions
JPWO2017085985A1 (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
Application filed by 浩平 海外, 浩平 海外 filed Critical 浩平 海外
Publication of JPWO2017085985A1 publication Critical patent/JPWO2017085985A1/ja
Application granted granted Critical
Publication of JP6381823B2 publication Critical patent/JP6381823B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本願発明は、データベース処理の高速化のためのシステム、方法、及び、プログラム、特に、グラフィックプロセッサとピアツーピアDMAを利用した高速化を実現するシステム、方法、及び、プログラムに関する。
データベース管理システム(DBMS)、特に、リレーショナルデータベース管理システム(RDBMS)が今日の情報システムにおいて不可欠な構成要素となっている。ゆえに、RDBMSの処理高速化は情報システムの効率性向上のためにきわめて重要であり、多くの高速化技術が提案されている。
そのような高速化技術のひとつとして、グラフィック・プロセッシング・ユニット(GPU)を使用したものが知られている。GPUは今日のパーソナルコンピューターやゲーム機において一般的な構成要素となっており、安価に入手可能である一方で、実質的には多数のコアを備えた並列処理プロセッサであることから、グラフィック処理以外にも汎用的応用が可能である。このような応用手法は一般にGPGPU(ジェネラル・パーパスGPU)とも呼ばれる。GPGPUによるデータベースアクセスの高速化技術については非特許文献1、及び、非特許文献2に記載されたもの等が知られている。
従来のGPGPUによるデータベースアクセスの高速化技術においては、処理対象データの二次記憶装置(ストレージ)から主記憶装置(メインメモリー)上への移動が性能上のボトルネックとなっていた。ストレージ上のデータベースに格納されたデータの処理を行なうためには、中央処理装置(CPU)がまず主記憶装置上にバッファ領域を確保し、次に二次記憶装置から当該バッファへデータをロードし、ロード処理が完了してはじめて、二次記憶装置内に保管されていたデータにアクセスすることが可能であった。
現時点での一般的ハードウェア技術では、CPUとメインメモリー間の帯域は毎秒50GBから毎秒300GBであるのに対し、ストレージとCPUを接続する周辺装置バスの帯域は毎秒4GBから15GB程度であり、後者が性能上のボトルネックとなることが不可避であった。従来のデータベース処理方式ではこのボトルネックを通じて大量のデータを転送することが必要であり、GPGPUによる並列処理の性能向上効果が相殺されるという問題があった。
GPUDirect RDMA (http://docs.nvidia.com/cuda/gpudirect-rdma/index.html) GPGPU Accelerates PostgreSQL (http://www.slideshare.net/kaigai/gpgpu-accelerates-postgresql)
安価に実装可能なデータベースクエリー高速化システム、方法、及び、プログラムを提供する。
本願発明は、二次記憶装置と主記憶装置と中央処理装置と並列処理装置と周辺装置バスと前記二次記憶装置に保存された関係データベースとを含むデータベース処理システムにおいて実行されるデータ処理方法であって、
前記中央処理装置が、クエリー実行計画を受信するステップと、
前記中央処理装置が、前記二次記憶装置に対して、前記関係データベース中の前記クエリー実行計画中で指定されたテーブル内のデータを前記主記憶装置を経由することなく前記並列処理装置に転送させる命令を発行するステップと、
前記二次記憶装置が、前記関係データベース中の前記クエリー実行計画中で指定されたテーブル内の前記データを前記主記憶装置を経由することなく、かつ、前記中央処理装置を介在させることなく、前記並列処理装置に転送するステップと、
前記並列処理装置が、前記関係データベース中の前記クエリー実行計画中で指定されたテーブル内の前記データを並列的に処理するステップと、
前記並列処理装置が、前記関係データベース中の前記クエリー実行計画中で指定されたテーブル内の前記データを処理した結果を前記中央処理装置を介在させることなく、前記主記憶装置に書き込むステップとを
含むデータ処理方法を提供することで前記課題を解決する。
また、本願発明は、前記主記憶装置に書き込む前記ステップは、前記並列的に処理するステップの結果のうち前記クエリー実行計画において使用される列データのみを対象とする
段落0008に記載のデータ処理方法を提供することで前記課題を解決する。
また、本願発明は、二次記憶装置と主記憶装置と中央処理装置と並列処理装置と周辺装置バスと前記二次記憶装置に保存された関係データベースとを含むデータベース処理システムにおいて実行されるデータ処理プログラムであって、
前記中央処理装置に、クエリー実行計画を受信させる命令と、
前記中央処理装置に、前記二次記憶装置に対して、前記関係データベース中の前記クエリー実行計画中で指定されたテーブル内のデータを前記主記憶装置を経由することなく前記並列処理装置に転送させる命令を発行させる命令と、
前記二次記憶装置に、前記関係データベース中の前記クエリー実行計画中で指定されたテーブル内の前記データを前記主記憶装置を経由することなく、かつ、前記中央処理装置を介在させることなく、前記並列処理装置に転送させる命令と、
前記並列処理装置に、前記関係データベース中の前記クエリー実行計画中で指定されたテーブル内の前記データを並列的に処理させる命令と、
前記並列処理装置に、前記関係データベース中の前記クエリー実行計画中で指定されたテーブル内の前記データを処理した結果を前記中央処理装置を介在させることなく、前記主記憶装置に書き込ませる命令とを
含むデータ処理プログラムを提供することで前記課題を解決する。
また、本願発明は、前記主記憶装置に書き込ませる前記命令は、前記並列的に処理させる命令の結果のうち前記クエリー実行計画において使用される列データのみを対象とする
段落0010に記載のデータ処理プログラムを提供することで前記課題を解決する。
また、本願発明は、二次記憶装置と主記憶装置と中央処理装置と並列処理装置と周辺装置バスと前記二次記憶装置に保存された関係データベースとを含むデータベース処理システムであって、
前記中央処理装置は、クエリー実行計画を受信し、
前記中央処理装置は、前記二次記憶装置に対して、前記関係データベース中の前記クエリー実行計画中で指定されたテーブル内のデータを前記主記憶装置を経由することなく前記並列処理装置に転送させる命令を発行し、
前記二次記憶装置は、前記関係データベース中の前記クエリー実行計画中で指定されたテーブル内の前記データを前記主記憶装置を経由することなく、かつ、前記中央処理装置を介在させることなく、前記並列処理装置に転送し、
前記並列処理装置は、前記関係データベース中の前記クエリー実行計画中で指定されたテーブル内の前記データを並列的に処理し、
前記並列処理装置は、前記データベース中の前記クエリー実行計画中で指定されたテーブル内の前記データを処理した結果を前記中央処理装置を介在させることなく、前記主記憶装置に書き込む
データベース処理システムを提供することで前記課題を解決する。
また、本願発明は、前記並列処理装置は、前記並列的に処理させる命令の結果のうち前記クエリー実行計画において使用される列データのみを前記主記憶装置に書き込む
段落0012に記載のデータベース処理システムを提供することで前記課題を解決する。
周辺装置バスの性能ボトルネックに影響を受けにくいデータベースクエリー高速化システム、方法、及び、プログラムが安価に実装可能になる。
本願発明の実施例に係る計算機の機能構成の一例である。 本願発明の実施例に係るリレーショナルDBMSソフトウェアの機能構成の一例である。 本願発明の実施例に係るリレーショナルDBMSのクエリー実行計画の一例である。 本願発明の実施例に係るリレーショナルDBMSのデータ処理方法の第一の例である。 本願発明の実施例に係るリレーショナルDBMSのデータ処理方法の第二の例である。
以下に図を参照しながら本願発明の実施例について説明する。
図1に本願発明の実施例に係る計算機の機能構成の一例を示す。中央処理装置(101)は、主記憶装置(102)に格納されたプログラムの実行、及び、主記憶装置(102)と二次記憶装置(103)間のデータの移動を行なう。中央処理装置(101)は一般的なコンピューターに使用されているプロセッサ(CPU)であってよい。主記憶装置(102)は一般的なコンピューターに使用されているDRAMであってよい。並列処理装置(104)は多数のコアを有して、並列的な処理を行なうことができるプロセッサであり、グラフィカル・プロセッシング・ユニット(GPU)であってよい。また、並列処理装置(104)は、MIC(Many Integrated Core)と呼ばれる多数のコアを備えた設計のプロセッサやFGPA(Programmable Gate Array)で実装された専用設計プロセッサであってもよい。以降、これらを総称してコプロセッサとも呼ぶ。周辺装置バス(106)は、主記憶装置(102)と二次記憶装置(103)と並列処理装置(104)とを接続する手段であり、ピアツーピアのDMA(ダイレクト・メモリ・アクセス)をサポートする。周辺装置バス(106)は、業界標準であるPCI−EにSSD(半導体ディスク)を接続するNVMe機能を供えたものであることが望ましい。二次記憶装置(103)はフラッシュ・メモリーのテクノロジーに基づくSSDであることが望ましい。また、図示していないが、本願発明に係る計算機は、ネットワークを介してデータやユーザーによる要求を送受信するためのネットワーク接続機能等を備えていてもよい。
図2に本願発明に係るリレーショナルDBMSソフトウェアの機能構成の一例を示す。まず、クエリー構文解析部(201)がSQL形式で記述されたクエリー文を受け取り、内部形式であるクエリー構文木を作成する。次に、クエリー最適化部(202)がクエリー構文木に対する最適化処理を行ない内部形式であるクエリー実行計画を作成する。クエリー実行計画は中央処理装置(101)および並列処理装置(104)により実行され、データベース内に格納されたデータに対する照会(クエリー)、結合(ジョイン)、分類(ソート)、集約(アグリゲート)等の処理が行なわれる。なお、本願発明は、リレーショナルDBMSに限らず大量データに対する並列的な処理を行なうあらゆるデータベース管理システムに広く適用可能である。
図3に本願発明の実施例に係るリレーショナルDBMSのクエリー実行計画の一例を示す。一般に、クエリーは走査処理と結合処理により表わされる。走査処理はリレーショナルDBMS中のテーブルから走査条件(たとえば、指定されたコラム(列、フィールド)の値が指定された数値範囲内にあることに合致する行(レコード、タプル)のみを読み出す処理である(SQL文で表現すれば、たとえば、SELECT ORDER_ID FROM ORDER WHERE SUM>10000))。結合処理(ジョイン)は特定コラムの値が合致する行を複数のテーブルから組み合わせて出力する処理である(SQL文で表現すれば、たとえば、SELECT CMASTER.CUSTOMER_NAME FROM ORDER, CMASTER WHERE ORDER.CUSTOMER =CMASTER.CUSTOMER_ID)。いずれも、リレーショナルDBMSにおいて典型的に行なわれる処理であり、両者を効率化することが情報システム全体の効率化に結びつく。両者とも大量のデータが扱われることから、データの移動、特に、性能上のボトルネックとなる周辺装置バス(106)を経由するデータの移動を最小化することが重要である。
図4に、本願発明の実施例に係るリレーショナルDBMSの処理方式の第一の例を示す。ここでは、図3の走査処理の一部における処理の例を示す。図4で太線の矢印線はデータの流れを、破線の矢印線は制御の流れ、または、論理的な関係を表わす。まず、中央処理装置(101)が、クエリー実行計画の走査条件にしたがって、並列処理装置(104)が実行できる命令列を動的に生成し、主記憶装置(102)上に置く(S401)。テーブルの走査処理は多数の行に対して同一の処理(たとえば、数値範囲のチェック)を行なうものであるため、並列処理装置(104)向け命令を生成することは容易である。次に、中央処理装置(101)が、生成した命令列を主記憶装置(102)から並列処理装置(104)に転送する(S402)。次に、中央処理装置(101)が、二次記憶装置(103)に対して、処理対象となるデータベース中の行の集合を並列処理装置(104)に転送する命令を発行する(S403)。この命令はピアツーピアDMAによるデータ転送を起動するものであることが望ましい。次に、二次記憶装置(103)が、この命令にしたがって、処理対象となるデータベース中の行の集合を並列処理装置(104)に、主記憶装置(102)を経由することなく転送する(この転送処理に中央処理装置(101)は介在しない設計とすることが望ましい)(S404)。次に、並列処理装置(104)が所定の走査処理を行ない、走査条件に合致した行だけを主記憶装置(102)に転送する(S405)。さらに、転送対象となった各行内で、以降の処理で必要となる列(コラム、フィールド)(たとえば、上記のSQL文の例で言えば列ORDER_IDに相当するデータ)の関連データのみを転送することが望ましい。ここで、処理対象となるデータはデータベースの各ブロックであってよく、並列処理装置(104)は最終的に使用される行(すなわち、走査条件を満足する行)のみを並列処理装置(104)内の結果バッファに置き、中央処理装置(101)を介在することなく、ピアツーピアDMAで結果バッファから主記憶装置(102)への転送を行なう設計とすることが望ましい。本願発明の方式では、最終的に必要なデータだけが主記憶装置(102)に置かれることになり、一時的な作業のためだけに大量のデータが周辺装置バス(106)を経由して主記憶装置(102)上に転送されることがないため、中央処理装置(101)の処理負荷、主記憶装置(メモリー)の消費量、及び、周辺装置バス(106)の帯域幅を削減できる。加えて、データ転送のために必要な時間も短縮可能であり、データベース処理システム全体の効率性を向上できる。
図5に、本願発明の実施例に係るリレーショナルDBMSのデータ処理方式の第二の例を示す。この例では結合処理と走査処理の組み合わせの効率化を示す。図5では、図4と同様に太線の矢印線はデータの流れを、破線の矢印線は制御の流れを表わす。図5では、主記憶装置(102)上に走査条件Aに合致するテーブルAの行(レコード、タプル)が既にロードされているものとする。このロード処理は図4に示したような効率性が高い方法で行なわれていることが望ましい。まず、中央処理装置(101)が、クエリー実行計画の結合条件と走査条件Bにしたがって、並列処理装置(104)が実行できる命令列を動的に生成し、主記憶装置(102)上に置く(S501)。テーブルの結合処理と走査処理は多数の行に対して同一の処理を行なうものであるため、並列処理装置(104)向け命令を生成することは容易である。次に、中央処理装置(101)が、生成した命令列とテーブルAの処理対象行とを主記憶装置(102)から並列処理装置(104)に転送する(S502)。次に、中央処理装置(101)が、二次記憶装置(103)に対して、処理対象となるデータベース中の行の集合を並列処理装置(104)に転送する命令を発行する(S503)。この命令はピアツーピアDMAによるデータ転送を起動するものであることが望ましい。次に、二次記憶装置(103)が、この命令にしたがって、データベース中のテーブルBの行の集合を並列処理装置(104)に、主記憶装置(102)を経由することなく転送する(この転送処理に中央処理装置(101)は介在しない設計とすることが望ましい)(S504)。次に、並列処理装置(104)が所定の結合処理と走査処理を行ない、結合条件と走査条件Bに合致した行だけを主記憶装置(102)に転送する(S505)。さらに、転送対象となった各行内で、以降の処理で必要となる列(コラム、フィールド)の関連データのみを転送することが望ましい。ここで、処理対象となるデータはデータベースの各ブロックであってよく、並列処理装置(104)は最終的に使用される行(すなわち、走査条件Bと結合条件とを満足する行)のみを並列処理装置(104)内の結果バッファに置き、中央処理装置(101)を介在することなく、ピアツーピアDMAで結果バッファから主記憶装置(102)への転送を行なう設計とすることが望ましい。図4で示した例と同様に、本願発明の方式では、最終的に必要なデータだけが主記憶装置(102)に置かれることになり、一時的な作業のためだけに大量のデータが周辺装置バス(106)を経由して主記憶装置(102)上に転送されることがないため、中央処理装置(101)の処理負荷、メモリーの消費量、及び、周辺装置バス(106)の帯域幅を削減できる。加えて、データ転送のために必要な時間も短縮可能であり、データベース処理システム全体の効率性を向上できる。
(本願発明による技術的に顕著な効果)
本願発明により、以下のような技術的に顕著な効果が得られる。第一に、不要なデータをロードするための領域を主記憶装置上に確保する必要がなくなり、必要なメモリー容量を削減できる。第二に、クエリー処理を並列度の高いコプロセッサにより並列・非同期に処理するため、CPU側の負荷が下げる事が可能であり、ひいてはクエリーの応答時間を短縮できる。第三に、既に市場に広く出回っているコモデティ製品のみを用いて実現可能であり、安価に実現可能である。

Claims (6)

  1. 二次記憶装置と主記憶装置と中央処理装置と並列処理装置と周辺装置バスと前記二次記憶装置に保存された関係データベースとを含むデータベース処理システムにおいて実行されるデータ処理方法であって、
    前記中央処理装置が、クエリー実行計画を受信するステップと、
    前記中央処理装置が、前記二次記憶装置に対して、前記関係データベース中の前記クエリー実行計画中で指定されたテーブル内のデータを前記主記憶装置を経由することなく前記並列処理装置に転送させる命令を発行するステップと、
    前記二次記憶装置が、前記関係データベース中の前記クエリー実行計画中で指定されたテーブル内の前記データを前記主記憶装置を経由することなく、かつ、前記中央処理装置を介在させることなく、前記並列処理装置に転送するステップと、
    前記並列処理装置が、前記関係データベース中の前記クエリー実行計画中で指定されたテーブル内の前記データの走査、結合、または、集約を並列的に処理するステップと、
    前記並列処理装置が、前記関係データベース中の前記クエリー実行計画中で指定されたテーブル内の前記データを処理した結果を前記中央処理装置を介在させることなく、前記主記憶装置に書き込むステップとを
    含むデータ処理方法。
  2. 前記主記憶装置に書き込む前記ステップは、前記並列的に処理するステップの結果のうち前記クエリー実行計画において使用される列データのみを対象とする
    請求項1に記載のデータ処理方法。
  3. 二次記憶装置と主記憶装置と中央処理装置と並列処理装置と周辺装置バスと前記二次記憶装置に保存された関係データベースとを含むデータベース処理システムにおいて実行されるデータ処理プログラムであって、
    前記中央処理装置に、クエリー実行計画を受信させる命令と、
    前記中央処理装置に、前記二次記憶装置に対して、前記関係データベース中の前記クエリー実行計画中で指定されたテーブル内のデータを前記主記憶装置を経由することなく前記並列処理装置に転送させる命令を発行させる命令と、
    前記二次記憶装置に、前記関係データベース中の前記クエリー実行計画中で指定されたテーブル内の前記データを前記主記憶装置を経由することなく、かつ、前記中央処理装置を介在させることなく、前記並列処理装置に転送させる命令と、
    前記並列処理装置に、前記関係データベース中の前記クエリー実行計画中で指定されたテーブル内の前記データの走査、結合、または、集約を並列的に処理させる命令と、
    前記並列処理装置に、前記関係データベース中の前記クエリー実行計画中で指定されたテーブル内の前記データを処理した結果を前記中央処理装置を介在させることなく、前記主記憶装置に書き込ませる命令とを
    含むデータ処理プログラム。
  4. 前記主記憶装置に書き込ませる前記命令は、前記並列的に処理させる命令の結果のうち前記クエリー実行計画において使用される列データのみを対象とする
    請求項3に記載のデータ処理プログラム。
  5. 二次記憶装置と主記憶装置と中央処理装置と並列処理装置と周辺装置バスと前記二次記憶装置に保存された関係データベースとを含むデータベース処理システムであって、
    前記中央処理装置は、クエリー実行計画を受信し、
    前記中央処理装置は、前記二次記憶装置に対して、前記関係データベース中の前記クエリー実行計画中で指定されたテーブル内のデータを前記主記憶装置を経由することなく前記並列処理装置に転送させる命令を発行し、
    前記二次記憶装置は、前記関係データベース中の前記クエリー実行計画中で指定されたテーブル内の前記データを前記主記憶装置を経由することなく、かつ、前記中央処理装置を介在させることなく、前記並列処理装置に転送し、
    前記並列処理装置は、前記関係データベース中の前記クエリー実行計画中で指定されたテーブル内の前記データの走査、結合、または、集約を並列的に処理し、
    前記並列処理装置は、前記データベース中の前記クエリー実行計画中で指定されたテーブル内の前記データを処理した結果を前記中央処理装置を介在させることなく、前記主記憶装置に書き込む
    データベース処理システム。
  6. 前記並列処理装置は、前記並列的に処理させる命令の結果のうち前記クエリー実行計画において使用される列データのみを前記主記憶装置に書き込む
    請求項5に記載のデータベース処理システム。
JP2017545609A 2015-11-22 2016-09-06 データベース処理高速化のシステム、方法、及び、プログラム Active JP6381823B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2015228245 2015-11-22
JP2015228245 2015-11-22
PCT/JP2016/076110 WO2017085985A1 (ja) 2015-11-22 2016-09-06 データベース処理高速化のシステム、方法、及び、プログラム

Publications (2)

Publication Number Publication Date
JPWO2017085985A1 JPWO2017085985A1 (ja) 2017-11-24
JP6381823B2 true JP6381823B2 (ja) 2018-08-29

Family

ID=58719175

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017545609A Active JP6381823B2 (ja) 2015-11-22 2016-09-06 データベース処理高速化のシステム、方法、及び、プログラム

Country Status (2)

Country Link
JP (1) JP6381823B2 (ja)
WO (1) WO2017085985A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210334264A1 (en) * 2018-12-09 2021-10-28 Kohei KAIGAI System, method, and program for increasing efficiency of database queries

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6862027B2 (en) * 2003-06-30 2005-03-01 Microsoft Corp. System and method for parallel execution of data generation tasks
US8621446B2 (en) * 2010-04-29 2013-12-31 International Business Machines Corporation Compiling software for a hierarchical distributed processing system
JP2014056425A (ja) * 2012-09-12 2014-03-27 Nippon Telegr & Teleph Corp <Ntt> データ管理装置、データ管理システム、処理割当方法および処理割当プログラム
JP2014170259A (ja) * 2013-03-01 2014-09-18 Hitachi Ltd データ処理方法、データ処理システム及びデータ処理プログラム
JPWO2015105043A1 (ja) * 2014-01-08 2017-03-23 日本電気株式会社 演算システム、データベース管理装置および演算方法

Also Published As

Publication number Publication date
JPWO2017085985A1 (ja) 2017-11-24
WO2017085985A1 (ja) 2017-05-26

Similar Documents

Publication Publication Date Title
Wang et al. A study of data partitioning on OpenCL-based FPGAs
US20130117305A1 (en) System and Method for the Parallel Execution of Database Queries Over CPUs and Multi Core Processors
US9164690B2 (en) System, method, and computer program product for copying data between memory locations
CN105069149A (zh) 一种面向结构化列式数据的分布式并行数据导入方法
KR102442682B1 (ko) 머신 러닝 시스템에서 직렬화된 키 값 접근을 방지하기 위한 시스템 및 방법
EP3642736B1 (en) Parallel compute offload to database accelerator
Watanabe et al. Column-oriented database acceleration using FPGAs
CN113761024B (zh) 分布式sql的实时查询方法和系统
CN104504008B (zh) 一种基于嵌套的SQL到HBase的数据迁移算法
Mutharaju et al. D-SPARQ: distributed, scalable and efficient RDF query engine
US10394459B2 (en) Data storage device for filtering page in two steps, system including the same, and method of operating the same
CN118318230A (zh) 使用混合查询执行计划的列式缓存查询
WO2024198934A1 (zh) 数据处理方法、装置、系统、电子设备及存储介质
JP6381823B2 (ja) データベース処理高速化のシステム、方法、及び、プログラム
US20190354521A1 (en) Concurrent Data Processing in a Relational Database Management System Using On-Board and Off-Board Processors
CN104820659A (zh) 一种面向粗粒度可重构系统的多模式动态可配高速访存接口
JP6829427B2 (ja) データベース・クエリ効率化のためのシステム、方法、および、プログラム
US10997175B2 (en) Method for predicate evaluation in relational database systems
US12001427B2 (en) Systems, methods, and devices for acceleration of merge join operations
JP5464017B2 (ja) 分散メモリデータベースシステム、データベースサーバ、データ処理方法およびそのプログラム
US12254195B2 (en) Sparse matrix operations using processing-in-memory
US20140229512A1 (en) Discounted future value operations on a massively parallel processing system and methods thereof
Yong et al. Galactica: A GPU parallelized database accelerator
JP7138313B1 (ja) コンピュテーショナル・ストレージの処理効率化の方法およびプログラム
Perera et al. A fast, scalable, universal approach for distributed data aggregations

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170825

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170824

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20170825

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170830

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20170926

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171020

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20180226

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180425

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

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20180515

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180731

R150 Certificate of patent or registration of utility model

Ref document number: 6381823

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250