はじめに

今はまさに、クラウドの時代が到達しつつある。
メールなどは私もgmailを使っているように、コンシューマレベルではある意味クラウドを利用している。
そして、今後その流れはより加速されていくだろう。
この流れは、ビジネスの領域、つまり会社内にも少なからず影響が出てくることは間違いない。

クラウド導入での問題点

しかしながら、クラウド導入でいいことばかりだろうか?
特に、コンシューマレベルと同じように企業内の業務も浸透するにはちょっと無理を感じる。
cloud_1

そもそも、なぜクラウドは安いのか?
それは、基本的にはあいている共用リソースを足りない部分に補えるからだ。
そして、ある使い方(時間)では、余ることが想定されているからだ。
また、同じ事を同じレベルで提供するために、規模のビジネスが通用する。

ここで、もっとも恩恵を受けるのは、CPUという計算コストだ。
これについては、全く異論はない。

しかし、データという事であればどうであろうか?

いやいや、データはgmailは8Gなのに、会社は1Gもないよ!
という事もあるのはあるが、そもそもデータがハードディスクだと言い切れば、同じようにクラウドは安い。でも本当にそれだけだろうか?

つまり、データのコストはハードディスクの容量だけではないのだ。
企業では、データを持つことで同時に以下のようなコストも負担している。
 セキュリティコスト
 他システム、サービスとの連携
 回線料(ローカルにないということはそれだけ、回線も太くなくてはならなくなる。)

という具合だ。
まあ、回線はどうなるかはわからないが、現在企業が支払っているコストでセキュリティはものすごーく高い。
インターネットを見せるメリットよりも、見せないメリットの方が大きいと判断している企業だって多々ように、誰もがデータをいつでも見えるという事に価値があるとは思っているわけではなく、いつでも見えるという問題から、見えなくするというコストを支払ってる金額も相当なものなのだ。ただ、便利なサービスになれてしまったコンシューマが、いざ、会社の中の企業人になったときのギャップは相当なものになるだろう。

ぐちぐち言っていても仕方がない。
エコポイントの情報だってクラウドなんだぜ!
今更なにいってんだ!どんどん情報も海外にながしちまえ!

というのは、受け入れてもらえるだろうか?
また、みんながそれでいいのだろうか?

3層構造という思い込み

でも、それって、こういう技術構造を思い描いているからではないだろうか?
3layer

だから、データも一緒にクラウドに・・・という発想になる。
でも、ロジック(CPU)処理が激安になるのだったら、この構造変えてもいいんじゃないでしょうか?

3相構造

私が思うのは、部分的(同じネットワーク空間の制限内のもの)には3層構造であることは変える必要が無いと思う。
がしかし、
cloud_2

こんな3相(同じ立ち位置という意味で「相」)構造がいいのではないだろうか?
なんじゃこりゃ?と思った方もいるかもしれないが、実はこのような実装はあながちあり得ない話でもなく、ある場所では結構増えてきている。
その場所とは大規模サイトのようなところだ。
ただし、表示・ロジック・データすべてが純粋ではいない。(かなり汚れている!?)

データは計算に必要な部分だけに分解され計算されている。
そして、表示の時に、その計算結果とデータをつきあわせて表示を行っているのだ。

このような実装を見ると、「基本がなっていない」という思う方もいるかもしれないが、いろいろな事情でそうなのだ。基本は基本だ。目的と前提が変われば、それを応用していかなければならない。
たとえば、データを守るDBはOracleであっても、計算上必要なデータを一時的に保持するサーバはMySQL(PostgreSQL)とような感じだ。
これは、クラウドの問題を見据えてそうなったわけでもないが、DBという値段を考えると必要な場所に必要なだけのコストしかかけられないという経済力が加われば自然とそうなる。そして、必要なデータ以外はいらないと・・・
これを研ぎ澄ましていけばいくほど、「3相構造」に近くなる。

それにオブジェクト指向って、必要なデータと必要な処理の固まりなわけで、オブジェクトとして自立して機能してほしいと考えたら自然な流れともいえなくもないだろうか?

クラウドにおける「3相構造」

この大規模サイトのテクニックの「3相構造」は、クラウドによって社内サーバが縮小していくなかで、より広い範囲で重要性を増すと私は思っている。
クラウドにより、最小限までデータ保存の責任は小さくできる。極端な話、クライアントの端末にあればそれでいいという事だっておかしくない。
(PtoPで、みんなで持ってしまえばバックアップだって万全だ。)

こんな感じだ
cloud_3

つまり・・・

だからクライアント型RIAに価値がある。と思っている。
この表示の為の合成と、計算の為の分解を行う為にはクライアント上でアプリケーションが動く方が都合がいい。
入力されたときと、出力されたときを制御するのは人だ。それを検知できるのはやはり、そのツールだ。そして、データを見るときに正しければそれでいい。
それが管理を安くするためにも必要なのだ。
(だれも見ていない深夜のデータまでも、正しいのかを確認するのはかなり高いコストがかかる。)

計算はクラウドによって安くなった。バッチ処理なんていう概念は必要ない。
いつだって、差分を計算していけばいい。間違いに気づけば、その間違った時点から計算し直せればいい。

従って、クラウドがある程度浸透したら、こんなクラウドのサービスとクライアント型RIAがセットになったサービスが出てくるだろう・・・と思っている。

と、数年前から何となく思っていたことが、もう少し表現できるようになってきたので私のイメージを書いてみました。
具体的には、AIRだけでは足りない気がしてきたので、前回と前々回の
Flashとローカルマシンとの共存
Flashとローカルマシンとの共存 ( XMLSocketを使ってみる)
なんかのような感じでAIRを補完していければ私のイメージに近づけるかも・・・という気がしてきた。

お仕事のご依頼・相談を承ります
この記事に関連するお仕事のご依頼やご相談をお待ちしております。 詳しくは、こちら

Leave a Reply

お仕事のご依頼・相談
この記事に関連するお仕事のご依頼やご相談をお待ちしております。 詳しくは、こちら
ソフトウェア&ライブラリ




ライブラリ
airxmail(en)
AIR版メール送受信ライブラリ
airxzip
AIR版ZIP圧縮・解凍ライブラリ
執筆書籍
本、雑誌等

WEB記事:CodeZine
執筆記事はこちら
カレンダー
2010年5月
« 4月   6月 »
 12
3456789
10111213141516
17181920212223
24252627282930
31  

カスタム検索
RSS
Add to Google < !–adsense–>
アーカイブ
カテゴリ
にほんブログ村 IT技術ブログへ