사용자가 하루에 수천 개의 행을 원하는 web2 프로젝트에서 작업하고 있습니다. 이 데이터 크기를 처리하기위한 데이터베이스는 다음과 같습니다. 하나의 .mdf 및 .ldf 파일을 마이너 데이터베이스로 저장하고 1 개의 메이저 DB를 저장하여 사용자 계정 및 데이터베이스 파일 주소를 쿼리합니다.여러 MDF 파일 VS 단일 데이터베이스 (SQL Server)
나는이 계획을 위해 몇 달 동안 일했으며 이제는 쉽게 관리 할 수 있습니다. 거대한 규모의 독립 데이터를 처리하는 것이 좋은지 알고 싶습니다. 마녀의 의견에 더 나은 실적이 있습니까? 많은 작은 .mdf 파일 또는 거대한 데이터베이스의 연결을 여는 것입니다.
이후에는 여러 대의 컴퓨터에서 mdf 저장소를 나눕니다.
그들 모두는 C# 및 LINQ에 의해 처리됩니다 (.net4)
// 나중에 설명
나는이 계획을 구축하고 그것을 잘 작동합니다. 예 : 모든 작은 mdf 파일을 열 때 1 초가 걸리고 0.0 초 후에 쿼리합니다. 그것은 모든 연결에 대해 정적 시간을 만듭니다. 그러나 단일 데이터베이스에서 50rows 시스템은 인스턴스를 200,000 행에서 찾아야하며 내 시스템에서는 기본 키로 간단한 선택 쿼리로 약 4-5 초가 걸립니다.
다른 인스턴스에 대해 페이지 콘텐츠를 바인딩하고 2milmions 행 사이에 50 개의 댓글을 선택하고 모든 댓글의 투표 수, 일, 주, 월 및 총의 조회수를 얻으려면 500,000 개의 행 사이에 행을 가져 가고 싶습니다. 좋아하는 사람의 수, 의견의 답변 및 2-3 개의 다른 테이블에서 더 많은 데이터를 얻는다면이 쿼리는 작은 슬레이브 데이터베이스보다 무거 우며 시간이 더 걸립니다.
저는 좋은 디자인과 프로세스가 시스템에서 쉽게 작동해야한다고 생각합니다.
유일한 문제는 SQL Server 파일이있는 작은 슬레이브 데이터베이스가 데이터베이스 당 약 3MB의 물리적 크기를 필요로한다는 것입니다.
도움 주셔서 감사합니다. 나는이 응용 프로그램에서 이미 작업했습니다. 그래서 여러분의 의견대로 모든 것을 다시 시작하는 것이 낫습니다, 맞습니까? –