現在バージョン 3.x の Couchbase を学習しています。
私の疑問は、いつN1QLクエリとビュークエリを使用する必要があるかということです。
そして、それらの間にパフォーマンスの違いはありますか?
注:状況があります:
旅行アプリ用の2 つのドキュメント タイプのバケット: RouteとCity
Route doc は移動ルートに関する情報とその一部である都市IDの配列を保持し、別の doc は都市の情報を保持します (各都市には独自の doc があります)。例:
//Bucket : "Traveling App"
{
"type" : "route"
"name" : "The Great Adventure",
"cities" : ["234", "h4345", "h42da"]
}
{
"type" : "city",
"name" : "Little Town",
"UID" : "234"
}
特定の移動ルートを照会する場合、N1QLクエリまたはViewクエリを実行する必要がありますか?
最初にRouteドキュメントを開く必要があるため、各Cityドキュメントを取得するよりも、 citys 配列を取得します。
そして、このアーキテクチャが最適だと思います。ルートによっては都市が非常に少ない場合もあれば、多くの都市が存在する場合もあるためです。