DB2用Ruby/Railsアダプタ IBM_DB 2.5.18リリース。Rails 4.1を正式サポート

先月の話ですが、DB2を含むIBMデータベース用のRubyドライバ、かつRuby on Rails用のアダプタであるIBM_DBの新バージョンv2.5.18がリリースされていました。

以前はRuby用ドライバとRails用アダプタは同じバージョン番号が付いていたのですが、最近はRuby用ドライバ側が安定してきたのか、Rails用アダプタだけが更新される事が多いみたいですね。今回もRails用アダプタだけが更新されています。

- Rails Adapter/Ruby driver for IBM DB2 and IBM Informix
2014/08/03 (IBM_DB adapter 2.5.18, driver 2.5.14) :
- Support for Rails 4.1.x
- Enhanced installation to pull IBM Data Server Driver automatically if not present

今回の大きな変更点はRails 4.1をサポートしたことですね。過去のバージョンでも一部制限がありつつも動いていたようですが、正式にサポートされたのは大きな変更点です。

あと、インストール時に自動的にIBM Data Server Driverを引っ張ってくると書かれているのですが、これはgem install時、ドライバが入っていない場合はファイルを自動的にダウンロードしてくれるという事のようですね。

IBM版Hadoop BigInsights v3にはDB2をベースにしたBig SQL機能が搭載。SQLでHadoopデータにアクセスが可能に

IBM版のHadoopである、InfoSphere BigInsightsの新バージョンv3について記者発表が行われて、それが記事になっています。

- Database Watch(2014年8月版):BlueMixのクラウドデータベースサービス/SQL on Hadoopは普及するか? (3/3) - @IT
オープンソースの分散処理のためのフレームワークである「Apache Hadoop」をIBMが独自の技術を加えて製品化したのが「IBM InfoSphere BigInsights(以下、BigInsights)」です。いわば機能強化したIBM版Hadoop。

BigInsights v3.0の新機能はいろいろあるのですが、目玉が"Big SQL"機能です。これはHadoopのHDFS上に置かれたデータをSQLでアクセスできるようにする仕組みです。
この仕組み自体はBigInsights v2.xからありましたし、「HadoopのデータがSQLでアクセスできる」というソフトウェアは他にもあります。

しかし、BigInsights v3のBig SQL機能は「リッチなSQLが使える」という他にはない特徴があります。他の"HadoopにSQLアクセスできるソリューション"は、SQLが使えるとはいってもかなり制限が厳しくて、サブクエリーすら使えないような実装だったり、関数がほとんど使えなかったりということが多いのですが、BigIntighstsの新機能は「ANSI規格のSQL 2011に完全に準拠」しています。それはどうやって実装したかというと...

- 日本IBM、Hadoop機能を搭載した最新のInfoSphere BigInsightsの機能を紹介 | マイナビニュース
BIG SQL 3.0では、ANSIのSQL 2011に準拠しているほか、クエリの書き換えや最適化により、精度の向上や高速化が図られているという。
また、JDBC/ODBCドライバはDB2と同一のものが利用できるほか、Python、Ruby、Perlなどの多くの言語も利用できる。


つまり、中のSQLエンジンはDB2からの移植なんですね。そのために利用できるSQLや通信プロトコルがDB2と同じになっていて、既存のJDBC/ODBCなどでDB2につながるプログラムがそのまま使えるというわけです。

- [ 2/2 ] 「エンタープライズに必要なのはSQLとの互換性」、IBM版Hadoop「InfoSphere BigInsights」の姿 | IT Leaders
SQLの利用やMapReduceプログラミングの簡素化は、Hadoopエコシステムである「Hive」や「Pig」などを使えば可能である。Big SQLも構造的にはHiveとほぼ同じ。だが、ANSI規格のSQL 2011に完全に準拠するほか、次のような強化を図っている。
・アプリケーションの可搬性:周辺環境とのデータ共有、種々のファイルフォーマットのサポート、「Cognos」や「SPSS」といったIBM製分析ツールとの連携
・パフォーマンス:SQLクエリを最適化するリライト、DB2派生のオプティマイザ、複数処理の同時実行に対するスループットの最適化、実行結果のキャッシングなどメモリーの有効活用、Hiveに比較して最大42倍の高速化
・フェデレーション(周辺との連携):複数データソースを統合するSQLの実行、DB2やNeteezaのIBM製品に加え、TeradataやOracleなどをサポート
・エンタープライズ要件への対応:OS認証、Kerberos、LDAPといった認証形態のサポート、ユーザー個別のセキュリティ、監査、TLSによる通信経路の暗号化


実際に動かしてみると分かるのですが、psコマンドで見てみるとdb2という名前のプロセスが多数起動しますし、SQLコマンドプロンプトもDB2そのものです。HDFS上で動くようにDB2のSQLエンジンを移植したという感じですね。

Hadoopを使うにはMapReduceで処理を書く必要があったのですが、SQLであればこのあたりの敷居が大きく下がります。JDBCやODBCで既存のGUIツールをつなげてデータ閲覧するのにも使えますね。

BigInsightsには、無料版の「Quick Start Edition」が存在します。通常のインストール版に加えて、VMwareイメージ版もありますので、とりあえず試すだけであれば、インストール不要ですぐに使いはじめることができます。

Hadoop上のデータをSQLでアクセスすることに興味がある方はぜひ試してみてください。

- IBM InfoSphere BigInsights Quick Start Edition: 概要

Ruby/Rails用DB2ドライバ ibm_db 2.5.10リリース:Rails 3.2をサポート

DB2用のRubyドライバ&Ruby on Railsアダプターである、ibm_dbの新バージョンv2.5.10がリリースされています。(正確にはInformix等にも対応しています)

- Rails Adapter/Driver for IBM DataServers
- RubyForge: ibm_db-gem-version-2.5.10-release
New version 2.5.10 of ibm_db gem is now available.

CHANGEファイルには、以下のような記述があります。
2012/05/01 (IBM_DB adapter 2.5.10, driver 2.5.10) :
- Support for Rails-3.2
- Changes in installation process. Now user should set only one environment variable IBM_DB_HOME to DB2/IBM_Data_Server_Driver installation directory
- Fixed bug #29541 - Serialize data when corresponding field maps to CLOB type on Database
- Fixed bug #29561 - Fixed data truncation error when client and server codepages are different
- Updated IBM_DB specifics of AR test suite as per Rails-3.2.3

一番上にあるように、Rails 3.2を正式にサポートしたのが大きな変更点でしょうか。また、環境変数の設定がIBM_DB_HOMEを設定するだけ(DB2の導入ディレクトリを指すように設定する)になったのも良い変更ですね。

ダウンロードは以下から可能です。また、gemコマンドで更新する事も可能です。

http://rubyforge.org/frs/?group_id=2361

DB2用Ruby on Railsドライバibm_dbがv2.5.9に更新。DBの作成と削除に対応

DB2やInformix Dynamic Server等IBMデータベース用Ruby on Railsドライバである、ibm_dbがv2.5.9に更新されています。

- RubyForge: Rails Adapter/Driver for IBM DataServers: Project Info
- RubyForge: ibm_db-gem-version-2.5.9-release
This version of gem supports database create and drop starting with version V97fp4 and above of DB2 client. With this TDD of rails becomes easier as one will be able to run rake related tasks like rake db:test:clone, rake db:test:purge etc that create and drop database.

このバージョンでの新機能はDB2のデータベースの作成と削除に対応したことですね。

一般的な用途ではデータベースは頻繁に作成・削除を繰り返すことはありませんが、テストの自動化を行いたい場合、テスト用DBを作成し、テスト後に削除するということが自動化できると便利ですね。

RubyGems.orgの方もすでに2.5.9に更新されているので、gem install ibm_db で導入できるはずです。

- ibm_db | RubyGems.org | your community gem host

PHP用DB2アダプタIBM_DB v1.8.4リリース

PHPからDB2に接続するためのアダプタIBM_DB(拡張)の新バージョンがリリースされています。

- DB2 Express-C Team Blog: IBM_DB2 1.8.4 extension for PHP released

Linux環境であればpecl install ibm_db2で導入できるようです。Windows用のバイナリは上記リンクから辿れます。

このバージョンでの新機能は主にi/OS(旧AS/400)対応のものが多いようですね。

XMLインデックスの作成をアドバイスしてくれるツール

DB2には設計アドバイザーという機能があります。実行するSQLをいくつか入力すると、そのSQLに適したインデックスの作成(もしくは不要なインデックスの削除)を提案してくれるというもので、なかなか便利な機能です。

コントロールセンター(GUI)から起動する事もできますし、コマンドライン版のdb2advisも用意されています。

- db2advis
DB2 設計アドバイザーは、マテリアライズ照会表 (MQT) と索引の作成、表の再パーティション化、マルチディメンション・クラスター化 (MDC) 表への変換、未使用オブジェクトの削除に関して、ユーザーにアドバイスを提示します

上記引用にあるように、インデックスだけでなくMDC表やMQTのアドバイスまでしてくれる高機能なものなのですが、どれもSQL用の機能で、XQuery用のXMLインデックスには対応していませんでした。

XMLインデックスはDB2 pureXMLの独自機能で、格納したXML文書の部分(アトリビュートや要素)にインデックスを付けて、検索を高速化する機能です。

前振りが長くなりましたが、そのXMLインデックスをアドバイスしてくれるためのソフトウェア"IBM XML Index Advisor"がHenrikさんのblogで紹介されています。

- IT, Life, DB2, pureXML, House Construction, ...: IBM XML Index Advisor for DB2
The good news is that there is a tool on IBM alphaWorks, called the "IBM XML Index Advisor for DB2 for Linux, UNIX, and Windows".

XML Index AdvisorはIBM alphaWorksで公開されています。Javaで書かれたアプリケーションです。

- alphaWorks : IBM XML Index Advisor for DB2 for Linux, UNIX, and Windows : Overview

Henrikさんのblogのコメントを読むとどうも正式にDB2に同梱する事を目標に開発されているみたいですね。いずれは構成アドバイザーの一機能になるのかもしれません。

FastBackを紹介する日本語ビデオ

高機能なバックアップソフトFastBackを紹介するビデオが作られました。以前も何度か紹介していますが、FastBackはDB2にも対応している扱いやすいバックアップソフトです。

- IBM developerWorks: Wikis - FastBack Japan Wiki - FastBack Japan Wiki

動画はその簡単さがよくアピールされていると思います。がんばって作っているので、ぜひ観てあげてください。



- 動画へのリンク

WebSphere CloudBurstの詳細な解説資料

developerWorks(dW)で、先日紹介したWebSphere CloudBurstアプライアンスを詳細に解説した資料が公開されています。

- WebSphere CloudBurst アプライアンス運用管理ガイド
この資料は、WebSphere CloudBurst アプライアンス 1.0とWebSphere Application Server Hypervisor Editionの概要、インストールから管理・運用する方法まで解説します。

WebSphere CloudBurstアプライアンスは、クラウド環境を構築して管理するために特化したアプライアンス製品です。現時点では管理対象としてVMware ESXをサポートしています。

上記資料では、概要から導入(アプライアンスなのであまりやることはないのですが)、管理、カスタマイズのためのスクリプティングまで、詳細に解説してくれています。

章毎に複数のPDFに分かれていますので、興味がある方は「1. 製品概要」から読んでみてください。どういう目的のための製品かが分かるようになっています。

NetBeans 6.8リリース

NetBeans 6.8の正式版がリリースされています。

- NetBeans IDE 6.8 リリースノートおよびシステム要件

今回はJava EE 6仕様が確定したのにあわせてのリリースのようです。同梱のGlassFishもv3正式版となりJava EE 6のリファレンス実装(RI)として公開されています。

- Sun GlassFish Enterprise Server v3
The Sun GlassFish Enterprise Server v3 is the industry's first application server to support the Java Platform, Enterprise Edition 6 (the Java EE 6 platform) standard


個人的にはNetBeansはRuby/Railsサポートが充実したIDEとして注目しています(JRubyだけではなく、MRIのRubyにも対応しています)。以下のページには新機能がまとめられているのですが、Ruby関連を抜き出すと、

- NewAndNoteworthyNB68 - NetBeans Wiki

# Upgraded bundled JRuby to 1.4
# Ruby 1.9 debugging support
# Run/Debug File with arguments
# Support for running/debugging files that are not part of a project
# Improved handling of inherited methods in rename refactoring
# Possibility to specify arguments for Rails servers
# Navigation support for ActiveRecord associations
# RSpec 1.2.9 support
# Faster and more accurate type inference
# Improved navigation for accessor methods created by attr, attr_accessor and attr_reader
# Support for creating Rails 2.3.4 apps with dispatchers

という感じです。JRuby 1.4,Ruby 1.9,Rails 2.3.4サポートと、最新環境への対応が進んだのが分かります。

キー・バリュー・ストア(key-value store)の実装一覧

RDBMSでは無いのですが、クラウドの文脈で一緒に語られる事が多いキー・バリュー・ストア(key-value store, KVS)の実装についてよくまとめれた文章を見つけました。

- Richard Jones | Anti-RDBMS: A list of distributed key-value stores | Richard Jones, Esq.

実装一覧に加えて、それぞれの実装への解説もあり、充実したまとめ情報になっています。KVSに興味がある方はぜひ読んでみてください。

検索
著書
DB2cover_small.jpg
DB2の管理方法を解説した本を書きました。
ad
リンク集
about this site
recommend
プログラマのためのSQL 第4版
プログラマのためのSQL 第4版 (JUGEMレビュー »)
ジョー・セルコ
名著が第4版として、内容拡充されて発売されました。SQLの考え方を基礎からしっかり学習したい方にお勧めです。
recommend
recommend
WebSphere Application Server 構築・運用バイブル 【WAS8.5/8.0/7.0対応】
WebSphere Application Server 構築・運用バイブル 【WAS8.5/8.0/7.0対応】 (JUGEMレビュー »)
串宮 平恭,達見 圭介,田中 孝清,原口 知子,福崎 哲郎,盛林 哲
WebSphere Application Serverの運用管理本が出ました!WAS v7〜v8.5まで幅広いバージョンに対応しています。
recommend
recommend
Effective Java 第2版 (The Java Series)
Effective Java 第2版 (The Java Series) (JUGEMレビュー »)
Joshua Bloch
すべてのJava開発者必読の書が大幅改訂されて第2版になりました!。
文法などは解説していませんが、Java言語でプログラムを書くにはどういう事に気をつけるべきかという事が非常に端的に、かつ明確な理由とともに解説されています。
第2版ではJava SE 6対応がなされ、第1版で提案してJava SEに取り込まれた部分は整理され、新しい機能であるGenericsやアノテーションについての記述が多数追加されています。以前に増してお勧めできる書になりました。
まだ読んだことが無いJava開発者はぜひ読んでみてください。
recommend
 (JUGEMレビュー »)

基礎的なSQLは書けるようになったけど、今ひとつSQLのルールになんとなくしっくりこない、腑に落ちない。そんな人にお勧めの入門書です。SQLの根底に流れる基本的な考え方をやさしく解説してくれています。(レビューはこちら)
recommend
SQLパズル 第2版 プログラミングが変わる書き方/考え方
SQLパズル 第2版 プログラミングが変わる書き方/考え方 (JUGEMレビュー »)
ジョー・セルコ,Joe Celko
SQL入門を終えて、SQL中級/上級者になりたいと考えている方にぴったりのトレーニング本です(レビューはこちら)
recommend
XML-DB開発 実技コース
XML-DB開発 実技コース (JUGEMレビュー »)
下佐粉 昭,野間 愛一郎,久保 俊彦,高橋 賢司
XML-DBのやさしい入門書です。XMLの基礎から、XPath,XQueryの解説、設計の基礎、Javaでのプログラミング等盛りだくさんの内容です。
recommend
データベースパフォーマンスアップの教科書 基本原理編
データベースパフォーマンスアップの教科書 基本原理編 (JUGEMレビュー »)
エンコアコンサルティング
DBMSの基本的な内部構成、動作についての考え方をやさしく解説してくれています。(レビューはこちら)
recommend
メインフレーム実践ハンドブック z/OS(MVS),MSP,VOS3のしくみと使い方
メインフレーム実践ハンドブック z/OS(MVS),MSP,VOS3のしくみと使い方 (JUGEMレビュー »)
神居 俊哉
メインフレームの技術について、基礎概念から、実践的な使い方までを網羅した初めての解説書です。
recommend
 (JUGEMレビュー »)

CSSの概念/基礎をしっかりと解説してくれるCSS入門書。サイトへの実践的な適用方法も解説されています(レビューはこちら)
無料のDB2 Express-C
DB2 Express-C ダウンロード
recent entries
categories
recent comments
  • DB2でインスタンスを追加で作成するには
    SIM (03/18)
  • DB2でインスタンスを追加で作成するには
    晩衛 (03/17)
  • SQLの学習サイト
    SIM (03/26)
  • SQLの学習サイト
    DB (03/25)
  • IBMとマイクロソフトが提携!AzureでDB2やWebSphereが、IBMクラウドでSQL Serverが提供される事に
    sim (10/25)
  • IBMとマイクロソフトが提携!AzureでDB2やWebSphereが、IBMクラウドでSQL Serverが提供される事に
    INA (10/24)
  • OpenSSLのHeartbleed脆弱性(CVE-2014-0160)は、DB2には影響ありません
    SIM (04/24)
  • OpenSSLのHeartbleed脆弱性(CVE-2014-0160)は、DB2には影響ありません
    oda (04/23)
  • IBM BLU for Cloudの日本語ガイド
    SIM (03/13)
  • IBM BLU for Cloudの日本語ガイド
    Okajima (03/13)
recent trackbacks
archives