セールスフォースのデベロッパーセミナーにいく

セールスフォースのデベロッパセミナーにいってきました。やっぱり、セールスフォースはパッケージだなあと感じました。また、いくつかの謎がとけました。


Salesforceを使うとスケーラビリティーを気にしなくてよい

これが一番なぞでした。いくら大きな企業と沢山のサーバーがあるとはいえ、リソースは有限なわけで、無限のリソースなんてないわけです。特に、JOINとかのコストは大きいからなんでだろうと。

それでいて、プラットホームとしてDBとして使える。ほかのDBとかはほとんどのケースでは必要ない

これも本当に出来たらすごいのですが、いわゆる、このふたつの謎は連携しているのです。

謎の秘密は、内部のオブジェクトの構造にあって、リレーショナルデータベースで言うJOINや集計処理ができないんです。というか、最初に、もう、どのテーブルのカラムとどのテーブルが外部キーでとか、そういうのを決めてしまうので、インデックスをうまく使う構造が強要されます。

ここまでは良いと思いました。ただ、残念なのは、テーブルの親子関係をたどるのに制約があることです。テーブルの親をたどって、そこから子にアクセスできない・・・・
これはちょっと痛いとおもいました。
これだったら、XMLのDBのほうがいいかも。正規化とかは完全にあきらめて、ばりばり重複しまくりが覚悟できれば、プラットフォームとして使えるのではないでしょうか。


やっぱり、セールスフォースはパッケージとして割り切って使った方が、良いです。パッケージとしてはすごく優秀なソフトウェアなので。


ただ、これを本格的なDBとして考えて使ってしまうと、相当苦労すると思います。ただ、時間がないから付け焼き刃でやるにはちょっといいかも・・・・とおもいつつも、だからといって、運用がしにくいシステムになってしまうと、即、運用開始直後にあまりよくない状況になるので、「運用には責任持ちません、つくったらお〜わり」というケースの付け焼き刃限定かもです。


と言う風に、個人的に思いました。