そこで物理設計(with 領域見積もり)ですよ twitter.com/kaiba/status/1… #DBSekkeiNight
2020-06-04 22:36:29貧乏性なのでarchivesテーブルやhistoriesテーブルのことを考えるとデータ量大丈夫かな、という気にっちゃう。計算すると大したサイズじゃないのに。 これってトリビアになりませんか? #DBSekkeiNight
2020-06-04 21:41:333値演算で不具合の原因になりやすいのがNOTによる否定ですよね。 true, false の2値演算の前提で不具合を作り込みやすいのと、QAでもケース漏れしやすい。 そもそも論でいうと、Nullは状態だから、テーブルに状態を持つなと言う原理主義もあったり。 #DBSekkeiNight
2020-06-04 22:41:50NULL嫌いのUPDATEしないDB設計 #DBSekkeiNight / DB design without updating - Speaker Deck speakerdeck.com/sinsoku/db-des…
2020-06-04 22:50:14履歴には、必ずシーケンスか日時がキーに含まれているはずで、○○に発生したXXイベント という形の情報として捉えられると情報のダブりではなくなるかなーと考えています。 twitter.com/issei126/statu… #DBSekkeiNight
2020-06-04 22:57:43履歴の話になってしまうのですが、履歴をやろうとすると1 fact 1 place にならないかも?と思ったりもしたのですがどうでしょう? #DBSekkeiNight
2020-06-04 21:05:05今回すげーはしょったんですけど、 1 fact 1place. のファクトは「情報」じゃなくて本当は「事実」なんですよ。 なので履歴系のデータの場合は、シーケンスとかタイムスタンプみたいなものも込みで、「○○に発生したXXという事実 」という捉え方が必要。 #DBSekkeiNight
2020-06-04 23:01:15というような、細かい言葉尻がDB設計では結構大事なんですが、15分だとどうしても大雑把にしか話せないのは歯がゆい。 #DBSekkeiNight
2020-06-04 23:02:33ロックは行単位になるので、JSONになんでも突っ込んでしまうとロック待機やデッドロックになりやすいです。 更新が多いなら、できるだけ正規化するのが王道かなーとは思います。 twitter.com/chanchanrk/sta… #DBSekkeiNight
2020-06-04 23:04:58現代だと履歴保持のソリューションが色々あるので、「うちではこういうユースケースでこれつかってるよ」を雑に共有する機会があると嬉しいかも。 ○○をまるごとBigQueryに突っ込んだけどXXのケースで不便で困ってる とか。 twitter.com/issei126/statu… #DBSekkeiNight
2020-06-04 23:20:36普段同じことやってる。ただ、あるリソースの周りにイベントが沢山あって、それが状態遷移を構成すると、この設計かなり辛くなる(今回のイベントに参加できたらこの話とかしてみたかった)。各イベントテーブルの有無で現在の状態をパズルのように組み合わせるとエラい複雑になる。 #DBSekkeiNight twitter.com/sinsoku_listy/…
2020-06-04 23:25:57DB設計したいNightで「NULL嫌いのUPDATEしないDB設計」で発表しました。 #DBSekkeiNight speakerdeck.com/sinsoku/db-des…
2020-06-04 21:51:31#DBSekkeiNight ちょうどいい正規化の話 資料です docs.google.com/presentation/d…
2020-06-04 23:29:18確かに。 あるECの履歴テーブルでは商品名とか値段も履歴として持っていたので、この「事実」という単語はしっくり来ると思います。 #DBSekkeiNight twitter.com/Nakunaru/statu…
2020-06-04 23:43:13普段のオフライン開催だといいとこ30名くらいだし、Twitterとかで感想を聞けるのはもっと少ないんだけど、オンラインで日本の各地のエンジニアさんからフィードバックもらえるの超うれしい。 嬉しい楽しい大好き #DBSekkeiNight
2020-06-04 23:49:42NULL嫌いのUPDATEしないDB設計 #DBSekkeiNight / DB design without updating - Speaker Deck speakerdeck.com/sinsoku/db-des…
2020-06-05 01:15:02“NULL嫌いのUPDATEしないDB設計 #DBSekkeiNight / DB design without updating - Speaker Deck” (10 users) htn.to/hUDo1axy4n
2020-06-05 02:11:18NULL嫌いのUPDATEしないDB設計 #DBSekkeiNight / DB design without updating - Speaker Deck speakerdeck.com/sinsoku/db-des…
2020-06-05 02:15:04NULL嫌いのUPDATEしないDB設計 #DBSekkeiNight / DB design without updating - Speaker Deck dlvr.it/RY05Ww pic.twitter.com/7U5nlxoWfH
2020-06-05 02:45:08NULL嫌いのUPDATEしないDB設計 #DBSekkeiNight / DB design without updating - Speaker Deck speakerdeck.com/sinsoku/db-des… #デザイン #design
2020-06-05 08:09:08NULL嫌いのUPDATEしないDB設計 #DBSekkeiNight / DB design without updating - Speaker Deck left joinしたことで最初のほうにあるnull含んだ演算が発生する可能性あるわけで、なかなか難しいな、みたいな気持ち speakerdeck.com/sinsoku/db-des…
2020-06-05 09:19:03C++で開発してると「NULLで初期化する」というのが頭にあるけど DB に NULL は入れない方がよい 四則演算、比較出来ない、集合演算だっけなも出来ない そして正規化は難しい いっそ正規化しない方法もある 事を学んだ夜だった ありがとうございました #DBSekkeiNight
2020-06-05 09:49:41#DBSekkeiNight というハッシュタグを見て 私が今年一番参加すべき勉強会を逃したことに気づいた
2020-06-05 10:10:17“NULL嫌いのUPDATEしないDB設計 #DBSekkeiNight / DB design without updating - Speaker Deck” htn.to/2ffaF4UHmn
2020-06-05 10:14:36