Asopitech With · 音楽配信
Spotify with Alopex DB
Spotifyは、音楽やポッドキャストを見つけて聴ける音楽配信のサービスです。Alopex DBで同じものを作るとしたら…?
更新: 2026/10/12
どんなサービスか
Spotifyのような音声配信のサービスでは、利用者が音楽、ポッドキャスト、オーディオブックを見つけ、管理し、楽しみます。扱うデータは、曲やアーティストのカタログ、プレイリスト、そして利用者ごとの再生の履歴です。おすすめは、このカタログと履歴から作ります。
データの置き場所
- SQLテーブル:曲、アーティスト、アルバム、プレイリストと、その中の曲の並びをテーブルに持ちます。
- ベクトル:曲ごとの埋め込みをベクトル列に持ちます。「この曲に似た曲」は、HNSW索引での近傍検索です。ジャンルや公開年の条件を、同じSQLで重ねます。
- カラムナーテーブル:再生の履歴をカラムナーテーブルに、HTTPの取り込みでまとめて入れます。利用者ごとのよく聴くアーティストや、時間帯ごとの傾向を、SQLで集計します。
曲の埋め込みはアプリが作ります。おすすめは、集計で出した好みのアーティストを条件にして、近い曲をベクトルで探す、ひとつのSQLになります。
配置の形
Alopex DBのサーバーを立て、アプリのバックエンドからHTTPかgRPCでつなぎます。カタログ、履歴、ベクトルが同じデータベースにあるので、おすすめのためにデータを別のシステムへ写す手間がありません。
Alopex DBが合う理由
おすすめは、似ているもの(ベクトル)と、よく選ばれているもの(集計)を組み合わせて作ります。Alopex DBは、ベクトル検索とカラムナーの集計を、同じサーバーのSQLで扱います。
似た曲のベクトルと再生の傾向のカラムナーテーブルを同じサーバーで扱えるAlopex DBで、おすすめの仕組みを試してみませんか。出発点はクイックスタートです。