Database Support Blog

  • Oracle Database
2021.05.13

Oracle Database 21c新機能から読み解く!コンバージドデータベースの世界と機能強化の傾向とは

こんにちは。今回は Oracle Database 21cの新機能情報をもとに、「機能強化の傾向」や「注力分野」等をアシスト独自の視点で探ってみました。今後のバージョンアップや移設計画に組み込める機能情報をお探しの方、ざっくりとしたバージョン傾向をつかみたい方は必見です。


Oracle Database 21c とは

Oracle Database 21c とは、Innovation Release(革新リリース)として公開されているバージョンです。Oracle Cloud でのみ先行公開されており、順次オンプレ版も公開される予定です(2021年予定)。

(参考)オラクルエンジニア通信 Oracle Database 21cのご紹介
 https://blogs.oracle.com/oracle4engineer/column_db21c

革新リリースは「最先端のテクノロジーを継続的に使用したい」「新しいアプリケーションを迅速に開発または展開したい」といったケースを想定して公開されているリリースです。今後の長期サポートバージョンでどんな機能を実装するか、という傾向を革新リリースから読み取ることができます。

ちなみに21cに限らず、新機能情報を簡単に検索できるツールは一般公開されています。他の機能も気になる方は是非チェックしてみてくださいね。該当バージョンの新機能のみを調べることもできますし、いつから実装されたのかを調べることも可能です。

▼新機能検索ツール
https://apex.oracle.com/database-features/

21c新機能から分かるOracle Databaseの描く未来

21c 新機能の詳細を調べてみると、オンプレでもクラウドでも「安心・安全に使えること」を目指している傾向がうかがえます。

また、メーカコンセプトとしても掲げている「コンバージドデータベース(Converged Database)」をより実現しやすくするための新機能も多数盛り込まれています。

下記は、新機能のリストをカテゴリ別に検索した件数をまとめたものです。

カテゴリ 新機能の数(単位:個)
アプリケーション開発(JSON、SQL等) 78
可用性(Data Guard、Real Application Clusters等) 41
DWH、ビッグデータ(Data Mining等) 9
データベース全体(ACFS、Data Pump、索引等) 45
診断 1
パフォーマンス(In-Memory、SPM等) 9
セキュリティ(暗号化、監査等) 28
合計(2021/04/09 現在) 211

コンバージドデータベースについては少し補足しましょう。


コンバージドデータベースとは

コンバージドとは「集約」や「統合」という意味です。「それ一つさえあれば色々なことが実現できるデータベース」。OLTPやDWH等、目的別や処理傾向ごとにデータベースを使い分けるという発想とは真逆の考え方です。言い方を変えると「データを一か所に溜めておけば、様々な事が実現できる」というイメージです。


コンバージドデータベースの世界観が分かる『インメモリ機能』

コンバージドデータベースの世界観が一番わかりやすく、かつ今までのバージョンですでに公開されていた機能としては「インメモリ(In-Memory)機能」が挙げられます。インメモリ機能とは、分析系の処理も高速化できる機能です。従来のロー(行)型フォーマットで格納されたデータをカラム(列)型フォーマットでメモリ上に展開します。分析用のデータを別途用意しなくても良い点が魅力です。Enterprise Edition の有償オプションとして当初公開されていましたが、19c以上であればインメモリー領域サイズが16GB までなら有償オプション無しでEnterprise Edition でも利用できるようになりました。

このように、一か所にデータを溜めておけば、やりたいことが全て実現できる未来を目指していることが、21c新機能の実装傾向や機能拡張からも読み取ることができます。

(参考)Oracle Database In-Memoryが業務を変える
 https://www.ashisuto.co.jp/tech-note/article/20141202_oracle.html

※利用可能な環境については一部制限事項があります(例:承認されたクラウドでも利用はできない、等)。インメモリ機能のライセンスに関する詳細は、Oracle Database 19c または 21c の「Databaseライセンス情報ユーザー・マニュアル」も合わせてご参考ください。


21c 注目の新機能

1つのデータベースであらゆる処理を行うには、様々なデータタイプや処理傾向にも対応できることが求められます。今回の記事では、200個以上の新機能の中でも、注目の新機能をいくつかピックアップしてご紹介します。

JSONデータの機能強化

JSONデータ自体はこれまでのバージョンでも格納はできましたが、21cでさらに多くの機能が追加されました。主なものは下記です。

・バイナリ形式のJSONをサポート
・JSONでクエリを実行し、結果をJSONとして返すことができる機能の追加
・JSON記述子で動作するOracle Call Interface(OCI)APIが導入可能に   ・・・等

ここで注目したいのは「バイナリ形式のJSON」がサポートされたこと。これにより、リレーショナルデータと組合せて検索したり結合処理をしたりすることができるようになりました。JSONドキュメント処理のパフォーマンス向上に繋がっているという情報もあり、後続バージョンでの進化も必見です。

ブロック・チェーン・テーブル

ブロック・チェーン・テーブルとは、通常テーブルとは異なる構造を持った特殊なテーブルです。主に、データの改竄(かいざん)を防ぐ目的で利用します。データ挿入のみが可能で、UPDATEやその他の変更は許可されておらず、削除するにも制約が設けられています。言い換えると行データを自由に変更することができない仕様のため、「データの完全性」を担保しなければならない場合や「証明」が求められる場面に有効です。

データを挿入すると、前の行のデータのハッシュ値も一緒に挿入されます。次の行には、先ほどの挿入行のデータのハッシュ値が一緒に挿入されます。もし以前のデータが変更されるとハッシュ値が異なってくるため、もともと格納されていたハッシュ値と食い違いが生じます。限りなく低い確率とはいえ万一防御を突破されてしまったとしても、改竄されたかどうかが記録される仕組みになっています。

(参考)OracleDBにブロックチェーン?21c新機能Blockchain Tableとは
 https://www.ashisuto.co.jp/db_blog/article/oracle-blockchain-table.html

「データを変えることができない」ということを保障できるテーブルのため、例えば下記のようなケースでの活用が期待できます。

▼活用例

・不変のトランザクションログ
・金融/勘定台帳やサブ台帳テーブル
・監査証跡
・法律上確実な保存が要求される情報
・検査証                 ・・・等

PMEMへのデータファイル配置のサポート

PMEM(Persistent Memory)へデータファイルを配置することも21cからできるようになりました。

従来通り SSDへも配置は可能ですが、PMEM へ配置することで I/O処理部分のボトルネックをさらに低減することが可能になります。PMEMから直接データを読みこむことができるようになるため、DBバッファキャッシュのメモリサイズも抑えることができます。

ただし、PMEMがサポートされているストレージの利用が前提です。また、21c時点では RACやData Guard には未対応のため、RACや Data Guard 環境では21c時点では引き続きSSD構成の方がおすすめです。「シングル構成の場合でのみ選択可」という点には注意が必要ですが、今後のバージョンでのサポート拡充には期待したいところですね。

統合監査の機能強化

21cからはデータベースの監査方法は「統合監査のみ」になりました。従来は監査対象の証跡ごとに保存先などを設定する必要がありましたが、今後はデータベース内にまとめて証跡を保存し、必要な証跡情報はSQLで問い合わせて抽出することになります。

19cまでのバージョンで「混合監査」を選択している場合、将来のバージョンアップでは監査手法や定義する監査ポリシーの検討が必要になることは抑えておきましょう。

統合監査は12cR1から登場した機能です。統合監査をまだ知らない、知りたいという方は、下記のブログも併せてご参考ください。

(参考)移行前に知っておきたい、Oracle Database 12c新機能のオモテとウラ Vol.5
 https://www.ashisuto.co.jp/tech-note/article/20140515_oracle.html

統合監査は上記ブログにも記載の通り、定義した監査ポリシーに則って監査証跡が収集されます。21c以降のバージョンでは、この監査ポリシーを定義変更した場合、設定反映のタイミングが従来のバージョンから変わっています。運用途中のポリシー変更が想定される場合には、下記の仕様動作の違いも併せて押さえておくことをおすすめします。

従来のバージョン 新規セッションからポリシーが変更される
21c以降 即時反映される(既存セッションにもポリシーが反映される)

セキュリティの機能強化

セキュリティ関連の機能も様々ありますが、その中でもエディションに関係なく関わってくるものとして「パスワードファイル」があります。

従来のバージョンでは「大文字/小文字を区別しない方法」は選択肢としては残されていました。たとえばパスワードファイルの IGNORECASE の指定や、初期化パラメータの SEC_CASE_SENSITIVE_LOGON 等の設定が該当します。

(参考)Oracle Database 12cR2へのアップグレード後に発生するORA-01017
 https://www.ashisuto.co.jp/db_blog/article/201712-ora-01017.html

21c以降では、これらのパスワードの大文字/小文字を区別するかしないかを制御するパラメータは削除されています。21cで新たに作成したパスワードファイルは大文字/小文字が区別されます。21c以降にバージョンアップをする場合、関連するアプリケーション側でも改修が必要になるケースもあります。パスワードの大文字/小文字を区別しない設定で運用しているシステムがないかどうか、早めの確認をおすすめします。

▼廃止された初期化パラメータ一覧(データベースリファレンス 21c / 2021年4月時点抜粋)

次の機能は、Oracle Databaseリリース21c、バージョン21.1ではサポートされていません。

 ・REMOTE_OS_AUTHENT初期化パラメータ
 ・SEC_CASE_SENSITIVE_LOGON初期化パラメータ
 ・UNIFIED_AUDIT_SGA_QUEUE_SIZE初期化パラメータ

暗号化関連の機能強化

古いアルゴリズムが非推奨または廃止になりました。内容は下記の通りです。

非推奨 MD4、MD5、DES
非サポート RC4

基本的には暗号化機能は Enterprise Edition の有償オプションである Advanced Security が必要です。ただし、Standard Edition2 でも利用できるケースもあります(例:ネットワーク通信部分の暗号化、Oracle Cloud の PaaS 利用時等)。

今後ますますクラウド化、もしくはオンプレとクラウドのハイブリッド利用が加速する時代です。暗号化の仕組みを検討する事も増えてくることが予想されます。採用すべきアルゴリズムに迷ったら、21c以降のOracle Database であれば AES系が主流になりそうです。

オプション有償ライセンスの無償化


Enterprise Edition の有償オプションとして提供されていた機械学習、空間、グラフ関連機能が、SE2を含むすべてのエディションで利用できるようになりました。無償化対象の機能名は下記の通りです。

 ・Oracle Spatial and Graph
 ・Oracle Machine Learning
 ・プロパティ・グラフおよびRDFグラフ・テクノロジ(RDF/OWL)

上記の機能はいずれも 21cがリリースされたのとほぼ同時期に 19c やそれ以下のバージョンでも同様のマニュアル改訂が行われています。詳細はご利用予定のバージョンのライセンスマニュアルをご参照ください。


まとめ

「データを一か所に集めておけば、やりたいことが何でもできる」という夢のようなコンセプト。そして、その夢をかなえるために切っても切れない「安心・安全」なセキュリティ。
21c新機能の強化傾向からの推察ですが、オンプレとクラウドという選択肢にも柔軟に、そして安心して対応できる未来にさらに期待ができそうです。


参考情報

新機能検索ツール
https://apex.oracle.com/database-features/

アップグレードガイド(21c版)
https://docs.oracle.com/en/database/oracle/oracle-database/21/upgrd/index.html

リリースノート(21c版)
https://docs.oracle.com/en/database/oracle/oracle-database/21/rnrdm/index.html

Oracle Database 21cのご紹介(January 14, 2021)
https://blogs.oracle.com/oracle4engineer/column_db21c


執筆者情報

あさの みさ プロフィール画像

2007年度アシストに入社後、Oracle Database のフィールドエンジニアと定期研修のセミナー講師を兼務。
2度の産休・育休を経て、現在はデータベースやクラウド関連のプリセールスエンジニアとして活動中。


■商標に関して
OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。
文中の社名、商品名等は各社の商標または登録商標である場合があります。

関連している記事

  • Oracle Database
2021.06.04

現場経験者が語る!21c以降へのバージョンアップで押さえておくべき仕様情報

Oracle Database 21c の登場以降、こんな相談が増えてきました。今回は21cの仕様変更や廃止機能等、主要なものをピックアップしてご紹介します。

  • Oracle Database
2021.04.27

OracleDBにブロックチェーン?21c新機能Blockchain Tableとは

Oracle Database 21cは「コンバージド・データベース」として、様々なデータをOracle DB上でサポートする展望があります。ブロックチェーン(分散型台帳技術)の思想を採用したBlockchain Tableの概要と検証結果を解説します。

  • Oracle Database
2020.12.17

Oracle Databaseバージョンアップ後の性能劣化で試したい暫定対処

DBバージョンアップ後にオプティマイザの動作が変わります。基本的には新バージョンにすることでより良い性能を得られますが、意図せず性能劣化が発生する可能性もあります。サポートに原因調査を依頼している間に、ユーザ側で試せる切り分け方法をお伝えします。

ページの先頭へ戻る