巨大ファイル

技術解説

diff や grep で比べられないファイルはなぜ多いのか? — Shift-JIS・圧縮・Word・PDF・10GB を1つの道具で比べたくて UwDiff を作った

結論から書くと、diff や grep が弱いのではなく、「日本語の文字コード」「圧縮」「Office・PDF」「数 GB」「OS をまたぐ」が重なると、どの道具でも何かしらの指定や別の道具が要るからです。 その組み合わ…
お知らせ

UwView で探して、UwDiff で比べる — 形式・文字コード・大きさを問わず2つのファイルを比べる UwDiff を公開:CSV 10GB × 2本のキー照合が 21.8秒、ただしほぼ全行が違う最悪の組は 110秒

巨大なログを開いて探せるようになると、次に来るのは「前回と今回で、何が変わったか」です。 先月の CSV と今月の CSV。昨日のログと今日のログ。前回の納品フォルダと今回の納品フォルダ。仕様書の v1 と v2。どれも…
技術解説

巨大ファイル実測の総集編 — 数字が逆転する4つの境界線

上限は950MB/sでした。 その「○秒」という数字、どのサイズで、何回目に測ったものですか。 同じツール・同じファイルでも、この2つを変えると勝敗はひっくり返ります。連載で出してきた実測を並べ直すと、向きが変わる境界線…
技術解説

原本に書き込まない — ログと向き合う4つの作法

開いただけで3バイト増えた。 そのログ、あなたが読んだあとも同じファイルですか。 「読む」つもりの操作が「書く」操作になっている瞬間は、思っているより多くあります。 原本を壊さないことは、フォレンジックの第一原則として語…
技術解説

ログ保管を自動化する — 世代管理と棚卸しルールの作り方

3年分が、消えていた。 自動化したはずの保管ルールを、最後に見直したのはいつですか。 見直されないルールは、静かに間違った方向へ働き続けます。 ログの保管は、たいてい「とりあえず logrotate を書く」から始まりま…
技術解説

ログ調査は属人化する — 引き継げるチームの4つの工夫

申し送りは3行だった。 昨日あなたが組んだ検索条件を、いま他人が再現できますか。 再現できない理由は記憶力ではなく、渡せる形をしていないことにあります。 ログ調査の成果は、たいてい「分かったこと」の形でしか共有されません…
技術解説

月次バッチが落ちた朝 — データパイプライン運用の4つの現実

line 48,213,996 だけが残っている。 エラーはそれだけ。その行を、いま見られますか。 パイプラインが教えてくれるのは座標だけで、現物は別の場所にあります。 データパイプラインの障害は、アプリケーションの障害…
技術解説

流れ続けるログを追う — tail -f が追いつかない4つの状況

秒間3,000行は、読めない。 人の目が追えるのは、せいぜい毎秒十数行です。その200倍の速さで画面を通り過ぎていった ERROR は、どこへ行ったのでしょうか。 流れ続けるログには、止まったログと違う難しさがあります。…
技術解説

センサー1万台・1日14億行 — 機器が吐くログの現場4例

1日で、14.4億行。 センサー1万台が1分ごとに100項目を1行ずつ吐くと、この数になります。そのうち異常が出ているのは、1台の、1分間だけです。 探し方を4つの現場で並べます。IoT、医療機器、製造ラインのPLC、研…
技術解説

本番ログを持ち帰る前に — 開発環境とログの4つの摩擦

ビルドログ、48万行。 落ちた理由は、そのどこかの1行です。スクロールバーを掴む前に、何をしますか。 詰まる場所は4つあります。どれも「ログを自分の環境に持ってきて読む」ときに起きる摩擦です。 CIのビルドログ、本番から…