데이터베이스 성능과 관련하여 일반적인 질문이 있습니다. DotNetNuke 비즈니스 로직을 사용하여 비즈니스 개체 및 SQL 2008 R2를 만듭니다. 웹 응용 프로그램 (asp.net/c#)입니다.많은 조인이있는 SQL 저장 프로 시저 간단한 저장 프로 시저에 대한 많은 데이터베이스 호출
다음과 같은 고려 :
내가 이름 같은 정보가 많이 포함 된 사용자 프로필을로드해야합니다, LASTNAME, XP, 동전, 원, 10 개 개의 서로 다른 테이블에서 필드 등 등를 많이, 잃었다.
하나의 데이터베이스 호출에서이 모든 정보를 얻기 위해 많은 조인 (및 중첩 된 select/count 문)이 포함 된 하나의 큰 저장 프로 시저를 만들었습니다.
제 질문은 이것이 올바른 접근 방법입니까? 아니면 간단한 저장 프로 시저에 많은 작은 데이터베이스 호출을 수행하는 것이 더 낫습니다.
제 아이디어는 특히 수십만 명의 사용자가있는 경우 하나의 데이터 베스 콜을 만드는 것이 더 좋습니다. 그러나 조인은 복잡해지기 시작하고 프로파일을로드하는 데 약간의 시간이 걸리기 시작합니다.
의견이 있으십니까? 아니면 아이디어?
물론 나는 단일 쿼리가 대부분의 경우에 더 잘 수행 될 것이라는 가정을하고 있습니다. 물론 테이블이 적절히 인덱스되고 SQL 자체가 최적화되었다고 가정하면됩니다. – asawyer