今日のつぶやき
SQLが使えないとentityのnavigationをプログラム側でやらないといけなくなる。LINQ的な解もいずれ出てきそうだけど、まだまだ先。OKMの相対的な価値は高くなる。 #simplemodeler @myen #
懸案事項になっていたDSLのトリックを思いついた。DSLのテクニックは色々ありそうやなー #scala #
cacheにserializedを使うとBlobになってしまうのでI/Oが出てしまい、I/O削減のcacheのために別のI/Oが出てしまうということになるのかな。 #simplemodeler #
stringは500byteなのでXMLでエンコーディングするとすぐに一杯になってしまう。JSON使うのがよいかな。 #simplemodeler #appengine #
stringにencodingした結果が500byte以内ならstring, それ以上ならTextにするか、cacheしないか、という流れか。 #simplemodeler #appengine #
TextやBlogに対してdefaultFetchGroupをtrueにすると、(1)entityに埋め込んでくれる、(2)entityの読み込みのとき同時に読んでくれる{(2-1)並行処理などの最適化あり、(2-2)最適化なし}のどれだろう。 #appengine @myen #
物理Update/Deleteと論理Update/Deleteをentityごとに選択できるようにする。 #simplemodeler @myen #
KVSは論理Update/Deleteが向いているような気がするなぁ。デフォルトを論理Update/Deleteにしてみるのも面白い。 #simplemodeler @myen #
プレミアムシュークリーム at Lawson
f.hatena.ne.jp/twitter2/20091101130505 #
困った時のUML Refman ( trunc.it/2zpuf )。aggregationの実装方法についてヒントがあった。 #
aggregationはaggregateとpartのassociation roleが明確に決まっているbinary associationという基本を再確認した上で考えてみると、part側にaggregateへの参照を持たせる実現方法が面白そう。 #simplemodeler #
part側にaggregateへの参照を持たせると、100万件の登録があっても大丈夫。KVS的なListによる解では破綻する。ただし、KVS的にはListでないと性能的に困るので、これをcacheで解決しようというのがアイデア。よいバランスかも。 #simplemodeler #
当面はkvsとrdbmsの混在が現実解。PIMからパッケージ単位の粒度でkvsとrdbmsのPSMを選択するということになりそう。 #simplemodeler @myen #
kvsとrdbmsが混在する以上、開発の途中でkvsからrdbms、あるいはrdbmsからkvsへターゲットPSMの変更が頻繁にあると考えるべき。アジャイルならなおさら。これに対応できる開発技法はモデル駆動開発しかない。 #simplemodeler @myen #
kvsで怖いのはER図が通用しなくなること。kvsとrdbmsの混在という要件から考えてもOOのPIMでモデルを構築して、use caseに従ってentity単位でkvsとrdbmsを選択するアプローチがよいだろう。 #simplemodeler @myen #
entity単位でkvs, rdbmsを選択することになるが、stereotypeなどで個々に指定するのは取り扱いに困るので、kvsに落とし込むパッケージ、rdbmsに落とし込むパッケージに作成・移動するアプローチがよいだろう。 #simplemodeler @myen #
Automatically shipped by LoudTwitter