

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Lesen Sie Amazon EBS-Snapshots mit EBS Direct APIs
<a name="readsnapshots"></a>

In den folgenden Schritten wird beschrieben, wie Sie EBS Direct APIs zum Lesen von Snapshots verwenden:

1. Verwenden Sie die ListSnapshotBlocks Aktion, um alle Blockindizes und Blocktoken von Blöcken in einem Snapshot anzuzeigen. Oder verwenden Sie die ListChangedBlocks Aktion, um nur die Blockindizes und Blocktoken von Blöcken anzuzeigen, die sich zwischen zwei Snapshots desselben Volumes und derselben Snapshot-Herkunft unterscheiden. Diese Aktionen helfen Ihnen, die Block-Token und Blockindizes von Blöcken zu identifizieren, für die Sie möglicherweise Daten abrufen möchten.

1. Verwenden Sie die GetSnapshotBlock Aktion und geben Sie den Blockindex und das Blocktoken des Blocks an, für den Sie Daten abrufen möchten.

**Anmerkung**  
Sie können EBS Direct nicht APIs mit archivierten Snapshots verwenden.

Die folgenden Beispiele zeigen, wie Snapshots mit EBS Direct gelesen werden. APIs

**Topics**
+ [Liste der Blöcke in einem Snapshot](#list-blocks)
+ [Liste der Blöcke, die sich zwischen zwei Snapshots unterscheiden](#list-different-blocks)
+ [Abrufen von Blockdaten aus einem Snapshot](#get-block-data)

## Liste der Blöcke in einem Snapshot
<a name="list-blocks"></a>

------
#### [ AWS CLI ]

Der folgende [list-snapshot-blocks](https://docs.aws.amazon.com/cli/latest/reference/ebs/list-snapshot-blocks.html)Beispielbefehl gibt die Blockindizes und Blocktoken von Blöcken zurück, die sich im Snapshot befinden. `snap-0987654321` Der Parameter `--starting-block-index` schränkt die Ergebnisse auf Block-Indizes ein, die größer als `1000` sind. Der Parameter `--max-results` schränkt die Ergebnisse auf die ersten `100` Blöcke ein.

```
aws ebs list-snapshot-blocks --snapshot-id snap-0987654321 --starting-block-index 1000 --max-results 100
```

Die folgende Beispielantwort für den vorherigen Befehl listet die Block-Indizes und Block-Token im Snapshot auf. Mithilfe des Befehls `get-snapshot-block` können Sie den Block-Index und das Block-Token des Blocks angeben, für den Sie Daten abrufen möchten. Die Block-Token sind bis zur angegebenen Ablaufzeit gültig.

```
{
      "Blocks": [
          {
              "BlockIndex": 1001,
              "BlockToken": "AAABAV3/PNhXOynVdMYHUpPsetaSvjLB1dtIGfbJv5OJ0sX855EzGTWos4a4"
          },
          {
              "BlockIndex": 1002,
              "BlockToken": "AAABATGQIgwr0WwIuqIMjCA/Sy7e/YoQFZsHejzGNvjKauzNgzeI13YHBfQB"
          },
          {
              "BlockIndex": 1007,
              "BlockToken": "AAABAZ9CTuQtUvp/dXqRWw4d07eOgTZ3jvn6hiW30W9duM8MiMw6yQayzF2c"
          },
          {
              "BlockIndex": 1012,
              "BlockToken": "AAABAQdzxhw0rVV6PNmsfo/YRIxo9JPR85XxPf1BLjg0Hec6pygYr6laE1p0"
          },
          {
              "BlockIndex": 1030,
              "BlockToken": "AAABAaYvPax6mv+iGWLdTUjQtFWouQ7Dqz6nSD9L+CbXnvpkswA6iDID523d"
          },
          {
              "BlockIndex": 1031,
              "BlockToken": "AAABATgWZC0XcFwUKvTJbUXMiSPg59KVxJGL+BWBClkw6spzCxJVqDVaTskJ"
          },
          ...
      ],
      "ExpiryTime": 1576287332.806,
      "VolumeSize": 32212254720,
      "BlockSize": 524288
  }
```

------
#### [ AWS API ]

Die folgende [ListSnapshotBlocks](https://docs.aws.amazon.com/ebs/latest/APIReference/API_ListSnapshotBlocks.html)Beispielanforderung gibt die Blockindizes und Blocktoken von Blöcken zurück, die sich im Snapshot befinden. `snap-0acEXAMPLEcf41648` Der Parameter `startingBlockIndex` schränkt die Ergebnisse auf Block-Indizes ein, die größer als `1000` sind. Der Parameter `maxResults` schränkt die Ergebnisse auf die ersten `100` Blöcke ein.

```
GET /snapshots/snap-0acEXAMPLEcf41648/blocks?maxResults=100&startingBlockIndex=1000 HTTP/1.1
  Host: ebs.us-east-2.amazonaws.com
  Accept-Encoding: identity
  User-Agent: <User agent parameter>
  X-Amz-Date: 20200617T231953Z
  Authorization: <Authentication parameter>
```

Die folgende Beispielantwort für die vorherige Anforderung listet die Block-Indizes und Block-Token im Snapshot auf. Verwenden Sie die GetSnapshotBlock Aktion und geben Sie den Blockindex und das Blocktoken des Blocks an, für den Sie Daten abrufen möchten. Die Block-Token sind bis zur angegebenen Ablaufzeit gültig. 

```
HTTP/1.1 200 OK
  x-amzn-RequestId: d6e5017c-70a8-4539-8830-57f5557f3f27
  Content-Type: application/json
  Content-Length: 2472
  Date: Wed, 17 Jun 2020 23:19:56 GMT
  Connection: keep-alive
  
  {
      "BlockSize": 524288,
      "Blocks": [
          {
              "BlockIndex": 0,
              "BlockToken": "AAUBAcuWqOCnDNuKle11s7IIX6jp6FYcC/q8oT93913HhvLvA+3JRrSybp/0"
          },
          {
              "BlockIndex": 1536,
              "BlockToken": "AAUBAWudwfmofcrQhGVlLwuRKm2b8ZXPiyrgoykTRC6IU1NbxKWDY1pPjvnV"
          },
          {
              "BlockIndex": 3072,
              "BlockToken": "AAUBAV7p6pC5fKAC7TokoNCtAnZhqq27u6YEXZ3MwRevBkDjmMx6iuA6tsBt"
          },
          {
              "BlockIndex": 3073,
              "BlockToken": "AAUBAbqt9zpqBUEvtO2HINAfFaWToOwlPjbIsQOlx6JUN/0+iMQl0NtNbnX4"
          },
          ...
      ],
      "ExpiryTime": 1.59298379649E9,
      "VolumeSize": 3
  }
```

------

## Liste der Blöcke, die sich zwischen zwei Snapshots unterscheiden
<a name="list-different-blocks"></a>

Beachten Sie Folgendes, wenn Sie **paginierte Anforderungen** stellen, um die geänderten Blöcke zwischen zwei Snapshots aufzulisten:
+ Die Antwort kann eine oder mehrere leere `ChangedBlocks`-Arrays enthalten. Zum Beispiel:
  + Snapshot 1 – vollständiger Snapshot mit 1 000 Blöcken mit Blockindizes `0` – `999`.
  + Snapshot 2 – inkrementeller Snapshot mit nur einem geänderten Block mit Blockindex `999`.

  Das Auflisten der geänderten Blöcke für diese Snapshots mit `StartingBlockIndex = 0` und `MaxResults = 100` ergibt ein leeres Array von `ChangedBlocks`. Sie müssen die übrigen Ergebnisse mit `nextToken` anfordern, bis der geänderte Block in der zehnten Ergebnismenge zurückgegeben wird, die Blöcke mit Blockindizes `900` – `999` umfasst.
+ Die Antwort kann ungeschriebene Blöcke in den Snapshots überspringen. Zum Beispiel:
  + Snapshot 1 – vollständiger Snapshot mit 1 000 Blöcken mit Blockindizes `2000` – `2999`.
  + Snapshot 2 – inkrementeller Snapshot mit nur einem geänderten Block mit Blockindex `2000`.

  Auflisten der geänderten Blöcke für diese Snapshots mit `StartingBlockIndex = 0` und `MaxResults = 100`, überspringt die Blockindizes `0` – `1999` und beinhaltet Blockindex `2000`. Die Antwort wird keine leeren `ChangedBlocks`-Arrays enthalten.

------
#### [ AWS CLI ]

Der folgende [list-changed-blocks](https://docs.aws.amazon.com/cli/latest/reference/ebs/list-changed-blocks.html)Beispielbefehl gibt die Blockindizes und Blocktoken von Blöcken zurück, die sich zwischen Snapshots `snap-1234567890` und unterscheiden. `snap-0987654321` Der Parameter `--starting-block-index` schränkt die Ergebnisse auf Block-Indizes ein, die größer als `0` sind. Der Parameter `--max-results` schränkt die Ergebnisse auf die ersten `500` Blöcke ein.

```
aws ebs list-changed-blocks --first-snapshot-id snap-1234567890 --second-snapshot-id snap-0987654321 --starting-block-index 0 --max-results 500
```

Die folgende Beispielantwort für den vorherigen Befehl zeigt, dass sich die Block-Indizes 0, 6000, 6001, 6002 und 6003 zwischen den beiden Snapshots unterscheiden. Darüber hinaus sind die Block-Indizes 6001, 6002 und 6003 nur in der ersten angegebenen Snapshot-ID und nicht in der zweiten Snapshot-ID vorhanden, da in der Antwort kein zweites Block-Token aufgeführt ist.

Mithilfe des Befehls `get-snapshot-block` können Sie den Block-Index und das Block-Token des Blocks angeben, für den Sie Daten abrufen möchten. Die Block-Token sind bis zur angegebenen Ablaufzeit gültig.

```
{
      "ChangedBlocks": [
          {
              "BlockIndex": 0,
              "FirstBlockToken": "AAABAVahm9SO60Dyi0ORySzn2ZjGjW/KN3uygGlS0QOYWesbzBbDnX2dGpmC",
              "SecondBlockToken": "AAABAf8o0o6UFi1rDbSZGIRaCEdDyBu9TlvtCQxxoKV8qrUPQP7vcM6iWGSr"
          },
          {
              "BlockIndex": 6000,
              "FirstBlockToken": "AAABAbYSiZvJ0/R9tz8suI8dSzecLjN4kkazK8inFXVintPkdaVFLfCMQsKe",
              "SecondBlockToken": "AAABAZnqTdzFmKRpsaMAsDxviVqEI/3jJzI2crq2eFDCgHmyNf777elD9oVR"
          },
          {
              "BlockIndex": 6001,
              "FirstBlockToken": "AAABASBpSJ2UAD3PLxJnCt6zun4/T4sU25Bnb8jB5Q6FRXHFqAIAqE04hJoR"
          },
          {
              "BlockIndex": 6002,
              "FirstBlockToken": "AAABASqX4/NWjvNceoyMUljcRd0DnwbSwNnes1UkoP62CrQXvn47BY5435aw"
          },
          {
              "BlockIndex": 6003,
              "FirstBlockToken": "AAABASmJ0O5JxAOce25rF4P1sdRtyIDsX12tFEDunnePYUKOf4PBROuICb2A"
          },
          ...
      ],
      "ExpiryTime": 1576308931.973,
      "VolumeSize": 32212254720,
      "BlockSize": 524288,
      "NextToken": "AAADARqElNng/sV98CYk/bJDCXeLJmLJHnNSkHvLzVaO0zsPH/QM3Bi3zF//O6Mdi/BbJarBnp8h"
  }
```

------
#### [ AWS API ]

Die folgende [ListChangedBlocks](https://docs.aws.amazon.com/ebs/latest/APIReference/API_ListChangedBlocks.html)Beispielanforderung gibt die Blockindizes und Blocktoken von Blöcken zurück, die sich zwischen Snapshots und unterscheiden. `snap-0acEXAMPLEcf41648` `snap-0c9EXAMPLE1b30e2f` Der Parameter `startingBlockIndex` schränkt die Ergebnisse auf Block-Indizes ein, die größer als `0` sind. Der Parameter `maxResults` schränkt die Ergebnisse auf die ersten `500` Blöcke ein.

```
GET /snapshots/snap-0c9EXAMPLE1b30e2f/changedblocks?firstSnapshotId=snap-0acEXAMPLEcf41648&maxResults=500&startingBlockIndex=0 HTTP/1.1
  Host: ebs.us-east-2.amazonaws.com
  Accept-Encoding: identity
  User-Agent: <User agent parameter>
  X-Amz-Date: 20200617T232546Z
  Authorization: <Authentication parameter>
```

Die folgende Beispielantwort für die vorherige Anforderung zeigt, dass sich die Block-Indizes `0`, `3072`, `6002` und `6003` zwischen den beiden Snapshots unterscheiden. Darüber hinaus sind die Block-Indizes `6002` und `6003` nur in der ersten angegebenen Snapshot-ID und nicht in der zweiten Snapshot-ID vorhanden, da in der Antwort kein zweites Block-Token aufgeführt ist.

Mithilfe der Aktion `GetSnapshotBlock` können Sie den Block-Index und das Block-Token des Blocks angeben, für den Sie Daten abrufen möchten. Die Block-Token sind bis zur angegebenen Ablaufzeit gültig. 

```
HTTP/1.1 200 OK
  x-amzn-RequestId: fb0f6743-6d81-4be8-afbe-db11a5bb8a1f
  Content-Type: application/json
  Content-Length: 1456
  Date: Wed, 17 Jun 2020 23:25:47 GMT
  Connection: keep-alive
  
  {
      "BlockSize": 524288,
      "ChangedBlocks": [
          {
              "BlockIndex": 0,
              "FirstBlockToken": "AAUBAVaWqOCnDNuKle11s7IIX6jp6FYcC/tJuVT1GgP23AuLntwiMdJ+OJkL",
              "SecondBlockToken": "AAUBASxzy0Y0b33JVRLoYm3NOresCxn5RO+HVFzXW3Y/RwfFaPX2Edx8QHCh"
          },
          {
              "BlockIndex": 3072,
              "FirstBlockToken": "AAUBAcHp6pC5fKAC7TokoNCtAnZhqq27u6fxRfZOLEmeXLmHBf2R/Yb24MaS",
              "SecondBlockToken": "AAUBARGCaufCqBRZC8tEkPYGGkSv3vqvOjJ2xKDi3ljDFiytUxBLXYgTmkid"
          },
          {
              "BlockIndex": 6002,
              "FirstBlockToken": "AAABASqX4/NWjvNceoyMUljcRd0DnwbSwNnes1UkoP62CrQXvn47BY5435aw"
          },
          {
              "BlockIndex": 6003,
              "FirstBlockToken": "AAABASmJ0O5JxAOce25rF4P1sdRtyIDsX12tFEDunnePYUKOf4PBROuICb2A"
          },
          ...
      ],
      "ExpiryTime": 1.592976647009E9,
      "VolumeSize": 3
  }
```

------

## Abrufen von Blockdaten aus einem Snapshot
<a name="get-block-data"></a>

------
#### [ AWS CLI ]

Der folgende [get-snapshot-block](https://docs.aws.amazon.com/cli/latest/reference/ebs/get-snapshot-block.html)Beispielbefehl gibt die Daten im Blockindex `6001` mit Blocktoken `AAABASBpSJ2UAD3PLxJnCt6zun4/T4sU25Bnb8jB5Q6FRXHFqAIAqE04hJoR` als Snapshot zurück. `snap-1234567890` Die Binärdaten werden auf einem Windows-Computer in die Datei `data` im Verzeichnis `C:\Temp` ausgegeben. Wenn Sie den Befehl auf einem Linux- oder Unix-Computer ausführen, ersetzen Sie den Ausgabepfad durch `/tmp/data`, um die Daten in die Datei `data` im Verzeichnis `/tmp` auszugeben.

```
aws ebs get-snapshot-block --snapshot-id snap-1234567890 --block-index 6001 --block-token AAABASBpSJ2UAD3PLxJnCt6zun4/T4sU25Bnb8jB5Q6FRXHFqAIAqE04hJoR C:/Temp/data
```

Die folgende Beispielantwort für den vorherigen Befehl zeigt die Größe der zurückgegebenen Daten, die Prüfsumme zur Validierung der Daten und den Algorithmus der Prüfsumme. Die Binärdaten werden automatisch in dem Verzeichnis und in der Datei gespeichert, die Sie im Anforderungsbefehl angegeben haben.

```
{
      "DataLength": "524288",
      "Checksum": "cf0Y6/Fn0oFa4VyjQPOa/iD0zhTflPTKzxGv2OKowXc=",
      "ChecksumAlgorithm": "SHA256"
  }
```

------
#### [ AWS API ]

Die folgende [GetSnapshotBlock](https://docs.aws.amazon.com/ebs/latest/APIReference/API_GetSnapshotBlock.html)Beispielanforderung gibt die Daten im Blockindex `3072` mit Blocktoken `AAUBARGCaufCqBRZC8tEkPYGGkSv3vqvOjJ2xKDi3ljDFiytUxBLXYgTmkid` als Snapshot zurück`snap-0c9EXAMPLE1b30e2f`.

```
GET /snapshots/snap-0c9EXAMPLE1b30e2f/blocks/3072?blockToken=AAUBARGCaufCqBRZC8tEkPYGGkSv3vqvOjJ2xKDi3ljDFiytUxBLXYgTmkid HTTP/1.1
  Host: ebs.us-east-2.amazonaws.com
  Accept-Encoding: identity
  User-Agent: <User agent parameter>
  X-Amz-Date: 20200617T232838Z
  Authorization: <Authentication parameter>
```

Die folgende Beispielantwort für die vorherige Anforderung zeigt die Größe der zurückgegebenen Daten, die Prüfsumme zur Validierung der Daten und den Algorithmus, der zum Generieren der Prüfsumme verwendet wird. Die Binärdaten werden im Hauptteil der Antwort übertragen und wie *BlockData* im folgenden Beispiel dargestellt.

```
HTTP/1.1 200 OK
  x-amzn-RequestId: 2d0db2fb-bd88-474d-a137-81c4e57d7b9f
  x-amz-Data-Length: 524288
  x-amz-Checksum: Vc0yY2j3qg8bUL9I6GQuI2orTudrQRBDMIhcy7bdEsw=
  x-amz-Checksum-Algorithm: SHA256
  Content-Type: application/octet-stream
  Content-Length: 524288
  Date: Wed, 17 Jun 2020 23:28:38 GMT
  Connection: keep-alive
  
  BlockData
```

------