sql >> Database teknologi >  >> Database Tools >> DBeaver

Spor ISS med SAP Data Intelligence og SAP HANA:Gem og analyser data

Dette eksempel bruges som en demo i en session INT105 – Byg datapipelines med SAP Data Intelligence på SAP TechEd 2020. Du er mere end velkommen til at deltage i denne session og se den demo. Men det er ikke en forudsætning, hvis du vil fortsætte med dette indlæg.

I det forrige indlæg begyndte vi at bygge en datapipeline i SAP Data Intelligence til indtagelse data fra et API-slutpunkt og til transformere dataene fra det TLE-kodede format til en læsbar JSON-nyttelast. Nu er det tid til at indlæse disse data, og vi vil bruge SAP HANA, ekspresudgave, til det.

Ok, lad os fortsætte vores rejse...

Tilføj SAP HANA-forbindelseskonfiguration

Lad os gå til Connection Management-applikationen i SAP Data Intelligence.

I default lejer af en prøveforekomst kan du en forbindelse HANA_LOCALHOST blandt andre. Det kan være en god mulighed at lege med, hvis du vil læse/skrive data fra SAP HANA indenfor Data Intelligence prøveeksemplar. Men i vores tilfælde ønsker jeg også at have adgang til data i SAP HANA db fra andre eksterne klienter.

Lad os skabe en anden forbindelse. Som jeg har nævnt, vil det være cloud-hostet forekomst af SAP HANA, ekspresudgave. Jeg vil kalde det MyHXE_HXE_SYSTEM .

Du kan muligvis se, at jeg ændrer Use TLS mulighed på. Det er bedre at være sikker end undskyld.

Test forbindelse lykkedes, så lad mig Opret denne konfiguration.

Tjek objekter i Metadata Explorer

Nu hvor forbindelsen er oprettet, lad os tjekke den i Metadata Explorer-applikationen. Hvis du ikke er bekendt med Metadata Explorer, vil jeg anbefale at tjekke tutorials først:

  • Brug, opdag og profiler data med SAP Data Intelligence, prøveversion

I applikationen skal du gå til Katalog> Gennemse forbindelser...

… og derefter til vores forbindelse (i mit tilfælde er det MyHXE_HXE_SYSTEM ) og til SYSTEM skema. I mit system er det tomt i øjeblikket.

Tilføj SAP HANA-operatør til datapipelinen

Tilbage til Modeler-applikationen og vores graf oprettet i det forrige indlæg, lad os tilføje en SAP HANA-klientoperatør til datapipelinen.

Tilslut den sidste Aflytnings out port til HANA-klientens data port.

Lad os konfigurere operatøren ved at definere følgende parametre:

  • Navn:ISS locs to SAP HANA
  • Forbindelse:MyHXE_HXE_SYSTEM fra Connection Manager
  • Tabelnavn:"ISS_TRACK"
  • Tabelkolonner:[{"name":"TSTMP","type":"SECONDDATE"},{"name":"LAT","type":"DOUBLE"},{"name":"LON","type":"DOUBLE"},{"name":"ALT","type":"INTEGER"}]
  • Inputformat:JSON
  • Indsæt tilstand:INSERT
  • Tabelinitialisering:Opret
  • Decimaloutput:flydende komma
  • Afslut ved fejl:False

JSON-konfigurationen af ​​tabelkolonner skulle give os mulighed for at se en flot formularvisning, når den åbnes i forhåndsvisningen af ​​tabeldetaljer.

Når denne ekstra konfiguration er fuldført, er det tid til at gemme og udføre grafen.

Og når den først kører...

Tjek ISS_TRACK objekt i Metadata Explorer

Gå tilbage til Metadata Explorer. Opdater om nødvendigt skærmen for at se ændringer i SYSTEM skema for MyHXE_HXE_SYSTEM forbindelse.

Du bør se ISS_TRACK objekt af typen "Tabel" der.

Gå til faktaarket for dette objekt, og skift til dataeksempelvisning. Du bør se data indsat af den løbende graf.

Lad grafen køre i mindst 10 minutter for at indsamle nogle data.

Udforskning af data i SAP HANA

Når der er indsamlet mindst 10 minutters data, kan vi stoppe grafens udførelse og gå videre til udforskning af data i SAP HANA.

Hvis du fulgte mine tidligere indlæg, så ved du, at takket være Mathias Kemeter kan jeg godt lide at bruge DBeaver database manager takket være dens flotte indbyggede visualisering af rumlige data.

Lad os tage et kig på, hvilken vej ISS ​​lavede, mens jeg kørte en graf, der indsamlede dataene.

SELECT UTCTOLOCAL("TSTMP") AS "TSTMP", "LON", "LAT", "ALT", 
SECONDS_BETWEEN (UTCTOLOCAL("TSTMP"), NOW()) AS "Sec_Ago", 
NEW ST_POINT('Point Z('||"LON"||' '||"LAT"||' '||"ALT"||')',4326) AS "Loc3D"
FROM "ISS_TRACK";

Lad os beregne satellittens "jordhastighed" - som om den bevægede sig på jordens overflade - ved det sidst registrerede tidsstempel.

SELECT TOP 1
  UTCTOLOCAL ("TSTMP", 'CET') as TIMECET,
  ROUND(IFNULL(NEW ST_Point('POINT ('||"LON"||' '||"LAT"||')', 4326).ST_Distance
  (NEW ST_Point('POINT ('||LAG("LON", 1, "LON") OVER (ORDER BY "TSTMP")||' '||LAG("LAT", 1, "LAT") OVER (ORDER BY "TSTMP")||')', 4326), 'kilometer')/
  SECONDS_BETWEEN (LAG("TSTMP", 1) OVER (ORDER BY "TSTMP"),"TSTMP"), 0), 2) AS "KMpS"
FROM
	(SELECT TOP 2 
		UTCTOLOCAL("TSTMP") AS "TSTMP", "LON", "LAT", "ALT", 
		SECONDS_BETWEEN (UTCTOLOCAL("TSTMP"), NOW()) AS "Sec_Ago", 
		NEW ST_POINT('Point Z('||"LON"||' '||"LAT"||' '||"ALT"||')',4326) AS "Loc3D"
	FROM "SYSTEM"."ISS_TRACK"
	ORDER BY "TSTMP" DESC)
ORDER BY "TSTMP" DESC

6,33 kilometer i sekundet. Uden at få en fartbøde!


  1. Kan ikke indstille fremmed_nøgle_tjek til 0 / off

  2. Hvorfor overholder SSMS ikke mine standarddatabaseindstillinger?

  3. Sådan redigeres data i resultatgitter i SQL Server Management Studio

  4. SSAS DB er ikke synlig i Management Studio, men kan ses i Excel