2013-04-03 11 views
2

우리는 sql filestream db에 200GB 이상의 데이터를 가지고 있습니다. 그래서, 누군가가 내게 무엇을 제안 할 수 있습니다 & filestream 파일을 추출하는 가장 빠른 방법은 무엇입니까?Sql FileStream 파일 검색

C# app을 사용하여 파일을 추출 할 계획입니다 (하나씩 반복하여). 사용할 수있는 다른 방법이 있습니까? 아니면 C#을 사용하여 파일을 빠르게 추출하는 방법을 알고 계십니까? 사전에

감사합니다.

+0

다른 곳을 넣어 한 번에 압축을 풉니 다? 아니면 프로그램이 정말로 반복해서 모든 파일을 반복적으로 추출해야합니까? –

+0

예, DB에서 하나씩 파일을 추출하여 폴더에 저장해야합니다. (실제로 추출한 모든 파일을 amazon S3로 옮겨야합니다.) – user972255

+0

이미 느린 솔루션과 비교할 때 코드가 얼마나 빨리 필요합니까? (사람들이 개선을 제안 할 수 있도록 측정 된 타이밍으로 샘플 코드를 보여줄 것으로 가정 함) –

답변

3

많은 수의 파일을 추출하는 경우 (이 경우에는 소리가 나는 경우) SQL 서버 시스템에 액세스 할 수 있으므로 디스크의 폴더에서 모든 파일을 복사 할 수 있습니다.

이 버전 의존하지만 당신은 SQL Server 2008의 여기를 찾을 수 있습니다

이 데이터베이스를보고 당신이 잠재적으로 더 읽기 뭔가 이름을 바꿀 수있는 GUID로 명명 된 모든 파일을 포함
C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA 

C# 응용 프로그램의 테이블

SQL 서버 시스템에 액세스 할 수 없으면 원격으로 파일을 읽고 각 파일을 저장하는 것이 좋습니다. 충분한 대역폭이 있는지 확인하고 쿼리를 병렬로 실행하면 속도가 향상되는지 확인하십시오.

자세한 내용은이 링크를 참조하십시오 :

http://www.codeproject.com/Articles/128657/How-Do-I-Use-SQL-File-Stream

+0

디스크의 폴더에있는 모든 파일을 복사하면 무슨 뜻인지 이해할 수 없습니다. 내 이해에서는 SQL 파일 스트림 파일이 암호화되어 SQL 서버에 저장됩니다 (잘못된 경우 수정). 일부 프로그램/API를 사용하여 파일 (내 경우 C#)을 검색해야합니다. – user972255

+0

로컬 디스크에서 암호화 된 것으로 나는 생각하지 않습니다. 파일 유형에 대한 정보가 있다고 가정하면 SQL 서버 시스템의 일반 파일처럼 열 수 있어야합니다. – Lummo

+0

나는 그것이 가능하다고 생각하지 않는다. 그러나 나는 똑같이 점검 할 것이다. – user972255