スキーマオンライト(Schema-on-Write)とは、データを書き込む前にスキーマ(項目定義や型、制約)を決めておき、その定義に合う形でデータを保存する考え方です。書き込み時点でバリデーションを行うため、定義に合わないデータは取り込み時に弾いたり補正したりします。
スキーマオンライトは、保存されるデータの形式が揃いやすく、集計やレポーティングの品質を安定させやすい点が強みです。反面、スキーマ変更が頻繁に起きる環境では、取り込み処理の改修が増え、運用負荷が上がりやすくなります。データウェアハウスのように、分析用に整形したデータを扱う場面で採用されることが多いです。
対になる考え方にスキーマオンリード(Schema-on-Read)があり、こちらは保存時は形式を厳密に揃えず、読み出すときに必要な形へ解釈して使います。たとえばETLで事前に整形してDWHへ入れる流れはスキーマオンライト寄りで、まず生データをデータレイクへ集めてから用途別に整形する流れはスキーマオンリード寄りになります。どちらが適切かは、データの変化頻度と利用目的、品質要求をセットで見て判断するのが現実的です。

