[Database] Python cx_Oracle 5.3 for Oracle Database Released

原文はこちら。
https://blogs.oracle.com/opal/entry/python_cx_oracle_5_3

本日、Oracle Database用の非常に人気のあるPythonインタフェースであるcx_Oracle 5.3のリリースを発表できうれしく思います。バイナリとソースはPyPiを使って通常通りインストールできます。
Python interface to Oracle (Python Package Index)
https://pypi.python.org/pypi/cx_Oracle/
Installation
https://github.com/oracle/python-cx_Oracle#installation
cx_Oracle 5.3は、Python v2.7、およびv3.4以上で動作します。cx_OracleはOracle 11gR2、12cR1、および12cR2クライアント・ライブラリとともに使用することができ、複数のOracle Databaseバージョンに接続できます。Oracle Databaseの標準的なクライアント・サーバー・バージョンの互換性により、古いデータベースと新しいデータベースの両方に接続できます。たとえば、Oracle Database 11gR2クライアント・ライブラリを使うとOracle Database 10gR2以降に接続できます。
今回のリリースでは、ソースコードリポジトリとホームページをGitHubに移行しました。 ユーザー文書はreadthedocsに残しています。cx_Oracleメーリングリストも引き続き同じ環境ですが、質問や問題についてはGitHubに移行しています。
ソースコード(Python interface to Oracle Database)
https://github.com/oracle/python-cx_Oracle
ホームページ
https://oracle.github.io/python-cx_Oracle/index.html
Documentation
http://cx-oracle.readthedocs.io/en/latest/index.html
cx-oracle-users メーリングリスト
https://lists.sourceforge.net/lists/listinfo/cx-oracle-users
GitHub Issues
https://github.com/oracle/python-cx_Oracle/issues

The New cx_Oracle 5.3

Anthony TuiningaがOracleに加わって以来、cx_Oracleの改善を加える作業に取り組んできました。(彼は次の大きなリリースのための基礎となる作業もしていますが、これについてはこの記事の後半で説明します)。みなさんがcx_Oracle 5.3に感銘を受けるであろうと考えています。昨年のOracle OpenWorldでは、Anthonyがいくつかの変更について話し、よいフィードバックをたくさんいただきました。昨年のOpenWorldでのプレゼンテーションは以下のURLでチェックしてください。
Python and Oracle Database: Tips, Tricks, and the Best New Features [CON6543]
https://oracle.rainfocus.com/scripts/catalog/oow16.jsp?search=CON6543&showEnrolled=false&search.event=oracleopenworld
これは大きなアップデートです。一部はOracle Database 12cの機能に固有の変更ではありますが(リリース・ノートを参照してください)、たとえ古いデータベースを利用されている場合でも、このアップデートでアプリケーションの性能がよくなることがわかるでしょう。そして、Oracle Database 12cR2にアップグレード中、もしくはその予定がありますか?Oracle Database Cloudを使用してOracle Database 12cR2にすぐにアクセスできることをお忘れなく。
Release Note
http://cx-oracle.readthedocs.io/en/5.3/releasenotes.html#version-5-3-march-2017
Oracle Database Software Downloads
http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html
Oracle Database Cloud Service
https://cloud.oracle.com/ja_JP/database

Key New Features

Other New Features

Changes from cx_Oracle 5.2

以前のリリースで廃止対象のものとした発表に沿い、以下のアイテムがcx_Oracle 5.3で利用できなくなりました。
  • maxlength という変数属性は使えなくなりました。その代わりにbufferSizeを使ってください。
  • allocelems という変数属性は使えなくなりました。その代わりに numElements を使ってください。
  • UNICODEFIXED_UNICODELONG_UNICODE 型は使えなくなりました。その代わりに NCHARFIXED_NCHARLONG_NCHAR を使ってください。
  • OCI 関数のコールバックはサポートされなくなりました。

Future Deprecation Announcements

将来リリース予定のcx_Oracle 6では、以下のアイテムが廃止される予定です。
  • cx_Oracle.connect()twophasemoduleaction、そしてclientinfoの引数が廃止され、cx_Oracle 6では使えなくなる予定です。その代わりに新しいアプリケーション・コンテキスト(application context)を利用してください。
  • カーソル属性numbersAsStringsが廃止され、cx_Oracle 6では使えなくなる予定です。その代わりにOUTPUT型ハンドラ(output type handler)を利用してください。

Things you could already do in cx_Oracle 5.2

上記のcx_Oracle 5.3のすべての新機能は、これまでに積み上げたデータベースサポートの上に成り立っています。以前のリリースで既に使用可能な高度な機能は次のとおりです。
  • SQLおよびPL/SQLの実行
  • 豊富なデータ型のサポート
  • 大規模な結果セットの取得
  • REF CURSOR
  • PL/SQL配列のバインド
  • ラージオブジェクト(CLOB、BLOB)
  • トランザクション管理
  • セッション・プーリング
  • データベース常駐接続プーリング(DRCP)
  • 特権接続とデータベースの起動・停止
  • 外部認証
  • Continuous Query Notification
  • 行プリフェッチ
  • クライアントの結果キャッシュ
  • End-to-Endのトレース
  • Oracle Database 高可用性機能

A future cx_Oracle 6

先ほど、みなさんがcx_Oracle 5.3に感銘を受けるだろうと書きましたが、Anthonyはより良いものを目指し、すでにcx_Oracle 6を見据えています。昨年Anthonyは、cx_Oracleが使用されるような、一般的なOracle Call Interface (OCI)機能の利用を簡素化し標準化するオープンソースのCライブラリである、ODPI-Cに熱心にとりくんできました。ODPI-Cは最近Githubで公開されました。cx_Oracleのソースコードからわかるように、cx_OracleコードのマスターブランチはODPI-Cを使用するようにアップデートされています。この将来のリリースの現状をテストしたい場合は、GitHubからバンドルをダウンロードしてビルドしてください。ユーザーに見える範囲での変更に関する(これまでの)リリースノートは以下のURLにあります。
Oracle Database Programming Interface for Drivers and Applications (ODPI)
https://github.com/oracle/odpi
Release notes (6.x releases)
https://github.com/oracle/python-cx_Oracle/blob/master/doc/src/releasenotes.rst

Summary

cx_OracleをOracleの傘下に移すことで、Anthonyはcx_Oracleに注力する時間が増え、結果としてすべての開発者にとってデータベースへのアクセスが向上しました。
全体的に、cx_OracleはOracle Databaseのための最も包括的で人気のあるスクリプト言語ドライバで、cx_OracleはOracleクライアント・ライブラリやOracle Databaseに組み込まれた優れた機能を活用しますし、もちろん、cx_Oracleを使うPythonアプリケーションは、ネットワーク・データの暗号化などのOracle Net機能を利用することができます。
cx_Oracle 5.3は、Oracle Databaseの優れた機能をサポートする大きなリリースです。 是非チェックしてください。

cx_Oracle Resources

cx_Oracle
https://oracle.github.io/python-cx_Oracle/index.html
Documentation
http://cx-oracle.readthedocs.io/en/latest/index.html
cx-oracle-users メーリングリスト
https://lists.sourceforge.net/lists/listinfo/cx-oracle-users
GitHub Issues
https://github.com/oracle/python-cx_Oracle/issues
Python interface to Oracle Database
https://github.com/oracle/python-cx_Oracle

0 件のコメント:

コメントを投稿