第5弾! Tuningathon(チューニンガソン)振り返り

所感

  • まさか優勝できるとは思っていなかったので、
    ものすごく嬉しいのですが、それ以上にどう振る舞うべきか戸惑っていますw
  • 優勝できたのは運が本当に運が良かった。
    主キーの変更に気がつかず、インデックスのみではどこまでいけたものか…
  • 主キーの変更は、実際の現場ではほぼ使えないテクニックなので、
    若干反則かなと思ったりもしていますw
    実際の現場で途中で主キーを変えるとしたら、それは完全に設計の誤りなわけで…
    SQL書き直すそうが現実的な対策と言える気がします。
  • 今回の内容ってインフラっていうよりアプリに近くないですか?
    テーブルとインデックスの構成考えるのってアプリエンジニアの仕事ですよね?
    完全にインフラ寄りの内容だったら、僕みたいなどっちも齧ってる中途半端エンジニアが優勝なんてできなかったでしょうが・・・w

勉強になったこと

    • やったことにも書いていますが、サイズの小さい列にインデックスを貼ると、集計関数が少し速くなること
    • 後半二つのSQLのようなGROUP BYを使ったSQLが遅いのはよく悩まされる所なのですが、
      主キーの変更によって劇的に高速化された理由を自分なりに考えてみたら、
      同じ手はそうそう使えないけど、今後はちょっと違ったアプローチができそうな気がしてきた。
      考えてみた内容はちょっと長くなりそうなので今度別に書きます。→書きました。

その他

  • 主催のゼロスタート様、運営スタッフの方々、スポンサーの皆様、素敵なイベントと経験をありがとうございました!
    たぶん、また次回も参加します。目指せ連覇!w
  • 恐縮ですが、一つだけ残念な点があります。
    今回はサーバがかなりオーバースペックだったので、メモリの設定は適当で済んでしまったのが少し残念です。
    各バッファの使用量やパフォーマンス統計を見ながらシビアに割り当て量を調整するような感じの方が、
    チューニンガソンらしかったかなと思います。
    スペックを落とすと集計が終わらない懸念があったようなので難しいでしょが…
  • 優勝のご褒美に、JAWS DAYS 2013に社費で連れて行ってくれるとのこと。
    それは嬉しいけど、その代わり大LT大会に「優勝者です」って言って出ろ…ってそれ本当にご褒美ですか?w
    嫁がその二週間前に出産予定なので、その兼ね合いもあって悩み中。