図解でなっとく!トラブル知らずのシステム設計

  • 日経BP (2017年10月5日発売)
3.20
  • (1)
  • (0)
  • (3)
  • (1)
  • (0)
本棚登録 : 29
感想 : 3

システム設計でよくありがちな失敗例とその対策方法について書かれた本。
もともとはNRIの社内向けの資料として作られたということもあって、新人にたいして分かりやすい内容になっているように思う。
ページングの実装はなかなか難しいよなぁ。件数を取得するSQLを書いて、その後に指定ページ(行番号範囲)のデータをとってくるSQLを書くって無駄だよなと思うけど、やっぱりそうするしかないのかな。これは仕方ないか。
ブラウザの戻る遷移は、あまり意識したことなかったけど、確かに気をつけなきゃいけないことだよなと思った。最近はSPAで作ったAPI呼び出しだからそうそうそういう問題は起きないけど、どちらにしろ二回連続で呼び出された時の考慮が必要だし。ただこれは、戻るだけじゃなくてF5更新でも起こる問題な気はする。
それにしても、新機能を追加してテスト工程を大幅にカットしてスケジュールに間に合わせるって怖いよなと思った。新機能追加したら余計にテストしなきゃいけなくなるだろと。仕様変更は仕方ないにしても、せめてスケジュールを後回しにするようにできないものなんだろうか。
hiddenでパラメータ持たしてサーバーに渡すのは、改ざんのリスクがあるというのは、案外知られてないよなと感じる。昔、GETからPOSTに変えたから安心みたいに言ってる人がいて、いやいやPOSTでも改ざんできると示したら不思議がられたことがある。
複合主キーでの検索条件は、順番が大事というのは確かにとは思う。ところで、複合主キーって順番指定できるんだっけ。左にあるカラムからソートされてるイメージだけど。
テーブルのカラムにインデックスをつけるというのはあまりやってこなかったから参考になった。テーブル内のデータが少なかったら、インデックスをつけてもあまり意味ないのか。確かに、考えてみたらそりゃそうか。
Merge JoinとHash Joinについては、名前を聞いたことあるけど、いまだによく分かってない。これって、直接どちらのアルゴリズムを利用するか指定できるのだろうか。内部で自動的によさそうと判断されたほうを利用してるイメージなのだけど。
バインドピーク問題というのは初めて知った。バインド変数の組み合わせを覚えていることによって、SQLの実行時に最適なアルゴリズムで取得されないという問題らしい。対策が、不必要なWHEREの条件は減らすといったことだけど、もっといい方法ないものかなと思った。

読書状況:読み終わった 公開設定:公開
カテゴリ: 電子書籍を読んだ
感想投稿日 : 2021年7月25日
読了日 : 2021年7月25日
本棚登録日 : 2021年7月25日

みんなの感想をみる

コメント 0件

ツイートする