2017-02-17 18 views
1

원격 서버에서 s3 버킷까지 파일 크기가 69MB에서 25GB까지 인 4500 개의 파일로 구성된 약 31TB의 데이터를 전송합니다.많은 수의 큰 파일을 s3에 전송합니다.

#!/bin/bash 

FILES="/path/to/*.fastq.gz" 
for i in $FILES 
do 
    echo "$i" 
    s4cmd put --sync-check -c 10 $i s3://bucket-name/directory/ 
done 

그럼 내가 작업 제출 qsub를 사용 : 나는이 작업을 수행하고 bash는 스크립트 upload.sh에 넣어 s4cmd put을 사용하고

qsub -cwd -e error.txt -o output.txt -l h_vmem=10G -l mem_free=8G -l m_mem_free=8G -pe smp 10 upload.sh 

이 너무 오래 걸리는를 - 그것은 10 시간이 걸렸다 ~ 20 개의 파일을 업로드 할 수 있습니다. 누군가 내 명령에 대한 대안이나 수정을 제안 할 수 있습니까?

감사합니다.

+0

** GNU 병렬 **을 사용하고 병렬로 처리 할 수 ​​있습니까? 'parallel -eta -j 8 s4cmd put --sync-check -c 10 {} s3 : // 버킷 이름/디렉토리/:::/path/to/* fastq.gz' –

+1

어디에서 이전 했습니까? 다른 AWS 서비스 인 경우 어쩌면 너무 느릴 수 있습니다. 그러나 회사 데이터 센터에서 AWS로 보내는 경우이 범위의 시간을 기대할 수 있습니다 (단일 스레드로 설정 한 경우). GParallel을 사용하더라도 소스 시스템과 AWS 사이의 대역폭 제약 조건에 쉽게 적응할 수 있습니다. (내 생각은 시대에 뒤질 수 있으므로 현재 사용자의 응답을 보는 데 관심이 있습니다 (항상!). 행운을 빕니다! – shellter

+1

인터넷 연결 속도는 얼마나 빠릅니까? 그 양의 데이터에 대해서는 [Snowball] (https://aws.amazon.com/snowball/)을 사용하는 것이 더 빠르지 만 배송 비용이 더 듭니다. – stdunbar

답변

2

실제 미디어에 데이터를 복사 할 때 상황에 속할 수 있으며 인터넷을 통해 데이터를 전송하는 것보다 일반 우편으로 운송하는 것이 더 빠르고 저렴합니다. AWS는 이러한 "프로토콜"을 지원하며 특별한 이름을 가지고 있습니다 (AWS Snowball).

뭉치

현황 및 AWS 클라우드에서 대용량의 데이터를 전송하기 위해 안전한 제품을 사용 페타 바이트 크기의 데이터 전송 솔루션이다. Snowball을 사용하면 높은 네트워크 비용, 긴 전송 시간 및 보안 문제를 포함하여 대규모의 데이터 전송과 관련된 일반적인 문제를 해결할 수 있습니다. Snowball을 사용하여 데이터를 전송하는 것은 간단하고 빠르며 보안이 적용되며 고속 인터넷의 1/5에 불과할 수 있습니다.

Snowball을 사용하면 데이터를 전송하기 위해 코드를 작성하거나 하드웨어를 구매하지 않아도됩니다. AWS 관리 콘솔에서 작업을 생성하기 만하면 Snowball 어플라이언스가 자동으로 *으로 배송됩니다. 도착하면 기기를 로컬 네트워크에 연결하고 Snowball 클라이언트를 다운로드하여 실행하여 연결을 설정 한 다음 클라이언트를 사용하여 어플라이언스로 전송하려는 파일 디렉토리 을 선택합니다. 그러면 클라이언트는 파일을 암호화하여 기기로 고속으로 전송합니다 ( ). 전송이 완료되고 어플라이언스가 반환 될 준비가되면E 잉크 배송 라벨이 자동으로 업데이트되고 Amazon Simple Notification Service (SNS), 텍스트 메시지 또는 콘솔에서 직접 작업 상태를 추적 할 수 있습니다 .

* 일부 지역에서는 스노볼을 사용할 수 있습니다. AWS Management 콘솔에서 작업을 생성하면 위치가 확인됩니다.

작은 장치의 용량은 50TB로 케이스에 적합합니다.

사용하려면 AWS 가져 오기/내보내기 디스크 :

  • 준비

    대신 그들의 특별한 장치로, 또한 당신이 당신의 자신의 하드웨어 (하드 드라이브)를 제공 유사한 서비스 AWS Import/Export disk,이 휴대용 저장 장치 (지원되는 장치는 Product Details 페이지 참조).

  • Create Job 요청을 제출하십시오.장치를 인증하는 데 사용되는 디지털 서명으로 작업 ID를 받게됩니다.
  • 선불 배송 라벨을 인쇄하십시오.
  • 장치를 안전하게 식별하고 인증하십시오. Amazon S3의 경우 장치의 루트 디렉토리에 서명 파일을 저장하십시오. Amazon EBS 또는 Amazon Glacier의 경우 장치의 외부로 서명 바코드로 테이프하십시오.
  • 선불 배송 라벨을 배송 컨테이너에 부착하고 인터페이스 커넥터와 함께 기기를 배송하고 AWS에 전원 공급 장치를 배송하십시오.

패키지가 도착, 그것은 안전하게 처리 기기가 AWS 수입/수출 역 부착 될 것이다 AWS 데이터 센터로 전송한다. 데이터로드가 완료되면 기기가 반환됩니다.

+0

안녕하세요. 답변 해주셔서 감사합니다. 가격에 관한 한 가지 질문 -이 솔루션을 사용하면 더 빨리 이전 할 수 있지만 인터넷을 통한 일반 전송보다 비용이 저렴하다는 것을 설명 할 수 있습니까? –

+0

AWS S3으로 들어오는 데이터는 무료이기 때문에 대역폭보다는 트래픽에 대해 인터넷 연결 비용을 지불하는 경우에만 비용 우위가 나타납니다. 반대의 경우 (** ** ** ** S3에서 ** S3로 전환해야하는 경우)이 솔루션은 확실히 저렴합니다. 모든 유방 결핵 비용은 ~ 85 달러이며, 이는 귀하의 금액에 대해 거의 $ 2.5K입니다 데이터의. – Leon

+0

그래서 S3에 무료로 데이터를 저장할 수 있다는 점을 이해하고 있습니까? –