SQLアンチパターン社内勉強会に監訳者t-wada氏が降臨!

どうも、佐藤鉄平(@teppeis)です。

オライリーから今年初めに刊行されたSQLアンチパターンがとても良い!という話になり、社内勉強会がスタートしました。

SQLアンチパターン

本の内容自体が面白いこともさることながら、「うちのあの製品ではどうなってるの?」「でも昔は違ったよね?」のような社内勉強会ならではのディープでいきいきとした議論が自然と盛り上がります(まさにパタン・ランゲージ!)。

SQLアンチパターン勉強会の様子
SQLアンチパターン勉強会の様子

そんなことをつぶやいたところ、監訳者の@t_wadaさんこと和田卓人さんから「一度お邪魔したいです!」とのうれしいリプライがあり、このたびスペシャルゲストとして参加していただきました。

今回のテーマは第2章「ナイーブツリー(素朴な木)」。サイボウズはグループウェアを扱っているので、組織やフォルダなど多数のツリー構造が存在します。 過去には隣接リスト(ナイーブツリー)、Nested Set、Nested Interval、Materialized Pathなどいろいろなツリーモデルを採用した経験(失敗含む)があったので、

  • MySQLのカスケード操作は15階層を越えるとエラーになる。
  • Nested SetはテーブルをSELECTしただけじゃ構造が読めないので運用的に厳しい場合がある。
  • Nested Intervalで分割を繰り返したら精度が足りなくなった。

などなど、和田さんの経験談も交えながら議論が盛り上がりました。

和田さんの即席サイン会に並ぶうれしそうな弊社社員
和田さんの即席サイン会に並ぶうれしそうな弊社社員

今後も毎週1章ずつ進めていきたいと思います。 和田さん、ありがとうございました!