Shunsakuは、すべての検索用データをサーチサーバのメモリ上に展開し、それを検索することで、高速検索を実現しています。そのため、データ追加処理では、サーチサーバ上の検索エンジンのメモリに空きがなくなった場合、その処理はエラーとなり、それ以降のデータ追加処理はできませんでした。また、大量データを扱うときには、その規模にあわせた台数のサーチサーバを用意する必要があり、ハードコストやサーバ設置場所の確保などの問題を抱えていました。
そこで、Shunsakuが扱う検索対象のデータを、サーチサーバのディスク上に配置する機能を提供します。これを、検索用データのディスク配置機能と呼びます。
図1.13 検索用データのディスク配置
検索用データのディスクの配置には、以下の2つがあります。
サーチデータのオーバーフロー制御機能
サーチサーバの検索用データ(サーチデータと呼びます)をメモリの最大値までメモリに格納し、超えたデータはディスクに格納することで、メモリ容量以上のデータを扱うことができます。これをサーチデータのオーバーフロー制御機能と呼びます。これにより、データ増加によるサーチサーバのメモリ不足の発生や、サーチサーバ異常時の縮退処理の失敗による業務停止を防ぐことができます。
ディスク検索
すべての検索対象データをサーチサーバのディスク上に格納し、それを検索することで、大量データを扱うことができます。これをディスク検索機能と呼びます。
今までは、メモリ制限値により大量データを扱う場合は規模に見合ったサーチサーバを複数台用意する必要がありましたが、ディスク検索機能を使うことにより、少ないサーチサーバ数でShunsakuを導入することが可能となります。
なお、メモリ上にデータを展開する機能を、メモリ検索機能と呼びます。