第32話 サービス終了の予感
解析を続けていた。
辞書登録は3,100件を超えていた。RGBの変換に加えて、メタデータの読み取り精度も上がっている。タイムスタンプの形式が複数あることがわかってきた。初期のブロックと後期のブロックで、日付の記録形式が微妙に異なる。フォーマットのバージョンが途中で変わっている。
今夜はタイムスタンプの分布を調べていた。
解凍した画像のメタデータを、日付順に並べる。最も古いタイムスタンプと、最も新しいタイムスタンプを確認する。
最も古い日付が出た。
春山は数字を見た。
もう一度見た。
辞書変換の精度を疑って、別のブロックで確認した。別のブロックでも、また別のブロックでも、数値の桁数は変わらなかった。タイムスタンプの読み取りに誤差があるとしても、規模感は合っている。
最も古いデータと、最も新しいデータの差を計算した。
数十年単位だった。
この袋の中に、数十年にわたる記録が詰まっている。
春山は手を止めた。
次に、メタデータの別フィールドを確認した。タイムスタンプの隣に、今まで解析できていなかった部分がある。辞書登録を追加して、変換を試みた。
数字ではなかった。
文字列だ。変換パターンが足りず、断片的にしか読めない。しかし全ブロックに渡って、同じ文字列が繰り返し出現している。4文字の、短い識別子だ。
A
T
R
A
春山はウィンドウを見た。
ATRAという4文字が、例外なく全ブロックのメタデータに含まれている。
発行元を示すフィールドだろう。このデータを生成したシステムの署名だ。
前職でサーバーが出力するログファイルには、どのサービスが書き込んだかを示す識別子が先頭に入っていた。それと同じ構造だ。
ATRAというシステムが、このデータを生成した。
しかし春山は、ATRAという名前を知らない。
聞いたことがない。どこかの企業名でも、規格の名称でもない。春山の知識の中に、対応する情報がなかった。
4文字の識別子は、手がかりになるとともに、また新たな問いを生んだ。
春山は長い間、動かなかった。
前提が崩れると、次の論理が動き始める。それは止められない。
魔石の中に、数十年にわたる人々の日常の記録が入っている。それにATRAという見知らぬシステムの署名が入っている。
ここから先は、推測だ。
ATRAというシステムが、何らかの形で人々の日常を収集し、それが魔石として出力されているとしたら。そして人類がそれを燃料として消費しているとしたら。
台所のコーヒーメーカー。夕方の道の自転車。4人分の食卓。防波堤の後ろ姿。公園で腕を広げて走る子供。
全部が、燃料として消えた。
それだけなら、まだ整理できる。過去の話だからだ。
しかしこのシステムは、今も動いている可能性がある。
ダンジョンは今日も展開されている。魔石は今日も採掘されている。収集が続いているとしたら、今この瞬間の世界も、ATRAのフォーマットで記録されているとしたら。
春山はステータス画面を開いた。
閉じた。
自分のステータスが、何かのデータベースに乗っている。南港のダンジョンも、ライカたちの配信も、本田の解析室も、尼崎のコンテナも、全部何かの実行環境の中にある可能性がある。
そして春山がこれまで確認してきた限り、このシステムは欠陥だらけだ。
バグを突いて動いてきた。
0フレーム無敵も、不正スタックも、シード値操作も、全部このシステムが正常に処理できていない部分だ。正常に動いているシステムに、あれほど多くのバグは生じない。パッチが当たっている形跡もない。誰かが管理している気配もない。
欠陥だらけのシステムは、いつか止まる。
前職で見てきた。パッチを当て続けてもどうにもならなくなったサーバーは、最終的にサービス終了になった。データは移行されるか、消えるかどちらかだ。移行先があればまだいい。移行先がなければ、全部消える。
過去のデータに、移行先はあったか。
人類が燃やした分は、消えた。
では今の世界のデータは、どこに移行されるのか。
バックアップの存在を示すものを、春山は今まで一度も見ていない。このシステムが止まったとき、今の世界がどうなるかを、誰も考えていない。考えられる立場にいない。仕組みを知らないから。
前職でも同じことがあった。
社内の旧サーバーが限界に近づいているとき、現場の保守員は知っていた。しかし経営層は知らなかった。知らせても、予算の話になって、先送りになった。そして本番環境でエラーが出た。対処が間に合わず、一部のデータが消えた。復旧できなかった。
あのとき春山は、報告書を書いた。原因、経緯、対処、再発防止策。全部書いた。しかし消えたデータは戻らなかった。
今回は、報告書を書く相手がいない。
ATRAに、受け取る窓口がない。
あるとすれば、それはとっくに、機能していないのかもしれない。
画面を閉じた。
5枚のウィンドウが、順番に消えた。
コンテナの中が、暗くなった。
外から、港の方角の音が聞こえる。夜間も動いている工場の機械音だ。この街は止まらない。止まったことがない。
止まる理由がないからではなく、止まり方を知らないからかもしれない。
春山は立ち上がった。
14番袋を棚に戻した。音はまだ続いている。
シャッターを閉めた。
夜の工業地帯に出ると、街の光が見えた。
つい先日の夜に見た光と同じ配列だ。しかし今夜は、光の中身を考える余裕がなかった。
それより先のことを、考えていた。
この光が、いつまで続くのかを。
軽自動車に乗り込んだ。エンジンをかけた。
すぐには走り出さなかった。
フロントガラスの向こうで、街の光が並んでいる。
誰かの記憶を燃やして光っているかもしれない灯りが、今夜も変わらず並んでいる。そして今この瞬間の誰かの日常が、ATRAのどこかに記録されているかもしれない。それもいつか燃料になるかもしれない。あるいは燃料にもならずに、消えるかもしれない。
どちらが悪いかは、わからなかった。
ただ、移行先のないデータは、消える。
それだけは、わかった。
アクセルを踏んだ。
工業地帯の夜道を走り出した。
前を向きながら、答えの出ない計算を、頭の中で回し続けた。




