[速報]オラクル、Oracle 12cにインメモリとカラム型データベースの追加機能を発表~Oracle OpenWorld 2013

2013年9月23日

米オラクル主催のイベント「Oracle OpenWorld 2013」がサンフランシスコで開幕しました。

同社CEOのラリー・エリソン氏は最初の基調講演に登壇。現在データベースの新しい技術として注目されているインメモリとカラム型データベースの機能をオプションとしてOracle Database 12cに追加すると発表。さらにインメモリ処理に優れた32TBメモリ搭載可能な新型SPARCサーバも発表しています。

基調講演の内容をダイジェストで紹介します。

Oracle DatabaseのIn-Memroyオプション発表

米オラクルCEO ラリー・エリソン氏、ご機嫌な表情で登場。

fig

いくつかの発表をしよう。まずはOracle DatabaseのIn-Memoryオプションだ。

fig

データをメモリに載せることでシステムは高速になる。Oracle Database In-Memory Optionで、分析系のクエリが100倍早くなる。

この性能向上をデータウェアハウスだけでなく、トランザクション処理においても獲得できないだろうかと考える。私たちはその課題を解決し、トランザクション性能も少なくとも2倍にした。

fig

従来の行ストアとカラムストアを両方持つ

Oracle、DB2などのデータベースでは、これまで長い間データを行ごとに格納するロー(行)フォーマットが使われてきた。

これはリレーショナルデータベースが登場したときからだ。データの追加、更新といったトランザクションで行ごとにデータを素早く書き換えることができる。

しかしこの数年、データベース技術者のあいだでは、カラム(列)フォーマットという新しい方式が持ち上がっている。カラムフォーマットではレポーティングなどのクエリ処理が高速になるという利点がある。

fig

そこで私たちは、両方のフォーマットを用いることにした。通常のローフォーマットと同じデータを、カラムフォーマットでメモリ内に持つのだ。

fig

そしてローフォーマットのデータが追加更新されると同時にカラムフォーマットのテーブルもアップデートされ、両者がつねに整合性が保たれるようにする。

カラムフォーマットのデータストア(カラムストア)をインメモリに持つことで、分析系のクエリ処理が100倍も高速になる。

カラムストアで1秒あたり数百万件もの処理

カラムストアにはトランザクションのロギングはないため、文字通りオーバーヘッドはほとんどない。

fig

カラムストアをもつことにより、データ処理は非常に速くなる。しかも、プロセッサのコアごとにカラムをスキャンすることで、1秒あたり数百万件もの処理が可能になる。

fig

複数テーブルのクエリでは、ジョインも桁違いの速さで実行される。

余分なインデックスが不要になりOLTPも高速化

さて、ローストとカラムストアのデータの整合性をつねに維持するという余計な作業をするというのに、どうやってOLTPをより高速にするのか、というもっともな疑問について説明しよう。

従来のデータベースでは、文番号などのプライマリーキーにインデックスを付けた。さらに集計や分析などのクエリで使うために10や20のインデックスを付けていただろう。

fig

このとき、テーブルにデータを追加すると、10から20ものインデックスに対するアップデートが発生する。これはコストのかかる処理であり、だからデータベース管理者はインデックスの付け方をよく考えなければならなかった。

そして集計や分析用のインデックスがOLTPを遅くしていた。

そこでこのインデックスをなくしてしまい、メモリ上のカラムストアに置き換えてしまおう。すると、テーブルにデータを追加しても1つから3つ程度のインデックスのアップデートで済む。カラムストアはメモリ上にあるため、更新のオーバーヘッドはほとんどない。

fig

これでOLTPは劇的に速くなるのだ。

データベース管理者はインデックスに悩む必要がなくなり、OLTPも分析もすべての処理が速くなり、チューニングも必要なくなる。

SQLもアプリケーションもそのまま使える

インメモリオプションを使うには、どれだけメモリを使うか、どのパーティション、もしくはテーブルをメモリ上に載せるか、これだけだ。

fig

そして不要になったインデックスを削除する。これでOLTPが速くなる。

SQLもアプリケーションも変える必要がなく、データのマイグレーションも発生しない。Oracle Database 12cのマルチテナンシーにも対応しておりクラウドレディだ。

fig

いままでと同じデータベースで同じ信頼性やセキュリティで、クエリが何桁も、OLTPが何倍も速くなるのだ。

fig

32TBメモリの「Oracle M6-32」発表

このインメモリなカラムストアに理想的なマシンを合わせてリリースする。Oracle M6-32だ。ビッグメモリマシンと呼ぼう。

fig

32TB DRAM、M5の倍のコアを積んだ新しいSPARC M6チップ。M5と同じシャーシだ。

fig

≫基調講演は続きます。「[速報]オラクル、Oracleデータベースの遠隔バックアップサービスをクラウドで提供へ~Oracle OpenWorld 2013」。

Oracle OpenWorld 2013 / JavaOne 2013

あわせて読みたい

Oracle Database RDB データベース Oracle インメモリデータベース カラム型データベース




タグクラウド

クラウド
AWS / Azure / Google Cloud
クラウドネイティブ / サーバレス
クラウドのシェア / クラウドの障害

コンテナ型仮想化

プログラミング言語
JavaScript / Java / .NET
WebAssembly / Web標準
開発ツール / テスト・品質

アジャイル開発 / スクラム / DevOps

データベース / 機械学習・AI
RDB / NoSQL

ネットワーク / セキュリティ
HTTP / QUIC

OS / Windows / Linux / 仮想化
サーバ / ストレージ / ハードウェア

ITエンジニアの給与・年収 / 働き方

殿堂入り / おもしろ / 編集後記

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本