2010-07-09 6 views
1

이제 두 가지 선택 사항이 있습니다.h2에 대한 다양한 옵션 - 더 빠릅니까?

모든 데이터에 대해 동일한 스키마가 있습니다. 레코드는 호스트와의 연결을 의미합니다. 따라서 하나의 레코드가 두 개의 호스트에 속합니다. 이제는 한 번 호스트를 연결해야하는 작업을 수행합니다. 레코드를 h2에 삽입합니다. 따라서 host1과 host2 사이에 연결이있는 경우 host1의 연결을 쿼리 할 때마다 host1과 host2 사이에 이미 연결이 저장되어 있습니다. 그래서 내가 host2에 대한 정보를 조회 할 때. 레코드는 테이블에 두 번 저장됩니다. 그래서 각 호스트에 대한 테이블을 만들려고합니다.

여기 딜레마가 있습니다. 많은 호스트가 있기 때문에. 따라서 각 호스트에 대한 테이블을 만들면 테이블의 수가 커집니다. (더 가입)

감사 기록을 많이 가진 하나 개의 테이블을 인덱싱

답변

1

? 빨리 작은 테이블의 거대한 오직 하나 개의 테이블 빠르거나 쿼리하는 것이 많은 쿼리 길을 가야하는 것입니다 없습니다. 당신이하지 않으면 유지 보수의 악몽이 될 수 있으며, 색인은 테이블에서 검색 속도를 돌볼 것입니다. 또한 SQL Server 2008 (및 2005)에서 많은 양의 레코드가 있다고 가정하면 partition the table을 별도의 파일로 만들어 속도에 도움이됩니다. SQL Server 에서조차도, 동일한 테이블에 데이터를 유지하는 것은 갈 수있는 방법입니다. 특히 테이블에 대한 스키마가 각 호스트에 대해 동일 할 경우 특히 그렇습니다.

+0

수백 또는 수천 개의 호스트로 끝나면 어떻게 될지 상상해보십시오. 이 스키마는 아주 중요한 것이다. –

관련 문제