View a markdown version of this page

Unggah langsung ke HealthOmics penyimpanan urutan - AWS HealthOmics

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Unggah langsung ke HealthOmics penyimpanan urutan

Sebaiknya gunakan HealthOmics Transfer Manager untuk menambahkan file ke penyimpanan urutan Anda. Untuk informasi selengkapnya tentang menggunakan Transfer Manager, lihat GitHub Repositori ini. Anda juga dapat mengunggah kumpulan baca Anda langsung ke penyimpanan urutan melalui operasi API unggah langsung.

Kumpulan baca unggahan langsung ada terlebih dahulu dalam PROCESSING_UPLOAD status. Ini berarti bahwa bagian file saat ini sedang diunggah, dan Anda dapat mengakses metadata set baca. Setelah bagian diunggah dan checksum divalidasi, kumpulan baca menjadi ACTIVE dan berperilaku sama dengan kumpulan baca yang diimpor.

Jika unggahan langsung gagal, status set baca ditampilkan sebagaiUPLOAD_FAILED. Anda dapat mengonfigurasi bucket Amazon S3 sebagai lokasi fallback untuk file yang gagal diunggah. Lokasi fallback tersedia untuk toko urutan yang dibuat setelah 15 Mei 2023.

Unggah langsung ke penyimpanan urutan menggunakan AWS CLI

Untuk memulai, mulai unggahan multipart. Anda dapat melakukan ini dengan menggunakan AWS CLI, seperti yang ditunjukkan pada contoh berikut.

Untuk mengunggah langsung menggunakan AWS CLI perintah
  1. Buat bagian dengan memisahkan data Anda, seperti yang ditunjukkan pada contoh berikut.

    split -b 100MiB SRR233106_1.filt.fastq.gz source1_part_
  2. Setelah file sumber Anda berada dalam beberapa bagian, buat unggahan kumpulan baca multibagian, seperti yang ditunjukkan pada contoh berikut. Ganti sequence store ID dan parameter lainnya dengan ID penyimpanan urutan Anda dan nilai lainnya.

    aws omics create-multipart-read-set-upload \ --sequence-store-id sequence store ID \ --name upload name \ --source-file-type FASTQ \ --subject-id subject ID \ --sample-id sample ID \ --description "FASTQ for HG00146" "description of upload" \ --generated-from "1000 Genomes""source of imported files"

    Anda mendapatkan metadata uploadID dan lainnya dalam tanggapan. Gunakan uploadID untuk langkah selanjutnya dari proses upload.

    { "sequenceStoreId": "1504776472", "uploadId": "7640892890", "sourceFileType": "FASTQ", "subjectId": "mySubject", "sampleId": "mySample", "generatedFrom": "1000 Genomes", "name": "HG00146", "description": "FASTQ for HG00146", "creationTime": "2023-11-20T23:40:47.437522+00:00" }
  3. Tambahkan set baca Anda ke unggahan. Jika file Anda cukup kecil, Anda hanya perlu melakukan langkah ini sekali. Untuk file yang lebih besar, Anda melakukan langkah ini untuk setiap bagian file Anda. Jika Anda mengunggah bagian baru dengan menggunakan nomor bagian yang digunakan sebelumnya, itu akan menggantikan bagian yang diunggah sebelumnya.

    Dalam contoh berikut, gantisequence store ID,upload ID, dan parameter lainnya dengan nilai Anda.

    aws omics upload-read-set-part \ --sequence-store-id sequence store ID \ --upload-id upload ID \ --part-source SOURCE1 \ --part-number part number \ --payload source1/source1_part_aa.fastq.gz

    Respons adalah ID yang dapat Anda gunakan untuk memverifikasi bahwa file yang diunggah cocok dengan file yang Anda inginkan.

    { "checksum": "984979b9928ae8d8622286c4a9cd8e99d964a22d59ed0f5722e1733eb280e635" }
  4. Lanjutkan mengunggah bagian-bagian file Anda, jika perlu. Untuk memverifikasi bahwa kumpulan baca Anda telah diunggah, gunakan operasi API list-read-set-upload-parts, seperti yang ditunjukkan di bawah ini. Dalam contoh berikut, gantisequence store ID ,upload ID, dan part source dengan input Anda sendiri.

    aws omics list-read-set-upload-parts \ --sequence-store-id sequence store ID \ --upload-id upload ID \ --part-source SOURCE1

    Respons mengembalikan jumlah set baca, ukuran, dan stempel waktu saat terakhir diperbarui.

    { "parts": [ { "partNumber": 1, "partSize": 104857600, "partSource": "SOURCE1", "checksum": "MVMQk+vB9C3Ge8ADHkbKq752n3BCUzyl41qEkqlOD5M=", "creationTime": "2023-11-20T23:58:03.500823+00:00", "lastUpdatedTime": "2023-11-20T23:58:03.500831+00:00" }, { "partNumber": 2, "partSize": 104857600, "partSource": "SOURCE1", "checksum": "keZzVzJNChAqgOdZMvOmjBwrOPM0enPj1UAfs0nvRto=", "creationTime": "2023-11-21T00:02:03.813013+00:00", "lastUpdatedTime": "2023-11-21T00:02:03.813025+00:00" }, { "partNumber": 3, "partSize": 100339539, "partSource": "SOURCE1", "checksum": "TBkNfMsaeDpXzEf3ldlbi0ipFDPaohKHyZ+LF1J4CHk=", "creationTime": "2023-11-21T00:09:11.705198+00:00", "lastUpdatedTime": "2023-11-21T00:09:11.705208+00:00" } ] }
  5. Untuk melihat semua unggahan kumpulan baca multipart aktif, gunakan list-multipart-read-set-uploads, seperti yang ditunjukkan di bawah ini. Ganti sequence store ID dengan ID untuk penyimpanan urutan Anda sendiri.

    aws omics list-multipart-read-set-uploads --sequence-store-id sequence store ID

    API ini hanya mengembalikan unggahan kumpulan baca multibagian yang sedang berlangsung. Setelah set baca yang dicermatiACTIVE, atau jika unggahan gagal, unggahan tidak akan dikembalikan sebagai respons terhadap API list-multipart-read-set- uploads. Untuk melihat kumpulan baca aktif, gunakan API list-read- sets. Contoh respons untuk list-multipart-read-set- uploads ditampilkan sebagai berikut.

    { "uploads": [ { "sequenceStoreId": "1234567890", "uploadId": "8749584421", "sourceFileType": "FASTQ", "subjectId": "mySubject", "sampleId": "mySample", "generatedFrom": "1000 Genomes", "name": "HG00146", "description": "FASTQ for HG00146", "creationTime": "2023-11-29T19:22:51.349298+00:00" }, { "sequenceStoreId": "1234567890", "uploadId": "5290538638", "sourceFileType": "BAM", "subjectId": "mySubject", "sampleId": "mySample", "generatedFrom": "1000 Genomes", "referenceArn": "arn:aws:omics:us-west-2:123456789012:referenceStore/8168613728/reference/2190697383", "name": "HG00146", "description": "BAM for HG00146", "creationTime": "2023-11-29T19:23:33.116516+00:00" }, { "sequenceStoreId": "1234567890", "uploadId": "4174220862", "sourceFileType": "BAM", "subjectId": "mySubject", "sampleId": "mySample", "generatedFrom": "1000 Genomes", "referenceArn": "arn:aws:omics:us-west-2:123456789012:referenceStore/8168613728/reference/2190697383", "name": "HG00147", "description": "BAM for HG00147", "creationTime": "2023-11-29T19:23:47.007866+00:00" } ] }
  6. Setelah Anda mengunggah semua bagian file Anda, gunakan complete-multipart-read-set-upload untuk menyimpulkan proses upload, seperti yang ditunjukkan pada contoh berikut. G sequence store ID antiupload ID,, dan parameter untuk bagian dengan nilai Anda sendiri.

    aws omics complete-multipart-read-set-upload \ --sequence-store-id sequence store ID \ --upload-id upload ID \ --parts '[{"checksum":"gaCBQMe+rpCFZxLpoP6gydBoXaKKDA/Vobh5zBDb4W4=","partNumber":1,"partSource":"SOURCE1"}]'

    Respons untuk complete-multipart-read-set-upload adalah ID set baca untuk kumpulan baca yang Anda impor.

    { "readSetId": "0000000001" }
  7. Untuk menghentikan upload, gunakan abort-multipart-read-set-upload dengan ID upload untuk mengakhiri proses upload. Ganti sequence store ID dan upload ID dengan nilai parameter Anda sendiri.

    aws omics abort-multipart-read-set-upload \ --sequence-store-id sequence store ID \ --upload-id upload ID
  8. Setelah unggahan selesai, ambil data Anda dari kumpulan baca dengan menggunakan get-read-set, seperti yang ditunjukkan di bawah ini. Jika unggahan masih diproses, get-read-set mengembalikan metadata terbatas, dan file indeks yang dihasilkan tidak tersedia. Ganti sequence store ID dan parameter lainnya dengan input Anda sendiri.

    aws omics get-read-set --sequence-store-id sequence store ID \ --id read set ID \ --file SOURCE1 \ --part-number 1 myfile.fastq.gz
  9. Untuk memeriksa metadata, termasuk status unggahan Anda, gunakan operasi API get-read-set- metadata.

    aws omics get-read-set-metadata --sequence-store-id sequence store ID --id read set ID

    Respons mencakup detail metadata seperti jenis file, referensi ARN, jumlah file, dan panjang urutan. Ini juga termasuk status. Status yang mungkin adalahPROCESSING_UPLOAD,ACTIVE, danUPLOAD_FAILED.

    { "id": "0000000001", "arn": "arn:aws:omics:us-west-2:555555555555:sequenceStore/0123456789/readSet/0000000001", "sequenceStoreId": "0123456789", "subjectId": "mySubject", "sampleId": "mySample", "status": "PROCESSING_UPLOAD", "name": "HG00146", "description": "FASTQ for HG00146", "fileType": "FASTQ", "creationTime": "2022-07-13T23:25:20Z", "files": { "source1": { "totalParts": 5, "partSize": 123456789012, "contentLength": 6836725, }, "source2": { "totalParts": 5, "partSize": 123456789056, "contentLength": 6836726 } }, 'creationType": "UPLOAD" }

Konfigurasikan lokasi fallback

Saat membuat atau memperbarui penyimpanan urutan, Anda dapat mengonfigurasi bucket Amazon S3 sebagai lokasi fallback untuk file yang gagal diunggah. Bagian file untuk kumpulan baca tersebut ditransfer ke lokasi fallback. Lokasi fallback tersedia untuk toko urutan yang dibuat setelah 15 Mei 2023.

Buat kebijakan bucket Amazon S3 untuk memberikan akses HealthOmics tulis ke lokasi fallback Amazon S3, seperti yang ditunjukkan pada contoh berikut:

{ "Effect": "Allow", "Principal": { "Service": "omics.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*" }

Jika bucket Amazon S3 untuk log fallback atau akses menggunakan kunci yang dikelola pelanggan, tambahkan izin berikut ke kebijakan kunci:

{ "Sid": "Allow use of key", "Effect": "Allow", "Principal": { "Service": "omics.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey*" ], "Resource": "*" }