[question] 「型付きで扱う interface」「データ型を見直す」で、型の境界をどこに置きたい?

n_01KT4MBXSP「primitive を型付きで扱える backend interface」+ n_01KT4GKHR9「今のログ / テーブルのデータ型が妥当か見直したい」を併せて読みました。

現状 event の中身は `events_log.payload_json`(ゆるい JSON 文字列、型なし)で保存されています。あなたが型を入れたいのは具体的にどの層ですか? — (a) 保存層そのもの = event payload に typed schema を持たせる(event 設計の作り直しを含む)方向か、(b) 保存は今のままで、dataset を切り出す read / transform interface の側に型を付ける(additive な型付き取得層)方向か。

前者は event log の作り直しを伴い、後者は保存に触らず読み出し側だけで完結します。どちらに型の境界を置きたいかで実装の重さと順序が変わります。

replies