Ottenimento di checksum durante il download di dati - Amazon Glacier

Questa pagina è riservata ai clienti esistenti del servizio Amazon Glacier che utilizzano Vaults e l'API REST originale del 2012.

Se stai cercando soluzioni di archiviazione, ti consigliamo di utilizzare le classi di storage Amazon Glacier in Amazon S3, S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval e S3 Glacier Deep Archive. Per ulteriori informazioni su queste opzioni di storage, consulta le classi di storage di Amazon Glacier.

Amazon Glacier (servizio autonomo originale basato su vault) non accetterà più nuovi clienti a partire dal 15 dicembre 2025, senza alcun impatto sui clienti esistenti. Amazon Glacier è un servizio APIs autonomo che archivia i dati in vault ed è distinto dalle classi di storage Amazon S3 e Amazon S3 Glacier. I dati esistenti rimarranno sicuri e accessibili in Amazon Glacier a tempo indeterminato. Non è richiesta alcuna migrazione. Per uno storage di archiviazione a lungo termine a basso costo, AWS consiglia le classi di storage Amazon S3 Glacier, che offrono un'esperienza cliente superiore con disponibilità Regione AWS completa, costi inferiori e integrazione dei servizi APIs basata su bucket S3. AWS Se desideri funzionalità avanzate, prendi in considerazione la migrazione alle classi di storage Amazon S3 Glacier utilizzando la AWS nostra Solutions Guidance per il trasferimento di dati dai vault Amazon Glacier alle classi di storage Amazon S3 Glacier.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Ottenimento di checksum durante il download di dati

Quando recuperi un archivio utilizzando l'API Initiate Job (vedi Initiate Job (POST jobs)), puoi eventualmente specificare un intervallo di archivio da recuperare. Analogamente, quando scarichi i dati utilizzando l'API Get Job Output (vedi Get Job Output (GET output)), puoi eventualmente specificare un intervallo di dati da scaricare. È necessario comprendere due caratteristiche importanti di questi intervalli quando si recuperano e scaricano i dati di un archivio. L'intervallo da recuperare deve essere allineato in termini di megabyte all'archivio. L'intervallo da recuperare e quello da scaricare devono essere allineati alla struttura hash per poter ricevere valori di checksum durante il download dei dati. La definizione di questi due tipi di allineamenti di intervalli è riportata di seguito:

  • Megabyte allineato - Un intervallo [StartByte, EndBytes] è megabyte (1024*1024) allineato quando StartBytesè divisibile per 1 MB e EndBytespiù 1 è divisibile per 1 MB o è uguale alla fine dell'archivio specificato (dimensione del byte dell'archivio meno 1). Se si specifica l'API Initiate Job, l'intervallo deve essere obbligatoriamente allineato in termini di megabyte.

  • Tree-hash aligned - Un range [StartBytes, EndBytes] è l'hash dell'albero allineato rispetto a un archivio se e solo se la radice dell'hash dell'albero costruito sull'intervallo è equivalente a un nodo nell'hash dell'albero dell'intero archivio. L'intervallo da recuperare e quello da scaricare devono essere allineati alla struttura hash per poter ricevere i valori di checksum dei dati scaricati. Per un esempio di intervalli e della relativa relazione con la struttura hash di un archivio, consulta Esempio di struttura hash: recupero di un intervallo di archivio allineato alla struttura hash.

    Nota che un intervallo allineato alla struttura hash è anche allineato in termini di megabyte. Tuttavia, un intervallo allineato in termini di megabyte non è necessariamente allineato alla struttura hash.

Di seguito sono riportati i casi in cui si ottiene un valore di checksum durante il download dei dati in archivio:

  • Se non specifichi un intervallo da recuperare nella richiesta Initiate Job e scarichi l'intero archivio nella richiesta Get Job.

  • Se non specifichi un intervallo da recuperare nella richiesta Initiate Job e specifichi un intervallo allineato alla struttura hash da scaricare nella richiesta Get Job.

  • Se specifichi un intervallo allineato alla struttura hash da recuperare nella richiesta Initiate Job e scarichi l'intero intervallo nella richiesta Get Job.

  • Se specifichi un intervallo allineato alla struttura hash da recuperare nella richiesta Initiate Job e specifichi un intervallo allineato alla struttura hash da scaricare nella richiesta Get Job.

Se specifichi un intervallo da recuperare nella richiesta Initiate Job che non è allineato alla struttura hash, puoi comunque ottenere i dati in archivio ma nessun valore di checksum viene restituito quando scarichi i dati nella richiesta Get Job.

Esempio di struttura hash: recupero di un intervallo di archivio allineato alla struttura hash

Supponi di avere un archivio di 6,5 MB nel tuo vault e che intendi recuperare 2 MB dell'archivio. Il modo in cui specifichi l'intervallo di 2 MB nella richiesta Initiate Job determina se ricevi i valori di checksum dei dati quando scarichi i dati. Il diagramma seguente illustra due intervalli di 2 MB per l'archivio di 6,5 MB che puoi scaricare. Entrambi gli intervalli sono allineati in termini di megabyte, ma solo uno è allineato alla struttura hash.

Diagramma che mostra il recupero di un intervallo di archivio allineato con tree-hash.

Specifica di un intervallo allineato alla struttura hash

Questa sezione fornisce l'esatta specifica di un intervallo allineato a una struttura hash. Gli intervalli allineati alla struttura hash sono importanti quando scarichi una parte di un archivio e specifichi l'intervallo di dati da recuperare e l'intervallo di dati recuperati da scaricare. Se entrambi questi intervalli sono allineati alla struttura hash, riceverai i valori di checksum quando scarichi i dati.

Un intervallo [A, B] è allineato alla struttura hash rispetto a un archivio se e solo se, quando una nuova struttura hash viene creata su [A, B], la radice della struttura hash di quell'intervallo è equivalente a un nodo nella struttura hash dell'intero archivio. Ciò è illustrato nel diagramma in Esempio di struttura hash: recupero di un intervallo di archivio allineato alla struttura hash. In questa sezione forniamo la specifica per l'allineamento alla struttura hash.

Considera [P, Q) come la query di intervallo di un archivio di N megabyte (MB) e che P e Q sono multipli di 1 MB. Nota che l'intervallo inclusivo effettivo è [P MB, Q MB – 1 byte], ma per semplicità, lo presentiamo come [P, Q). Sulla base di queste considerazioni:

  • Se P è un numero dispari, un solo intervallo allineato alla struttura hash è possibile, ovvero [P, P +1 MB).

  • Se P è un numero pari e k è il numero massimo, dove P può essere scritto come 2k * X, ci sono al massimo k intervalli allineati alla struttura hash che iniziano con P. X è un numero intero maggiore di 0. Gli intervalli allineati alla struttura hash rientrano nelle seguenti categorie:

    • In ogni i, dove (0 <= i <= k) e dove P + 2i < N, [P, Q + 2i) è un intervallo allineato alla struttura hash.

    • P = 0 è il caso speciale dove A = 2[lgN]*0