こんにちは。Re:QのT.Wです。
A.Yと共に、私もOracle OpenWorld Asia: Singapore 2019に参加してきました。A.Yによる前回の投稿では、当社のCapability TourやOOW、そして全体的な旅程などの概要について触れましたが、今回はOOWのセッション内容について少しご紹介したいと思います。
内容としては、Oracle Database: What's New and Comming Up Next with 19c を中心に、Oracle Database最新バージョンの新機能についてです。
・SUPPORT - LONG TERM SUPPORT
まず、Oracle Database 19cでは、LONG TERM SUPPORTを受けられることが確定しました!
ということは、プライマリーサポートは2022年まで、延長サポートは2025年までです。更に、延長サポートは別途追加料金がかかりません。Oracle Database 11g、Oracle Database 12cからのバージョンアップの際は、是非ご活用ください。
・PERFORMANCE - AUTOMATIC INDEXES
次は、インデックス自動作成機能です。Oracle Database 19cで最も注目される機能と言えます。パフォーマンス・チューニングの一環として、インデックスは正しく作成されたのか考慮する必要があります。必要な作業として、データベース全体統計、メモリ、頻繫にソートされる列、LOB、パーテーション、並列処理などの情報を収集及び分析する必要があり、場合によって情報の収集から実装まで数ヶ月かかるかもしれません。
このような大変と思われる作業がOracle Database 19cから変わります。
インデックス・アドバイザと違い、インデックス自動作成機能はただの推奨(recommendation)を提供するだけではありません。
この機能は実際のインデックスを作成まで実装してくれます。
キャプチャー → 識別 → 確認 → 判断および実装 → モニター → キャプチャー → ...
以上、五つのステップに加え、自らの間違いを学習する「強化学習」(Reinforcement Learning)により、情報収集、分析、スケジュール調整、インデックスの実装まで一連のコスト(時間や人力など)を削減できることが期待されます。
・PERFORMANCE - REAL-TIME STATICTICS COLLECTIONS
SQLクエリからテーブルへのアクセスをする際、パフォーマンスを向上させるため、事前に収集した統計情報を元に最適な手段でアクセスする必要があります。しかし、これまでの統計情報収集の方法は一定の時間をおいて実行されており、24/7システムにとっては、「最適」とは言えません。Oracle Database 19c のリアルタイム統計情報収集はDMLごと(insert、update、deleteなど)に統計情報が更新されるので、統計情報は常にリアルタイムに近い状態に保たれています。
・HIGH AVAILABILITY - DATA GUARD DML REDIRECT
これまでのOracle Active Data Guardの人気機能として、STANDBYデータベースは主にレポート作成やバックアップ用途として使われており、STANDBYデータベースに対して「書込み」オペレーションはできませんでした。しかし、19cの新機能 DATA GUARD DML Redirect を使用すると、ユーザーはSTANDBYデータベースに対する「書込み」オペレーションが可能です。
実際の実行順番:
1.STANDBYデータベースにDMLを実行
2.DMLがPRIMARYデータベースにリダイレクト
3.PRIMARYデータベースがDMLによりデータ変更
4.PRIMARYデータベースより生成されたログがSTANDBYデータベースに送信
5.STANDBYデータベースのデータが変更
補足ですが、実際のDMLによるデータ変更はPRIMARYデータベースしか処理しないので、STANBYデータベースに大量のDMLクエリを実行するのはできるだけ避けたほうが良いかもしれません。
・Oracle Hybrid PARTITION TABLES
一つの巨大テーブルを複数のパーティションに分割すると、その利点としてはより簡単に管理やパフォーマンスの向上が期待されます。
使用状況に応じて、基本的にはDMLによる更新されるテーブルと読み取り専用テーブルなどの種類があります。Oracle Databse 19c では分割された読み取り専用テーブルを外部テーブルに変更し、ファイルシステムに保存することもできます。さらにクラウドベースのオブジェクトストレージ(Oracle Cloud Object Storage、Amazon S3)に保存することができるようになりました。こちらの新機能もコスト(時間や人力など)を削減することに期待されます。
・APPICATION DEVELOPMENT - PARTIAL JSON UPDATE SUPPORT
これまでのJSONデータ列を更新する際、全く新しい列にデータをアップロードする必要がありました。この機能により、JSONデータ列の一部を更新することができるようになりました。
・Web SQLDeveloper - livesql.oracle.com
DBAとしてOracle Database 19cの新機能を確かめたい時に、以下の2つの方法で確認できます。
方法1のステップ:
1.Oracle公式サイトでOracle Database 19cをダウンロード
2.OSイメージを用意し、インストール
3.Oracle Database 19cインストール
4.確認開始
方法2のステップ:
1.livesql.oracle.com へログイン
2.確認開始
賢いあなたはどちらの方法を採用しますか?
Oracle livesqlを利用するメリットは以下になります。
・Oracle Database 19cが標準インストールされます
・無料
・SQL実行できる
・チュートリアルあり
・スクリプト共有できる
もちろん、SQLを学びたい方、会社の新人研修なども活用できたらと思います。
Oracle Database 19cの新機能は以上のみではありません。
他の新機能に興味がある方はぜひOracle公式で提供しているドキュメントを確認ください。
参考になれば幸いです。
別のメンバが更にPart3を公開予定ですので、そちらも楽しみにしていてください!