2010-12-08 2 views
0

[1], [2] 및 기타 많은 참조 자료는 크기가 0.3-1MB 미만인 BLOB는 데이터베이스에 저장해야하며 BLOB는 1MB보다 큰 파일 시스템 (FILESTREAM을 통해 가능)으로 저장해야한다는 결론을 내 렸습니다.데이터베이스에 0.3 MB 미만의 BLOB를 저장해야하는 이유는 무엇입니까?

FACEBOOK.com은 파일 시스템 [3]에서 6.5 (축소판 그림과 크기 버전 30 개) 장의 그림을 저장합니다.

랜달의 백서 [2]에 의해 이유를 : 필요성이 데이터베이스에 있지만 단지 그들이에 액세스 할 수없는 것이 사실에 대한 모양을 저장하는 데 대해
alt text

글쎄,이 날 설득하지 않습니다/통해 외부 스트리밍 T-SQL이 아니라 Win32를 통해 제공됩니다.

다른 이유는 내가 읽었을뿐만 아니라 나에게 납득이 가지 않는 것처럼 보입니다.

blob을 파일 시스템 대신 데이터베이스에 저장하는 이유는 무엇입니까?

[1]
레이 보리. SQL 서버에서 NTFS 파일 시스템에서 저장소에 BLOB에 FILESTREAM을 사용하여 2008
http://www.mssqltips.com/tip.asp?tip=1489
[2]
폴 S. 랜달 SQL Server의
FILESTREAM 저장소 2008
http://msdn.microsoft.com/en-us/library/cc949109(SQL.100).aspx
[3]
제임스 해밀턴의 블로그 기사 . 페이스 북 : 건초 더미에서 바늘 : 사진
의 수십억의 효율적인 저장 http://perspectives.mvdirona.com/2008/06/30/FacebookNeedleInAHaystackEfficientStorageOfBillionsOfPhotos.aspx

+1

무엇이 질문입니까? –

+1

MS에서 제공하는 ['To BLOB 또는 BLOB하지 않음] (http://research.microsoft.com/apps/pubs/default.aspx?id=64525) 연구 논문을 잊지 마십시오. – Oded

+0

@Oded, 나는 그렇지 않았다. [2]에서 많이 인용되었다. 정말로 모든 이유가 거기에서 속임을 당한다 –

답변

3

아니라 파일 시스템보다 데이터베이스에 이러한 데이터를 저장하는 많은 장점이있을 수있다 :

데이터 무결성이 - 당신이 그것을에 제약을 구현할 수 있습니다

트랜잭션 지원

관리 기능 - 백업 및 복원 옵션

고 가용성 - 다 탭셋은 파일 시스템보다 미러링 및 클러스터링을위한보다 정교한 옵션을 갖는 경향이 있습니다.

보안 - 데이터베이스에서 테이블을 프리젠 테이션 및 분석을 위해 응용 프로그램의 모든 종류에 액세스 할 수 있습니다 - 당신은 당신이 파일 시스템

접근성하지 않는 세밀한 보안 제어의 종류를 얻을. 데이터베이스는 쉽게 SQL 문에

감사를 심문 할 수있다 - 녹음 및 데이터

내가 거기에 많은 다른 많은 이유가 있지만이 먼저 마음에 온 것들이다 기대

에 대한 변경 사항을 모니터링 할 수 있습니다.

관련 문제