1.2.2. スケーラビリティーの検索
検索コンポーネントのスケーラビリティーは、データストアのパフォーマンスにより異なります。検索パフォーマンスの分析には、以下の変数が重要です。
- 物理メモリー
- 書き込みスループット (キャッシュのリカバリー時間)
- クエリー実行時間
1.2.2.1. 物理メモリー リンクのコピーリンクがクリップボードにコピーされました!
検索は、データをインメモリーに保持し、応答時間を早めます。必要なメモリーは、クラスター内の Kubernetes リソース数とその関係に比例します。
| クラスター | Kubernetes リソース | 関係 | 確認済みのサイズ(シミュレーションデータあり) |
|---|---|---|---|
| medium 1 台 | 5000 | 9500 | 50 Mi |
| medium 5 台 | 25,000 | 75,000 | 120 Mi |
| medium 15 台 | 75,000 | 20,0000 | 492 Mi |
| medium 30 台 | 150,000 | 450,000 | 1 Gi |
| medium 50 台 | 250,000 | 750,000 | 2 Gi |
デフォルトでは redisgraph Pod (search-redisgraph-0) は、メモリーの上限が 4 Gi としてデプロイされます。サイズの大きいクラスターを管理する場合には、ハブクラスターの namespace で searchoperator の redisgraph_resource.limit_memory を編集して、この上限を増やす必要があります。たとえば、次のコマンドを使用して上限を 8Gi に更新できます。
oc patch searchoperator searchoperator --type='merge' -p '{"spec":{"redisgraph_resource":{"limit_memory":"8Gi"}}}'
oc patch searchoperator searchoperator --type='merge' -p '{"spec":{"redisgraph_resource":{"limit_memory":"8Gi"}}}'
変更後に、search-redisgraph StatefulSet を削除して、新しい制限を有効にします。