Sharepoint 2010의 매우 큰 목록을 쿼리 할 때 예상해야하는 적절한 수준의 성능은 무엇입니까? 내 목록은 단지 1000 항목이며 SharePoint 성능 dos와 don'ts에서 나는 좋은 성능 벤치 마크가 무엇인지 판단 할 수 없었다.Sharepoint 2010 - caml 쿼리 성능 기대
내가 작업하고있는 프로젝트가 시작되었고 관계형 데이터베이스로 구조화 된 목록 레이아웃으로 Sharepoint 2010을 사용하여 디자인되었습니다. 원래의 기대는 SharePoint 검색 및 버전 관리 기능을 활용하고 데이터 검색을 위해 spmetal 및 저장소 패턴을 사용하기 위해 Sharepoint를 사용하는 것이 었습니다. 내가로드 (또는 내가 SQL 서버를 사용하는 데 사용되는 것처럼 끔찍한 성능이 될 것이라고 생각하는 것)에서 끔찍한 성능을 가지고있다. spmetal과 20-30 명의 사용자를 사용하는 1000 개의 항목 목록에 대한 쿼리는로드하는 데 10-15 초가 걸립니다. 나는 내가 얻을 수있는 것을보기 위해 맨손의 뼈로 가기로 결정했다. 아래는 코드입니다.
SPQuery query = new SPQuery();
query.Query = "<View><ViewFields><FieldRef Name=\"ID\" /></ViewFields></View>";
query.ViewFieldsOnly = true;
query.RowLimit = 1000;
SPList list = web.Lists["Incidents"];
var items = list.GetItems(query).OfType<SPListItem>().ToArray();
항목 개수 : 1000 평균 시간 : 1197 millseconds를
이 좋은 성능인가요? 이것은 하나의 호출이며 동시에 인시던트 목록에 대한 다른 쿼리는 없습니다. 아무 것도 없습니다.
현재 데이터베이스와 응용 프로그램은 별도의 서버입니다. 추가 서버없이 성능을 향상시킬 아이디어가 있습니까? 목록 필드에 아무런 도움이되지 않는 색인화를 시도했습니다. –
쿼리 자체를 최적화하고 적절한 인덱스를 목록에 추가하는 방법 밖에 없습니다. – Leff