Einbinden von S3 für HDFS-Tiering in einen Big Data-Cluster

Die folgenden Abschnitte zeigen ein Beispiel für die Konfiguration von HDFS-Tiering mit einer S3-Speicherdatenquelle.

Wichtig

Das Microsoft SQL Server 2019-Big Data-Cluster-Add-On wird eingestellt. Der Support für SQL Server 2019-Big Data-Clusters endet am 28. Februar 2025. Alle vorhandenen Benutzer*innen von SQL Server 2019 mit Software Assurance werden auf der Plattform vollständig unterstützt, und die Software wird bis zu diesem Zeitpunkt weiterhin über kumulative SQL Server-Updates verwaltet. Weitere Informationen finden Sie im Ankündigungsblogbeitrag und unter Big Data-Optionen auf der Microsoft SQL Server-Plattform.

Voraussetzungen

  • Bereitgestellte Big Data-Cluster
  • Big-Data-Tools
    • azdata
    • kubectl
  • Erstellen von Daten und Hochladen in einen S3-Bucket
    • Laden Sie CSV- oder Parquet-Dateien in Ihren S3-Bucket hoch. Dies sind die externen HDFS-Daten, die im Big Data-Cluster in HDFS eingebunden werden.

Zugriffsschlüssel

Festlegen der Umgebungsvariablen für Zugriffsschlüssel-Anmeldeinformationen

Öffnen Sie eine Eingabeaufforderung auf einem Clientcomputer, der auf Ihren Big Data-Cluster zugreifen kann. Legen Sie eine Umgebungsvariable im folgenden Format fest. Die Anmeldeinformationen müssen sich in einer durch Kommas getrennten Liste befinden müssen. Der „Set“-Befehl wird unter Windows verwendet. Wenn Sie Linux verwenden, verwenden Sie stattdessen „export“.

 set MOUNT_CREDENTIALS=fs.s3a.access.key=<Access Key ID of the key>,
 fs.s3a.secret.key=<Secret Access Key of the key>

Tipp

Weitere Informationen zum Erstellen von S3-Zugriffsschlüsseln finden Sie unter S3-Zugriffsschlüssel.

Einbinden des HDFS-Remotespeichers

Nachdem Sie nun eine Anmeldeinformationendatei mit Zugriffsschlüsseln vorbereitet haben, können Sie mit dem Einbinden beginnen. In den folgenden Schritten wird der HDFS-Remotespeicher in S3 in den lokalen HDFS-Speicher Ihres Big Data-Clusters eingebunden.

  1. Suchen Sie mit kubectl die IP-Adresse für den Endpunkt controller-svc-external-Dienst in Ihrem Big Data-Cluster. Suchen Sie nach der externen IP-Adresse.

    kubectl get svc controller-svc-external -n <your-big-data-cluster-name>
    
  2. Melden Sie sich mit azdata über die externe IP-Adresse des Controllerendpunkts mit Ihrem Benutzernamen und -kennwort für den Cluster an:

    azdata login -e https://<IP-of-controller-svc-external>:30080/
    
  3. Legen Sie die Umgebungsvariable MOUNT_CREDENTIALS gemäß der obigen Anweisungen fest.

  4. Binden Sie den HDFS-Remotespeicher mit dem Befehl azdata bdc hdfs mount create in Azure ein. Ersetzen Sie die Platzhalterwerte, bevor Sie den folgenden Befehl ausführen:

    azdata bdc hdfs mount create --remote-uri s3a://<S3 bucket name> --mount-path /mounts/<mount-name>
    

    Hinweis

    Der „mount create“-Befehl ist asynchron. Zurzeit gibt keine Meldung an, ob die Einbindung erfolgreich war. Weitere Informationen zum Überprüfen des Status Ihrer Einbindungen finden Sie im Statusabschnitt.

Wenn die Einbindung erfolgreich war, sollten Sie in der Lage sein, die HDFS-Daten abzufragen und Spark-Aufträge dafür auszuführen. Sie wird im HDFS für Ihren Big Data-Cluster an dem Speicherort angezeigt, der durch --mount-path angegeben wird.

Abrufen des Status von Einbindungen

Verwenden Sie den folgenden Befehl, um die Status aller Einbindungen in Ihrem Big Data-Cluster aufzulisten:

azdata bdc hdfs mount status

Verwenden Sie den folgenden Befehl, um den Status einer Einbindung in einem bestimmten Pfad im HDFS aufzulisten:

azdata bdc hdfs mount status --mount-path <mount-path-in-hdfs>

Aktualisieren einer Einbindung

Im folgenden Beispiel wird die Einbindung aktualisiert.

azdata bdc hdfs mount refresh --mount-path <mount-path-in-hdfs>

Löschen der Einbindung

Verwenden Sie zum Löschen den Einbindung den Befehl azdata bdc hdfs mount delete, und geben Sie den Einbindungspfad in HDFS an:

azdata bdc hdfs mount delete --mount-path <mount-path-in-hdfs>