日本オラクルは2019年9月に発表されたばかりの最新のOracle Exadata「Exadata X8M」と、Oracle Databaseの次期バージョン「Oracle Database 20c」における“進化のポイント”を詳しく紹介した。
日本オラクルは2019年10月28日に開催したセミナーで、9月に米国で発表されたばかりの最新のOracle Exadata「Exadata X8M」と、Oracle Databaseの次期バージョン「Oracle Database 20c」の詳細を紹介した。本稿では、同セミナーで行われた2つの基調講演の内容を紹介する。
最初の基調講演では、Oracleのシニア・バイス・プレジデントで「Oracle Exadata Database Machine」(以下、Exadata)のアーキテクトを務めるコディー・ウママゲスワラン(Kodi Umamageswaran)氏が登壇し、9月に開催された「Oracle OpenWorld 2019」で発表されたExadataの最新モデル「Oracle Exadata Database Machine X8M」(以下、Exadata X8M)のハードウェア/ソフトウェア概要と独自のデータベース拡張機能について説明した。
基調講演の冒頭、ウママゲスワラン氏は「Exadataは、発表から10年以上にわたり、最高のデータベースを構築し、最高レベルの可用性、パフォーマンス、セキュリティ、シンプルな管理性と操作性を提供することをコミットして、技術革新を続けてきた。そして今年(2019年)、このコミットをさらに強化する最新鋭モデルとして、『Exadata X8M』をリリースする」と述べた。
Exadata X8Mは、2ソケットデータベースサーバを搭載した「Exadata X8M-2」と、8ソケットデータベースサーバを搭載した「Exadata X8M-8」の2モデルをラインアップ。Exadata X8M-2は、1/8ラックからスモールスタートし、1/4ラック、エラスティック構成、マルチラックへとスケールアウトすることができる。一方、Exadata X8M-8は、より大きなメモリフットプリントと演算能力を備え、メモリのワークロードが大きい用途に適したモデルとなっている。
ウママゲスワラン氏は、Exadata X8Mのストレージ性能について、「インメモリと同様の性能を実現している。読み取りIOPS(Input/Output Per Second)は、従来モデルのExadata X8から2.5倍高速となる1600万IOPSを達成。レイテンシも、Exadata X8から10倍高速の19マイクロ秒以下となっている。これによって、さらに多くのアプリケーションをExadataに統合することが可能になった。また、ラックを追加することで、性能をさらにスケールアウトしていくことができる」と説明。
そして、この高速性能を支えているのが、Exadata X8Mで新たに搭載した2つのハードウェア技術「RDMA(Remote Direct Memory Access) over Converged Ethernet」(以下、RoCE)と「Intel Optane DC Persistent Memory」(以下、永続性メモリ)だ。
「Exadataは、ハイパフォーマンスを実現するためにRDMAを採用してきた。RDMAは、他のコンピュータにアクセスする際にOSやCPUを介在することなく、ネットワークカードが直接メモリを読み書きすることで、極めて低いレイテンシを実現する技術。今まで、RDMAを実行可能なネットワークはInfiniBandだけだったが、今回新たに搭載したRoCEでは、100ギガビットイーサネット(GbE)上でRDMAを実行することが可能になる」(ウママゲスワラン氏)
RoCEの具体的な仕組みとしては、ネットワークプロトコルスタックの上位層(アプリケーションレイヤー)では、InfiniBandと同一のプロトコルで実行し、下層(ネットワークレイヤー)では、InfiniBandパケットがイーサネットUDPパケットに変換され、全てのスイッチやネットワークに透過的に送られる。これにより、RDMAのスピードと信頼性を、Exadataの全てのイーサネットファブリックで提供することができるようになる。
また、RoCEに関わる機能として、「低遅延が求められるメッセージを優先するスマートな優先付けネットワーク」「RoCEによる4つのRDMAを利用した瞬時の障害検知」などについても触れていた。
永続性メモリは、容量、パフォーマンス、価格がDRAMとフラッシュの間に位置付けられる新しい半導体技術。読み取り速度はDRAMよりも若干遅い一方で、書き込み時にはDRAMとは異なり電源障害が起こってもデータが消えずに残る点が特徴となっている。
「他社のストレージ構成では、ストレージ内部に永続性メモリを置いていたため、ネットワークやI/O、割り込み、コンテキストスイッチなどの高コスト処理によって、その性能メリットが消されてしまっていた。Exadata X8Mでは、データベース用に最適化された共有永続性メモリを採用し、フラッシュの前に透過的に設置。データベースはRDMAを利用し、OS、I/O、コンテキストスイッチをバイパスして永続性メモリに直接アクセスする。これによって、1600万IOPSの高速性能と19マイクロ秒以下の超低レイテンシを実現した」(ウママゲスワラン氏)
この他にウママゲスワラン氏は、永続性メモリに関するExadata X8Mの独自性やメリットとして、以下のような特徴を挙げた。
Exadata X8Mのソフトウェア面における大きなポイントは、従来のInfiniBandモデルではXenベースの仮想化を使用していたのに対し、RoCEではKVMベースの仮想化を採用したことだ。
この理由について、ウママゲスワラン氏は「オンプレミスからクラウドへの移行に当たっては、ゲストのVM(仮想マシン)メモリを増やしたいというニーズが高まっていた。これに対して今回、KVMベースの仮想化を使用することで、ゲストのVMメモリを倍増することが可能となった。
また、サーバ当たりのゲストVM数も50%増となり、従来よりも多くのゲストVMをシステム上に展開できるようになった。さらに、KVMベースの仮想化は、クライアントネットワークの遅延を大幅に縮小できる効果もある」と説明した。
また、データベースのカラム型キャッシュの改善点としては、「フラッシュ内のカラム型キャッシュ作成を最大35%高速化」「アグリゲーションのスピードを最大2倍に高速化」「行連鎖により幅広い表に対して最大3倍の高速化」を図ったことを紹介した。
最後にウママゲスワラン氏は「Exadataのパフォーマンスとコストは、今も劇的に改善され続けており、その優位性は毎年高まっている」とアピールした。
2つ目の基調講演では、Oracle Corporationでマスター・プロダクト・マネジャーを務めるマリア・コルガン氏が、次世代アプリケーションに向けた「Oracle Database」の取り組みと最新機能について説明した。
コルガン氏は「次世代のアプリケーションは、俊敏かつ安全であることが重要であり、その1つのモデルがSaaSアプリであると考えている。ただし、これまでの第1世代のSaaSアプリは、全てのテナントのデータが同一の表に混在して格納されていたため、開発や管理が非常に複雑だった。これに対してOracle Databaseでは、マルチテナントを採用した第2世代のSaaSアプリとして、テナントごとに論理的に分離されたデータベースを利用可能にする」と、まずはマルチテナント機能を紹介した。
マルチテナントによって、顧客は個別のプラガブルデータベースを持てるようになることで、アプリケーション開発が容易になるとともに、俊敏にテナントのクローンや移動を行ったり、セキュリティ管理を強制したりできるようになる。さらに、複数のプラガブルデータベースを一元的に管理することも可能になるという。
さらに、コルガン氏は「また、次世代アプリケーションには、構造型のリレーショナルデータベースと非構造型のJSONやXMLデータの両方に対応できる柔軟性も求められる」と指摘。
この点についてもOracle Databaseは、ネイティブにJSONとXMLをサポートしており、アプリケーションはさまざまなタイプのデータを容易に扱うことが可能だ。標準的なSQLとJSON Path、XML Pathによって高速なアクセスを実現し、構造化データと非構造化データをシングルクエリでつなげることもできる。さらに、並列処理SQLを活用して非構造化データに対して分析処理を行うことも可能となっている。
そして、次期バージョンの「Oracle Database 20c」では、次世代のセキュアなアプリケーションに向けて、新たに「ブロックチェーンテーブル」を提供するという。
コルガン氏によれば「ブロックチェーンテーブルにデータが挿入されると、その行が暗号的にチェーンされる。チェーンには、参加者によるサインインと認証を行うことで、不正なトランザクションを検知、特定し、テーブルのデータ改ざんなどを防ぐことができる。また、ブロックチェーンテーブルは、アプリケーション側からは普通のテーブルと同じように見えるので、他のテーブルとのトランザクションやクエリに透過的に参加することもできる」としている。
次世代のアダプタブルなアプリケーションの展開に向けて、マイクロサービスをシンプルに作成、管理できるようにしている点もOracle Database 20cの見逃せない特徴だ。マイクロサービスは、事業部ごとに独立してアプリケーションを開発、運用できるようになる一方で、複数のマイクロサービスの中にデータが分散化してしまうという課題があった。
そこで、Oracleでは、論理的に分離したプラガブルデータベースを使用して、マイクロサービスを作成できるようにした。これによって、マイクロサービスを俊敏かつ容易に展開できることに加え、管理者にとっては、マイクロサービスで使われるデータ全体を透過的に把握、管理することが可能になる。
次世代の分析型アプリケーションに向けた取り組みとしては、同一データベース上で高速な分析処理とOLTPを両立するために、Oracle Database 20cでは行フォーマットと列フォーマットを組み合わせてデータを格納できるようにした。これにより、大量のトランザクション処理を行っている一方で、リアルタイムの分析処理も同時に行うことが可能になるという。
さらに、コルガン氏は、次世代の予測アプリケーション構築を支援するために、機械学習をよりシンプルに活用できるようにした点も強調。
「従来の機械学習のソリューションは非常に複雑で、物理的に別のシステムを置かないと機械学習モデルを構築することができなかった。そこで、Oracle Database 20cでは、業界でもトップレベルの機械学習アルゴリズムをデータベースに内蔵した。これによって開発者は、データベース上で機械学習モデルを作ってトレーニングするだけでなく、展開することもできるようになった。
また、社内に熟練したデータサイエンティストや開発者がいない企業でも、機械学習を容易に利用できる機能として『AutoML』を提供する。AutoMLは、作成したい機械学習モデルの要件を入力するだけで適切なアルゴリズムを発見し、高品質なモデルを自動で構築してくれる」と説明した。
この他、データレイクの構築をシンプルにする取り組みとして、低コストのオブジェクトストア上のデータレイク内にあるデータにもOracle Databaseからシームレスにアクセスして取り込めるようにしたという。これにより開発者は、Oracle Databaseとオブジェクトストアにまたがって、並列処理SQLを実行することが可能になる。
最後にコルガン氏は、「Oracle Databaseは、アプリケーション開発をシンプル化するために、先端のデータテクノロジーを1つのコンバージドデータベースに包含している。そのため開発者は、1つのアプリケーションを実行するのに複数のデータベースを用意する必要がなくなる。そして、1つのプラットフォームであらゆるデータに対応し、全てのアプリケーションに高レベルのセキュリティ、可用性、管理性を提供する」として講演を締めくくった。
Copyright © ITmedia, Inc. All Rights Reserved.
提供:日本オラクル株式会社
アイティメディア営業企画/制作:@IT 編集部/掲載内容有効期限:2019年12月9日
驚異的なパフォーマンス、優れた運用効率、最高の可用性とセキュリティ、クラウド対応を実現するOracle Exadataとの統合、クラウド、可用性や運用管理など、次世代データベース基盤構築のために参考になる必見資料をまとめてご紹介いたします。