데이터를 빠르게 검색하는 데 사용하려는 응용 프로그램을 작성하기 시작했습니다.간단한 Redis .NET 응용 프로그램 속도 향상
ServiceStack.Redis에서 클라이언트를 사용하기 시작했습니다. 이 문제를 해결 내가 회사 데이터 레코드의 20K를 삽입하는 작은 테스트 응용 프로그램을 작성 (NuGet을 통해 알았어요)와 지금은 다음 코드를 사용하여이 일을 질의하고 있습니다 :
using (var companies = redisClient.As<Company>())
{
var companiesFound = companies.GetAll().Where(x => x.CompanyName.Contains(searchString));
dgvOutput.DataSource = companiesFound.ToList<Company>();
}
내가 외모를 사용하는 회사 클래스를 like :
public class Company
{
public long Id { get; set; }
public string CompanyName { get; set; }
public string CompanyAddress { get; set; }
public string CompanyCity { get; set; }
}
이 모든 것이 잘 작동하지만 빠른 것은 아닙니다. 가능한 빨리이 일을 실행하기 위해 무엇을해야하는지 누군가도 나를 도울 수 있습니까? 색인? 다른 유형의 쿼리? LINQ를 사용하지 않는 것이 더 좋습니까?
데이터 베 이스를 직접 쿼리 해 보셨습니까? 예인 경우 동일한 성능 문제가 있습니까? 쿼리가 오랜 시간이 걸리면 코드와 아무런 관련이 없습니다. – Dannydust
예, 코드와 관련이 있습니다. 콘솔 앱은 훨씬 빠릅니다. 그래서 내 질문은, 내 회사 개체를 통해 검색하는 Redis를 수행하는 더 똑똑한 쿼리를 작성하는 방법입니다. – Tys
흠, 제게는 회사의 모든 기록을 미리 가져 와서 필터링하는 것으로 보입니다. "enterprises.GetAll(). Where (...") GetAll() 호출이 필요합니까? – Dannydust