asopi tech
asopi techIndie Developer

Asopitech With · メールクライアント

Gmail with Alopex DB

Gmailは、メールの送受信と保管、検索を備えたメールサービスです。これをAlopex DBを使って再現すると…?

更新: 2026/10/12

どんなサービスか

Gmailのようなメールサービスは、メールの送受信と保管に加えて、受信箱の中を問いかけで探す検索、長いスレッドの要約、返信の下書きを支援します。扱うデータは、メッセージ、スレッド、ラベル、連絡先、添付ファイルの情報です。

データの置き場所

  • SQLテーブル:メッセージ、スレッド、ラベル、メッセージとラベルの対応をテーブルに持ちます。差出人、日付、ラベルでの絞り込みは、普通のSQLです。
  • ベクトル:本文の埋め込みをベクトル列に持ち、「先週届いた、出張の手配に関するメール」のような問いで探します。
  • 全文検索:件名と本文に全文検索の索引を張り、注文番号のような言葉は、言葉そのもので探します。
  • カラムナーテーブル:送受信の記録をHTTPの取り込みでカラムナーテーブルに入れ、差出人別や月別の件数を集計します。

受信したメールを、アプリがひとまとまりで書き込みます。メッセージの行、ラベル、本文の埋め込みを、同じトランザクションでコミットします。埋め込みはアプリが作ります。検索は、書き込み途中のメールを見ません。

配置の形

Alopex DBを、ユーザーの端末のメールクライアントに組み込みます。メールボックスは、ひとつの .alopex ファイルです。受信箱の検索も意味の検索も手元で完結するので、オフラインでも動き、本文は端末の外に出ません。

Alopex DBが合う理由

メールの検索は、条件での絞り込み、言葉の一致、意味の近さを組み合わせて初めて使いやすくなります。Alopex DBは、これらをSQLの中でまとめて扱い、書き込みをトランザクションで守ります。

メールとラベルと埋め込みを同じトランザクションで書き込めるAlopex DBで、メールクライアントを試作してみよう。手順はクイックスタートにあります。

関連リンク