April 20, 2009

沈みゆく太陽

今日はいったい、世界中でどれだけの人がこんなタイトルで
ブログエントリを書いているのでしょうか?


かねてより売却先を探していたSun Microsystemsは
先日報道のあったIBMではなく、Oracleに買収されることが決定したそうです。

オラクル、74億ドルでサンの買収に合意、ハードウェア市場へ進出( Computerworld.jp)
http://www.computerworld.jp/topics/ma/143009.html

オラクル、サンの買収で最終合意(CNET Japan)
http://japan.cnet.com/news/biz/story/0,2000056020,20391986,00.htm

[速報]オラクルが74億ドルでサンを買収(ITpro総合)
http://itpro.nikkeibp.co.jp/article/NEWS/20090420/328819/

[oracle] Oracle、Sunを買収!!!!!(S/N Ratio (by SATO Naoki) by satonaoki)
http://d.hatena.ne.jp/satonaoki/20090420/p2

ラウンドアップ:オラクル、サン買収に至るまでを振り返る
http://japan.cnet.com/news/biz/story/0,2000056020,20391994,00.htm

米オラクル、サンマイクロを74億ドルで買収へ(Reuters: テクノロジー)
http://jp.reuters.com/article/technologyNews/idJPJAPAN-37591820090420

【速報】オラクルが74億ドルでサンを買収(@IT)
http://www.atmarkit.co.jp/news/200904/20/oracle.html


非常に驚きましたが、ニューヨーカーなビジネスマン集団のIBMよりは
シリコンバレー企業のOracleのほうがずっとしっくりくる組み合わせとも言えます。
プロダクトの品揃えでも、被りよりも補完の要素が多いですし。


特にOracle が欲しいのは、Javaテクノロジのリーダーという地位と
サーバおよびストレージでしょう。

MySQLは微妙な立場ですね。
Oracle DBのシェアを下げた強敵でしたから。

Oracleはオープンソースからは一歩引いた立場と見えるので、
Sunの持っているOSSプロダクトがどうなるか、この先に注目です。

Oracleがこの買収を最大限に活かせれば、向かうところ敵なしですね。
ライバルと呼べるのはIBMぐらいでしょうか。

ハードウェア、データベース、アプリケーションサーバ、
Javaテクノロジ、サーバ仮想化、ビジネスアプリケーション、
クラウドプラットフォーム、OS、SOA・・・
エンタープライズ分野でのソリューションをほぼ全方位カバーすることになります。


しかし・・・

私自身、Sunには多くの知り合いがいる・・・と思っていたら
気がつけば既に退職されている方の方が圧倒的に多いという状況でした。

奇しくも今日もまた、大変お世話になった方がSunを退職されると
ブログに書かれた日でもありました。
(ご本人からは1週間ほど前に聞いていたのですが・・・)


ここ数年は株価(=企業価値とも言い換えられますが・・・)が
下がる一方だったSunですが、数々の業界のカリスマを輩出し、
Javaという一大プラットフォームを築いたSunは
いちエンジニアとして憧れの企業でした。
そのSunが無くなってしまうのは本当に寂しい限りです。


January 4, 2009

Google App EngineのJava版「Stax」を触ってみました

Amazon EC2上で提供されるJava版PaaSサービス「Stax」をちょっと触ってみました。今のところはβサービスで、まだ実装されていない機能もあったりしますが無料で試すことができます。
「Google App EngineのJava版」としてニュース記事等でも紹介されています。

Java対応のGoogle App Engineとも言うべき「Stax Networks」ローンチ
http://jp.techcrunch.com/archives/20081216stax-networks-launches-google-app-engine-for-java/


用意されている環境

  • Apache Tomcat/6.0.16
  • MySQL/5.0.51

要するにServlet2.5/JSP2.1環境を使えるってことですね。JVMはJavaSE5相当のようです。
GoogleもSalesforce.comも、Servletコンテナにはより軽いResineを採用していますが、ここはTomcatですね。


サポートするフレームワーク
  • Apache Struts(ただし、1.xではなく2.0.11)
  • Apache Wicket
  • Adobe Flex/BlazeDS
  • Google Web Tool Kit
  • Adobe ColdFusion 8
  • JRuby on Rails
とかドキュメントには書いてありますが、アプリケーションの初期作成時のテンプレートとして、デフォルトで必要なライブラリを入れてくれて、最低限の設定済みのxmlファイル類を入れてくれるってだけです。
逆に、WEB-INF/libにライブラリをつっこんで、web.xmlを編集して、WEB-INFに必要な設定ファイルを追加すれば他のフレームワークも使えます。DI/AOPコンテナもORマッピングフレームワークも使えます。
Struts1.3.8/Spring2.5.6/iBATIS2.3.4とか、JSF1.2RI/Spring2.5.6/Hibernate3.3.1とか、試してみたら動きました。この分ならSeasar2を使ったアプリも問題なく動作するでしょう。


アカウントの作成
StaxのWebサイト http://www.stax.net/ へ行きます。



「Apply for the Beta」をクリックしてサインアップ画面へ行き、メールアドレスを入力して送信すると認証メールが送られてくるので、そこに書いてあるURLにアクセスするとサインアップ終了です。簡単です。



改めてStaxのWebサイトからログインするとアプリケーション管理画面に入れます。



管理画面では、TomcatのログやApacheのアクセスログ等の参照、アプリケーションの作成・DBの作成・設定・パフォーマンスやアクセス監視モニタの参照等を利用できます。




アプリケーションの作成
管理画面左側メニューの「Create App」をクリックすると、アプリケーションを作成できます。ユニークな名前を付けましょう。Application Core Runtimeからフレームワークを選べますが、前述の通り、Servlet2.5/JSP2.1環境で動作するものなら好きなモノを使えます。用意されているもの以外のフレームワークを使うのなら「Basic Servlet and JSP」を選択してもかまいません。



Stax SDK http://stax-downloads.s3.amazonaws.com/sdk/stax-sdk-0.2.12-dist.zip をダウンロードして解凍しておきます。
http://www.stax.net/appconsole/createapp から、任意の名前のアプリケーションを作成します。
解凍したディレクトリ中の「Stax Console」ショートカットを起動します。
コマンドラインコンソールが起動するので、そこから
stax getapp -a [ユーザ名]/[アプリ名] -u [ユーザ名] -p [パスワード]
を実行すると、アプリケーションのひな形がダウンロードされます。このひな形はEclipseプロジェクトになっているので、そのままEclipseへインポート可能です。でもこのプロジェクトはWTP互換じゃないのが残念です。


アプリケーションの構造
  • webapp: JavaEE Webアプリケーションディレクトリ
  • src: Java ソースファイルディレクトリ
  • conf/stax-application.xml: Stax デプロイメントディスクリプタ
webappディレクトリの中は通常のServletアプリと同じなので、WEB-INF/libに好きなライブラリを入れたり、WEB-INF/web.xmlを編集したり、設定ファイルやTLDを追加したり、自由にできます。


DBの作成
管理画面左側メニューの「Create DB」をクリックすると、アプリケーションを作成できます。任意のDB名、ユーザー名、パスワードを設定します。



DB作成後、テーブルやら何やらを作成するには、なんとTCP:3306が開いているのでMySQL Query Browser や mysql コマンドが使えます(^^;(←いいのか?)
アプリケーションのconfディレクトリにあるstax-application.xmlに、下記の設定を追記します。

<resource name="jdbc/db01" auth="Container" type="javax.sql.DataSource">
<param name="username" value="[ユーザ名]" />
<param name="password" value="[パスワード]" />
<param name="url" value="jdbc:stax://[DB名]" />
</resource>

Javaアプリケーションからは、JNDI参照名「java:comp/env/jdbc/[DB名]」でLookupできます。


アプリケーションのデプロイと動作確認
コマンドラインから
stax deploy -a [ユーザ名]/[アプリ名] -u [ユーザ名] -p [パスワード]
とすると、作成したアプリケーションをアップロードできます。
Antを使ってWARファイルからのデプロイも可能です。WARファイルをそのままアップロードできるUIがあればいいのに。。。

次のURLからアプリケーションの動作を確認できます。
http://[アプリ名].[ユーザ名].staxapps.net/

何度アップロード/デプロイし直しても反映されるので、クラスローダはカスタマイズしていじっているっぽいですね。Tomcatのデフォルトのリロード機能ではヒープメモリがすぐに破綻しますから。

[追記]
サーバのログを見るとTomcatまんま再起動しているっぽいです。


一度デプロイしたアプリケーションは削除できません(^^;削除機能はまだ未実装のようです。


ちょっと触った所感
Tomcat/MySQL/Eclipse環境に慣れた人ならすぐに開発できるのが良いですね。フレームワークもお仕着せのものだけでなく好きなものを選べますし、使い慣れたRDBがそのまま使えます。Python/Django/webappsにどうしてもなじめず、Google App Engineを放り出してしまった私には嬉しいポイントです。
懸念としては、サーバの信頼性・可用性・セキュリティと正式サービス開始後の料金体系です。まあ、これはすべてのクラウドサービスに言われていることですが。Amazon E2Cを利用しているのでこのレベルではある程度の信頼性はありますが、その上で動作しているアプリケーションサーバレベルではStaxの技術力・資金力・信頼性が問われるところでしょう。

Amazon EC2上に構築されたってのが、次世代のビジネスモデルを予感させます。自前のデータセンターを持たずにSaaS/PaaS事業を展開するという例はこれからも増える可能性がありますね。

May 8, 2008

MySQL、新機能のクローズトソース化の決定を撤回

先月、「MySQL、新機能追加は有償版の「MySQL Enterprise」だけを対象に」という記事が Technobahn より出て、Sun が各方面の OSS 支持者の非難を浴びるという事件がありました。

MySQL、新機能追加は有償版の「MySQL Enterprise」だけを対象に
http://www.technobahn.com/cgi-bin/news/read2?f=200804172000


こんな苦しいフォローもありましたが・・・

「一部報道で、MySQLに対する今後の新機能追加は有償版である「MySQL Enterprise」のみに適用されるとあり、これがコミュニティーから強い不快感を招いているが、実際には、「一部」の機能やドライバがMySQL Enterpriseにのみに搭載されるという趣旨である。」
http://www.itmedia.co.jp/enterprise/articles/0804/21/news118.html


やっぱりこうなりましたね。

MySQL、新機能のクローズトソース化の決定を撤回
http://www.technobahn.com/news/2008/200805071431.html

クローズドソース化は MySQL の方針で、Sun の意向に反する(と主張している)ところが引っかかりますが・・・


ベンダーのオープンソース戦略の難しさを感じさせる一件だと思います。
オープンソースと言えば Linux カーネルや、Apache Software Foundation だった時代は、「オープンソース=有志によるボランティア活動」という色も強かったのですが、IBM の Eclipse が普及してきた頃から、ソフトウェアベンダーが自社製品をオープンソースライセンスで公開するという動きが急速に広まってきました。

しかし、中にはこの戦略がうまくいっていないベンダーがあります。

営利企業である以上、すべての事業は自社の収益に結びつけられるべきなのですが、オープンソース戦略はいかに大きい目・長い目で見て、業界全体が育っていくのを見守れるかにかかっていると思います。
一気にシェアを取りに行ったり、ライバルを意識して業界内での存在感をアピールしようとしたり、短期的な収支を考えたりという理由で焦ってもいいこと無いですね。

April 18, 2008

MySQL、新機能追加は有償版の「MySQL Enterprise」だけを対象に

MySQL、新機能追加は有償版の「MySQL Enterprise」だけを対象に
http://www.technobahn.com/news/2008/200804172000.html
「MySQLは16日、米カリフォルニア州サンタクララで開催中のMySQLコンファレンスの席上で今後の新機能追加は有償版の「MySQL Enterprise」だけを対象としていく方針を明らかにした。」
「無償版の「MySQL Community Server」の提供は今後も継続されるが、無償版と有償版の開発は完全に切り離されることとなり、無償版と有償版の2つのMySQLはまったく別々の進化を遂げることとなる見通しだ。」

 ※technobahn のサイトが落ちているようなので、Google のキャッシュをご利用下さい。


Sun Microsystems の恐るべき愚行と言えます。
このニュースは、いったいどれだけの OSS 支持者を失望させ、どれだけの OSS 支持者の反感を買うのでしょうか?

今日六本木ミッドタウンで行われていた Sun Business .Next 2008 や G.W.明けの S.F.で行われる JavaOne 2008 で、オープンソース団体による抗議デモが行われても不思議ではないぐらいです。

今回発表されたこの方針に変更が無い限り、MySQL を離れるユーザは増加の一途をたどることでしょう。


こうだったはずなのに・・・

http://japan.cnet.com/news/ent/story/0,2000056022,20371630,00.htm
「Sunは、次バージョンMySQLの「ファイナルに近い」ビルドを公開するとともに、1月に10億ドルで買収した同オープンソースデータベース企業の文化を変更しないことを約束した。」

http://japan.cnet.com/news/ent/story/0,2000056022,20371536,00.htm
「Sun MicrosystemsがMySQLを10億ドルで買収した際に浮上した最大の問題は、両社の明白な文化的衝突だろう。長年、クローズドソース企業としてやってきたSunがオープンソース企業のMySQLを買収したことで、オープンソースコミュニティーの一部から、今後の成り行きを懸念する声が上がった。しかし、Sunは米国時間4月15日、買収をめぐるあらゆる疑問を払拭すべく、1月に買収が完了して以来、初となる大規模なMySQL開発者向けの集会MySQL Conference & Expoで、両社の相思相愛ぶりを演出した。」

January 17, 2008

Oracle, BEA, Sun, MySQL

OracleがBEAを買収しました。

Oracle to Acquire BEA Systems
http://www.oracle.com/corporate/press/2008_jan/bea.html

一度はBEA側が金額面の理由(67億ドル)で拒否したのですが、
とうとう85億ドルで合意に至ったようですね。


SunがMySQLを買収しました。

Sun to Acquire MySQL Press Kit
http://www.sun.com/aboutsun/media/presskits/2008-0116/index.jsp

こちらも私には意外に思えるニュースです。
SunはどちらかというとMySQLよりもPostgreSQLと親密だと思っていたので・・・
昨年の Sun Tech Days Tokyo 2007 でも PostgreSQLのブースが出展されていました。

SunはLAMPの"M"を自社DBブランドとして手に入れたことになりますね。