BLOB 저장 옵션 비교(SQL Server)
적용 대상: SQL Server
SQL Server에서 파일 및 문서를 저장하는 데 사용할 수 있는 옵션을 설명하고 비교합니다.
데이터베이스에 파일 저장 - 이점 및 요구 사항
엔터프라이즈 데이터의 많은 비율은 본질적으로 구조화되지 않으며 일반적으로 파일 시스템에 파일 및 문서로 저장됩니다. 이러한 데이터는 대부분 Windows API를 통해 파일에 액세스하는 애플리케이션에서 생성, 관리 및 사용합니다. 일반적으로 기업에서는 이러한 데이터를 파일 시스템에 보관하는 한편, 파일의 관련 메타데이터는 관계형 데이터베이스에 저장합니다.
비정형 데이터를 관계형 데이터베이스에 통합하면 다음과 같은 이점이 제공됩니다.
- 백업과 같은 통합 스토리지 및 데이터 관리 기능
- 데이터 및 메타데이터에 대한 전체 텍스트 검색 및 의미 체계 검색과 같은 통합 서비스입니다.
- 비정형 데이터에 대한 관리 및 정책 관리가 용이합니다.
일반적으로 관계형 데이터베이스에 비정형 데이터를 저장하는 것이 불편했습니다. 또한 Microsoft Word 또는 Adobe Reader 같은 상용화된 애플리케이션을 관계형 데이터베이스 API를 통해 상호 작용할 수 있도록 다시 작성하는 것은 실용적이지 않습니다. 이러한 애플리케이션은 Windows API를 통해 데이터에 액세스할 수 있어야 합니다. 애플리케이션에는 다음과 같은 기대치가 있습니다.
- Windows 애플리케이션은 데이터베이스 트랜잭션을 인식하지 못하며 필요하지 않습니다.
- Windows 애플리케이션에서는 파일 및 디렉터리 데이터에 대한 파일 시스템 API와의 호환성이 필요합니다.
몇 년 전만 해도 SQL Server는 관계형 데이터베이스에 비정형 데이터를 저장하는 다양한 방법을 제공하지 않았습니다. 그러나 요즘에는 비정형 데이터를 저장하는 방법을 제공합니다.
FILESTREAM
SQL Server에는 FILESTREAM 기능이 이미 있습니다. FILESTREAM 기능은 파일 시스템에 파일로 저장된 구조화되지 않은 데이터를 효율적으로 스토리지, 관리 및 스트리밍할 수 있습니다. 그러나 FILESTREAM 솔루션에는 사용자 지정 프로그래밍이 필요하며 위에서 설명한 전체 Windows 애플리케이션 호환성에 대한 요구 사항을 충족하지 않습니다.
FileTable
FileTable 기능은 기존 FILESTREAM 기능을 기반으로 합니다. FileTable 기능을 사용하면 엔터프라이즈 고객이 SQL Server 데이터베이스에 비정형 파일 데이터 및 디렉터리 계층 구조를 저장할 수 있습니다. 이 기능은 파일 기반 데이터에 대한 비트랜잭션 액세스 및 Windows 애플리케이션 호환성에 대한 요구 사항을 해결합니다.
FILESTREAM 및 FileTable 비교
기능 | 파일 서버 및 데이터베이스 솔루션 | FILESTREAM 솔루션 | FileTable 솔루션 |
---|---|---|---|
관리 작업에 대한 단일 스토리 | 예 | 예 | 예 |
단일 서비스 집합: 검색, 보고, 쿼리 등 | 예 | 예 | 예 |
통합 보안 모델 | 예 | 예 | 예 |
FILESTREAM 데이터의 실행 중인 업데이트 | 예 | 아니요 | 예 |
파일 및 디렉터리 계층 구조를 데이터베이스에서 유지 관리 | 아니요 | 아니요 | 예 |
Windows 애플리케이션 호환성 | 예 | 아니요 | 예 |
파일 특성에 대한 관계형 액세스 | 아니요 | 아니요 | 예 |
FILESTREAM 및 RBS(원격 BLOB 저장소) 비교
비정형 데이터를 저장하는 또 다른 옵션에는 RBS(원격 BLOB 저장소)가 포함됩니다. 자세한 내용은 RBS(원격 Blob Store)(SQL Server)를 참조하세요.
추가 정보
FILESTREAM [SQL Server]
FileTables(SQL Server)
RBS(Remote Blob Store)(SQL Server)