aws omics get-read-set-metadata
コマンドでリードセットのファイル内容を確認できたり、できなかったりするのですがなぜでしょうか?
困っていた内容
同じリードセットに対してaws omics get-read-set-metadata
コマンドの実行結果を見比べてみます。
- filesの内容を確認できるケース
- filesの内容を確認できないケース
files:
にデータを保存した(インポートした)ときのマニュフェストファイルで指定したソース名(source1
)を確認できます。
1.filesの内容を確認できるケース
{
"arn": "arn:aws:omics:us-east-1:123456789012:sequenceStore/7557735457/readSet/3396196285",
"creationTime": "2023-01-23T07:10:55.090000+00:00",
"fileType": "FASTQ",
"files": {
"source1": {
"contentLength": 154255444,
"partSize": 104857600,
"totalParts": 2
}
},
"id": "3396196285",
"name": "HomoSapiens",
"referenceArn": "arn:aws:omics:us-east-1:123456789012:referenceStore/7383825511/reference/8877531849",
"sampleId": "Sample Homo sapiens",
"sequenceInformation": {
"alignment": "UNALIGNED",
"totalBaseCount": 165354100,
"totalReadCount": 1653541
},
"sequenceStoreId": "7557735457",
"status": "ACTIVE",
"subjectId": "HomoSapiens"
}
files:
が空になっています。
2.filesの内容を確認できないケース
{
"arn": "arn:aws:omics:us-east-1:123456789012:sequenceStore/7557735457/readSet/3396196285",
"creationTime": "2023-01-23T07:10:55.090000+00:00",
"fileType": "FASTQ",
"files": {},
"id": "3396196285",
"name": "HomoSapiens",
"referenceArn": "arn:aws:omics:us-east-1:123456789012:referenceStore/7383825511/reference/8877531849",
"sampleId": "Sample Homo sapiens",
"sequenceInformation": {
"alignment": "UNALIGNED",
"totalBaseCount": 165354100,
"totalReadCount": 1653541
},
"sequenceStoreId": "7557735457",
"status": "ARCHIVED",
"subjectId": "HomoSapiens"
}
確認結果
原因
リードセットのストレージクラスがArchivedになっている場合はfiles:
の内容が表示されません。
Omics Storage には保存したファイル(リードセット)が30日間未操作ですと、保存単価がより安いストレージクラスへ自動移動する機能が備わっています。
必要な対応
files:
の内容を確認したい場合はストレージクラスをActiveにしてください。
start-read-set-activation-job — AWS CLI 2.10.3 Command Reference
対応をしてみた
経緯
シーケンスストアに保存したシーケンスデータ(FASTQなど)の情報を確認するときにマネージメントコンソールから得られる情報には限りがあり、よく AWS CLI の利用することになります。シーケンスストアID(7557735457
)に保存したリードセットID(3396196285
)のファイル数を確認しようとしました。
ファイル数とは1つのリードセットに複数のシーケンデータ(複数のFASTQファイル)をまとめて保存できます。非常に残念なのですが保存したときのファイル名は確認できません。ですが、何個のファイルをまとめて保存していたのかはメタデータから確認できます。
$ aws omics get-read-set-metadata \
--sequence-store-id 7557735457 \
--id 3396196285
すると確認したかった項目(files:
)が空欄になっています。ファイルを空にしてシーケンスストアへ保存はできないため、実行結果で空が返ってくるのは不思議です。思い当たること言えばステータスがアーカイブ("status": "ARCHIVED"
)となっているところです。
実行結果
{
"arn": "arn:aws:omics:us-east-1:123456789012:sequenceStore/7557735457/readSet/3396196285",
"creationTime": "2023-01-23T07:10:55.090000+00:00",
"fileType": "FASTQ",
"files": {},
"id": "3396196285",
"name": "HomoSapiens",
"referenceArn": "arn:aws:omics:us-east-1:123456789012:referenceStore/7383825511/reference/8877531849",
"sampleId": "Sample Homo sapiens",
"sequenceInformation": {
"alignment": "UNALIGNED",
"totalBaseCount": 165354100,
"totalReadCount": 1653541
},
"sequenceStoreId": "7557735457",
"status": "ARCHIVED",
"subjectId": "HomoSapiens"
}
対応: ストレージクラスのアクティブ化
ストレージクラスをアーカイブからアクティブへ変更してみます。対象のリードセット ID の指定方法がやや特徴の書式のため記入方法に注意してください。--sources readSetID=
に続いてリードセット ID を入力すれば問題ありません。
$ aws omics start-read-set-activation-job \
--sequence-store-id 7557735457 \
--sources readSetId=3396196285
アクティブ化後、同じメタデータ確認コマンドで確認してみます。
$ aws omics get-read-set-metadata \
--sequence-store-id 7557735457 \
--id 3396196285
files:
の内容を確認できました。source1
しかないためシーケンスデータは1個しか保存していないことがわかりました。複数ファイルを保存している場合はsource2
といったように数値がインクリメントされた項目が表示されます。
{
"arn": "arn:aws:omics:us-east-1:123456789012:sequenceStore/7557735457/readSet/3396196285",
"creationTime": "2023-01-23T07:10:55.090000+00:00",
"fileType": "FASTQ",
"files": {
"source1": {
"contentLength": 154255444,
"partSize": 104857600,
"totalParts": 2
}
},
"id": "3396196285",
"name": "HomoSapiens",
"referenceArn": "arn:aws:omics:us-east-1:123456789012:referenceStore/7383825511/reference/8877531849",
"sampleId": "Sample Homo sapiens",
"sequenceInformation": {
"alignment": "UNALIGNED",
"totalBaseCount": 165354100,
"totalReadCount": 1653541
},
"sequenceStoreId": "7557735457",
"status": "ACTIVE",
"subjectId": "HomoSapiens"
}
おわりに
ストレージクラスがアーカイブの場合メタデータにファイル情報が表示されない挙動については公式ドキュメント(User Guide)、API リファレンスからも確認できませんでした。どなたかなのお役にたてば幸いです。
GetReadSetMetadata - Amazon Omics