Skip to content

Instantly share code, notes, and snippets.

@s4na
Created May 2, 2019 05:26
Show Gist options
  • Save s4na/db3a05ccfc3c64acbc3adab045093466 to your computer and use it in GitHub Desktop.
Save s4na/db3a05ccfc3c64acbc3adab045093466 to your computer and use it in GitHub Desktop.
フィヨルドブートキャンプ課題「データベース設計の基本を理解する」提出物の検討内容
# Twitter DBの検討
## 手順
- イベント列挙
- リソースの抜き出し
- 項目の追加
- リレーションシップの設定
## markdownに書いたERDの仮の書き方
- テーブル名 table
- 項目名 変数名 制約
## ERD
### イベント
- ログイン
- タイムライン
- ユーザー作成
- パスワードを忘れたら
- ツイート
- DM
- ブックマーク
- リスト
- 話題を検索
- トレンド
- モーメント
- Twitter広告
- アナリティクス
- 設定とプライバシー
- ヘルプセンター
- フィードバックを送る
### リソースの抜き出し
- ログイン
- ログインテーブル
- タイムライン
- ユーザー作成
- パスワードを忘れたら
- ツイート
- DM
- ブックマーク
- リスト
- 話題を検索
- トレンド
- モーメント
- Twitter広告
- アナリティクス
- 設定とプライバシー
- ヘルプセンター
- フィードバックを送る
### 項目の追加
- ログイン
- login table
- id
- password
- タイムライン
- timeline table
- follower
- tweet
- favorite
- retweet
- ユーザー作成
- user table
- id
- name
- password
- phone_number
- phone_number_authorization_flag
- mail_address
- パスワードを忘れたら
- password_forget_if
- id
- user_id
- ツイート
- tweet table
- id
- image
- message
- enquete_id
- datetime
- image_1
- image_2
- image_3
- image_4
- tweet_enquete table
- id
- answer_1
- answer_2
- answer_3
- answer_4
- time_limit
- DM
- dm table
- send_user_id
- receive_user_id
- message
- datetime
- ブックマーク
- book_mark table
- id
- tweet_id
- registration_datetime
- リスト
- lists table
- subscriptions table
- memberships table
- 話題を検索
- explore table
- おすすめトレンド
- 分類
- トレンド
- trends table
- モーメント
- Twitter広告
- アナリティクス
- 設定とプライバシー
- ヘルプセンター
- フィードバックを送る
## ツイートだけ考えてみる
- ツイート
- ユーザID
- テキスト
- 画像1、2、3、4
- アンケート
- テキスト
- 回答1、2、3、4
- 期限
- 日時
## 検討事項
- 綺麗なログインのERDの例は?
- ユーザー件数
- レコード数
- 例えばフォローテーブルにおいて、必要レコード数は`ユーザー数 * フォロー数`となり、国内だけで`4500万人 * 1000 = 450億レコード`とかで現実的ではない気がする。むしろそういうもの?
- 上限: ユーザーIDは15文字までらしい
- 2.2107392e+23(36^15)
- ツイート先のユーザーが削除されたらどういう扱いになる?
- データだけ表示される
## 参考
- 変数名決定
- albinoblacksheep.com/flash/shoot
- 首相官邸のERD
- http://www.kantei.go.jp/jp/singi/it2/cio/dai6/6siryou3-5.pdf
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment