3.4 ヒストリー

ブロックチェーンのもう一つの重要な特性が時系列データの管理に向いていることである。ブロックチェーンは、時間と共に生成されたブロックが数珠状に暗号で連結されているからである。

各ブロックの前後関係が入れ替わることはないので、時系列データの管理が可能である。時系列データ管理というのは簡単なようで実はとても難しい。

単純にデータにタイムスタンプをつけておけば良いと考えるかもしれないが、そもそも世の中のコンピュータがすべて正確な時を刻んでいるわけではなし、時差もあるという事情もあり、タイムスタンプをつける考え方から丁寧に設計しないと思い通りには時系列データ管理をすることはできない。

また、何年も前のデータとなると、今日現在に至る過程で誰にもデータが書き換えられることなく保存されていたかというのを確かめることは難しい。ファイルの更新日時が作成日時と異なっていると、なおさらそのファイル内のデータの何が更新されたのか、何も更新せずに保存ボタンを押してしまったのか確かめることはかなり面倒なことである。

つまり、時系列データ管理を行うにあたって、あるタイミングで起きたアクションの目的も管理する必要がある。一般的にはCRUD(Create, Read, Update, Delete)で目的をデータにタグ付けすることは多いが、アプリケーションによっては、そのアプリケーションにそった目的や、アクションを起こした人は誰か、その方法はなんであったかなども管理必要がある。

このようにデータの履歴(ヒストリー)の管理は難しいことである。

ブロックチェーンはその設計の性質上、誰から誰に対してどんなトランザクションをいつ行ったかを管理することが得意であり、かつ改ざんできないので上記のような心配はほとんどしなくて良い。古いデータでもデータが生成されたときのままのデータとして安心して使うことが可能だ。