タグ

設計とDBに関するkenzy_nのブックマーク (8)

  • 自作DBを始めたい人におすすめの本 - salachike:blog

    この記事は、慶應理工アドベントカレンダー2021の20日目の記事です。 カレンダー全日埋まってすごい 🎉🎉 adventar.org 「Database Design and Implementation」という簡素なDBをスクラッチで作っていくに取り組んだので、その読了エントリです。 Database Design and Implementation: Second Edition (Data-Centric Systems and Applications) (English Edition) 作者:Sciore, EdwardSpringerAmazon こんな人におすすめ MySQLやPostgreSQLを使った経験はあるが、DBの理論やその実装はあまり詳しくない人に特におすすめです。特に自作〇〇*1に興味がある人は間違いなく楽しめると思います。単純にに紹介されている理論

    自作DBを始めたい人におすすめの本 - salachike:blog
    kenzy_n
    kenzy_n 2021/12/20
    自家製DBとな
  • 決済システムの残高管理周りの DB 設計と戦略 - カンムテックブログ

    エンジニアの佐野です。今日はカンムの決済システムでユーザの残高管理をどうやっているかについて書きます。 カンムの製品であるバンドルカードはプリペイド方式のカードです。ユーザによる入金、店舗での利用、運営事由の操作などによりユーザの残高が増減します。このような残高の管理について単純に考えると user_id と balance と updated_at あたりをもったテーブルを用意して balance と updated_at を更新していく方法があるかもしれません。しかしながらカンムでは残高を管理するテーブルを持たず、これらイベントの履歴のみで残高を管理しています。以下、記事ではこれらユーザの残高が増減するイベントのことをトランザクションと呼びます。ここでは DB の Transaction Processing を意味しません。 記事のポイントは 残高を管理をするテーブルは作らず、ト

    決済システムの残高管理周りの DB 設計と戦略 - カンムテックブログ
    kenzy_n
    kenzy_n 2021/06/30
    固いところのDB設計
  • 本当にあったやらかしDB設計④【テストチューニング】 - Qiita

    どうも、GWのほうが用事が詰まって忙しかった人です(外出はしていないのですが…) 今日は当にあったやらかしDB設計③【ロジカルクエリー】に続いてびっくりしたことを紹介します 案件説明とかを受けると出会うことが意外と多いです どういうことかというと、番より明らかにレコード数の少ないテーブルに対してチューニングを行う、ということです 何が悪いの?? データベースではとある計算に基づいてオプティマイザー(DBの脳みそのような部分)が実行計画を立てます 今主流なのはコストベースオプティマイザーです コストベースオプティマイザーでは、レコード当たりの平均容量や、テーブルのレコード数に基づいて計算を行い、実行計画を立てます レコード数が全く違うテスト用テーブルに対してチューニングを行うとどのようなことが発生するでしょうか 問題 まず、チューニングといっても種類があります ①クエリーを変える かんた

    本当にあったやらかしDB設計④【テストチューニング】 - Qiita
    kenzy_n
    kenzy_n 2020/08/10
    アチャー
  • 最強データベース(RDB)設計とは?アンチパターンの見極め方法も - FLEXY(フレキシー)

    ※2020年6月に公開された記事です。 日PostgreSQLユーザ会の理事を務める合同会社Have Fun Tech起業した曽根壮大(@soudai1025)と申します。元株式会社オミカレ副社長兼CTOです。直近では、『失敗から学ぶ RDBの正しい歩き方』を執筆しました。 今回はデータベースをテーマとして、魅力やMySQLとPostgreSQLの違い、アンチパターンの見極めなどの基礎知識に加え、勉強法などもご紹介します。 RDB関連の求人検索はこちら データベースを学ぶ魅力をエンジニア目線で考察 1.知識の費用対効果が高い エンジニアがデータベースを学ぶ利点という観点から言うと、データベースの特徴は寿命が長いことと私は考えています。 Webアプリケーションの界隈では1年単位でバージョンアップしたり流行っている言語が変わってしまうことがザラにありますが、データベースは10年、20年とい

    最強データベース(RDB)設計とは?アンチパターンの見極め方法も - FLEXY(フレキシー)
    kenzy_n
    kenzy_n 2020/03/25
    より良いDB構築へ
  • RDBMS in Action

    RDBMS 理解度の壁: プロダクションや運用保守で困らないシステムを作れる知識 <<<それっぽく動くものを作れる知識 実際のシステムで遭遇・見聞きした事象をもとに、上記のスキマにある各種 RDBMS 知識を説明します。 RDBMS 体の運用よりも、現実のアプリケーションにおける設計・実装上のハマリどころが中心。

    RDBMS in Action
    kenzy_n
    kenzy_n 2019/10/02
    ここを押さえておきたい
  • 初心者でもDB設計やデータモデリングについて学べる7つのサイトと本 - paiza times

    Photo by Samuel Mann こんにちは。谷口です。 「SQLは何となく書けるけど、DB設計はしたことない…」「DB設計について一度ちゃんと学んでおきたい…」という人は多いですよね。 DB設計とは、DBのデータモデル(DBの構成など)を作成する作業です。 DBを一から作ったり、テーブルを追加したりする際は、当然ですが「今あるデータが何となく格納できればそれでOK」ではありません。 テーブルは正規化できていないといけませんし、データの整合性も取れないといけません。また、効率よくデータが取れる構造になっているかどうかも重要です。 一から設計に取りかかるようなケースは少ないかもしれませんが、DBを取り扱うことがあるなら、こうしたDB設計の基は知っておいて損はありません。むしろ自分が扱うDBの構造はきちんと知っておかないと、「なんか適当にSQL投げたらデータ取れたけど、正しく取れてる

    初心者でもDB設計やデータモデリングについて学べる7つのサイトと本 - paiza times
    kenzy_n
    kenzy_n 2018/09/04
    基礎からしっかりと
  • テーブル設計のテクニックについて

    これまでクライアントサイドのプログラミング中心できたこともあり、あまりサーバーサイドやDB設計をした経験がないのですが、最近になって基幹系のDB周りの業務も担当するようになってきました。 直近では、すでにあるTBLに削除のフラグのような列があるのを見たとき、最初は何に使うのかわからなかったのですが、インターネットで色々調べるうちに"論理削除"というやり方があるのかと知ったぐらいです。現状がこんな状態なのですが、識者の方に質問があります。 1.登録日時・ユーザー、更新日時・ユーザーのカラムについて 2.TBLDB設計について現場で利用するようなテクニックが記載されたやリソースについて 1.登録日時・ユーザー、更新日時・ユーザーのカラムについて 参考にするために他システムのTBL定義などを見ているのですが、多くのTBLにレコードの登録日時と登録ユーザー、レコードの更新日時と更新ユーザーとい

  • DB設計の難しさ

    今日は徒然なるままにDB設計について思っていることを並べてみようと思う。 ようやくWEB+DB Pressの次号の原稿を書き終えた。2年間の連載であるが、来年はプライベートが忙しくなる予定なので、連載はこれにて終了とさせてもらうつもりである。 「なぜ人はリレーショナルデータベースを使いこなせないのか」 このところ執筆や講演を通じてリレーショナルモデルについて説明する機会を色々頂いているが、それらの活動の根源となっているのが、この素朴な疑問である。その疑問をパワーにしてこれまで活動を行なってきた。 現時点での自分の回答は「データベース設計が難しいから」である。もちろんリレーショナルモデルそのものの難しさというのもあるが、それよりは「適切な使い分けができていない」ということが大きいように思う。言葉を変えると、リレーショナルモデルを適用すべきデータとそうでないデータの判断ができていないからDB

    DB設計の難しさ
    kenzy_n
    kenzy_n 2013/12/27
    完全はない
  • 1