[Database] New Database In-Memory Implementation and Usage White Paper

原文はこちら。
https://blogs.oracle.com/in-memory/database-inmemory-implementation-wp

"Oracle Database In-Memory Implementation and Usage"と題したホワイトペーパーがご覧頂けるようになっています。
Oracle Database In-Memory Implementation and Usage
http://www.oracle.com/technetwork/database/in-memory/learnmore/twp-oracle-dbim-implementation-3863029.pdf
このホワイトペーパーは、Oracle Database In-Memory with Oracle Database 12c Release 2 Technical Overviewというホワイトペーパーを補完するもので、Database In-Memoryの実装や利用にあたって有用な具体的な情報を提供するものです。
Oracle Database In-Memory with Oracle Database 12c Release 2
Technical Overview
http://www.oracle.com/technetwork/database/in-memory/overview/twp-oracle-database-in-memory-2245633.pdf

[Linux] Available now: Unbreakable Enterprise Kernel (UEK) Release 4 Update 5 for Oracle Linux

原文はこちら。
https://blogs.oracle.com/linux/available-now%3a-unbreakable-enterprise-kernel-uek-release-4-update-5-for-oracle-linux

What's New?

UEK Release 4 Update 5 (kernel version 4.1.12-103.3.8)というこのアップデートでは、新機能や不具合の修正、セキュリティ脆弱性への対応などが追加されています。具体的には以下のようなものを含んでいます。
  • Btrfsに対する変更
    • dedup(重複排除)の取り扱いの改善
    • デバイスIDによるデバイスの削除
  • DTraceの改善
    • Function Boundary Tracing (FBT) の改善
      入力時にFBTを使用してカーネル機能を調査して制約を緩和し、Oracle Linux 7での機能向上が見込めるかどうかを検出するコードに修正が適用されました。また、FBTリターンプローブ引数が正しい値を持つように、FBTリターンプローブに引数としてオフセットを渡すためのコードに対し修正が適用されました。
    • I/O Providers
      I/Oプロバイダのカバレッジが拡張され、共通ブロック層ベースのブロックファイルシステム用のプローブが追加されました。さらに、NFS上で実行されるI/O read/writeのトレースをサポートするためのプローブが追加されました。TCPプロトコルとUDPプロトコル用のSDTプローブも追加されています。
  • 30個以上の新規・アップデートされたドライバ
上記内容ならびにUEK Release 4 Update 5 for Oracle Linuxでのその他の新機能や変更点に関する詳細は、リリースノートをご覧ください。
Oracle® Linux Release Notes for Unbreakable Enterprise Kernel Release 4 Update 5
http://docs.oracle.com/cd/E52668_01/E88575/html/index.html

Product Overview

Oracle Linuxオペレーティングシステムは、クラウドのためのオープンな基盤です。パブリックおよびプライベート・クラウドの多くのサード・パーティ・アプリケーションやOracle Databaseのような、要求の厳しいエンタープライズ・ワークロードを使って開発され、広くテストされています。
Oracle Linux
http://www.oracle.com/linux
Oracle Linuxの一部として含まれるUEKは、エンタープライズクラウドのワークロードに最新のオープンソースのイノベーション、重要な最適化、そしてセキュリティを提供します。このLinuxカーネルは、Oracle CloudやOracle Exadata Database MachineのようなOracle Engineered Systemsのパワーとなるものです。Oracleは、要求の厳しいOracleワークロードで集中的にUEKをテストしており、Oracle製品のデプロイメントおよび他のすべてのエンタープライズ・デプロイメントにお使いになることを推奨します。
UEKに加えて、OracleはRed Hat Enterprise Linuxと完全に互換性のあるRed Hat Compatible Kernel(RHCK)も提供しています。Oracleは、柔軟で費用効果の高いLinuxサポートを提供しています。アップデートやソフトウェアリリースは無料でダウンロードして配布することができます。
サポートに際しては、お客様はサポート契約を必要とするシステムを決定します。これが、Oracle Linuxは開発、テスト、および運用システムとって最適な選択肢である所以です。お客様は、各システムを個別に最新の状態に保ちながら、サポート対象範囲を個別に決定できます。
Oracle Linux Support
https://www.oracle.com/linux/support/index.html
Oracle Linux Premier Supportをお持ちのお客様は、追加のLinuxプログラムのサポートも受けることができます。具体的には、Ceph Storage、Oracle Linux software collections、Oracle OpenStack、Oracle Kspliceを使った無停止でのカーネルアップデートです。
Oracle OpenStack Release 3
http://www.oracle.com/technetwork/server-storage/openstack/linux/documentation/datasheet-oracle-openstack-2296038.pdf
Ksplice: Zero downtime updates for Oracle Linux
http://www.oracle.com/us/technologies/linux/ksplice-datasheet-487388.pdf

Supported Upgrade Path

お客様は既存のOracle Linux 6やOracle Linux 7サーバをUnbreakable Linux NetworkやOracle Linux Yum Serverを使ってアップグレードできます。
Unbreakable Linux Network
http://linux.oracle.com/
Oracle Linux Yum Server
http://yum.oracle.com/

Compatibility

リリース間の相互運用性への影響を最小限に抑えるために、Oracle Linuxチームは、カーネル・モジュールに依存するハードウェアおよびソフトウェアを提供するサード・パーティ・ベンダーと緊密に連携しています。
Oracle Linuxは、Red Hat Enterprise Linux(RHEL)とのユーザー空間(user-space)の互換性を維持しています。これは、OSの下で実行されているカーネル・バージョンとは独立しています。ユーザー空間の既存のアプリケーションは、UEK Release 4でも変更せずに動作し続けますので、RHEL認定アプリケーションの再認証は不要です。
UEK Release 4 Update 5は以前のUEK Release 4アップデートと完全な互換性を有しています。UEK Release 4のカーネルABI(Application Binary Interface)は、最初のリリース以降のすべてのアップデートで変わっていませんが、カーネルABIのUEK R3からの変更は存在するため、システム上でサードパーティのカーネルモジュールを再コンパイルする必要があります。UEK Release 4をインストールする前に、アプリケーションベンダーにサポート状況を確認してください。

Resources – Oracle Linux

Oracle Linux Resources
https://www.oracle.com/linux/resources.html
Oracle Linux : Downloads
http://www.oracle.com/technetwork/server-storage/linux/downloads/index.html
Operating Systems Documentation (Linux)
http://docs.oracle.com/en/operating-systems/linux.html
Oracle Linux関連トレーニング(Oracle University)
http://education.oracle.com/linux

[Database] Oracle Instant Client 12.2 now has SQL*Loader and Data Pump

原文はこちら。
https://blogs.oracle.com/opal/oracle-instant-client-122-now-has-sqlloader-and-data-pump

このエントリはJim Stenoish(Oracle Databaseのためのデータやメタデータの高速な移動、変換、ローディングに使われる全てのツールを含む製品を担当しているSenior Director of Software Development)によるものです。
Oracle Instant Client 12.2にSQL*LoaderおよびData Pumpコマンドラインユーティリティのexpdpとimpdp、そしてこれまでのExport/Importユーティリティのexpとimpが含まれるようになりました。
Oracle Instant Client 12.2
http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html
以前は、これらのツールはFull Clientもしくはデータベースをインストールしなければ利用できませんでした。Instant Clientであれば、Fullクライアントに比べて、ディスクサイズの負担を大きくせずにこうしたツールにアクセスでき、ずっと速くインストールすることができます。OTNライセンスもまた多くのユーザーにとってより便利なものでしょう。
Oracle Technology Network License Agreement
http://www.oracle.com/technetwork/licenses/distribution-license-152002.html
こうしたツールがInstant Clientで手に入るようになったことで、Oracleソフトウェアがインストールされていないシステム上のファイルからのデータロードが簡単になっています。

Installing the Tools

Oracle Instant Client 'Basic'(もしくは'Basic Light')パッケージと'Tools'パッケージのZipファイルを展開し、同一ディレクトリに配置することでインストールできます。各プラットフォーム向けダウンロードリンクは以下のページをご覧ください。
Instant Client Downloads
http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html
ダウンロードページにあるプラットフォーム固有の手順に従ってください。例えば、Linuxであれば、環境変数LD_LIBRARY_PATH および PATH をInstant Clientディレクトリに設定する必要があります。Windowsの場合、環境変数PATHをInstant Clientディレクトリに設定した上で、Microsoft Visual Studio 2013 Redistributableもインストールする必要があります。
Microsoft Visual C++ Redistributable Packages for Visual Studio 2013
https://support.microsoft.com/en-us/kb/2977003#bookmark-vs2013

Using the Tools

SQL*Loaderを使うと、CSVファイルのようなファイルから表にデータをロードすることができます。
expdp および impdp ユーティリティを使うと、メタデータやデータをOracle Database間で移動することができます。expdp ユーティリティはメタデータやデータをデータベースからアンロードし、データベースサーバのData Pumpファイルに書き込みます。impdp ユーティリティはData Pumpファイルで定義済みのメタデータを再作成し、データベースサーバのファイルに格納された表データをロードします。メタデータやデータを(ファイル介さず)DB Linkで一方のデータベースから別のデータベースへ抽出する方法も提供しています。
このツールのドキュメントやサンプルは以下のURLをご覧ください。
Oracle® Databaseユーティリティ 12c リリース2 (12.2)
http://docs.oracle.com/cd/E82638_01/SUTIL/toc.htm
Oracle® Database Utilities 12c Release 2 (12.2)
http://docs.oracle.com/database/122/SUTIL/toc.htm 
SQL*LoaderやData Pumpについてご質問がありましたら、OTNのフォーラムへどうぞ。
Export/Import/SQL Loader & External Tables
https://community.oracle.com/community/database/oracle-database-options/export_import_sql_loader_%26_external_tables

[Docker] Creating a Local Docker Registry

原文はこちら。
https://blogs.oracle.com/gman/creating-a-local-docker-registry

この数ヶ月、サービス実行のためのインフラストラクチャを立ち上げる仕事をしています。ほとんどの場合、Oracle SolarisのIPSリポジトリとAutomated Installerのネットワークブートサービスが有効でいい感じでしたし、Oracle Linux上でローカルのDockerレジストリを立ち上げたので、私の経験を共有します。

残念ながら、ローカルレジストリの複製のための、Dockerレジストリ関連の素敵なツールに遭遇したことがありませんでした。そのため、Docker Registry HTTP v2 APIと単純なPythonスクリプティングにちょっと依存した独自のツールを書くことにしました。
Docker Registry HTTP API V2
https://docs.docker.com/registry/spec/api/
今回のユースケースは、特定のタグを持つすべてのイメージを取得し、ローカルのDockerレジストリを作成する、というものです。以下に手順の概要を示します。

1. Install Docker engine

非常に簡単です。yumコマンドを使って、docker-engineをインストールします。
yum install docker-engine
今回はPythonで書いたので、単純なcheck_callで十分でしたが、プライベートCLI APIを使うことにしたため、すぐに次のスニペットを使うことができました。
ybc = cli.YumBaseCli()
ybc.conf.assumeyes = True
ybc.conf.downloadonly = False
ybc.installPkgs(packages)
ybc.buildTransaction()
ybc.doTransaction()

2. Configure Docker to pull from an internal registry over HTTP

内部DockerレジストリからPullしていたので、Dockerサービスを有効化する前にセキュアでないレジストリを追加する必要がありました。この作業は /etc/sysconfig/docker に以下を追加することで対処できます。
INSECURE_REGISTRY="--insecure-registry internal-docker-reg.us.oracle.com:5000"

3. Enable the Docker service

Dockerサービスの有効化、および開始は、以下のコマンドを使います。
systemctl enable docker
systemctl start docker

4. Get a list of images using REST

特定のタグのイメージをPullしたかったのですが、Dockerには'latest'タグという概念があります。これは直近にパブリッシュされたイメージという意味で、残念ながら、最新のバージョンであるとは限りません。そのため、一貫性の観点でこの厄介なことを避けることにしました。以下のPythonのコードを使い、簡単なWebリクエストで、レジストリのリポジトリに含まれる全てのイメージ(特にイメージのグループ)のリストを取得できます。
docker_url = "http://internal-docker-reg.us.oracle.com:5000/v2/_catalog"
r = requests.get(docker_url, verify=False)
json_data = r.json()
そこからレスポンスを解析し、Dockerイメージのリストを取得できます。以下のような形式で取得します(私の場合、OpenStackベースのDockerイメージ)。
{u'repositories': [u'openstack/ol-openstack-aodh-api', u'openstack/ol-openstack-aodh-base', ... ]}
この結果は簡単にパースできます。
for c in json_data['repositories']:
    print("Image: %s" % c)

5. Get a list of tags for an image using REST

イメージ名が分かれば、各イメージのタグの一覧を再帰的に取得できます。以下のスニペットはPythonで記述した例です。
docker_image_tag_url = "http://internal-docker-reg.us.oracle.com:5000/v2" + image_name + "/tags/list"
r = requests.get(docker_image_tag_url, verify=False)
image_tags = r.json()
以下のような結果になるでしょう。
{u'name': u'openstack/ol-openstack-aodh-api', u'tags': [u'3.0.1.latest', u'3.0.1.90', ... ]}
再度申し上げますが、パースは非常に簡単です。

6. Pull the image to local registry

続いて、関心のあるタグに基づいてイメージをPull Downします。
docker pull http://internal-docker-reg.us.oracle.com:5000/v2/openstack/ol-openstack-aodh-api:3.0.1.153
docker save コマンドを使い、tarballの形式でイメージのローカルコピーも作成しました。
docker save internal-docker-reg.us.oracle.com:5000/openstack/ol-openstack-aodh-api:3.0.1.153 | gzip -c > openstack/ol-openstack-aodh-api.tar.gz

7. Running a Docker registry instance


お持ちのDockerイメージを外部アクセス可能にしたい場合、 docker.io からレジストリのDockerイメージをPullし、実行する必要もあります。
docker pull registry:2
docker run -d -p 5000:5000 --restart=always --name=registry registry:2
docker ps commandコマンドを使うと実行中のDockerコンテナがあることがわかります。
docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
3e03011bb4a5        registry:2          "/entrypoint.sh /etc/"   5 weeks ago         Up 5 weeks          0.0.0.0:5000->5000/tcp   registry

8. Republish your Docker images

最後に、ローカルレジストリ中のイメージにタグを付け、レジストリに入れる必要がありますが、この手順ではイメージIDが必要なので、以下のコマンドでイメージIDを取得しました。
docker images --format="{{.ID}},{{.Repository}}"
この結果、以下のような簡単にパースできるデータが出てきます。
5d289275c280,ca-openstack-docker-reg.us.oracle.com:5000/openstack/ol-openstack-neutron-base
393d7c702a00,ca-openstack-docker-reg.us.oracle.com:5000/openstack/ol-openstack-ironic-base
cc52d8d76395,ca-openstack-docker-reg.us.oracle.com:5000/openstack/ol-openstack-ceilometer-base
...
この後、イメージにタグを付け、レジストリ・インスタンスにPushすることができます。
docker tag 5d289275c280 http://mynewhost.us.oracle.com:5000/openstack/ol-openstack-neutron-base:3.0.1.153
docker push http://mynewhost.us.oracle.com:5000/openstack/ol-openstack-neutron-base:3.0.1.153

そして、単純なforループですべてのイメージをPythonで大規模に処理しました。
最終的に以下のようなリストになります。
docker images
REPOSITORY                                                          TAG        IMAGE ID      CREATED      SIZE
mynewhost.us.oracle.com:5000/openstack/ol-openstack-neutron-base    3.0.1.113  751f286bc25e  4 months ago 958 MB
...
この段階に到達すると、この新しいホスト mynewhost.us.oracle.com にすべてのDockerイメージが再公開されます。これはつまり、他のクライアントが私の内部サーバーから簡単にpullできるということです。

[Java] Opening Up Java EE

原文はこちら。
https://blogs.oracle.com/theaquarium/opening-up-java-ee

Java EE 8は進捗しており、仕様はほぼ完成し、今年夏にリファレンス実装を提供する予定です。Java EE 8の提供とJavaOne 2017カンファレンスが近づくにつれ、変化する業界や技術の要求に対応するため、Java EEをどのように開発すべきかを再考する機会があると考えています。

Java EEは、非常に成功しています。互換実装による競争があり、個々のテクノロジが幅広く採用され、フレームワークやツールの巨大なエコシステムができあがっており、無数のアプリケーションがエンタープライズとエンドユーザーに価値をもたらしています。しかし、Java EEコミュニティの参加によりオープンソースでJava EEは開発されていますが、他のオープンソースコミュニティと比較して、プロセスがアジャイルでなく、柔軟性がなく、オープンでないように見られることが多々あり、改善したいと考えています。

現在Java EE 8リリース後にJava EE開発プロセスをどのように改善することができるかについて議論しています。参照実装やTCK (test compatibility kit) を含むJava EEテクノロジーをオープンソース・ファウンデーションに移行することが正しい次の一手であり、よりアジャイルなプロセスを採用し、より柔軟なライセンス供与の実行や、ガバナンスプロセスの変更を実施できると考えています。私たちはコミュニティ、ライセンシー、そしていくつかの移行先のファウンデーション候補と共に、Java EEをこの方向に進めることができるかどうかを見極めるためにこの可能性を模索する計画です。

我々は、開発者、エンドユーザー、顧客、技術消費者、技術貢献者、パートナー、ライセンシーに対する継続的な義務を果たす腹づもりですし、既存のJava EE実装とJava EE 8の将来の実装をサポートする予定です。今後もJava EEテクノロジの進化に引き続き参加していきます。しかし、我々は、プラットフォーム・リードとして単一ベンダーに依存しない、よりオープンなプロセスによって、より多くの方々の参加と革新を促し、コミュニティにとって最善の利益になると考えています。

この方向性に対する意見やコメントをご希望の場合は、 feedback@javaee.groups.io までご連絡ください。このアプローチを詳細検討していくにつれて適宜最新情報を提供していきます。

この方針によるWebLogic Serverへの影響については、以下のエントリをご覧ください。
WebLogic Server and Opening Up Java EE
https://blogs.oracle.com/weblogicserver/weblogic-server-and-opening-up-java-eehttps://orablogs-jp.blogspot.jp/2017/08/weblogic-server-and-opening-up-java-ee.html

Safe Harbor Statement

The preceding is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.

[Java, WLS] WebLogic Server and Opening Up Java EE

原文はこちら。
https://blogs.oracle.com/weblogicserver/weblogic-server-and-opening-up-java-ee

Oracleは先ほど、Java EE 8リリース後、Java Enterprise Edition (Java EE) テクノロジーをオープンソースファウンデーションに移行することを検討していると発表しました。
Opening Up Java EE
https://blogs.oracle.com/theaquarium/opening-up-java-ee
これは、よりアジャイルなプロセスの採用、柔軟なライセンス供与の実行、ガバナンスプロセスを変更して業界やテクノロジーの需要・要望に対してレスポンスをあげることを意図しています。この領域で進展があれば最新情報をご提供する予定です。

WebLogic ServerはJava EE標準をサポートしているため、WebLogic Serverをご利用の皆様は、この発表が自分たちにどのような意味があるのかと思ってらっしゃるかもしれません。端的に言うと、直近の影響はありません。引き続き我々は既存のWebLogic Serverリリースをサポートし続けますし、WebLogic ServerベースのOracle Cloud Serviceを提供し続けます。そして、将来WebLogic Serverの新リリースを提供する予定です。

WebLogic Serverご利用のお客様の中には、現在古い製品バージョン、例えば10.3.x (Java EE 5) や 12.1.x (Java EE 6) をお使いの方もいらっしゃいますが、こうしたお客様も引き続きサポートしていきます。また、より新しいWebLogic ServerやJava EEバージョンへのアップグレードパスが用意されています。

WebLogic Serverのお客様の中には、以前のブログエントリで説明した差別化機能を備えた、WebLogic Server 12.2.1.X(Java EE 7)を採用されていらっしゃいます。
Announcing Oracle WebLogic Server 12.2.1
https://blogs.oracle.com/weblogicserver/announcing-oracle-weblogic-server-1221
https://orablogs-jp.blogspot.jp/2015/10/announcing-oracle-weblogic-server-1221.html
近い将来、新しい12.2.1.XパッチセットリリースであるWebLogic Server 12.2.1.3をリリースする予定です。これについての詳しい情報はしばしお待ちください。

Java Cloud Serviceやその他のPaaSやSaaS製品を通じて、Oracle CloudでWebLogic Serverを引き続き活用していきます。
Oracle Java Cloud Service
https://cloud.oracle.com/ja_JP/java
また、Kubernetes/Dockerクラウド環境でWebLogic Serverを実行するための新しい統合機能にも投資しています。

最後に、我々は来年(2018年)、Java EE 8の新機能(HTTP/2のサポートやJSON processingやRESTサポートの改善を含む)をサポートするWebLogic Serverの新リリースを計画しています。Java EE 8の新機能の詳細情報は、以下のブログをご覧ください。
The Aquarium
https://blogs.oracle.com/theaquarium/
まとめますと、WebLogic Serverのお客様は、これからもご利用いただけますし、我々はWebLogic Serverをサポートしてきたという実績もあります。Java EE 8以降の将来のJava EEテクノロジの進化に基づいた、将来の潜在的なリリースに関しては、我々がコミュニティとしての進め方に依存していますが、Oracleがサポートしつつ、これらのテクノロジーがコミュニティ主導で堅牢な進化となることを願っています。このトピックについては今後アップデートがありましたらお知らせします。

Safe Harbor Statement

The preceding is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.

[Docker, Database] MySQL Enterprise Edition Now in Docker Store!

原文はこちら。
https://blogs.oracle.com/mysql/mysql-enterprise-edition-now-in-docker-store

MySQL Community Editionの公式Dockerイメージに加え、MySQL Enterprise Editionも公式のDockerイメージがDocker Storeでご利用いただけるようになったことを発表でき、うれしく思っています。
MySQL Community Edition
https://hub.docker.com/r/mysql/
MySQL Server Enterprise Edition
https://store.docker.com/images/mysql-enterprise-server
Docker Store
https://docs.docker.com/docker-store/
これで簡単にMySQL Community EditionやMySQL Enterprise EditionでDockerのパワーを利用できます。
MySQL Community Edition
https://www.mysql.com/products/community/
MySQL Enterprise Edition
https://www.mysql.com/products/enterprise/

What Does All of This Mean?

まず、このニュースをもう少し理解するのに役立ついくつかのコンテキストと一般的な情報を説明します。Dockerはとは以下のソフトウェアコンポーネントを含むコンテナプラットフォームです。
What is Docker?
https://www.docker.com/what-docker
What is a Container
https://www.docker.com/what-container
Dockerを使ったコンテナイメージの使用(プルおよびプッシュ)は、デフォルトでDockerのパブリックコンテナレジストリを使用し、これらのレジストリへのアクセスは、作成したユーザーアカウント(Docker ID)で管理されます。このDocker IDでログインし、クライアントマシンでパブリックレジストリにアクセスするための認証トークンを保持します。
Docker Registry
https://docs.docker.com/registry/#what-it-is
Docker ID accounts
https://docs.docker.com/docker-id/
docker login
https://docs.docker.com/engine/reference/commandline/login/
Dockerは、独立した2個のパブリックレジストリを提供します。
  • Docker Hubまたは "Docker Registry"
    FOSS/Communityコンテナのレジストリで、Docker CLIがデフォルトで使用するものです。以下はコマンドの例です。
    docker run -itd mysql/mysql-server
  • Docker Storeまたは "Docker Trusted Registry"
    エンタープライズおよび商用コンテナのレジストリです。

    So How Would I Use The MySQL EE Container Then?

    最初に、Docker Store、もしくはMySQL Enterprise EditionイメージをサブスクライブしてDocker Trusted Registry内で自身のDocker IDでのコンテナへのアクセスを許可します。その後、(BringYourOwnLicenseモデルなので)前払いは不要であるため、単に”proceeding to checkout”をクリックして手続きを進めます。必要な情報を指定すると、コンテンツとコンテナへのアクセスが登録・承認済みされ、Docker IDに関連付けられます。
    これでアクセスが承認されたので、以下のdockerコマンドを実行してMySQL Enterprise Editionを起動、利用できます。
    docker run -itd store/oracle/mysql-enterprise-server:5.7
    最後に、Docker Storeで認可・サブスクライブ済みのコンテンツを以下のURLで確認できます。
    https://store.docker.com/profiles/{DockerID}/content 
    さらに、docker imagesコマンドを使って、自身のホスト上で利用可能なローカルイメージを確認できます。
    docker images
    http://docs.docker.com/engine/reference/commandline/images/

    Summary

    Dockerの機能と柔軟性をMySQL Enterpriseと組み合わせることができ、嬉しく思います。Docker上でMySQL Enterprise Editionを使い始めるにあたって、正確に理解できる手助けができていればよいのですが、ご不明な点がございましたら、お気軽にお問い合わせください。原文にコメントを残したり、Twitterでメンションいただいたり、バグを報告したり、My Oracle Supportでサポートチケットを発行したりしてください。
    MySQL Bugs
    https://bugs.mysql.com/
    My Oracle Support
    http://support.oracle.com/
    毎度のことながら、MySQLをご利用いただきありがとうございます!

    [Database] News about the new Oracle Database Release Schedule

    原文はこちら。
    https://mikedietrichde.com/2017/08/09/news-new-oracle-database-release-schedule/

    旧リリース番号体系
    新たなOracle Databaseリリーススケジュールに関するニュースです。Oracleは先頃、リリース情報を含むMOSドキュメント 742060.1を更新しました。
    Release Schedule of Current Database Releases (Doc ID 742060.1)
    https://support.oracle.com/rs?type=doc&id=742060.1
    数週間前、PSU(Patch Set Update)やBP(Bundle Patch)は、Oracle Database 12cR2以後ではRURs(Release Update Revisions)やRU(Release Updates)に変更されました。
    Release Update and Release Update Revisions for Database Proactive Patch Program (Doc ID 2285040.1)
    https://support.oracle.com/rs?type=doc&id=2285040.1
    そして今回、MOSドキュメント742060.1も更新されました。

    News about the new Oracle Database Release Schedule

    このMOSドキュメントによると、以下のようです。
    Release 12.2: New releases will be annual and the version will be the last two digits of the release year. The release originally planned as 12.2.0.2 will now be release 18.
    (新リリースは年次リリースになり、バージョンはリリース年の西暦末尾2桁になる予定です。12.2.0.2として当初予定されていたリリースは、リリース18になる予定です。)
    詳細情報ならびにサポートスケジュールに関する説明はMOSドキュメント742060.1をご覧ください。
    Instead of Patch Sets, Patch Set Updates, and Database Bundle Patches, the new releases will be maintained with Release Updates (RU) and Release Update Revisions (RUR).
    (Patch Set、Patch Set Update、Database Bundle Patchのかわりに、Release Updates (RU)とRelease Update Revisions (RUR)を使って新リリースをメンテナンスする予定です。)
    詳細はMOSドキュメント2285040.1をご覧ください。

    Further Information

    以下のエントリもご覧ください。
    More Information about RU and RUR patches for Oracle 12.2
    https://mikedietrichde.com/2017/07/19/information-ru-rur-oracle-12-2/

    [Database] What’s the Difference, and When to Use, the Various Types of Data Compression

    原文はこちら。
    https://blogs.oracle.com/dbstorage/what%E2%80%99s-the-difference%2c-and-when-to-use%2c-the-various-types-of-data-compression

    このエントリでは、種々のデータ圧縮方式について説明し、その違いと利用に適した状況をお伝えします。

    このエントリ以前にこのトピックに触れましたが、先頃Oracle Databaseのドキュメントで下表を見かけたので、この情報を踏まえて、皆様に情報をお伝えしたいと考えています。

    Data Compression Methods

    Oracle® Database管理者ガイド 12cリリース2 (12.2)
    表圧縮方法
    http://docs.oracle.com/cd/E82638_01/ADMIN/managing-tables.htm#GUID-ED833867-4B7F-442E-A70C-9C19DAA8F445__BABEEFHI
    Oracle® Database Administrator’s Guide 12c Release 2 (12.2)
    Table Compression Methods
    http://docs.oracle.com/database/122/ADMIN/managing-tables.htm#GUID-ED833867-4B7F-442E-A70C-9C19DAA8F445__BABEEFHI


    Basic Table Compression(基本表圧縮)

    Basic Table Compressionに詳しくない場合、おさえておくべき重要な点は、データ圧縮機能が無料で利用でき、Oracle Database Enterprise Editionに含まれている、という点です。10年以上前、Oracle Database 9i Release 2でBasic Table Compressionが導入されました。ただこの機能では、バルク・ロード操作を使用してロードされたデータは圧縮されますが、DML操作(INSERTまたはUPDATE)によって追加/変更されるデータは圧縮されません。そのため、Basic Table Compressionを使っている表やパーティション上でINSERTやUPDATEを実行している場合、変更内容を圧縮するには、その表やパーティションを再圧縮する必要があります。

    USAGE:

    Basic Table CompressionはOLTPアプリケーション向きではありません。その代わり、データをバルクロード操作でロードし、ほとんど(もしくは全く)変更されないような、専ら読み取りのみのデータウェアハウスアプリケーションに最適です。

    Advanced Row Compression(高度な行圧縮)

    Oracle Database 11g Release 1でOLTP Table Compression、Oracle Database 12cでAdvanced Row Compression(高度な行圧縮)と呼ばれる機能が導入されました。Advanced Row Compressionは、Basic Table Compressionと同じアルゴリズムを使用するAdvanced Compressionのデータ圧縮機能ですが、Advanced Row CompressionではINSERTやUPDATEなどの従来のDMLを含むすべてのタイプのデータ操作操作中にデータ圧縮を維持するという点がBasic Table Compressionと異なります。

    Advanced Row Compressionでは、複数の列にまたがってもデータベースブロック内の重複値を排除するように設計された圧縮アルゴリズムを使用します。 特定の環境で達成される圧縮率(Basic Table Compressionの場合も同様です)は、圧縮対象のデータ、具体的にはデータのカーディナリティに依存します。一般に、Advanced Row Compression(Basic Table Compressionでも同様の圧縮率です)を使用することで、2倍から4倍の圧縮率でストレージ使用量を減らすことが期待できます。つまり、データが圧縮されていない場合、使用する領域は、圧縮されたデータの容量の2〜4倍になります。

    USAGE

    Advanced Row Compressionは、OLTPおよびデータウェアハウスアプリケーションの両方を対象にしています。

    Hybrid Columnar Compression(ハイブリッド列圧縮)

    Basic Table CompressionやAdvanced Row Compressionとは異なり、OracleのHybrid Columnar Compressionテクノロジーでは、行と列の両方のメソッドを組み合わせてデータを格納します。このハイブリッドアプローチによって、純粋な列形式のパフォーマンス不足を回避しつつ、Columnar Storageの圧縮の利点を達成します。圧縮単位(CU)と呼ばれる論理構造を使用して、ハイブリッド列圧縮された一連の行(a set of hybrid columnar compressed rows)を格納します。データがロードされると、一連の行の列の値がグループ化され、圧縮されます。一連の行の列データが圧縮された後、圧縮単位に格納されます。Hybrid Columnar Compressionでストレージを最大限に節約するためには、データウェアハウスのバルクロード(ダイレクトパス)の技術を使用して、データをロードする必要があります。よく使われるバルクロードの操作の例には以下のようなものがあります。
    • APPENDヒント句を使ったInsert文
    • パラレルDML
    • ダイレクトパスSQL*Loader
    • Create Table as Select(CTAS)
    一般に、Hybrid Columnar Compressionを使うと、6倍から15倍以上の圧縮率でストレージの使用量を削減できます。

    USAGE

    Oracle Database 12c Release 2以前では、Hybrid Columnar Compression(HCC)はOLTPアプリケーションを対象にしておらず、そのかわりに、バルクロード操作を使ってデータをロードし、変更しない(もしくはほぼ変更しない)ようなデータウェアハウスアプリケーション(もっぱら読み取り)に最適なものでした。HCCで圧縮されたデータを、UPDATEやINSERTといった通常のデータ操作言語(DML)を使った操作で変更することはできますが、HCCで圧縮はDML操作をしない、もしくはほとんど操作しないアプリケーションに適しています。頻繁にUPDATEやINSERT操作を表やパーティションに対して予定している場合、そういったデータに対しては、Advanced Row Compression(Oracle Advanced Compressionの機能)が適しています。(Hybrid Columnar Compressionを利用している場合)DMLを使ってINSERT/UPDATEされたデータであれば通常、圧縮率が2倍から4倍にまで低下します。
    12cR2では新たに、PL/SQLやOracle Call Interface(OCI)といったプログラムでAPPENDヒント句や配列の挿入を行わなくても、SQL INSERT ... SELECT文の新しいデータをHybrid Columnar Compressionで自動的に圧縮します。12cR2以前では、こうした操作でHybrid Columnar Compressionの圧縮レベルが低下しましたが、最新リリースでは、圧縮レベルは変わりません。
    「Warehouse」と「Archive」圧縮の違いについては、下記のHybrid Columnar Compressionのホワイトペーパーで説明しています。

    今のところ、データベースストレージ最適化については、後続のブログエントリで続けていきます。NuremburgでのDOAG 2017(2017年11月)に行く予定がある場合は、データと索引圧縮に関する私のセッションにお立ち寄りください。詳細は後ほどお知らせします。

    More information:

    Advanced Row Compressionのホワイトペーパー(英語)
    http://www.oracle.com/technetwork/database/options/compression/advanced-compression-wp-12c-1896128.pdf
    Hybrid Columnar Compressionのホワイトペーパー(英語)
    http://www.oracle.com/technetwork/database/database-technologies/performance/hybridcolumnarcompression-oow2010-200703.pdf

    [Linux] Oracle Linux 7 Update 4 General Availability

    原文はこちら。
    https://blogs.oracle.com/linux/oracle-linux-7-update-4-general-availability-v2

    Oracleはx86-64サーバ向けOracle Linux Update 4の一般提供(General Availability)を発表できてうれしく思っています。
    Oracle Linux OSはクラウドのためのオープンな基盤で、Oracle Databaseだけでなく、多くのパブリックおよびプライベート・クラウドのサードパーティアプリケーションのような、エンタープライズ・ワークロードを使用して開発され、幅広くテストされています。Oracle Linuxはオープンソースであり、標準的なテクノロジやツール、機能を備えていますが、Oracleはこのリリースを拡張し、パフォーマンスを重視した本番環境でのワークロードのための、完全に統合されかつサポート対象となるプラットフォームを提供します。Red Hat Compatible Kernel(RHCK)に加えて、Oracle Linux(UEK)用に最適化されたUnbreakable Enterprise Kernelを提供します。UEKは、スケーラビリティの高いOracle Database、アプリケーション、およびOracle Engineered Systemsをサポートするために開発されました。
    Unbreakable Enterprise Kernel for Oracle Linux
    http://www.oracle.com/technetwork/server-storage/linux/technologies/uek-overview-2043074.html
    Oracleは、柔軟で費用効果の高いLinuxサポートを提供します。また、アップデートやソフトウェアリリースは無料でダウンロードして配布することができます。
    Oracle Linux 7 Update 4のリリースで、Oracle Linuxの実績あるエンタープライズおよびクラウド機能を引き続き足場とします。これにより、今日のために最適化し、明日への準備を可能にします。

    What's New

    このアップデートに含まれるOracle Linux 7の機能強化はいくつかの領域(セキュリティ、クラウドおよびコンテナ環境のサポート、パフォーマンス)にわたります。

    Security

    Oracle Linux 7 Update 4では引き続き以下の新機能を加えてセキュリティを強化しています。
    • UEFI Secure Boot
    • Secure BootモードのシステムはOracleが署名済みのブートローダやカーネルのみをロードします。Oracleは kernel と grub2 パッケージを更新し、これらのパッケージを正しいExtended Validation (EV) 証明書を使って署名済みです。EV証明書はshimバイナリにコンパイルされており、Microsoftによって署名されています。
    • openSSH now uses SHA-2
    • このリリースで使用される公開鍵署名のアルゴリズムは、デフォルトでSHA-2です。 SHA-1 は後方互換性のために利用可能です。
    • payload_gpgcheck option to yum
    • インストール時のセキュリティを強化します。新たなpayload_gpgcheckオプションを使うと、yum で インストール時のセキュリティを強化します。 新しいpayload_gpgcheckオプションを使用すると、yumはパッケージのペイロードセクションでGNU Privacy Guard (GPG) 署名の確認を実行できます。この機能により、パッケージのインストール時にセキュリティと整合性が強化されます。
    • New NBDE security packages
    • NBDEを使うと、物理マシンのハードドライブルートボリュームを暗号化できます。システム再起動時に手作業でパスワードを入れる必要はありません。
    • New usbguard package
    • USBGuardソフトウェアフレームワークは、デバイス属性に基づいた基本的なホワイトリストおよびブラックリスト機能を実装することにより、侵入型USBデバイスに対するシステム保護を提供します。

    Cloud and Containers Enhancements

    Oracle Linux 7 Update 4はお客様のクラウドおよびコンテナの展開を継続的に強化しています。
    • Btrfs
    • Btrfsはクラウドのコンテナをサポートする理想的なファイルシステムです。Oracle Linux 7と Unbreakable Enterprise Kernel Release 4でBtrfsを引き続きサポートならびに強化していきますので、コンテナをクラウドへ展開するために継続してBtrfsをご利用いただけます。
    • User Namespace
    • コンテナユーザーはグローバルレベルで同じ権限を取得できません。基礎となるOSの名前空間からコンテナ名前空間を分離することにより、コンテナユーザーはグローバルレベルで同じ権限を取得できないようにします。
    • Spacewalk
    • Oracle Linux 7 Update 4では、Spacewalkサーバーに登録する前に、SpaceKalkクライアントをインストールする必要がないため、SpacewalkのインストールおよびシステムのSpacewalkへの追加がさらに簡単になっています。

    Performance Enhancements

    Oracle Linux 7 Update 4は、エンタープライズ環境でのパフォーマンスですでに実証済みのリーダーシップを引き続き向上していきます。注目すべき変更点は次のとおりです。
    • Improved operating system scalability and performance
    • ticket spinlockをqueued spinlockに置き換えました。これにより、競合時のスケーラビリティ向上ならびにパフォーマンス全体が向上しています。
    • Addition of http-parser performance package
    • http-parserは高性能Webアプリケーション用に設計されており、バッファリング、システムコール、および割り込みを排除します。
    • Addition of libfastjson package
    • libfastjsonは限定機能セットJSONライブラリで、json-cと比較して、大幅にパフォーマンスが改善されています。

    Compatibility

    Oracle Linuxは、Red Hat Enterprise Linux(RHEL)とのユーザー空間の互換性を維持します。なお、OSの基礎となるカーネル・バージョンには依存しません。ユーザスペース内の既存のアプリケーションは、Unbreakable Enterprise Kernel Release 4(UEK R4)で修正せずに実行でき、RHEL認定アプリケーションの再認証は不要です。
    Oracle Linux 7 Update 4では以下のカーネルパッケージを同梱しています。
    • kernel-3.10.0-693.el7
    • Red Hat Compatible Kernel (RHCK)
    • kernel-uek-4.1.12-94.3.9.el7uek
    • Unbreakable Enterprise Kernel Release 4 update 4 (UEK R4u4) (デフォルトのカーネル)。
    同梱カーネルのソースコードは、初期リリース後、public gitソースコードリポジトリからご利用いただけます。
    Oracle Unbreakable Enterprise Kernel
    https://oss.oracle.com/git/?p=linux-uek.git

    More Information

    Oracle Linux 7 Update 4の上記で紹介した新機能ならびにその他の新機能や変更点の詳細については、Oracle Linux Product Documentation Libraryのリリースノートを参照してください。
    Oracle® Linux Release Notes for Oracle Linux 7 Update 4
    http://docs.oracle.com/cd/E52668_01/E88149/html/index.html
    Oracle Linuxは無料でダウンロード、使用、配布することができ、アップデートやエラッタは自由に利用できます。一部のアップデートには、Oracle Linux Premier/Extended Supportが必要な場合があります。
    Oracle Linux
    https://www.oracle.com/linux/index.html
    Free Updates and Errata for Oracle Linux
    https://blogs.oracle.com/linux/free-updates-and-errata-for-oracle-linux
    Oracle Linux and Oracle VM Support Policies
    http://www.oracle.com/us/support/library/enterprise-linux-support-policies-069172.pdf
    サポートについては、サポート契約が必要なシステムを決定できるため、Oracle Linuxは、開発、テスト、および本番環境に最適です。すべてのシステムを最新かつ安全に保ちながら、サポート対象範囲をシステムごとに個別に最適なものに決めることができます。
    Oracle Linux Support
    https://www.oracle.com/linux/support/index.html
    Oracle Linux Premier Supportをご利用のお客様は、Ceph Storage、Oracle Linuxソフトウェア・コレクション、Oracle OpenStack、Oracle Kspliceを使用してのカーネルの無停止アップデートといった、追加Linuxプログラムもサポートされます。
    Oracle OpenStack Release 3
    http://www.oracle.com/technetwork/server-storage/openstack/linux/documentation/datasheet-oracle-openstack-2296038.pdf
    Oracle Ksplice
    http://www.oracle.com/us/technologies/linux/ksplice-datasheet-487388.pdf

    Resources

    [Java] JVM Language Summit 2017に参加しました

    7月31日から8月2日にかけてOracle Santa Clara Campusで開催されたJVM Language Summit(以下、JVMLS)に参加しました。

    JavaOneが、今現在もしくは近い将来のテクノロジー、プロジェクト事例などを紹介する、どちらかと言えばユーザーサイドの開発者寄りのイベントであるのに対し、JVMLSはJavaをはじめとするJVMで動作する言語の実装の詳細や将来の実装方針などを説明する、技術的にかなりコアな内容を取り扱うイベントです。参加者はOracleをはじめとして、Facebook、Google、IBM、AWS、Alibaba、その他Expert GroupメンバーやOpenJDK開発者が参加していました。

    # 昨年のJavaOneで "I'm your father." の台詞を(台本持ちながら)言ったあの方も参加登録されていましたが、来場はされていなかったようです。

    会場は、Santa Clara CampusのOracle Auditoriumでした。


    セッションについて

    Workshopを除き、YouTubeに公開されています。


    セッションの内容は、「おおっ、それ早く実装してちょうだい」と思わされるもの、「いや、それ自己満足の世界じゃないか」ってもの、キワモノまで玉石混交でしたが、色々な意味を含めて、知的好奇心を満たすのに十分に濃い内容であったといえます。
    個人的には、Graal、Pattern Matchingの話は興味深かったですね。その他、キワモノ好きにはたまらない内容でした。

    JVMV8について語ったJim Laskey(NashornのTech Lead)は、セッション内で以下のようなことを言ってました。
    「NashornはJavaScriptの形でJavaのアーティファクトにアクセスすることを目的に作成したんだけど、利用者からは、JVMでJavaScript、特にNode.jsなどを動かすことを期待されたんだよね」
    「過去には確かに頑張ったんだけど、(Avatar.jsってのもあったけど、お蔵入りになって)やっぱりだめだった」
    「V8やSpiderMonkeyは着実に進化していて、それに追随するの結構つらいのよ」
    「だから、V8をJVMから操作できるようにしたらええんちゃうの、って思って、JVMV8ってのを作ってみたわけよ」
    # いやいや、J2V8ってのがあるんで、何を今更、という感じはしましたし、Graalでもいいのでは、と心の中でツッコミを入れましたが。

    「来年はJVMLSに参加してみたい!」と思ってらっしゃる方に

    • 基本的に現在リリースされているものや近い将来(今回の場合で言えばJDK 9)に対する情報は出てこないので、そういう情報を知りたい場合にはJavaOneのほうがいいでしょう
    • JDKやJVMの深いところまで知っていると、話についていけるので楽しめるでしょう
    • 実験的なプロジェクト(例えばGraalとか)に興味がある人には面白いでしょう
    • Workshopは日本で言うところのHands-onではなく、Discussionなので、話を聞いているだけよりは質問を投げかけられるほうが楽しいでしょう

    食事、宿泊、フライトについて

    • 食事は朝、昼と出ます。味は個人の好みがあるので何とも言えませんが、JavaOneのようなことはありません。今年は2日目の夜にイタリアンレストランでDinnerでしたので、食事代はあまりかからずにすみました。
    • 最寄りのホテルは、Hyatt House Santa Claraです。Oracle Campusまで徒歩で行けます。
    • Hyatt House Santa Claraに泊まった場合、Safewayというスーパーマーケットが近くにあるので買い物には困りません(食料品がアメリカサイズなのはご愛敬)。
    • 空港(San Jose International Airport)からは5マイル弱なので、ホテルに送迎を依頼できます。もちろんUberやレンタカーでもOKです。
    • フライトは、2017/08/02現在ANAの直行便があります。この時期は乗り継ぎ便でも直行便よりお値段が高くなることがありますので、行くと決めたらさくっと予約されることをお奨めします。

    その他

    • 今年はAlibabaの方が発表していたので、いずれ日本の誰かが発表される日が来ることを願っています(個人的には、全てにAliという頭文字が付くのがどこかの会社と同じように思えてなりませんでした)。
    • 屋外はいかにも夏な陽射しですが、会場は例によってエアコン効きまくっているので、上着必須です。OpenWorldやJavaOneの会場と同じぐらいのエアコンの効き具合と思っていただければ。
    • 参加の記念品に、Project Jigsawにかけてジグソーパズルを頂きました。

    [Java] Java EE 8 - July recap

    原文はこちら。
    https://blogs.oracle.com/theaquarium/java-ee-8-july-recap

    通常は夏になると原則するものですが、この直近の数週間はJava EE 8にとって重要でした。ここでは、先月のJava EE 8プラットフォームの進捗状況を簡単にまとめます。
    Java EE 8 July stats
    7月、JSON-B (JSR 367) がファイナルを迎えました。
    JSR-000367 JavaTM API for JSON Binding (JSON-B)
    https://jcp.org/aboutJava/communityprocess/final/jsr367/index.html
    これはつまり、ここまでで4個のJava EE 8関連のAPIが最終化されたことを意味します。CDI 2.0 (JSR 365)、JSF 2.3 (JSR 372)、JSON-P 1.1 (JSR 374)、そしてJSON-B (JSR 367)です。
    JSR 365: Contexts and Dependency Injection for JavaTM 2.0
    https://jcp.org/en/jsr/detail?id=365
    JSR 372: JavaServer Faces (JSF 2.3) Specification.
    https://jcp.org/en/jsr/detail?id=372
    JSR 374: JavaTM API for JSON Processing 1.1
    https://jcp.org/en/jsr/detail?id=374
    JSR 367: JavaTM API for JSON Binding (JSON-B)
    https://jcp.org/en/jsr/detail?id=367
    なお、Maintenance ReleaseでアップデートされたAPI(例えば、JPA 2.2も最終化されましたが)は除いています。
    Java Persistence API specification
    https://github.com/javaee/jpa-spec
    Servlet 4.0 (JSR 369) はProposed Final Draft期間を終え、まもなくProposed Final Draftの投票に入ります。
    JSR 369: JavaTM Servlet 4.0 Specification
    https://jcp.org/en/jsr/detail?id=369
    JAX-RS 2.1(JSR 370)とBean Validation 2.0(JSR 380)では、両方の仕様がProposed Final Draftの期間を過ぎ、両者とも7月のFinal Approval Ballotは満場一致で通過したため、少し早くなりました。
    JSR 370: JavaTM API for RESTful Web Services (JAX-RS 2.1) Specification
    https://jcp.org/en/jsr/detail?id=370
    JSR 380: Bean Validation 2.0
    https://jcp.org/en/jsr/detail?id=380
    結果は以下からご覧いただけます。
    JSR #370: JavaTM API for RESTful Web Services (JAX-RS 2.1) Specification Final Approval Ballot
    https://jcp.org/en/jsr/results?id=6031
    JSR #380: Bean Validation 2.0 Final Approval Ballot
    https://jcp.org/en/jsr/results?id=6033
    JAX-RSおよびBean ValidationのExperts Groupsのみなさん、おめでとうございます!

    7月、Java EE 8 Expert Groupは自身のProposed Final Draftを公開し、Final Approval Ballotに入るため、Final DraftをJCPに速やかに提出します。
    JSR-000366 JavaTM Platform, Enterprise Edition 8
    https://jcp.org/aboutJava/communityprocess/pfd/jsr366/index.html
    Java EE 8 Platform and Web Profile Final Draft specs
    https://javaee.groups.io/g/javaee-spec/messages?start=8:2017:-120
    7月中旬、Security API for Java EE (JSR 375) Expert GroupがProposed Final Draftをリリースし、活発に技術詳細の最終化に取り組んでいます。
    JSR 375: JavaTM EE Security API
    https://jcp.org/en/jsr/detail?id=375
    JSR-000375 JavaTM EE Security API
    https://jcp.org/aboutJava/communityprocess/pfd/jsr375/index.html
    javaee-security-spec Topics
    https://javaee.groups.io/g/javaee-security-spec/topics
    Java EE 8プラットフォームの最終化に近づいていますので、GlassFish 5 Promotionプロセスも加速してきました。ゴールは現在1週間に2個のGlassFish 5 Promoted Buildをリリースすることです。
    Twice a week GlassFish promotions in coming weeks
    https://javaee.groups.io/g/glassfish/topic/twice_a_week_glassfish/5571976?p=,,,20,0,0,0::recentpostdate%2Fsticky,,,20,2,0,5571976
    GlassFishについてお話すると、リポジトリの星(Star)の数はまだ比較的少ない状況です。
    The Open Source Java EE Reference Implementation
    https://github.com/javaee/glassfish
    これは、GlassFishのリポジトリが比較的若いという事実が説明する通りですが、GlassFish 5の最終版に徐々にしかし確実に近づくにつれ、その数が増えてもいいでしょう。そんなわけで、GlassFishをお使いの際は、GitHubでStarを是非付けてください。 この小さいながらも素晴らしい認識はワンクリックでOKです。

    [Java] Java Advanced Management Console 2.7

    原文はこちら。
    https://blogs.oracle.com/java-platform-group/java-advanced-management-console-27

    Java Platform Groupは、2017年7月18日、Java Advanced Management Console 2.7 (AMC) のリリースを発表できうれしく思っています。
    Advanced Management Console
    http://www.oracle.com/technetwork/java/javaseproducts/advanced-mgmt/index.html
    AMCはOracle Java SE Advancedに含まれるもので、システム管理者にエンタープライズでのJavaの管理をより強力かつ簡単に実現する機能を提供します。
    Oracle Java SE Advanced & Suite Products
    http://www.oracle.com/technetwork/java/javaseproducts/overview/index.html
    AMCの最も重要な機能をいくつかご紹介しましょう。

    Java Usage Tracking(Java利用状況の追跡)
    AMCはJavaの利用状況の追跡機能を使い、エンタープライズでのJavaアプリケーションならびにそのアプリケーションを実行するために使用しているJava Runtime Environment (JRE) の利用について完全なインサイトを得ることができます。AMCにはMicrosoft WindowsおよびmacOSシステム用のエージェントがあり、このエージェントを使って全ての利用可能なJREを発見し、自動的に利用状況の追跡を有効化します。サポート対象のJREは、1.4.2_35以後、5u33以後、6u25以後、そして7と8の全てのバージョンです。AMCエージェントは各管理対象のデスクトップで動作し、利用可能なJREに関する情報を収集します。AMCサーバは、この情報を使って、ベースラインを下回るJREや利用可能なJREの総数、バージョン、各デスクトップで利用可能なデプロイメント・ルールセットの詳細をレポートします。
    Java Platform, Standard Edition Usage Tracker Overview
    Output of Usage Tracker
    https://docs.oracle.com/javacomponents/usage-tracker/overview/toc.htm#A1012444

    Deployment Rule Set Management(デプロイメント・ルールセットの管理)
    デプロイメント・ルールセットを使うと、組織でJava AppletsやWeb Startアプリケーションを実行するために利用するJREのバージョンを集中定義および管理して、そういったアプリケーションを管理することができます。AMCを使ってデプロイメント・ルールセット(DRS:Deployment Rule Sets)を作成、構成し、デスクトップに対して配布することができます。管理者はデプロイメント・ルールセットを使って、既知ならびに安全なプログラムだけが利用可能な特定のJavaバージョンを構成し、アプリケーションのブラックリストやホワイトリストをメンテナンスすることができます。
    Java SE Advanced Management Console User's Guide
    Deployment Rule Sets Overview
    https://docs.oracle.com/javacomponents/advanced-management-console-1/user-guide/rule_sets.htm#JSAMU153

    Java Installer Customization(Javaインストーラのカスタマイズ)
    AMCを使って、管理者はJREのインストーラ・パッケージ(Microsoft Windows用のMSI、macOS用のPKG)をセットアップできます。こうしたカスタマイズされたインストーラを使って、システム管理者はエンタープライズにある全てのデスクトップに対し、JREのインストールを自動化、整合性を確保できます。管理者は、AMCを使って、カスタムのインストール前後で実行するスクリプトやデフォルトのインストール先などを定義することで、構成ファイルやカスタムインストーラを作成することができます。

    JRE Management (JREの管理)
    管理者は、AMCエージェントからJREバージョン情報を入手することで、古いJREをリモートからアンインストールしたり、カスタムMSI/PKGインストーラを選択したデスクトップにプッシュすることもできます。

    AMC 2.7には、エンタープライズにおけるJavaの監視と管理を強化するためのいくつかの機能拡張と修正が含まれています。それらのいくつかをご紹介します。
    • エンタープライズJavaインストーラではないインストーラをサポートしました。これにより、カスタマイズ不可能なJREをデスクトップにインストールできます(Microsoft WindowsのEXEインストーラとMacOSのDMGインストーラ)。
    • 動的に変更されたデスクトップグループを自動的に更新するようになりました。さらに、AMC 2.7では、個々のIPアドレスではなく、IPアドレスの範囲でデスクトップグループを作成することもできます。
      Java Platform, Standard Edition Advanced Management Console User's Guide 2.7
      Creating a Desktop Group
      https://docs.oracle.com/javacomponents/advanced-management-console-2/user-guide/desktop-groups-configuration.htm#JSAMV-GUID-B5523FA2-F8AC-4620-A1B8-3AA03CA2F0FE
    • AMC 2.7エージェントは管理対象のデスクトップでJava SE 9を検出できるようになりました。ユーザーは管理対象デスクトップ上でJava SE 9のインストールを検索したり、コンソールでJava SE 9上で動作するアプリケーションを検索したりすることもできます (Java SE 9を実行するOracle WebLogic Server上にAMCをデプロイできません)。
    • コンテナ・ベースのユーザー認証を使うと、Oracle WebLogic Serverでユーザー認証を構成し、AMCでそれを活用できます。
    • 以下の管理機能が改善されました
      • 管理対象のデスクトップで追跡対象とするJREを選択できるようになりました(Webで有効化されているJRE、全てのスタンドアロンJRE、全てのJRE。プライベートJREを含む)
      • 管理者が管理対象のデスクトップでエージェントのアップデート方法を選択できるようにするため、自動エージェントアップデートの停止できるようになりました
      • 管理者が管理対象のデスクトップでJREのインストールやアンインストールを管理出来るようにするため、Javaの自動更新を停止できるようになりました
      • 失敗したJUTレコードのファイルエクスポート・オプションが追加されました
    新機能や制限事項、既知の問題の詳細は、以下のリリースノートをご覧ください。
    Advanced Management Console 2.7 Release Notes
    http://www.oracle.com/technetwork/java/javaseproducts/documentation/default-3667236.html