BLOB 저장 옵션 비교(SQL Server)Compare Options for Storing Blobs (SQL Server)

SQL ServerSQL Server에서 파일 및 문서를 저장하는 데 사용할 수 있는 옵션을 설명하고 비교합니다.Discusses and compares the options that are available for storing files and documents in SQL ServerSQL Server.

데이터베이스에 파일 저장 - 이점 및 요구 사항 Storing Files in the Database – Benefits and Expectations

대부분의 기업 데이터는 본질적으로 구조화되어 있지 않으며 대개 파일 시스템에 파일 및 문서로 저장됩니다.A large percentage of enterprise data is unstructured in nature, and is typically stored as files and documents in file systems. 이러한 데이터는 대부분 Windows API를 통해 파일에 액세스하는 응용 프로그램에서 생성, 관리 및 사용합니다.Most of this data is produced, managed and consumed by applications that access the files through Windows APIs. 일반적으로 기업에서는 이러한 데이터를 파일 시스템에 보관하는 한편, 파일의 관련 메타데이터는 관계형 데이터베이스에 저장합니다.Enterprises typically keep this data in the file system, while storing the related metadata for the files in a relational database.

구조화되지 않은 데이터를 관계형 데이터베이스에 통합하면 상당한 이점을 얻을 수 있습니다.Integrating unstructured data into the relational database provides significant benefits. 이러한 이점은 다음과 같습니다.These benefits include the following:

  • 백업과 같은 통합된 저장소 및 데이터 관리 기능을 이용할 수 있습니다.Integrated storage and data management capabilities such as backup.

  • 데이터 및 메타데이터에 대한 전체 텍스트 검색과 의미 체계 검색 같은 통합된 서비스를 이용할 수 있습니다.Integrated services such as full-text search and semantic search over data and metadata.

  • 구조화되지 않은 데이터에 대한 관리 및 정책 관리가 용이해집니다.Ease of administration and policy management over the unstructured data.

    대부분의 경우 구조화되지 않은 데이터는 관계형 데이터베이스에 저장할 수 없었습니다.For the most part, however, it has not been convenient to store unstructured data in a relational database. 이전에는 관계형 시스템 상에서 기존의 Windows 기반 응용 프로그램을 실행할 수 없었습니다.It has not previously been possible to run existing Windows-based applications on top of relational systems. 또한 Microsoft Word 또는 Adobe Reader 같은 상용화된 응용 프로그램을 관계형 데이터베이스 API 상에서 실행할 수 있도록 다시 작성하는 것은 실용적이지 않습니다.It is not practical to rewrite established applications (such as Microsoft Word or Adobe Reader) to run on top relational database APIs. 이러한 응용 프로그램에서는 단순히 Windows API를 통해 데이터에 액세스할 수 있기만 하면 됩니다.These applications simply expect the data to be accessible through Windows APIs. 즉, 다음과 같은 요구 사항을 충족해야 합니다.In other words, the expectations include the following:

  • Windows 응용 프로그램에서는 데이터베이스 트랜잭션을 인식하지 않으며 그럴 필요도 없습니다.Windows applications are not aware of database transactions and do not require them.

  • Windows 응용 프로그램에서는 파일 및 디렉터리 데이터에 대한 파일 시스템 API와의 호환성이 필요합니다.Windows applications require compatibility with file system APIs for file and directory data.

FILESTREAM FILESTREAM

SQL ServerSQL Server 에는 이미 파일 시스템에 파일로 저장된 구조화되지 않은 데이터를 효율적으로 저장, 관리 및 스트리밍할 수 있는 FILESTREAM 기능이 있습니다. already has the FILESTREAM feature, which provides efficient storage, management and streaming of unstructured data stored as files on the file system. 그러나 FILESTREAM 솔루션은 사용자 지정 프로그래밍이 필요하며, 위에서 설명한 Windows 응용 프로그램 호환성에 대한 요구 사항을 충족하지 않습니다.However, a FILESTREAM solution requires custom programming, and does not satisfy the requirement for full Windows application compatibility described above.

FileTable FileTables

기존의 FILESTREAM 기능을 기반으로 구축된 FileTable 기능은 파일 기반 데이터에 대한 비트랜잭션 액세스 및 Windows 응용 프로그램 호환성 요구 사항을 해결함으로써 기업 고객이 구조화되지 않은 파일 데이터 및 디렉터리 계층 구조를 SQL ServerSQL Server 데이터베이스에 저장할 수 있게 해 줍니다.The FileTable feature builds on top of existing FILESTREAM capabilities to enable enterprise customers to store unstructured file data and directory hierarchies in a SQL ServerSQL Server database, by addressing the requirements for non-transactional access and Windows application compatibility for file-based data.

FILESTREAM 및 FileTable 비교 Comparing FILESTREAM and FileTable

기능Feature 파일 서버 및 데이터베이스 솔루션File Server and Database Solution FILESTREAM 솔루션FILESTREAM Solution FileTable 솔루션FileTable Solution
단일화된 관리 태스크Single story for management tasks 아니요No Yes Yes
단일 서비스 집합: 검색, 보고, 쿼리 등Single set of services: search, reporting, querying, and so forth 아니요No Yes Yes
통합 보안 모델Integrated security model 아니요No Yes Yes
FILESTREAM 데이터의 현재 위치 업데이트In-place updates of FILESTREAM data Yes 아니요No Yes
파일 및 디렉터리 계층 구조를 데이터베이스에서 유지 관리File and directory hierarchy maintained in the database 아니요No 아니요No Yes
Windows 응용 프로그램 호환성Windows application compatibility Yes 아니요No Yes
파일 특성에 대한 관계형 액세스Relational access to file attributes 아니요No 아니요No Yes

FILESTREAM 및 RBS(Remote BLOB Store) 비교 Comparing FILESTREAM and Remote BLOB Store (RBS)

이러한 두 기능에 대한 비교 내용은 RBS 팀의 블로그 게시물 SQL Server 원격 BLOB 저장소 및 FILESTREAM 기능 비교를 참조하세요.For a comparison of these two features, see this blog post from the RBS team: SQL Server Remote BLOB Store and FILESTREAM feature comparison.

자세한 정보 More Information

FILESTREAM(SQL Server)FILESTREAM (SQL Server)
FileTables(SQL Server) FileTables (SQL Server)
RBS(Remote Blob Store)(SQL Server) Remote Blob Store (RBS) (SQL Server)