Stordatabehandling er en av de kritiske aspektene ved denne digitale æraen. Bedrifter bruker mer kunstig intelligens, maskinlæring og dataanalyse, som produserer og samler inn mer data. Derfor resulterer det i enorme mengder data som må spørres og analyseres effektivt.
Her er hvor cloud computing og Presto kan hjelpe.
Hva er Presto?
I følge Amazon AWS-definisjon: Presto er en distribuert SQL-spørringsmotor, laget for å utføre raske analytiske spørringer på datasett av alle størrelser. Det ble omdøpt på slutten av 2020 som Trino for å skille prosjektet fra Prestodb.
Presto har fordelen av å være åpen kildekode, noe som betyr at den oppdateres jevnlig og utviklere bidrar ofte til den.
Presto-plattformen fungerer med ikke-relasjonelle datakilder som:
- Amazon S3
- Hadoop
- HDFS
- MongoDB
- HBase
Og relasjonsdatabaser som:
- Min plass
- PostgresSQL og
- MS SQL Server
Med Presto, kan du søke etter data uansett hvor de er lagret. Det betyr at du ikke trenger å overføre dataene til en relasjonsdatabase eller datavarehus. Presto ble laget for SQL og støtter standard SQL-semantikk. Dette inkluderer underspørringer, komplekse spørringer, ytre sammenføyninger, distinkte tellinger og omtrentlige persentiler.
Utførelse av spørringer er også raskere, siden det går parallelt med en minnebasert arkitektur. Derfor trenger du ikke lenger bekymre deg for hvor lang tid det kan ta å søke etter en massiv database. Resultatene kommer tilbake i løpet av sekunder.
Lære hvordan distribuere Presto og dens arkitektur på dokumentasjonen deres.
Les også: Hvordan oppdatere enhetsdrivere på Windows 10? {Enkel veiledning}
Nøkkelkonsepter
Key SQL-konsepter er viden kjent. For å forstå hvordan Presto fungerer, må vi først forstå kjernekonseptene.
Servertyper
Presto bruker to servertyper: koordinator server og arbeideren server. Arbeidsnodene behandler spørringene og henter data fra koblingene. Koordinator henter resultatene og sender dem til oppdragsgiver. Koordinatorservere analyserer også uttalelser og administrerer noder.
Det fungerer på samme måte som Massive Parallel Processing-databasestyringssystemer.
Bildekilde: tutorialspoint
Presto bruker koblinger for å koble mellom det distribuerte systemet og kilden, for eksempel Amazon S3. Prestos mange koblinger, til relasjonelle og ikke-relasjonelle kilder, gjør systemet utvidbart til nesten alle datakilder.
Les også: Slik oppdaterer du drivere på Windows 10,8,7 - Oppdater enhetsdrivere
Hvordan behandler Presto forespørsler?
Når presto mottar en spørring, utfører den den ved å dele den opp i flere stadier. Vanligvis oppretter systemet et rotstadium og relaterte stadier. Stadiene fordeles deretter i oppgaver på tvers av arbeidernodene.
Fordeler med å bruke Presto
Presto er i ferd med å bli veldig populær blant store bedrifter som Netflix, Facebook, Atlassian og Airbnb. For eksempel bruker Facebook Presto til å behandle én petabyte med data hver dag, og kjører over 30 000 søk.
Presto inkluderer to separate åpen kildekode-prosjekter: PrestoSQL (nå kalt Trino) og PrestoDB. Det er veldig populært for et bredt spekter av brukstilfeller, på tvers av forskjellige typer datainnsjøer og datavarehus. La oss se på noen av fordelene som gjør Presto så populær.
1. Enkel integrasjon
En av de viktigste fordelene med Presto er at den integreres med ditt eksisterende datasystem uten å måtte modifiseres. Ved å legge til Presto legger du derfor til raske analysefunksjoner uten å måtte finpusse det eksisterende systemet ditt.
2. Raskere ytelse
En av grunnene til at Presto ble utviklet var fordi den eksisterende Apache Hive ikke fungerte bra med interaktive spørringer. Presto er designet for å håndtere interaktive BI-spørringer. Dessuten følger den push-modellen, og behandler en SQL-spørring ved å bruke flere stadier samtidig, noe som betyr at alle stadier er pipelinet uten å vente mellom stadier.
Presto har også minne-til-minne dataoverføring, uten behov for å skrive data til disk, noe som forbedrer ytelsen.
3. Designet for skyen
Presto kjører lagring og beregner separat, noe som gjør den veldig egnet for skymiljøer. Bedrifter som bruker PrestoSQL kan enkelt skalere opp eller ned avhengig av belastningen uten å forårsake tap av data. Dette kan skje fordi Presto-klyngen ikke lagrer noen data.
4. Unified SQL-grensesnitt
SQL er det mest populære språket for dataanalyse. Dataforskere, analytikere og ingeniører bruker SQL for å behandle, analysere og teste data, og integrere dem med business intelligence-verktøy.
Presto har ikke bare muligheten til å søke etter data fra SQL-kilder, men også fra NoSQL-databaser som Elasticsearch og Cassandra. Den støtter ANSI-SQL og Postgres-tilkobling. Dette gir Presto en allsidighet som andre distribuerte systemer ikke har.
Grensesnittet er ideelt for mellomstore data fordi det har det samme Vindusfunksjoner som PostgreSQL har.
Les også: Slik oppdaterer du grafikkdrivere i Windows 10 {Enkel veiledning}
Hva kan du bruke Presto til?
Presto brukes på tvers av bransjer for en lang rekke brukstilfeller. Den er spesielt egnet for ad-hoc og interaktive spørringer. La oss utforske noen vanlige brukstilfeller:
Datainnsjø-analyse
Du kan bruke PrestoSQL til å søke etter data på en datainnsjø uten å måtte transformere dataene. Presto lar deg spørre etter data hvor de sitter. Derfor kan du bruke den til å styrke datainnsjøanalysene dine ved å spørre etter strukturerte og ustrukturerte data.
Ad hoc-spørring
Presto lar deg kjøre spørringer når som helst uavhengig av hvor dataene dine befinner seg. Enda bedre, med Presto-koblinger kan teamene dine få tilgang til datasett i et bredt spekter av datakilder, og siden spørringer kjøres på sekunder i stedet for timer, yter systemet ditt raskere.
Batch ETL
I stedet for å bruke eldre batchbehandlingssystemer, kan du bruke Presto til å kjøre spørringer som er effektive på ressursene. Du kan samle data fra flere datakilder og utføre søk med høy ytelse.
Oppsummert har Presto flere fordeler for selskaper som trenger å behandle store datamengder, utføre ad hoc, interaktive spørringer og kjøre analyser fra ulike datakilder.