Analysieren und visualisieren Sie verschachtelte JSON-Daten mit Amazon Athena und Amazon QuickSight - AWS Prescriptive Guidance

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.

Analysieren und visualisieren Sie verschachtelte JSON-Daten mit Amazon Athena und Amazon QuickSight

Erstellt von Anoop Singh (AWS)

Umgebung: PoC oder Pilotprojekt

Technologien: Analytik; Datenbanken

AWS-Dienste: Amazon Athena; Amazon QuickSight

Übersicht

Dieses Muster erklärt, wie eine verschachtelte Datenstruktur im JSON-Format mithilfe von Amazon Athena in eine tabellarische Ansicht übersetzt und die Daten anschließend in Amazon visualisiert werden. QuickSight

Sie können Daten im JSON-Format für API-gestützte Datenfeeds von Betriebssystemen verwenden, um Datenprodukte zu erstellen. Diese Daten können Ihnen auch dabei helfen, Ihre Kunden und deren Interaktionen mit Ihren Produkten besser zu verstehen, sodass Sie Benutzererlebnisse maßgeschneidert und Ergebnisse vorhersagen können.

Voraussetzungen und Einschränkungen

Voraussetzungen

  • Ein aktiver AWS-Konto

  • Eine JSON-Datei, die eine verschachtelte Datenstruktur darstellt (dieses Muster bietet eine Beispieldatei)

Einschränkungen:

  • JSON-Funktionen lassen sich gut in bestehende SQL-orientierte Funktionen in Athena integrieren. Sie sind jedoch nicht ANSI SQL-kompatibel, und es wird erwartet, dass die JSON-Datei jeden Datensatz in einer separaten Zeile enthält. Möglicherweise müssen Sie die ignore.malformed.json Eigenschaft in Athena verwenden, um anzugeben, ob falsch formatierte JSON-Datensätze in Nullzeichen umgewandelt werden sollen oder ob Fehler generiert werden sollen. Weitere Informationen finden Sie in der Athena-Dokumentation unter Bewährte Methoden zum Lesen von JSON-Daten.

  • Dieses Muster berücksichtigt nur einfache und kleine Mengen von Daten im JSON-Format. Wenn Sie diese Konzepte in großem Umfang verwenden möchten, sollten Sie die Datenpartitionierung in Betracht ziehen und Ihre Daten in größeren Dateien konsolidieren.

Architektur

Das folgende Diagramm zeigt die Architektur und den Arbeitsablauf für dieses Muster. Die verschachtelten Datenstrukturen werden in Amazon Simple Storage Service (Amazon S3) im JSON-Format gespeichert. In Athena werden die JSON-Daten einer Athena-Datenstruktur zugeordnet. Anschließend erstellen Sie eine Ansicht, um die Daten zu analysieren und die Datenstruktur in zu visualisieren. QuickSight

Analyse und Visualisierung verschachtelter JSON-Daten auf AWS

Tools

AWS-Services

  • Amazon Simple Storage Service (Amazon S3) ist ein cloudbasierter Objektspeicherservice, der Sie beim Speichern, Schützen und Abrufen beliebiger Datenmengen unterstützt. Dieses Muster verwendet Amazon S3 zum Speichern der JSON-Datei.

  • Amazon Athena ist ein interaktiver Abfrageservice, mit dem Sie Daten mithilfe von Standard-SQL direkt in Amazon S3 analysieren können. Dieses Muster verwendet Athena, um die JSON-Daten abzufragen und zu transformieren. Mit einigen Aktionen in der AWS Management Console können Sie Athena auf Ihre Daten in Amazon S3 verweisen und Standard-SQL verwenden, um einmalige Abfragen auszuführen. Athena ist serverlos, sodass keine Infrastruktur eingerichtet oder verwaltet werden muss, und Sie zahlen nur für die Abfragen, die Sie ausführen. Athena skaliert automatisch und führt Abfragen parallel aus, sodass die Ergebnisse auch bei großen Datensätzen und komplexen Abfragen schnell sind.     

  • Amazon QuickSight ist ein Business Intelligence (BI) -Service auf Cloud-Ebene, mit dem Sie Ihre Daten auf einem einzigen Dashboard visualisieren, analysieren und melden können. QuickSight ermöglicht es Ihnen, auf einfache Weise interaktive Dashboards zu erstellen und zu veröffentlichen, die Erkenntnisse aus maschinellem Lernen (ML) enthalten. Sie können von jedem Gerät aus auf diese Dashboards zugreifen und sie in Ihre Anwendungen, Portale und Websites einbetten.

Beispiel-Code

Die folgende JSON-Datei bietet eine verschachtelte Datenstruktur, die Sie in diesem Muster verwenden können.

{ "symbol": "AAPL", "financials": [ { "reportDate": "2017-03-31", "grossProfit": 20591000000, "costOfRevenue": 32305000000, "operatingRevenue": 52896000000, "totalRevenue": 52896000000, "operatingIncome": 14097000000, "netIncome": 11029000000, "researchAndDevelopment": 2776000000, "operatingExpense": 6494000000, "currentAssets": 101990000000, "totalAssets": 334532000000, "totalLiabilities": 200450000000, "currentCash": 15157000000, "currentDebt": 13991000000, "totalCash": 67101000000, "totalDebt": 98522000000, "shareholderEquity": 134082000000, "cashChange": -1214000000, "cashFlow": 12523000000, "operatingGainsLosses": null } ] }

Epen

AufgabeBeschreibungErforderliche Fähigkeiten

Erstellen Sie einen S3-Bucket.

Um einen Bucket zum Speichern der JSON-Datei zu erstellen, melden Sie sich bei der an AWS Management Console, öffnen Sie die Amazon S3 S3-Konsole und wählen Sie dann Bucket erstellen. Weitere Informationen finden Sie in der Amazon S3 S3-Dokumentation unter Bucket erstellen

Systemadministrator

Fügen Sie die verschachtelten JSON-Daten hinzu.

Laden Sie Ihre JSON-Datei in den S3-Bucket hoch. Eine JSON-Beispieldatei finden Sie im vorherigen Abschnitt. Anweisungen finden Sie unter Objekte hochladen in der Amazon S3 S3-Dokumentation.

Systemadministrator
AufgabeBeschreibungErforderliche Fähigkeiten

Erstellen Sie eine Tabelle für die Zuordnung der JSON-Daten.

  1. Öffnen Sie die Athena-Konsole.

  2. Erstellen Sie eine Datenbank, indem Sie den Anweisungen in der Athena-Dokumentation folgen.

  3. Wählen Sie im Datenbankmenü die Datenbank aus, die Sie erstellt haben.

  4. Geben Sie im Abfrage-Editor eine CREATE TABLE Anweisung wie die folgende ein:

    CREATE EXTERNAL TABLE financials_json ( symbol string, financials array< struct<reportdate: string, grossprofit: bigint, totalrevenue: bigint, totalcash: bigint, totaldebt: bigint, researchanddevelopment: bigint>> ) ROW FORMAT SERDE 'org.openx.data.jsonserde.JsonSerDe' LOCATION 's3://s3bucket-for-athena/'

    wo LOCATION gibt den Speicherort des S3-Buckets an, der die JSON-Datei enthält.

  5. Wählen Sie Ausführen, um die Tabelle zu erstellen.

Weitere Informationen zum Erstellen von Tabellen finden Sie in der Athena-Dokumentation.

Developer

Erstellen Sie eine Ansicht für die Datenanalyse.

  1. Öffnen Sie die Athena-Konsole.

  2. Erstellen Sie eine Datenbank, indem Sie den Anweisungen in der Athena-Dokumentation folgen.

  3. Wählen Sie im Datenbankmenü die Datenbank aus, die Sie erstellt haben.

  4. Geben Sie im Abfrage-Editor eine CREATE VIEW Anweisung wie die folgende ein:

    CREATE OR REPLACE VIEW financial_json_view AS SELECT symbol, financials[1].reportdate one_report_date, -- indexes start with 1 financials[1].totalrevenue one_total_revenue, financials[1].reportdate another_report_date, financials[1].totalrevenue another_total_revenue FROM financials_json where symbol='AAPL' ORDER BY 1
  5. Wählen Sie Run (Ausführen), um die Ansicht zu erstellen.

Weitere Informationen zum Erstellen von Ansichten finden Sie in der Athena-Dokumentation.

Developer

Analysieren und validieren Sie die Daten.

  1. Öffnen Sie die Athena-Konsole.

  2. Führen Sie Abfragen im Abfrage-Editor mithilfe der Ansicht aus, die Sie im vorherigen Schritt erstellt haben.

  3. Überprüfen Sie die Daten anhand der JSON-Datei, um sicherzustellen, dass Spaltennamen und Datentypen korrekt zugeordnet sind.

Developer
AufgabeBeschreibungErforderliche Fähigkeiten

Richten Sie Athena als Datenquelle in QuickSight ein.

  1. Öffnen Sie die QuickSight -Konsole.

  2. Wählen Sie Datensätze, Neuer Datensatz aus.

  3. Wählen Sie Athena als Datenquelle.

  4. Wählen Sie die Datenbank aus, die die von Ihnen erstellte Ansicht enthält.

  5. Wählen Sie die Ansicht aus, für die Sie einen Datensatz erstellen möchten.

  6. Wählen Sie auf der Seite Datensatzerstellung abschließen die Option Daten direkt abfragen aus.

  7. Wählen Sie Visualize aus.

Systemadministrator

Visualisieren Sie Daten in QuickSight.

  1. Nachdem Sie den Datensatz visualisiert haben, wählen Sie die Grafiken im linken Bereich aus und wählen Sie Felder für den Datensatz aus. Weitere Informationen finden Sie im Tutorial in der QuickSight Dokumentation.

  2. Speichern Sie die Änderungen an der Analyse.

  3. Wählen Sie Dashboard veröffentlichen, um die von Ihnen erstellten Grafiken zu veröffentlichen.

Datenanalyst

Zugehörige Ressourcen