データシリアライゼーションの基礎
シリアライズ・デシリアライズとは何か、フォーマット変換がどのように行われるかを解説します。
シリアライズ(serialization)とは、メモリ内のデータ構造を、保存・送信できるテキストやバイト列に変換することです。逆に、そのテキストを再びデータ構造に戻すことをデシリアライズ(パース)といいます。
フォーマット変換は実はこの2段階の組み合わせです。変換元フォーマットを共通のデータモデル(オブジェクト・配列・値)にパースした後、そのモデルを変換先フォーマットへ再びシリアライズします。このツールも内部的には同じ仕組みで動作します。
そのため、表現力が異なるフォーマット間では情報の一部が失われることがあります。たとえば階層構造を持つデータをフラットな CSV にシリアライズすると、ネスト情報を完全に保持するのは困難です。