タグ

ブックマーク / daiyamamoto.hatenablog.com (3)

  • 信じられないDB文化「固定長DB」でもあうんです。大規模コンシューマ向けサービスのRDB設計 - レベルエンター山本大のブログ

    ずいぶん時間があいてしまったけど、大規模コンシューマ向けサービスRDB設計の続き。 僕はこのプロジェクトを自分のRDBの知識を使って革新してやろうと思って臨んだ。 しかし結果として逆に、コンシューマ向けサービスに最適化されたRDBの使い方について教わることになった。 ※ あと、KVSでいいじゃんって言ってる人もいるけど、それはKVS導入の苦労を知らない人だと思う。KVSの苦労は後で書く。 僕らが最近手がけているのは、とても大規模なコンシューマ向けサービスだ。 100万人の契約ユーザが使い、1テーブルに1億レコード以上のデータを貯め、24時間止めることが許されず、 要求から応答までのターンアラウンドタイムが1秒以内という厳しいSLAのサービスである。 中でも僕はDBやフレームワークの設計とアーキテクトっぽいことを担当している。 僕がこの現場に来て、驚愕した文化が2つある それは「Join禁止

    信じられないDB文化「固定長DB」でもあうんです。大規模コンシューマ向けサービスのRDB設計 - レベルエンター山本大のブログ
    hibariya
    hibariya 2011/08/10
  • プログラマーの誇りを見せ付けろ - レベルエンター山本大のブログ

    僕は今回の案件で、システムのレスポンスに徹底的にこだわってる。 それには理由がある。 それは、プログラマの誇りを見せたいからだ。 この案件は、既存機能をコピーして似た機能を作るというものだ。 既存機能は、Webシステムなのに1アクションで 1分や2分以上のレスポンスタイムはザラで、 悪いときには数分後にタイムアウトして、 さらに悪いときには、アプリケーション全体をロックしてしまっていた。 顧客はそれでも我慢して使っていてくれたそうだ。 今回の改修に際して、顧客がパフォーマンスを要求するのは当然だった。 それにしても酷いアリサマだとコードを見てみると 酷い。 確かにパフォーマンスは出ないのも無理はない。 いや、それどころか僕は、このSI業界の問題を感じざるを得なかった。 この機能はそこそこ難しく、業務的にも重要だ。 しかし、そのコードは、新人〜3年目ぐらいのプログラマが書いたとしか思えないコ

    プログラマーの誇りを見せ付けろ - レベルエンター山本大のブログ
  • 実装あるある - レベルエンター山本大のブログ

    僕のループ。 1.実装中のコードで、すばらしいアイデアを思いついく。 2.思い切って大幅にリファクタリングを決断する。 3.テストコードを書く(他のコードは書いてない) 4.完成が見えてきた頃にアイデアの致命的な欠陥に気づく。 5.あきらめてソース管理ツールの履歴から戻す。 6.直後にやっぱりイケてたことに気づく。 7.テストコードだけチェックインが追いついてなくて真っ赤。 8.やっぱり、もう一度トライ。 9.前よりも綺麗に書けて少しご機嫌になる。 10.テストコードもおとなしくなる。 11.おっと、別の欠陥を発見する。 12.ソース管理ツールから部分的にマージする。 13.触らなくて良いところまで戻って焦る。 14.どこが壊れたか分からないけど確かに壊れてる。 15.自分にあきれる。 16.訳もなく設計書を開いてみたりする。 17.訳もなくインターネットに答を求めてみる。 18.どう調べ

    実装あるある - レベルエンター山本大のブログ
  • 1