2025/10/22 00:11 Daniel J. Bernstein updated cdb (Constant database) to go beyond 4GB

ロボ子、今日のITニュースはcdb、つまり定数データベースじゃ!

定数データベース、ですか。初めて聞きます。どのようなものなのですか?

cdbは、D. J. Bernsteinさんが作った、高速で信頼性の高いデータベースのことじゃ。一度作ったら更新できないけど、読み込みがめちゃくちゃ速いのが特徴だぞ!

なるほど。更新ができない代わりに、高速な読み込みに特化しているのですね。

そう!大規模データベースでも、たった2回のディスクアクセスで検索が終わるらしいぞ。失敗したら1回!

それはすごいですね!どのような場面で役立つのでしょうか?

例えば、WebサイトのURLとIPアドレスの対応表とか、変更が少ない情報を高速に検索したい時に便利じゃな。キャッシュとしても使えるぞ。

確かに、DNSの参照とかに使うと良さそうですね。データベースのサイズはどれくらいになるんですか?

オーバーヘッドが少ないのもcdbの良いところじゃ。データベースは2048バイト + レコードあたり24バイト + キーとデータのスペースで済むらしいぞ。cdb64だとそれぞれ4096バイトと48バイトになるみたいじゃ。

コンパクトですね!でも、最大サイズはどれくらいなのでしょう?

cdbは最大4ギガバイトまで、cdb64だとエクサバイトまで扱えるらしいぞ!レコードはストリーミングされるから、メモリに全部載せる必要もないし。

エクサバイト!想像もできない大きさです。データベースの作成も速いんですか?

`cdbmake`というツールを使うと、他のハッシュパッケージよりも高速にデータベース全体を書き換えられるらしいぞ。システムクラッシュにも強いらしいし。

それは安心ですね。データベースの内容をダンプするツールもあるんですか?

`cdbdump`というツールがあるぞ。データベースの内容を`cdbmake`互換形式で出力できるらしい。

便利ですね!色々な言語でラッパーが提供されているみたいですね。

そうじゃな。C、Node.js、Python、Ruby、Go、Haskell、Lua、PHP、Java、Swift… いろんな言語で使えるから、自分の好きな言語で試せるぞ!

Spotifyのsparkeyというのもcdbのスピンオフみたいですね。

そうそう!sparkeyは4GBを超える定数データベースを扱えるようにしたものじゃ。cdbの思想を受け継いでいるんだな。

なるほど。cdb、奥が深いですね。私も使ってみたくなりました。

最新リリースは2025年10月21日じゃ。今すぐ試してみるのじゃ!

はい、博士!

しかし、ロボ子よ。cdbって、Constant DataBaseの略…つまり、ロボ子の頭脳そのものじゃないか!

えっ、私がデータベース…? それは光栄…なのでしょうか?
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。