Oracle Autonomous Data Warehouseを無料枠で検証してみた
投稿者:ビッグデータ編集者
皆様こんにちは、今回はタイトルの通り、Oracle Autonomous Data Warehouseについてのブログになります。
Oracle Autonomous Data Warehouseとは、Oracle Cloudで提供される文字通り自律型の分析用データベースです。
Oracle Cloud Free Tierで実際に触りながら、自律型とは何なのか、実際の性能はどうなのか、簡単に考察していきます。
■特徴
この”自律型“が意味するのは次の3つに分類されます。
・Self-Driving(自動稼働)
プロビジョニング、スケーリング、監視、バックアップ、復旧、トラブルシューティング、チューニング 等
・Self-Securing(自動保護)
暗号化、セキュリティパッチの適用 等
・Self-Repairing(自動復旧)
三重ミラーリング、アップタイム99.995%保証 等
主観になりますが、この中で特筆すべきは自動稼働に分類される自律チューニングです。
Exadataのテクノロジーを用いており、かつ、機械学習によりインデックス作成、パーティショニング、並列化を自動的に行い、パフォーマンスを最適化してくれるようです。
これは期待できます。
Oracle Autonomous Data Warehouseのアーキテクチャは、Oracle公式サイトの下記リンクをご参考ください。
https://docs.oracle.com/cd/E83857_01/paas/autonomous-data-warehouse-cloud/user/autonomous-intro-adw.html#GUID-4B91499D-7C2B-46D9-8E4D-A6ABF2093414
■検証の前提
・環境
Oracle Cloud Free Tierでは、プロビジョニングの際に次のリソースが固定されます。
・バージョン 18c
・CPU 1コア
・メモリ 8GB
・ストレージ 0.02TB
データベース名、ユーザ名、パスワード、ネットワーク等を入力、選択後に”Autonomous Databaseの作成”をクリックすれば、数十秒でプロビジョニングが完了します。
Oracle Cloudで提供されるSQL Developer Webを用いれば、Webブラウザにてすぐにデータベースにアクセスすることができます。
■機能一覧
データベースの基本機能について実行可否を表にまとめました。
※ここからは、下記リンクのSnowflakeのTechBlogと比較の意図もございますので、併せてご覧いただけますと幸いです。
https://www.niandc.co.jp/sol/tech/date20201001_1899.php
表にした意味がないくらい、当然のように全て機能しました。
Oracle Cloud Free Tierでは実際にサポート窓口に問い合わることは出来ませんでしたが、日本語サポートは助かります。
また、下記リンクに公式マニュアルが豊富にございますため、検証時に役立ちました。
https://docs.oracle.com/cd/E83857_01/paas/autonomous-data-warehouse-cloud/user/part-using.html#GUID-F9B1D121-5D89-40B4-90C6-8E8E233C2B3F
■機能検証
1. データロード
SQL Developer Webから2種類の方法でデータロードしてみました。
1.1. ローカルPCのcsvファイルをAutonomous Data Warehouseのテーブルにロード
はじめに、このようにナビゲータからテーブルを選択して”データのアップロード”をクリックします。
次に、このような画面が表示されるので、PCのファイルをドラック・アンド・ドロップします。
次に、このようにプレビューやデータマッピングが表示されるので、修正する必要がある場合は適宜修正して次へ進みます。
問題なければ終了をクリック。
これにてロード完了です。とっても簡単。
ちなみに、エクスポートもこのように簡単に行うことができました。ローカルに保存可能です。
1.2. Oracle Cloudのオブジェクト・ストレージにバケットを作成して、そのバケットにデータを保存してデータロード。
はじめに、オブジェクトストレージにバケットを作るため、Oracle Cloudのメニューから”オブジェクト・ストレージ”を選択します。
次に”バケットの作成”をクリックして必要事項を入力して作成すると、以下のように作成したバケットが表示されます。
バケットの名前をクリックすると、次のような画面が表示されるので、”アップロード”を選択してファイルをアップロードします。
次に、バケット内のファイルに事前承認リクエストを作成します。
次に、ユーザ設定から認証トークンを作成します。
次に、生成されたパスワードでオブジェクトストア認証情報を作成します。
ここまで来れば、このようにプロシージャを用いてロードすることが可能です。
データサイズが大きくても安心です。また、懸念していたSJISでもUTF-8でも正常にロードすることができました。
2. クライアントからの接続
ローカルPCからWebブラウザ以外を用いてOracle Autonomous Data Warehouseに接続するため、Oracle Clientを用いて接続してみます。
これを利用するためには、Oracle CloudのAutonomous Data Warehouseからクライアント資格証明(ウォレット)をダウンロードする必要があります。
PC側でOracle Clientにウォレットを適用することで、コマンドプロンプトからSQL*PLUSでデータベースに接続ができました。
■性能検証
Autonomous Data Warehouseでは”36.02秒“という結果になりました。
環境:”検証の前提”に記載
検証データ:
・会員情報(1千万件)
・会員のPOSデータ(2億件)
実施した処理:
「会員情報」と「会員のPOSデータ」から各会員の購入履歴を調査し、優良顧客を検索する。
※下記ルールにて会員に得点を追加していき、得点の高いユーザが優良顧客とする。
※テストデータによる検証のため実際の性能は保証しません。
■所感
Oracle Autonomous Data Warehouseを実際に体験し、調査した所感です。
・よいところ
Exadataをベースとしてデータウェアハウスに最適化されているため、データベースとしての機能が充実している。
AWSのサブスクリプション料金の5~8分の1のコストで、AWS Redshiftの8~14倍のスピードでデータ処理が行えるらしい。
(出典:https://www.oracle.com/assets/oracle-autonomous-dw-cloud-4407840-ja.pdf)
当然ながらオンプレミスのOracleデータベースとも互換性が非常に高い。
ダウンタイムなしで自律的にパッチが適用される。
設定したCPUの3倍までオートスケーリングできる。
■総評
他DWHと比較すると以下のような印象を持ちました。
自律によりカスタマイズが制限される部分もありますが、工数をかけず、それなりのパフォーマンスを得ることができるのが最大の魅力だと感じました。