データベースも自動運転!最新版「Autonomous Database」を徹底解説
2024.05.09
|
|---|
<執筆者> 冷水 直也 Hiyamizu Naoya
ビジネスインフラ技術本部
データベース技術統括部 技術3部 部長
2003年に入社し、データベース分野を中心に西日本で活動。その後、4年間の東京勤務ではデータベース仮想化製品の立ち上げを担当。帰阪した現在は、西日本のデータベース技術部隊の責任者となる。
徹底的に物事を追求する性格が災いすることが多く、比較的多趣味なほうだが、人生で一度も趣味を楽しめたことがないことが悩み。全く思いどおりにならないゴルフは、4年間一度も楽しいと思えないまま休止中。最近はロードバイク、キャンプ、ジム通いを嗜み中。いつか心から楽しめる趣味に出会えますように。
はじめに
こんにちは。2024年5月にデータベース技術統括部の部長として1周年を迎える冷水直也です。
いきなりですが、皆様は「自動運転」と聞いて何を思い浮かべるでしょうか?
おそらく、車やバス、鉄道、ドローンといった人や物の移動手段の自動化が一般的かと思います。
そんな「ハード」の自動化もさることながら、データベースをはじめとした「ソフト」にも自動化の波は来ています。
はい、そうです。今回のテーマは、Oracle社の
Autonomous Database(ADB)が実現する「データベースの自動運転」
です。
クラウドサービスの採用が当たり前になってきた時代、次は自動運転が当たり前になるのでは?という期待を込めて、Autonomous Database についてお話したいと思います。
Autonomous Database(ADB)とは
Autonomous Database は、
Oracle Cloud Infrastructure(以下、OCI)のマネージドサービスの一つで「自律型データベース」
と訳されます。
自己管理、自己保護、自己修復をAI/機械学習によって実現するデータベースサービスで、これまでは管理者や専門家が行ってきた作業を自動化できます。
Autonomous Database で提供される3つの自動化
自己管理 …… データベースのプロビジョニング、SQLチューニング、負荷状況に合わせたスケール拡張/縮小を自動化
自己保護 …… データ保護、セキュリティの脆弱性を修正するパッチ適用、不正アクセス防止を自動化
自己修復 …… 障害検出、フェイルオーバー、修復を自動化
さらに Autonomous Database は最高峰のパフォーマンスを出すことができる Oracle Exadata Database Machine(以下、Exadata)上で動作しており、管理面だけではなく性能面でも抜かりはありません。
参考:Exadata最新モデル「X10M」登場!圧倒的な拡張性を備えたOracle Databaseプラットフォームを徹底解説!
Autonomous Database を使う2つのメリット
Autonomous Database を使うメリットは様々ですが、ここでは2つだけピックアップして見ていきます
1.データベース領域(一部)もオラクル社が管理してくれる
以下の図の通り、クラウド事業者である
オラクル社の管理/責任範囲がデータベースレイヤー以下すべてであることに加え、肝心のデータベース領域に関しても一部が範囲に
入っています。
共有責任モデルの違い
|
|
私はアシストに入社して約20年間 Oracle Dabase 製品を担当しています。
入社当初のOracleといえば「データベースソフトウェアだけ」という印象が強かったのですが、最近ではRDBMSに最適化したハードウェア製品であるExadataや、パブリッククラウドサービスであるOCIの Oracle Base Database Service(BaseDB)、Autonomous Database と、Oracle社がここまで責任領域(事業領域)を拡大している路線に驚いています。
OCIに限った話ではありませんが、オンプレミスではなくクラウドサービスを使うことで、データセンターの検討、ハードウェアの準備、仮想マシンやOSの準備といった周辺環境を用意することに工数を割く必要がなくなります。
さらに、OCIのサービスであるAutonomous Database を使うことで、データベースの管理/運用面も半自動化され、より工数を削減することができるでしょう。
2.利用コストを自動で最適化できる
Autonomous Database は、
自動で負荷状況を判断し、リソースの拡張/縮小を無停止で実施
できます。
1CPU単位の拡張や縮小、秒単位の課金
となり、最大限コストを抑えた最適化が可能です。
リソース・課金の違い
|
|
他社クラウドサービスであれば、ピークに合わせたサイジングをしてシステムの再起動を伴う変更が必要になる上、オンプレミス環境だとそもそも課金体系を柔軟に変更することができません。
Autonomous Database なら、クラウドサービスの共有責任モデルの恩恵を継承しながら、さらに「データベースの自動運転」を実現することで、利用者の負荷やコストを最大限下げることができます。
Autonomous Database 初期リリース版と最新版の違い
メリットだらけに見える Autonomous Database ですが、リリース当初は採用に慎重になる企業が多かったことも事実です。
なぜ採用に至らなかったのか、採用を見送ったお客様の声を振り返ってみます。
Autonomous Database 初期リリース版
Autonomous Database がリリースされて間もない頃、お客様が「これは許容できない」とおっしゃっていたのは以下の点でした。
Autonomous Database “初期リリース版” の採用が見送られた理由(抜粋)
・タイムゾーンが選択できない(日本は「UTC+9h」だが「UTC」固定となる)
・SJIS系のキャラクタセットが選択できない
・パスワードを定期的に変更しなければならない
・インスタンス接続に Wallet の利用が必須
・プライベートIP経由でデータベースリンクができない(踏み台が必要)
・東京-大阪間で DataGuard 構成ができない
・自動パッチ適用が許容できない
・自動パッチ適用後の性能劣化が許容できない(オプティマイザの修正)
・自動バージョンアップが許容できない
上記のように「我々もさすがに自信をもって提案できない」と思うような、細かな制限の記憶がよみがえってきました。
Autonomous Database が目指す世界観や方向性、クラウドサービスがもたらすメリットは理解しつつも、
・クラウドサービスへのリフト&シフトが必要である
・Autonomous Database ならではの制限がある
といった点が、採用に至らなかった原因でした。
Autonomous Database 最新版
2024年、最新の Autonomous Database で、先述の仕様や制限はどうなっているのかを確認してみましょう。
Autonomous Database “最新版” の変化(抜粋)
〇 タイムゾーンが選択できない(日本は「UTC+9h」だが「UTC」固定となる)
→ OS・DBともに、日本のタイムゾーンに変更可能となった
〇 SJIS系のキャラクタセットが選択できない
→ 選択可能になった
△ パスワードを定期的に変更しなければならない
→ ADMINユーザー以外は期限を無制限にできる
ADMINユーザーだけは360日ごとに変更が必要
〇 インスタンス接続に Wallet の利用が必須
→ Wallet なしで接続が可能になった
〇 プライベートIP経由でデータベースリンクができない(踏み台が必要)
→ データベースリンクで直接接続が可能になった
〇 東京-大阪間で DataGuard 構成ができない
→ 東京-大阪間で DataGuard 構成が可能になった
△ 自動パッチ適用が許容できない
→ 事前に定義された日時に自動的にパッチ適用される(日時の変更はできない)
原則はオンライン適用だが、サービス停止を伴う場合は通知がくる
△ 自動パッチ適用後の性能劣化が許容できない(オプティマイザの修正)
→ パッチ適用ではオプティマイザは修正されない仕様となった
仮にSQL実行計画が変動しても性能劣化しない仕組みになった(強化されたSPMを内部で採用している)
△ 自動バージョンアップが許容できない
→ 自動バージョンアップは回避できない
メジャーバージョンアップの場合は、数ヵ月前に通知がくる
タイムゾーンやキャラクタセット、データベースリンクなど、Autonomous Database 初期リリース版ならではの制限はほぼ解除されていることが分かります。
ただ、やはり自動パッチ適用や自動バージョンアップに関してはまだまだ不安が多い、というのが本音でしょうか。
自動パッチ適用対策に「Transparent Application Continuity」
しかし、そんな自動パッチ適用対策への一手として「Transparent Application Continuity(透過的アプリケーション・コンティニュイティ 以下、TAC)」という機能があります。
TACは Oracle Database の機能で、データベースやネットワークの障害が発生した場合でも、アプリケーションが途切れることなく継続して動作するように設計されています。
自動的にパッチが適用される際にアプリケーションのセッションがエラーとなったとしても、
アプリケーション側(利用者側)にエラーを返すことなく透過的に復旧させることができます。
TACを前提としたシステム設計をすれば、自動パッチ適用によるアプリケーション接続エラーなどはなくなるため、皆様の不安も軽減されるのではないでしょうか。
こんな方に Autonomous Database がおすすめ!
ここまで技術的な話をしてきましたが「結局どんな人に Autonomous Database がおすすめなの?」という方のために、以下をまとめてみました。
こんな方に Autonomous Database がおすすめ!
・クラウドファースト、クラウドリフト&シフトが急務である
・あまり手を加えたくない、移行コストを最小化したい
・データベースの技術者・管理者がいない
・チューニングができない
・人的ミスをなくしたい
・データベースの運用負荷やパッチ負荷を軽減したい
・利用コストを最適化しつつ、性能を担保したい
・統合DB基盤から分析機能を切り出したい など
皆様もいずれかに該当するのではないでしょうか?
あとは先述の「Autonomous Database 最新版」の状況を見て、どうしても許容できない項目があるかどうかをチェックしてみてください。
さいごに
本コラムでは、Autonomous Database の特徴を踏まえ、昔と今で取り巻く環境の変化や制限の緩和を広くお伝えしました。
私個人としては、Oracle Database 技術者として、RAC や DataGuard、Exadata が登場してきた時以上の可能性を Autonomous Database に感じています。
2024年、Oracle Database 23c の新機能に生成AIが組み込まれました。
やがては人間の言葉で命令するだけでデータが取得できたり、システムのベース部分を構築できたりする時代がくるのではないでしょうか。
Autonomous Database はそんな未来の第一歩として非常に魅力的なサービスであると感じています。
皆様のシステムの変革をお手伝いできるよう、我々も尽力していきたいと思います。
長くなってしまったので今回はここまでにします。
本コラムに関する個別のご相談や質問があれば、ぜひお気軽にお問い合わせください。
参考
|
|
[ 事例 ] インメモリDBとも遜色の無い性能を発揮!データドリブン経営を支えるDWHをAutonomous Data Warehouseで再構築
|
|
|
[ コラム ] クラウドサービス後発組ならでは! |
本ページの内容やアシスト西日本について何かございましたら、お気軽にお問い合わせください。










