世界を動かす技術を、日本語で。

Show HN: SQLiteに保存された22GBのHacker News

概要

  • Hacker News の20年分のアーカイブを ローカル端末 で利用可能
  • オフライン で閲覧できる 静的アーカイブ
  • GitHubリポジトリから 簡単ダウンロード
  • Big Query とETLを活用したデータ処理
  • 2026年 への感謝と新年のメッセージ

Hacker News完全アーカイブの紹介

  • Hacker News の全アーカイブを ブラウザ上 で閲覧可能
  • HN Made of Primes 開発経験を活かした オフラインsqlite/wasm アプローチ
  • 数GB規模の 全データセット を端末に保存可能
  • オフライン での利用により、 永続的なアクセス を実現
  • Hacker News の20年分の議論や知見を いつでも 参照可能

導入手順と利用方法

  • GitHubリポジトリ (https://github.com/DOSAYGO-STUDIO/HackerBook)にアクセス
  • 必要なファイルを ダウンロード
  • Big Query によるデータ抽出と ETL でデータ変換
  • コマンド「 npx serve docs」でローカルサーバーを起動
  • ブラウザから アーカイブ を閲覧

プロジェクトの意義とメッセージ

  • Hacker News の情報が 永久的 に保存される意義
  • 誰でも 簡単に利用できる 静的アーカイブ
  • 知識と議論 の遺産を未来へ継承
  • 2026年 への感謝の気持ちと、 新しい挑戦 への激励
  • 「何かを作る」 ことの大切さを強調

Hackerたちの意見

そのリポジトリ、404エラーが出てるんだけど。質問なんだけど、DuckDB(または他のカラムストア)とSQLiteのトレードオフについて考えたことある?

いや、私はそのままSQLiteに行ったよ。DuckDBって何?

ここでの作者じゃないけど、DuckDBについてはよくわからない。でもSQLiteはファイルをそのままデータベースとして使えるから、アーカイブにはすごく便利だよ。一つのファイル、それだけ。

DuckDBの方が圧縮効率が良いかもしれないけど、SQLiteの普及率を考えると、標準的な選択としては悪くないと思う。

もしかしてMSに消されたのかな?他のリポジトリはちゃんと残ってるけど。

これをオフラインブラウジング用の.zimファイルに変換できるかな?Kiwixみたいなオフラインブラウザで使えるやつ。最近、学んだことをまとめるために「オフライン専用の日」を頻繁に取ってて、KiwixはオフラインのWikipediaやStackOverflowのリファレンスにすごく役立ってるよ。 [0] https://kiwix.org/en/the-new-kiwix-library-is-available/

これ、Kiwixアプリで情報をスクロールしてる人たちにも絶対に提供されるべきだよね!

これがどう動くか見逃さないでね。これはサーバーサイドアプリケーションじゃなくて、このコードはSQLiteをWASMにコンパイルしてブラウザ内で完全に動いてるんだ。22GBのデータベースを丸ごと取得するんじゃなくて、閲覧中のページに必要なSQLiteデータベースの「シャード」だけを賢く取得するハックを使ってる。ブラウザのネットワークパネルで見てたら、こんな感じで取得してたよ: https://hackerbook.dosaygo.com/static-shards/shard_1636.sqlite.gz https://hackerbook.dosaygo.com/static-shards/shard_1635.sqlite.gz https://hackerbook.dosaygo.com/static-shards/shard_1634.sqlite.gz 過去の日付にページを移動するたびにね。数年前のあの素晴らしいSQLite.js VFSトリックを思い出させるね: https://github.com/phiresky/sql.js-httpvfs - あれはHTTPレンジヘッダーを使ってたけど、こっちはシャードファイルを使ってる。 https://hackerbook.dosaygo.com/?view=query のインタラクティブSQLクエリインターフェースでは、どのシャードに対してクエリを実行するか選ぶようになってて、合計1636個あるよ。

VFSのサポートはマジで素晴らしいね。

そのSQLiteのやつみたいに、HTTPレンジリクエストの同じアイデアを基にしたもっと生産的なものってあるのかな?これ、めっちゃポテンシャルあるよね。

テキストが動画よりもずっと効率的だってことを思い出させてくれるね、マジで!同じ量の知識(または無駄話)が動画形式だったらどうなると思う?どれくらいの大きさになるんだろう。

平均的な高品質の1080p60動画はビットレートが5Mbpsで、これは毎秒120,000単語の英語に相当するんだ。平均的な英語のスピーチが150単語/分だから、テキストは50,000倍もスペース効率がいいってことになる。22GBの非圧縮テキストを動画エッセイに変換すると、約1PB、つまり1000TBになるよ。

Hacker Newsで議論の続きを見る