履歴や世代、データの削除すべてをリレーショナルデータベースだけで扱う方法。実用上はオーバーキルになることも多いと思われるので、あくまでもインデックスを効かせ整合性制約をすごくちゃんとやるとしたらこうなるよ、程度の知識として捉えてください。
2017/07/10 SQLアンチパターンNight Part2 https://connpass.com/event/59946/
あれは、僕がデータベースを扱ううち最初から3件目のプロジェクトだった。 C++のソースが難解で火を吹いているという話で、自分は低スキルの若造。火にくべるには丁度良い程度のやる気と責任感をもっていた。折悪く別のプロジェクトが終了した直後だったもので投入されたのでした。 現場で『DBからデータを吸い出すツールかSQLを作ってくれ』といわれ話をきくと他社が作ったDB定義がすこぶる使いづらいという。 ER図やDB定義を見せてくださいと言ったのだけど、そんなものは無いという返事。 今ならもうここら辺で逃げ出すところですが、当時は『ふーん。』てなもんでそういうこともあるのかくらいの軽い気持ちで考えていました。 で、プロジェクトの資料をあさりまくって何とかDB定義のようなものも見つけDBのデータを調査し始めたのですが何かがおかしい。 機能の数に比して異様にテーブル数が少ないのです。 ふと周りを見ると、皆
はじめに 目的 この本で勉強会する目的 語彙のシェア パターンの名前 「あ、これナイーブツリーだねー」みたいな Schema設計力向上 アンチパターンになっていないか?アンチパターンを使っているとしたらどうして?を設計段階から意識できるようにする アンチパターンを使ってもいい場合というのも本の中にでてくる 対象範囲ではないもの この本では扱っていないこと(他の書籍で勉強してね☆) SQL構文について SQLの構文や用語に関する説明 正規化云々 パフォーマンス、スケーラビリティ、最適化 実践ハイパフォーマンスMySQL DB管理や運用 SQL、RDBMS以外の代替技術について KVS MapReduce アンチパターンとは 問題の解決を意図しながらも、しばしば他の問題を生じさせてしまうような技法 すすめ方 週一で一章か二章毎 章毎に担当一人がまとめる 目安として2日前には Qiita へ投稿
第二章 ナイーブツリー 「ブログのコメント欄をスレッド形式で見れるようにしたいよね・・・」 目的 階層構造を格納して、クエリを実行する こんなテーブル設計したとして、 comment_id parent_id comment etc
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く