강하게 입력 된 버전을 사용하고 있었지만 충분히 유연하지 않은 문제가 발생했기 때문에 유연성을 제공했지만 성능이 떨어지는 AdvancedQuery.Luncene으로 전환했습니다. 낮은 수준의 쿼리 엔진이 카운터 파트 또는 적어도 동등한 것보다 빠르다고 생각했습니다. 누군가가 이것에 대해 밝힐 수 있습니까? LINQ 쿼리와 Advanced.LuceneQuery 간의 성능 차이가있는 이유는 무엇입니까?
는watch = Stopwatch.StartNew();
result = s.Query<Product>()
.Statistics(out stats)
.Where(x => x.HasPicture == true)
.ToArray();
watch.Stop();
시간 == HasPicture에 대한 쿼리를 실행 경과, 스티븐 감사 진정한 975
발견 제품의총 수 : 412,352
watch = Stopwatch.StartNew();
result = s.Advanced.LuceneQuery<Product>("Products_Index")
.Statistics(out stats)
.Where("HasPicture:(True)")
.ToArray()
;
watch.Stop();
시간 쿼리를 실행 경과 Lucene과 함께 7065
총 수 찾은 제품 : 412352
피터, 나는 주제에 대해 밝히고있다. –