Oracle Database 20cに関して(Preview版がOracle Cloudで提供開始)

####概要
Oracle Databaseの2020年のリリースであるOracle Database 20cに関して、2020年2月に一部マニュアルを含む様々な情報が公開され、Oracle Cloudで利用できる検証用のPreview Releaseも提供開始となりました。
本記事では、記事を作成した時点での公開されているOracle Database 20cに関する情報を元にポイントと思われる点をお伝えします。

2020年3月頭ごろの情報・環境を元に本記事は記載しています。

####スケジュールに関する情報
20cに限らず、Oracle Databaseの各リリースの提供状況（予定されているスケジュール）は、My Oracle Support(MOS)のNote 742060.1で提供されます。このページの最新情報を参照するためにはサポートサービスから提供されているMOSにログインする必要があります。
[Release Schedule of Current Database Releases (Doc ID 742060.1)](https://support.oracle.com/epmos/faces/DocumentDisplay?id=742060.1&displayIndex=1)
ここのページの提供予定の情報は、あくまで「予定」でしかないことが中で説明されており、変更されることもある点は注意ください。文書のDisclaimer(免責事項)を参照ください。

このMOSのNoteの内容は、下記URLでも参照できますが、原典であるMOSの情報からはタイムラグがあります。最新情報は可能な限り、MOSの情報を参照するとよいです。
[現在のデータベース・リリースのリリース・スケジュール (Doc ID 2413744.1)](https://support.oracle.com/knowledge/Oracle%20Cloud/2413744_1.html)



####サポート期間に関して
各リリース毎のサポート期間も、先のMOSの情報で参照できます。
[Release Schedule of Current Database Releases (Doc ID 742060.1)](https://support.oracle.com/epmos/faces/DocumentDisplay?id=742060.1&displayIndex=1)
このMOSの2020年3月頭の情報より、19cはPremier Supportが2023/3/31まで、有償のExtended Supportが2026/3/31まで提供される予定とされています。2020年3月頭の情報では20cに関してPremier Supportが提供される期間のアナウンスはされていません。

Oracle社のMaster Product Manager for Oracle Database Upgrade and Migrations(データベースアップグレードに関するスペシャリスト)であるMike DietrichのBlogで、もう少し詳細に解説されています。
[To which release should you upgrade to? Revisited …](https://mikedietrichde.com/2020/02/26/to-which-release-should-you-upgrade-to-revisited/)

このBlogで、20cのサポート期間に関して次の2点を説明しています。
- Oracle Database 20cは新しいリリースファミリーの最初のリリースであり、Interim Releaseと呼んでいる。
- Oracle Database 20cに関してバグ修正が提供されるサポート期間は短い期間になる。Oracle Database 20cはExtended Supportの対象とならない。

補足すると、Oracle Database 19cは、12.2のリリースファミリーの最後のリリースでLong Term Support Releaseであり、バグ修正が提供されるサポート期間が長く設定され、Extended Supportの対象となっています。

**この点を考慮すると、Oracle Databaseのアップグレードのためにリリースを選択するときに、サポート期間を重要視するのであれば20cではなく19cを選択する方が有利です。
サポート期間に関しては、必要に応じて、最新の情報を上記のMOSから入手するようにしてください。**

####Oracle Database 20cのPreview Releaseに関して
2020年2月に20cのPreview Releaseが、Oracle CloudのDatabase Cloud Service上で提供が開始されました。下記はOracle CloudのDatabase Cloud Serviceをプロビジョニングするときの設定画面です。20cのPreview Releaseが選択できるようになっています。

![db20c.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/368742/9134c3ec-9592-c913-4834-da98d677c736.png)

Preview Releaseの注意点は下記のようなものです。

- 商用利用はできません
- 利用期限はありません(環境が不要になった際はユーザが削除)
- 課金は通常サービスと同様(Database Cloud Serviceの料金は[こちら](https://www.oracle.com/jp/database/vm-cloud-pricing.html))
- 利用可能な構成：LVMを選択する構成(RAC/Grid Infrastructure構成は不可)、仮想マシン構成(ベアメタル/Exadataは不可)
- 利用できない機能 : パッチ適用、スタンドアロン・バックアップ、自動Data Guard構成など

また、プロビジョニング（作成）したPreview Releaseのノードは停止できません。DBシステムの停止（Terminate）まで起動しています。
これらの点を含みPreview Releaseに関する制限は、下記のマニュアルの情報が参考になります。
[Oracle Database Preview Version Availability](https://docs.cloud.oracle.com/en-us/iaas/Content/Database/Concepts/overview.htm#previewversion)
このマニュアルの記載にPreview Releaseに関する制限に関する情報があり、2020年3月頭時点で "Oracle Cloud Infrastructure currently offers Oracle Database 20c as preview version software."としています。

####Oracle Database 20cでの重要な変更であるNon-CDBアーキテクチャの非サポートに関して
Oracle Database 20cより、マルチテナントアーキテクチャでないデータベース(Non-CDBアーキテクチャ)はサポートされなくなります。下記がそのことに関するマニュアルの記載になります。
[Oracle Database Database Upgrade Guide 20c - Behavior Changes, Deprecated and Desupported Features for Oracle Database - Desupport of Non-CDB Oracle Databases](https://docs.oracle.com/en/database/oracle/oracle-database/20/upgrd/behavior-changes-deprecated-desupport-oracle-database.html#GUID-DC25BF7D-F3DE-4B86-A719-B672BF6708B0)

Non-CDBを利用していてCDBアーキテクチャにおける複数のPDBが不要という場合も、Oracle Database 20cでは1つのPDBだけを利用するCDBアーキテクチャでなければサポートされません。

このことに先立ち、Oracle Database 19cよりOracle DatabaseのStandard Edition2、あるいはオプションなしのEnterprise Editionにおいて、CDBアーキテクチャでPDBを3つまで作成してよいようにライセンスの定義が変更されています。下記がそのことに関するマニュアルの記載になります。
[Oracle Database Database Licensing Information User Manual 19c - 1 Licensing Information - 1.3 Permitted Features, Options, and Management Packs by Oracle Database Offering](https://docs.oracle.com/en/database/oracle/oracle-database/19/dblic/Licensing-Information.html#GUID-0F9EB85D-4610-4EDF-89C2-4916A0E7AC87)
![cdb_19c.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/368742/04fe1c52-96ed-3fe9-3c31-5514117bc21d.png)
この、19c以降の、PDBを3つまでStandard Edition2あるいはオプションなしのEnterprise Editionで利用できるという点は、18cまでは1つのPDBまでであれば利用可能であるとされています。

Non-CDBアーキテクチャはOracle Database 12c Release1より「非推奨」とされていました。Oracle Database 12c Release2のマニュアルで非推奨で「Oracle Database 19c以降のリリースで非サポートとなりえる」とされていました(下記が該当するマニュアルの記載)。
[Oracle Database Database Upgrade Guide 12c Release2 - Deprecated Features in Oracle Database 12c Release 2 - Deprecation of Non-CDB Architecture](https://docs.oracle.com/en/database/oracle/oracle-database/12.2/upgrd/deprecated-features-oracle-database-12c-r2.html#GUID-23F9C9D3-4267-4638-824D-C198D042B05B)

####Oracle Database 20cの新機能に関する情報
Oracle Databaseのマニュアルは下記より参照できます。
[Oracle Database 20c Get Started](https://docs.oracle.com/en/database/oracle/oracle-database/20/index.html)
マニュアル群の中の「Database New Features Guide」でOracle Database 20cの新機能に関する情報を参照できます。
[Oracle Database Database New Features Guide 20c](https://docs.oracle.com/en/database/oracle/oracle-database/20/newft/new-features.html)

このDatabase New Features Guideは、Oracle Database 20cのすべての新機能を網羅しているわけではありませんが、特に既存機能の強化点に関しては多くリストされています。Oracle Databaseの各機能に関してマニュアルが提供されますが、多くのマニュアルで「このリリースでの変更点」という項目があります。

データベースの細かいレベルでの新機能というより、Oracle Database 20c以降の機能強化の方向性（戦略）に関しては、開発部門により2019年10月にプレゼンテーションが動画で公開されています。
[Autonomous Data Management (Oracle Database 20c)](https://www.youtube.com/watch?v=a_C7nebCj3o&feature=youtu.be)
この中では、20cの開発の方向性として下記をあげています。

- Native Blockchain tables 
- AutoML 
- JSON binary representation
- Persistent Memory Store

####Oracle Database 20cで非推奨、非サポートになった機能に関する情報
本記事の「Oracle Database 20cでの重要な変更であるNon-CDBアーキテクチャの非サポートに関して」でも参照していますが、非推奨、非サポートになった機能に関しては、マニュアルのUpgrade Guideに情報があります。
[Oracle Database Database Upgrade Guide 20c - 9 Behavior Changes, Deprecated and Desupported Features for Oracle Database](https://docs.oracle.com/en/database/oracle/oracle-database/20/upgrd/behavior-changes-deprecated-desupport-oracle-database.html#GUID-3BAFD95E-4D00-4F0F-BC80-6064F497F878)


####参考情報
Oracle社のOracle Database Product ManagementのVice Presidentの方によるPreview Releaseが公開されたときの記事です。
[GA of Oracle Database 20c Preview Release](https://blogs.oracle.com/database/ga-of-oracle-database-20c-preview-release)

Oracle社のMaster Product Manager for Oracle Database Upgrade and Migrations(データベースアップグレードに関するスペシャリスト)であるMike DietrichのBlog。Oracle Database 20cに関して公開された情報をいろいろ教えてくれます。
[Upgrade your Database -NOW](https://mikedietrichde.com/)
BlogだけでなくSlidesには、Oracle DatabaseのUpgradeに関する様々な情報があります。