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.
Einen Data Lake aus einer AWS CloudTrail Quelle erstellen
Dieses Tutorial führt Sie durch die Aktionen, die Sie in der Lake Formation Formation-Konsole ausführen müssen, um Ihren ersten Data Lake aus einer AWS CloudTrail Quelle zu erstellen und zu laden.
Allgemeine Schritte zum Erstellen eines Data Lakes
Registrieren Sie einen Amazon Simple Storage Service (Amazon S3) -Pfad als Data Lake.
Erteilen Sie Lake Formation die Berechtigungen, in den Datenkatalog und in Amazon S3 S3-Standorte im Data Lake zu schreiben.
Erstellen Sie eine Datenbank, um die Metadatentabellen im Datenkatalog zu organisieren.
Verwenden Sie einen Blueprint, um einen Workflow zu erstellen. Führen Sie den Workflow aus, um Daten aus einer Datenquelle aufzunehmen.
-
Richten Sie Ihre Lake Formation Formation-Berechtigungen so ein, dass andere Personen Daten im Datenkatalog und im Data Lake verwalten können.
Richten Sie Amazon Athena so ein, dass die Daten, die Sie in Ihren Amazon S3 S3-Data Lake importiert haben, abgefragt werden.
Richten Sie Amazon Redshift Spectrum für einige Datenspeichertypen so ein, dass die Daten abgefragt werden, die Sie in Ihren Amazon S3 S3-Data Lake importiert haben.
Themen
- Zielgruppe
- Voraussetzungen
- Schritt 1: Erstellen Sie einen Data Analyst-Benutzer
- Schritt 2: Fügen Sie der Workflow-Rolle Berechtigungen zum Lesen von AWS CloudTrail Protokollen hinzu
- Schritt 3: Erstellen Sie einen Amazon S3 S3-Bucket für den Data Lake
- Schritt 4: Registrieren Sie einen Amazon S3 S3-Pfad
- Schritt 5: Erteilen Sie Berechtigungen für den Datenstandort
- Schritt 6: Erstellen Sie eine Datenbank im Datenkatalog
- Schritt 7: Erteilen Sie Datenberechtigungen
- Schritt 8: Verwenden Sie einen Blueprint, um einen Workflow zu erstellen
- Schritt 9: Führen Sie den Workflow aus
- Schritt 10: Grant SELECT auf den Tischen
- Schritt 11: Fragen Sie den Data Lake ab mit Amazon Athena
Zielgruppe
In der folgenden Tabelle sind die Rollen aufgeführt, die in diesem Tutorial zum Erstellen eines Data Lakes verwendet wurden.
Zielgruppe | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Rolle | Beschreibung | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
IAMAdministrator | Hat die AWS verwaltete Richtlinie:AdministratorAccess . Kann IAM Rollen und Amazon S3 S3-Buckets erstellen. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data-Lake-Administrator | Benutzer, der auf den Datenkatalog zugreifen, Datenbanken erstellen und anderen Benutzern Lake Formation Formation-Berechtigungen gewähren kann. Hat weniger IAM Berechtigungen als der IAM Administrator, reicht aber aus, um den Data Lake zu verwalten. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Datenanalyst | Benutzer, der Abfragen für den Data Lake ausführen kann. Hat nur genügend Berechtigungen, um Abfragen auszuführen. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Workflow-Rolle | Rolle mit den erforderlichen IAM Richtlinien zur Ausführung eines Workflows. Weitere Informationen finden Sie unter (Optional) Erstellen Sie eine IAM-Rolle für Workflows. |
Voraussetzungen
Bevor Sie beginnen:
-
Stellen Sie sicher, dass Sie die Aufgaben in abgeschlossen habenRichten Sie ein AWS Lake Formation.
-
Informieren Sie sich über den Speicherort Ihrer CloudTrail Protokolle.
-
Athena verlangt von der Datenanalyst-Persona, dass sie vor der Verwendung von Athena einen Amazon S3 S3-Bucket zum Speichern von Abfrageergebnissen erstellt.
Vertrautheit mit AWS Identity and Access Management () IAM wird vorausgesetzt. Informationen zu IAM finden Sie im IAMBenutzerhandbuch.
Schritt 1: Erstellen Sie einen Data Analyst-Benutzer
Dieser Benutzer verfügt über die Mindestberechtigungen, um den Data Lake abzufragen.
-
Öffnen Sie die IAM-Konsole unter https://console.aws.amazon.com/iam
. Melden Sie sich als der Administratorbenutzer an, den Sie in der verwalteten Richtlinie erstellt haben, Erstellen Sie einen Benutzer mit Administratorzugriff oder als Benutzer mit der AdministratorAccess
AWS verwalteten Richtlinie. -
Erstellen Sie einen Benutzer
datalake_user
mit dem Namen mit den folgenden Einstellungen:-
AWS Management Console Zugriff aktivieren.
-
Legen Sie ein Passwort fest und fordern Sie kein Zurücksetzen des Passworts an.
-
Hängen Sie die
AmazonAthenaFullAccess
AWS verwaltete Richtlinie an. -
Fügen Sie die folgende Inline-Richtlinie an. Speichern Sie die Richtlinie unter dem Namen
DatalakeUserBasic
.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lakeformation:GetDataAccess", "glue:GetTable", "glue:GetTables", "glue:SearchTables", "glue:GetDatabase", "glue:GetDatabases", "glue:GetPartitions", "lakeformation:GetResourceLFTags", "lakeformation:ListLFTags", "lakeformation:GetLFTag", "lakeformation:SearchTablesByLFTags", "lakeformation:SearchDatabasesByLFTags" ], "Resource": "*" } ] }
-
Schritt 2: Fügen Sie der Workflow-Rolle Berechtigungen zum Lesen von AWS CloudTrail Protokollen hinzu
-
Fügen Sie der Rolle die folgende Inline-Richtlinie hinzu
LakeFormationWorkflowRole
. Die Richtlinie gewährt die Erlaubnis, Ihre AWS CloudTrail Protokolle zu lesen. Speichern Sie die Richtlinie unter dem NamenDatalakeGetCloudTrail
.Weitere Informationen zum Erstellen der
LakeFormationWorkflowRole
-Rolle finden Sie unter (Optional) Erstellen Sie eine IAM-Rolle für Workflows.Wichtig
Ersetzen
<your-s3-cloudtrail-bucket>
mit dem Amazon S3 S3-Standort Ihrer CloudTrail Daten.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:GetObject", "Resource": ["arn:aws:s3:::
<your-s3-cloudtrail-bucket>
/*"] } ] } -
Stellen Sie sicher, dass der Rolle drei Richtlinien zugeordnet sind.
Schritt 3: Erstellen Sie einen Amazon S3 S3-Bucket für den Data Lake
Erstellen Sie den Amazon S3 S3-Bucket, der der Stammspeicherort Ihres Data Lakes sein soll.
-
Öffnen Sie die Amazon S3 S3-Konsole unter https://console.aws.amazon.com/s3/
und melden Sie sich als der Administratorbenutzer an, den Sie erstellt habenErstellen Sie einen Benutzer mit Administratorzugriff. -
Wählen Sie Create Bucket und erstellen Sie mit Hilfe des Assistenten einen Bucket mit dem Namen
, wo<yourName>
-datalake-cloudtrail<yourName>
ist Ihr Vor- und Nachname. Beispiel:jdoe-datalake-cloudtrail
.Eine ausführliche Anleitung zur Erstellung eines Amazon S3 S3-Buckets finden Sie unter Bucket erstellen.
Schritt 4: Registrieren Sie einen Amazon S3 S3-Pfad
Registrieren Sie einen Amazon S3 S3-Pfad als Stammverzeichnis Ihres Data Lakes.
-
Öffnen Sie die Lake Formation Formation-Konsole unter https://console.aws.amazon.com/lakeformation/
. Melden Sie sich als Data Lake-Administrator an. -
Wählen Sie im Navigationsbereich unter Registrieren und aufnehmen die Option Data Lake-Standorte aus.
-
Wählen Sie Speicherort registrieren und dann Durchsuchen aus.
-
Wählen Sie den
Bucket aus, den Sie zuvor erstellt haben, akzeptieren Sie die IAM<yourName>
-datalake-cloudtrailAWSServiceRoleForLakeFormationDataAccess
Standardrolle und wählen Sie dann Standort registrieren aus.Weitere Informationen zur Registrierung von Standorten finden Sie unterHinzufügen eines Amazon S3 S3-Standorts zu Ihrem Data Lake.
Schritt 5: Erteilen Sie Berechtigungen für den Datenstandort
Prinzipale müssen über Datenspeicherberechtigungen für einen Data Lake-Standort verfügen, um Datenkatalogtabellen oder Datenbanken zu erstellen, die auf diesen Speicherort verweisen. Sie müssen der IAM Rolle für Workflows Datenspeicherberechtigungen erteilen, damit der Workflow in das Datenaufnahmeziel schreiben kann.
-
Wählen Sie im Navigationsbereich unter Berechtigungen die Option Datenspeicherorte aus.
-
Wählen Sie Grant aus, und treffen Sie im Dialogfeld Berechtigungen gewähren die folgenden Optionen:
-
Wählen Sie
LakeFormationWorkflowRole
für IAMBenutzer und Rollen. -
Wählen Sie für Speicherorte Ihren
Bucket aus.<yourName>
-datalake-cloudtrail
-
-
Wählen Sie Gewähren.
Weitere Informationen zu Berechtigungen für Datenspeicherorte finden Sie unterUnderlying data access control.
Schritt 6: Erstellen Sie eine Datenbank im Datenkatalog
Metadatentabellen im Lake Formation Data Catalog werden in einer Datenbank gespeichert.
-
Wählen Sie im Navigationsbereich unter Datenkatalog die Option Datenbanken aus.
-
Wählen Sie Datenbank erstellen aus und geben Sie unter Datenbankdetails den Namen ein
lakeformation_cloudtrail
. -
Lassen Sie die anderen Felder leer und wählen Sie Datenbank erstellen aus.
Schritt 7: Erteilen Sie Datenberechtigungen
Sie müssen Berechtigungen zum Erstellen von Metadatentabellen im Datenkatalog erteilen. Da der Workflow mit der Rolle ausgeführt wirdLakeFormationWorkflowRole
, müssen Sie der Rolle diese Berechtigungen erteilen.
-
Wählen Sie in der Lake Formation Formation-Konsole im Navigationsbereich unter Datenkatalog die Option Datenbanken aus.
-
Wählen Sie die
lakeformation_cloudtrail
Datenbank aus und wählen Sie dann in der Dropdownliste Aktionen unter der Überschrift Berechtigungen die Option Grant aus. -
Treffen Sie im Dialogfeld „Datenberechtigungen gewähren“ die folgenden Optionen:
-
Wählen Sie unter Principals für IAMBenutzer und Rollen die Option aus.
LakeFormationWorkflowRole
-
Wählen Sie unter LF-Tags oder Katalogressourcen die Option Benannte Datenkatalogressourcen aus.
-
Bei Datenbanken sollten Sie sehen, dass die
lakeformation_cloudtrail
Datenbank bereits hinzugefügt wurde. -
Wählen Sie unter Datenbankberechtigungen die Optionen Tabelle erstellen, Ändern und Löschen aus, und deaktivieren Sie Super, falls diese Option ausgewählt ist.
Ihr Dialogfeld „Datenberechtigungen gewähren“ sollte jetzt wie in diesem Screenshot aussehen.
-
-
Wählen Sie Gewähren.
Weitere Informationen zur Erteilung von Lake Formation Formation-Berechtigungen finden Sie unterVerwaltung von Lake Formation Formation-Berechtigungen.
Schritt 8: Verwenden Sie einen Blueprint, um einen Workflow zu erstellen
Um die CloudTrail Protokolle zu lesen, ihre Struktur zu verstehen und die entsprechenden Tabellen im Datenkatalog zu erstellen, müssen wir einen Workflow einrichten, der aus AWS Glue Crawlern, Jobs, Triggern und Workflows besteht. Die Pläne von Lake Formation vereinfachen diesen Prozess.
Der Workflow generiert die Jobs, Crawler und Trigger, die Daten erkennen und in Ihren Data Lake aufnehmen. Sie erstellen einen Workflow, der auf einem der vordefinierten Lake Formation-Blueprints basiert.
-
Wählen Sie in der Lake Formation Formation-Konsole im Navigationsbereich Blueprints und dann Blueprint verwenden aus.
-
Wählen Sie auf der Seite Blueprint verwenden unter Blueprint-Typ die Option aus. AWS CloudTrail
-
Wählen Sie unter Quelle importieren eine CloudTrail Quelle und ein Startdatum aus.
-
Geben Sie unter Importziel die folgenden Parameter an:
Zieldatenbank lakeformation_cloudtrail
Zielspeicherort s3://
<yourName>
-datalake-cloudtrailData format (Datenformat) Parquet -
Wählen Sie für die Importhäufigkeit die Option Bei Bedarf ausführen aus.
-
Geben Sie unter Importoptionen die folgenden Parameter an:
Name des Workflows lakeformationcloudtrailtest
IAMRolle LakeFormationWorkflowRole
Tabellenpräfix cloudtrailtest
Anmerkung
Muss in Kleinbuchstaben geschrieben werden.
-
Wählen Sie Create und warten Sie, bis die Konsole meldet, dass der Workflow erfolgreich erstellt wurde.
Tipp
Haben Sie die folgende Fehlermeldung erhalten?
User: arn:aws:iam::
<account-id>
:user/<datalake_administrator_user>
is not authorized to perform: iam:PassRole on resource:arn:aws:iam::<account-id>
:role/LakeFormationWorkflowRole...Falls ja, überprüfen Sie, ob Sie ersetzt haben
<account-id>
in der Inline-Richtlinie für den Data Lake-Administratorbenutzer mit einer gültigen AWS Kontonummer.
Schritt 9: Führen Sie den Workflow aus
Da Sie angegeben haben, dass es sich um einen Workflow handelt run-on-demand, müssen Sie den Workflow manuell starten.
-
Wählen Sie auf der Seite Blueprints den Workflow aus
lakeformationcloudtrailtest
, und klicken Sie im Menü Aktionen auf Start.Während der Ausführung des Workflows können Sie seinen Fortschritt in der Spalte Status der letzten Ausführung einsehen. Wählen Sie gelegentlich die Schaltfläche „Aktualisieren“.
Der Status geht von RUNNING, zu Discovering, zu Importiert, zu COMPLETED.
Wenn der Workflow abgeschlossen ist:
-
Der Datenkatalog wird neue Metadatentabellen enthalten.
-
Ihre CloudTrail Protokolle werden in den Data Lake aufgenommen.
Wenn der Workflow fehlschlägt, gehen Sie wie folgt vor:
-
Wählen Sie den Workflow aus, und klicken Sie im Menü Aktionen auf Diagramm anzeigen.
Der Workflow wird in der AWS Glue Konsole geöffnet.
-
Wählen Sie den Workflow aus und gehen Sie auf die Registerkarte History (Verlauf).
-
Wählen Sie unter Verlauf den letzten Lauf aus und klicken Sie auf Laufdetails anzeigen.
-
Wählen Sie im dynamischen (Laufzeit-) Diagramm einen fehlgeschlagenen Job oder Crawler aus und überprüfen Sie die Fehlermeldung. Fehlgeschlagene Knoten sind entweder rot oder gelb.
-
Schritt 10: Grant SELECT auf den Tischen
Sie müssen die SELECT
Berechtigung für die neuen Datenkatalogtabellen erteilen, damit der Datenanalyst die Daten abfragen kann, auf die die Tabellen verweisen.
Anmerkung
Ein Workflow erteilt dem Benutzer, der ihn ausgeführt hat, automatisch die SELECT
Berechtigung für die Tabellen, die er erstellt hat. Da der Data Lake-Administrator diesen Workflow ausgeführt hat, müssen Sie ihn SELECT
dem Datenanalysten erteilen.
-
Wählen Sie in der Lake Formation Formation-Konsole im Navigationsbereich unter Datenkatalog die Option Datenbanken aus.
-
Wählen Sie die
lakeformation_cloudtrail
Datenbank aus und wählen Sie dann in der Dropdownliste Aktionen unter der Überschrift Berechtigungen die Option Grant aus. -
Treffen Sie im Dialogfeld „Datenberechtigungen gewähren“ die folgenden Optionen:
-
Wählen Sie unter Principals für IAMBenutzer und Rollen die Option aus.
datalake_user
-
Wählen Sie unter LF-Tags oder Katalogressourcen die Option Benannte Datenkatalogressourcen aus.
-
Für Datenbanken sollte die
lakeformation_cloudtrail
Datenbank bereits ausgewählt sein. -
Wählen Sie für Tabellen die Option
cloudtrailtest-cloudtrail
. -
Wählen Sie unter Tabellen- und Spaltenberechtigungen die Option Auswählen aus.
-
-
Wählen Sie Gewähren.
Der nächste Schritt wird als Datenanalyst ausgeführt.
Schritt 11: Fragen Sie den Data Lake ab mit Amazon Athena
Verwenden Sie die Amazon Athena Konsole, um die CloudTrail Daten in Ihrem Data Lake abzufragen.
-
Öffnen Sie die Athena-Konsole unter https://console.aws.amazon.com/athena/
und melden Sie sich als Datenanalyst, Benutzer datalake_user
an. -
Falls erforderlich, wählen Sie Get Started, um zum Athena-Abfrage-Editor zu gelangen.
-
Wählen Sie für Datenquelle AwsDataCatalog aus.
-
Wählen Sie unter Database (Datenbank) Option
lakeformation_cloudtrail
aus.Die Tabellenliste wird aufgefüllt.
-
Wählen Sie im Überlaufmenü (3 horizontal angeordnete Punkte) neben der Tabelle
cloudtrailtest-cloudtrail
die Option Tabellenvorschau und anschließend Ausführen aus.Die Abfrage wird ausgeführt und zeigt 10 Datenzeilen an.
Wenn Sie Athena noch nicht verwendet haben, müssen Sie zunächst einen Amazon S3 S3-Standort in der Athena-Konsole zum Speichern der Abfrageergebnisse konfigurieren. Sie
datalake_user
müssen über die erforderlichen Berechtigungen für den Zugriff auf den von Ihnen Amazon S3 S3-Bucket verfügen.
Anmerkung
Nachdem Sie das Tutorial abgeschlossen haben, gewähren Sie den Prinzipalen in Ihrer Organisation Datenberechtigungen und Datenspeicherberechtigungen.