[Database] ORDS 3.0.4 was released

原文はこちら。
https://blogs.oracle.com/proactivesupportDevTools/entry/ords_3_0_4_was

ORDS (Oracle REST Data Services) の新バージョン (3.0.4) が2016年3月3日にリリースされました。
Oracle REST Data Services Download
http://www.oracle.com/technetwork/developer-tools/rest-data-services/downloads/index.htmlドキュメント(リリースノートやインストール方法など)
https://docs.oracle.com/cd/E56351_01/index.htmBugs Fixed in Release 3.0.4
http://www.oracle.com/technetwork/developer-tools/rest-data-services/downloads/ords-bugsfixed-304-2895222.html
また、このバージョンの新機能に関する詳細は以下のリンクをご覧下さい。
ORDS 3.0 New Features
http://www.oracle.com/technetwork/developer-tools/rest-data-services/ords-30-newfeatures-2373784.html

[Database, Cloud] Application Express in the Cloud

原文はこちら。
https://blogs.oracle.com/proactivesupportDevTools/entry/application_express_in_the_cloud

ご存知でしたか?
Oracle Application ExpressがCloudで利用できることを。
Oracle Database Cloud Serviceはいくつかの異なる機能をご利用いただけます。Database Schema Service (スキーマベースのAPEXサービス) ではOracle DatabaseへのHTTPSアクセスが可能で、開発者を対象にしています。Database as a Service および Virtual Image (占有データベースインスタンスサービス) はデータベースやSQL*Netの接続を必要とするお客様に適しています。

下図は両サービスのアーキテクチャの違いを示したものです。

試使用アカウントは、cloud.oracle.comからどうぞ。

Application ExpressがCloudで提供する機能は以下のFAQをご覧下さい。
FAQ
https://cloud.oracle.com/en_US/faq?resolvetemplatefordevice=true&subcatID=1383678917367

[JavaScript, MFT] MFT 12.2.1 Nashorn Java Script Integration

原文はこちら。
https://blogs.oracle.com/integration/entry/mft_12_2_1_nashorn

MFT(Managed File Transfer)のスクリプティング・コールアウトに関するエントリに対し、高い関心をいただきました。
Scriptable MFT: The Ginsu Knife of MFT Callouts
https://blogs.oracle.com/SOA/entry/scriptable_mft_the_ginzu_mother
Java JDK1.8を使用するMFT12.2.1にアップグレードする場合、JavaScriptを使ってすべてのMFT、SOAやすべてのWebLogic ServerのJava APIをネイティブに呼び出すRunJSコールアウトを使うためのオプションをすでに有しています。
Samples and Demos for Oracle Managed File Transfer
http://www.oracle.com/technetwork/middleware/mft/learnmore/index.html
MFTをホストするWebLogic Serverのクラスパスにある任意のJarやclassファイル(SOA Adapterが使う多くのものを含みます)がMFT transferと同じスレッドで呼び出すことができます。

(訳注)
MFTではソース(入力側)、ターゲット(出力側)の操作(アクション)としてスクリプトを呼び出すことができます。そのスクリプトの中には、JavaScriptも含まれています(以下はターゲット側での前処理アクションで選択可能なアクションの例)


なぜ気にしておくべきなのでしょうか。本当に、セキュリティ、パフォーマンス、リソース使用率、利便性に加えてコンパイラのない環境という柔軟性、その結果実質的に無限のユースケースだけでなく、それ以外にも影響がありますので、気にしない理由なんて全くありえません。Nashorn JavaScriptエンジンは、Javaコールアウトが実施するのと同様に、MFTコールアウト・コンテキストと入力、出力ストリームを受け取りますので、非常に簡単にファイルを検証したり変更できます。
Oracle Nashorn: A Next-Generation JavaScript Engine for the JVM
http://www.oracle.com/technetwork/articles/java/jf14-nashorn-2126515.html[Java, JavaScript] Oracle Nashorn: A Next-Generation JavaScript Engine for the JVM
http://orablogs-jp.blogspot.jp/2014/03/oracle-nashorn-next-generation.html
以下はサンプルにあるユースケースです。
  • ファイル名の変更
  • 誤った文字のクレンジング
  • Native Translationライブラリを使ったCSVからXMLへの変換
  • XMLからCSVへの変換
  • CSVからJSONへの変換
これらのユースケースは単に読者に食指を伸ばしてもらうことに過ぎず、ほぼ何でもできます。もしかすると、「データベースやJMS、ファイルシステムに書き込むことができるのか?」と質問されるかもしれません。そうですね、そういったことを実現するJava APIがありますかね?
ダウンロードや構成はきわめて簡単です。単純にMftJS.zipファイルをダウンロードし、MFTの<DOMAIN_HOME>配下にZipの内容を展開するだけです。mft/js/READMEファイルを開いて記載の手順に従ってください。MFT RunJSコールアウトのUI(下図)でActionパラメータが呼び出すことができる、利用可能なサンプルライブラリは以下のようなものがあります。

LocationとFunctionの値はデフォルト値ですが、ScriptParametersを変更したり、オーバーライドしたりして調整することができます。特別に難読化されたPasswordもパラメータを隠すために利用できます。以下のように、提供されたEnd to Endの転送をインポート、デプロイ、実行することができます。

[Java] Self-Documented Services Using JAX-RS Analyzer

原文はこちら。
https://blogs.oracle.com/theaquarium/entry/self_documented_services_using_jax

SOAPで最もありがたかったのは、Javaのように、強く型付けされているというところです。つまり、WSDLを見るとサービスが何をするのか理解することができます。同様に、生成するクライアントやGUI可視化ツール、正確なドキュメントを含む、SOAPサービスをツールが簡単に読み、使うことができます。WADLはこうした欠点を克服するため、RESTの世界で考案されましたが、不幸にも、WADLはあまりサポートされず、使われていません。全くの未知のユーザーを含む、外部のユーザーが利用するRESTサービスを記述している場合、これは非常に大きな問題です。これまでこの問題に対する回答は手作業でRESTサービスのドキュメントを作成するというもので、非常に面倒で間違いが発生しやすく、しかも最新情報に追随できないものでした(因みに、JAX-RSの参照実装であるJerseyはWADLをサポートしていることはご存知と思います)。
しかしながら、JAX-RS開発者にとって、JAX-RS Analyzerというお助けツールがあります。JAX-RS Analyzerはシンプルですが非常に有用なオープンソースのJAX-RSプラグインで、Sebastian Daschnerが作成しました。このツールはJAX-RSアノテーションやメタデータを自動的に読みとり、プレーンテキスト、AsciiDoc、もしくはSwaggerの形式でドキュメントを作成します。Swaggerオプションは特に魅力的です。Swaggerは現段階においてRESTにおけるWSDLやUDDIのギャップを埋めるものとして最も近いものです。
JAX-RS Analyzerについてあまりご存知でないようでしたら、是非Sam Sepassiのすばらしいエントリをご一読ください。REST APIのドキュメント作成に掛けるうんざりするほどの時間を節約することができるようになるでしょう。
REST API Documentation Using JAXRS-ANALYZER
https://dzone.com/articles/rest-api-documentation-using-jaxrs-analyzer
(訳注)
簡単なJAX-RSサービスで試してみました。。。

[JavaScript] Oracle JET 2.0.0: Now Available Open Source with New Data Visualization Features

原文はこちら。
https://blogs.oracle.com/data-visualizations/entry/oracle_jet_now_open_source

Oracle JET 2.0.0 (JavaScript Extension Toolkit) がオープンソースとしてリリースされました。ソースはGitHubで公開されています。
Oracle JET 2.0.0
http://www.oraclejet.org/oracle/oraclejet
https://github.com/oracle/oraclejet
JET 2.0.0には数多くのデータ可視化機能(Data Visualization)が含まれています。以下で一部をご紹介します。
What's New in Oracle JET 2.0.0
https://community.oracle.com/community/development_tools/oracle-jet/blog/2016/03/01/whats-new-in-oracle-jet-200

Picto Chart

新しいPictoChart可視化コンポーネントを使うと、数値データをイメージで可視化できます。Infographicでよく使われていますが、このコンポーネントを使うと、これまでの表やグラフよりもより興味深い、効果的な方法で数値情報を表現することができます。JETのPictoChartは選択、ハイライト、フィルタリングだけでなく、他の可視化機能と同様のアニメーションや対話機能をサポートしています。魅力的なダッシュボードを作成する上で不可欠な要素になると考えます。


For an in-depth look at PictoChartについての詳細は、以下のJETのブログエントリをご覧ください。
Introduction to PictoCharts
https://community.oracle.com/community/development_tools/oracle-jet/blog/2016/02/29/introduction-to-pictocharts

New Charting Features

グラフにも新たな表現形式が追加されています。
  • 一方向のみでグラフのズーム&スクロールが可能になりました

  • 積み上げ棒グラフで棒の総数を表示できるようになりました

    • グラフの軸ラベルにラベルテキストをラップできるようになりました

    • ズーム&スクロールウィンドウで、異なるデータ系列や異なるグラフの種類を表示できるようになりました
    • 参照オブジェクトがデータ可視化コンポーネント間でハイライトやフィルタリングできるよう、参照オブジェクトでのカテゴリをサポートします。
    JET 2.0.0では新しいデータ可視化機能やフレームワーク機能がたくさん追加されています。新機能の完全なリストをご所望であれば、以下のエントリとリリースノートをご覧ください。
    What's New in Oracle JET 2.0.0
    https://community.oracle.com/community/development_tools/oracle-jet/blog/2016/03/01/whats-new-in-oracle-jet-200JET v2.0.0 Release Notes
    http://www.oracle.com/webfolder/technetwork/jet/releaseNotes.html
    JET Data Visualizationsに関する詳細を説明した一連のエントリは、以下のリンクからどうぞ。
    JET Data Visualizations: FAQ
    https://community.oracle.com/docs/DOC-993442

    [Database] Hybrid Columnar Compression Common Questions

    原文はこちら。
    https://blogs.oracle.com/DBStorage/entry/hybrid_columnar_compression_common_questions

    先週と同様、Hybrid Columnar Compression (HCC)についてよく尋ねられる質問についてこのエントリでご紹介します。質問は以下のようなものです。
    • 既存の表やパーティションに対してHybrid Columnar Compressionを有効化するには?
    • Hybrid Columnar Compressionが適しているのはOLTP、データウェアハウスのどちらのアプリケーション?
    • Hybrid Columnar Compressionは別ライセンスが必要?
    既存の表やパーティションに対し、Hybrid Columnar Compressionを有効化するベストプラクティスアプローチが3個あります。どの方法でも既存データに対してHybrid Columnar Compressionを有効化し、バルクロードで将来ロードされるデータを圧縮します。メソッドの違いはHCC圧縮を有効化しつつ表にアクセス可能にするか否か、という点です。
    • オンライン再定義(DBMS_REDEFINITION)
    • ALTER TABLE … MOVE PARTITION … ONLINE
      • ステートメント実行中、パーティション/サブパーティションはRead/Writeのアクティビティ両方に対してオンラインを維持します。
    • ALTER TABLE … MOVE COLUMN STORE COMPRESS FOR …
      • ステートメント実行中、ALTER TABLE MOVE では表に対するDMLをブロックします。

    ってわけで、「どれがうちに最適なのさ?」とおたずねになるかと思うのですが、そうですね、あなた次第です。圧縮を有効化している間に表やパーティションをオンラインのまま利用可能にしたいというのであれば、オンライン再定義やALTER TABLE MOVE PARTITION ONLINEが最適でしょう。圧縮のための停止時間を取る場合には、ALTER TABLE MOVEを使ってください。ですが、どちらを利用されたとしても、同じレベルの圧縮を提供します。

    どのタイプのアプリケーションがHCCに最適化という質問は実のところそれほどよくある質問ではありませんが、この質問への回答を理解することは重要だと思います。HCC圧縮をOLTPやData Warehouseアプリケーションで利用できますが、HCCを表やパーティションだけに有効化し、DMLのINSERT/UPDATEの操作を実施しない、もしくはしたとしても頻繁には実施しないことをおすすめします。Hybrid Columnar圧縮された表のデータを従来のデータ操作言語(DML)のオペレーション、具体的にはINSERTやUPDATE、DELETEを使って変更することができますが、そのような操作を実施した結果、HCC圧縮率が下がる可能性があります。そして、この操作を頻繁に実施すると、JCC圧縮率が時間の経過とともに低下します(表やパーティションの再圧縮が必要です)。表やパーティションに対して頻繁にDML操作を実施する予定がある場合、そういったデータに対してはAdvanced Row Compressionがより適しています。

    HCCに別ライセンスが必要か否かは、これもユーザーの方々がよく誤解されていることです。HCCを使うためには、 Exadata、SuperCluster、ZFS Storage Appliance、FS Flash Storage Systemを含む、HCCをサポートするOracleプラットフォームで、11.2.0.3以後のOracle Database Enterprise Editionを実行しなければなりません。

    Hybrid Columnar Compressionのベストプラクティスに関するより多くの情報はホワイトペーパー(6~8ページ)に記載されていますので、是非ご覧ください。
    Hybrid Columnar Compression (HCC) on Exadata (and Oracle Storage)
    http://www.oracle.com/technetwork/database/database-technologies/performance/hybridcolumnarcompression-oow2010-200703.pdf
    (訳注)
    日本語版はまだですが、類似の内容は以下のリンクにあります。
    ExadataのHybrid Columnar Compression(HCC)
    http://www.oracle.com/technetwork/middleware/bi-foundation/ehcc-twp-131254-ja.pdf 

    データベース・ストレージ最適化の冒険は次のエントリに続きます。次回は、Advanced Row CompressionとHybrid Columnar Compressionがどのように直接Information Lifecycle Management (ILM) のベストプラクティスに関わるのか、について説明する予定です。

    [JavaScript] Oracle JETがオープンソース化されました

    本日から、Oracle JET(JavaScript Extension Toolkit)はオープンソースになりました。
    Oracle JET
    http://oraclejet.org
    ソースはGitHubに公開されています。現在のバージョンは2.0.0です。
    oracle/oraclejet
    https://github.com/oracle/oraclejet 
    早速jaxenterで記事になっていますね...と読んでみたら、執筆者は最近はJETに関するエントリをたくさん書いているNetBeansのEvangelist(Geertjan Wielenga)でした。
    Visualize data in the Cloud with enterprise JavaScript
    Open Sourced: Oracle JET, An Enterprise-Ready JavaScript Toolkit
    https://jaxenter.com/open-sourced-oracle-jet-124350.html