SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けに、EnterpriseZine Day、Security Online Day、DataTechという、3つのイベントを開催しております。それぞれ編集部独自の切り口で、業界トレンドや最新事例を網羅。最新の動向を知ることができる場として、好評を得ています。

直近開催のイベントはこちら!

Data Tech 2022

2022年12月8日(木)10:00~15:50

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けの講座「EnterpriseZine Academy」や、すべてのITパーソンに向けた「新エバンジェリスト養成講座」などの講座を企画しています。EnterpriseZine編集部ならではの切り口・企画・講師セレクトで、明日を担うIT人材の育成をミッションに展開しております。

お申し込み受付中!

既存の概念を覆す!Oracle Database In-Memoryのテクノロジー

Oracle Database In-Memoryは本当に激速なのか(後編)

 前回はOracle Database In-Memoryで全件検索と一意検索を実行し、従来のアクセス方法と比べて数十倍の性能になっていることを確認しました。今回は結合処理などもう少し踏み込んだパターンについて、動作のポイントを紹介します。

カラム型の効果が期待できる処理

 前回は全件検索と一意検索を試しながら、インメモリ・カラムストアの中にストレージ索引という独自の仕組みがあることを紹介しました。今回はより現実的な性能を計測するために、多数の表を結合する分析系のクエリを実行していきます。

 検証に使用するのは、前回と同じくStar Schema Benchmarkです。Star Schema BenchmarkはDWHの代表的なデータ・モデルであるスター・スキーマを採用しており、ファクト表であるLINEORDER表を中心に、放射状にディメンション表が配置されています。

 LINEORDER表には商品の購入履歴(明細データ)が約6億件格納されており、ディメンション表にはマスター・データ(分析軸)となる顧客IDや商品IDなどの情報が少ない件数で格納されています。LINEORDER表の列は大半がNUMBER型で、顧客名や商品名といった文字列ではなくIDのみが記録されています。何度も出てくる情報を文字列からID(番号)にすることで表のサイズを抑えられますが、分析処理においてはファクト表とディメンション表の結合が必要になります。

図1:Star Schema Benchmarkのデータ・モデル
図1:Star Schema Benchmarkのデータ・モデル

 結合のイメージを具体的なSQLで見てみましょう。以下のSQLはStar Schema Benchmarkにあらかじめ用意されているもので、1993年の売上高を特定の条件をもとに集計しています。返される結果は1件だけですが、6億件あるLINEORDER表の広範囲にアクセスし、さらにDATE1表との結合も行われるため、それなりに負荷の高いSQLであると言えます。

SELECT SUM(lo_extendedprice*lo_discount) AS revenue 
FROM lineorder,date1 
WHERE lo_orderdate = d_datekey 
 AND d_year = 1993 
 AND lo_discount BETWEEN 1 AND 3 
 AND lo_quantity < 25;

 本来であれば、こうした「少数の列+多数の行」を扱うSQLはロー型であるOracle Databaseが苦手とする処理です。しかし、カラム型にとっては得意な処理であるため、Oracle Database In-Memoryを使うことで高速化できるはずです。

次のページ
見慣れない実行計画

この記事は参考になりましたか?

  • Facebook
  • Twitter
  • Pocket
  • note
既存の概念を覆す!Oracle Database In-Memoryのテクノロジー連載記事一覧

もっと読む

この記事の著者

関 俊洋(セキ トシヒロ)

株式会社アシスト データベース技術本部 データベース・エバンジェリストデータベース・システムの構築や運用トラブルの解決といったフィールド・サポート業務を経験し、その後は新製品の検証やソリューションの立ち上げに従事。現在はデータベースの価値や魅力を伝えるための執筆や講演活動を行っている。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

EnterpriseZine(エンタープライズジン)
https://enterprisezine.jp/article/detail/6205 2014/10/16 00:00

Job Board

PR

おすすめ

アクセスランキング

アクセスランキング

イベント

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けに、EnterpriseZine Day、Security Online Day、DataTechという、3つのイベントを開催しております。それぞれ編集部独自の切り口で、業界トレンドや最新事例を網羅。最新の動向を知ることができる場として、好評を得ています。

2022年12月8日(木)10:00~15:50

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング