行指向ストレージとは、データをレコード(行)単位で連続してディスクに保存するデータ管理方式です。1件ごとのデータの追加、更新、参照処理を高速に行える特徴があり、AI分野では推論時の個別データ取得や特徴量ストアのオンライン参照基盤などで活用されています。
行指向ストレージとは
行指向ストレージは、テーブル形式のデータを「1件のレコード(行)」ごとにひとかたまりとしてストレージ上に並べて格納する方式です。
詳しく解説
行指向ストレージでは、1つのレコードに含まれるすべての属性情報(列データ)が連続したメモリやストレージ領域に配置されます。そのため、特定のIDを持つユーザー情報全体を取得するような「行単位のアクセス」や、新しいレコードを1件ずつ追加・更新する書き込み処理を極めて効率的に処理できます。伝統的なリレーショナルデータベースで広く採用されており、機械学習システムにおいては、リアルタイム推論時に単一ユーザーの特徴量を素早く引き出す特徴量ストアの低レイテンシなオンラインストレージ層として重要な役割を果たします。
具体例・使われ方
ECサイトのレコメンドAIにおいて、ユーザーがアクセスした瞬間にそのユーザーの直近の行動履歴や属性情報を1件まるごと読み出す処理や、オンライントランザクション処理を伴うWebサービスのデータベースから学習用ログを順次蓄積していく用途が挙げられます。
似た用語との違い
混同されやすい概念として列指向ストレージがあります。列指向ストレージは同一の列(属性)ごとにデータをまとめて保存するため、大量データに対する特定の列の集計処理や機械学習の一括学習データ作成に適しています。これに対し、行指向ストレージは1件単位の全属性の読み書きや更新に特化しています。
注意点
データ全体から特定の数列だけを抽出して集計する処理や、大規模な分析・機械学習モデルのバッチ学習を行う際には、不要な列のデータまでディスクから読み出すことになり、パフォーマンスが低下しやすいという限界があります。用途に応じて適切なストレージ形式を選択することが重要です。