---
# System prepended metadata

title: DBリビルドプロジェクト
tags: [cookbiz]

---

---
tags: cookbiz
---
# DBリビルドプロジェクト

## 必要そうなもの

- [ ] 現在の求職者テーブルをどこが使っているかのリスト
    - [ ] = 影響範囲リスト（サービスごと）
    - [ ] たとえ：https://docs.google.com/spreadsheets/d/1R7thJwRNaxxkqC4X_-Iv47ySyG2na_UgbWczOpXLUow/edit#gid=0
    - [ ] たとえ：https://docs.google.com/spreadsheets/d/1FZkOWEDk1PqJtHjhx6daR-8zVa0gT7FilDNlxcGvANw/edit#gid=0

## 目的

- サービスリニューアルのために、DBの項目を見直しメンテナンスしやすくする。


## ゴール

- 新DBに新しい定義で、旧DBを移行して、利用できるようにする


## 大まかなフェーズ

0. 諸々確定
1. 旧DBをエクスポートする
2. 新DBの定義を確定する
3. 旧DBのデータを新DBの定義に変換する
4. 新DBにインポートする

### ストーリーマッピング

<iframe style="border: 1px solid rgba(0, 0, 0, 0.1);" width="800" height="450" src="https://www.figma.com/embed?embed_host=share&url=https%3A%2F%2Fwww.figma.com%2Ffile%2FmYPCiU6aCwIvWSgHV9eKJp%2F%25E7%2584%25A1%25E9%25A1%258C%3Fnode-id%3D0%253A1" allowfullscreen></iframe>

## 各フェーズについて
### 0. 諸々確定
#### 主なタスク

- [ ] スケジュールの確認
- [ ] 移行範囲（おそらく求職者のみ）
- [ ] 移行対象（おそらくJPのデータ＆SFのデータ）
- [ ] 移行方法（一括だけでよいのか、差分もいるのか）
    - 　Calibのデータをどうしたいかによる

#### 疑問・不安要素

- HRS, HRAとコンセンサスが取れてるのか？
    - 取れてなかったら、また終盤ひっくり返る

### 1. 旧DBをエクスポートする

旧DBのデータをエクスポートしてBigQueryにいれる。
もしかしたら、[trocco](https://trocco.io/lp/index.html)が使えるかもしれない

#### 主なタスク

- [ ] バッチ実行場所をきめる（Lambda, AWS Batch, Batch App...）
- [ ] 一括エクスポートバッチを作成する
    - [ ] 求職者テーブル
    - [ ] マスターテーブル
- [ ] 差分エクスポートバッチを作成する
    - [ ] 求職者テーブル
    - [ ] マスターテーブル
- [ ] BigQueryにインポートする

#### 疑問・不安要素

- GCPのアカウントに権限つけないといけない

### 2. 新DBの定義を確定する
#### 主なタスク

- [ ] 求職者テーブルの定義
- [ ] マスターテーブルの定義
    - [ ] 新商品のマスターの形式と合わせる必要もある
- [ ] **定義の確定**

#### 疑問・不安要素

- 確定するのか？

### 3. 旧DBのデータを新DBの定義に変換する

データを新しい定義に変換する。BigQueryを利用できる場合は、

#### 主なタスク

- [ ] バッチ実行場所をきめる（Lambda, AWS Batch, Batch App...）
- [ ] 変換処理
    - [ ] BigQueryでのクエリー作成
    - [ ] バッチでの一括変換
    - [ ] バッチでの差分変換
- [ ] 正常に変換されたか確認

#### 疑問・不安要素

- BigQueryの場合、お金がめっちゃかかるかもしれない
- 『ちゃんと変換できたね！』判定は、誰が・どうやってするのか？

### 4. 新DBにインポートする
#### 主なタスク

- [ ] バッチ実行場所をきめる（Lambda, AWS Batch, Batch App...）
- [ ] インポートバッチを作成する
    - [ ] 求職者テーブル
    - [ ] マスターテーブル
- [ ] 差分インポートバッチを作成する
    - [ ] 求職者テーブル
    - [ ] マスターテーブル
- [ ] 正常にインポートされたか確認


#### 疑問・不安要素

- 『ちゃんとインポートできたね！』判定は、誰が・どうやってするのか？


## 資料

新DB定義
https://docs.google.com/spreadsheets/d/1EfU74jNg2lGPNpXDLTroV3AJDAKt3yDlM9-teD7evdk/edit#gid=1138931132