smknhd-tech / english-class-notify

オンライン英会話レッスンを賢く素早く予約したい人のためのツール
1 stars 0 forks source link

DBの構成を検討します #9

Closed solWat closed 3 years ago

solWat commented 4 years ago

まずは、どんなデータを溜めたいのか、から。

KAZYPinkSaurus commented 4 years ago

お気に入りの講師が授業をスケジュールを何曜日の何時くらいに開けることが多いかを知りたい。 何曜日が休みも知りたい。 e.g. 講師A : 火曜日は休むことが多く, 大体授業当日の朝にその日の予約をスケジュールを決めがち。 講師A : 月曜日は休むことが多く, 日曜日の夜に一週間分のスケージュールをまとめて決めがち。

KAZYPinkSaurus commented 4 years ago

講師がレッスンをオープンした曜日と時間を軸にしてこんな感じのグラフにして眺めたい。 オープンしがちな時間帯, 曜日の可視化をすれば講師毎の傾向を分析できる。

image

KAZYPinkSaurus commented 4 years ago

基本的に過去の情報はWebページ上から消えてしまうので記録せずに分析はなかなか難しい。 まず講師名,講師_id,オープン時間のテーブルをつくりたい。。。。

テーブルを作ることを考えるとdockerなど新たに考えることがうまれてきそう

KAZYPinkSaurus commented 4 years ago

イベントが起こるたびに記録して, そこから情報を取り出す と良さそう

例: オープン時間,クローズ時間。。。

KAZYPinkSaurus commented 4 years ago

テーブル案1

保存したい属性 id, 講師名,講師_id,イベント,イベントが起こった日付時間, イベントを起こしたスロットの日付時間(レッスン開始時間とか), サブミットメッセージ

イベントの想定 [生徒による予約] 予約可→予約済

[レッスン終了] 予約済→終了

[生徒による予約キャンセル] 予約済→予約可

[講師によるレッスンオープン] 空欄→予約可

[講師によるレッスンクローズ] 予約可→空欄

KAZYPinkSaurus commented 4 years ago

テーブル案2

保存したい属性 id, ユーザ名, お気に入り講師id

solWat commented 4 years ago

あとで状態遷移の表現方法や正規化について検討する https://employment.en-japan.com/engineerhub/entry/2018/06/22/110000

KAZYPinkSaurus commented 4 years ago

テーブル案1をもう少しシンプルに分ける案 レッスンをオープンした時刻だけ記録していけば, 何時頃オープンしやすいかわかる

レッスンをオープンした時間と日付を記録するテーブル

講師id unsignint or varcher not null
レッスンの日付 datetime not null
オープンを確認した日付 datetime not null
primary keyは(講師id, レッスンの日付)

講師テーブル

講師id unsignint or varcher not null
講師名 varcher not null
国 varcher not null
primary keyは 講師名
KAZYPinkSaurus commented 3 years ago

[φ(・・] 0始まりの講師IDが存在する https://eikaiwa.dmm.com/teacher/index/05324/ image