Presto SQL, nu Trino, ger kraften i frågemotorer för Big Data Analytics

Stordatabehandling är en av de kritiska aspekterna av denna digitala era. Företag använder mer artificiell intelligens, maskininlärning och dataanalys, som producerar och samlar in mer data. Därför resulterar det i enorma mängder data som behöver efterfrågas och analyseras effektivt.

Här kan cloud computing och Presto hjälpa dig.

Innehållsförteckningvisa
Vad är Presto?
Nyckelbegrepp
Servertyper
Hur bearbetar Presto frågor?
Fördelar med att använda Presto
1. Enkel integration
2. Snabbare prestanda
3. Designad för molnet
4. Unified SQL-gränssnitt
Vad kan du använda Presto till?
Datasjöanalys
Ad hoc-förfrågningar
Batch ETL

Vad är Presto?

Enligt Amazon AWS definition: Presto är en distribuerad SQL-frågemotor, skapad för att utföra snabba analytiska frågor på datauppsättningar av alla storlekar. Det döptes om i slutet av 2020 till Trino för att skilja projektet från Prestodb.

Presto har fördelen av att vara öppen källkod, vilket innebär att den uppdateras regelbundet och utvecklare bidrar till det ofta.

Presto-plattformen fungerar med icke-relationella datakällor tycka om:

  • Amazon S3
  • Hadoop
  • HDFS
  • MongoDB
  • HBase

Och relationsdatabaser tycka om:

  • Mitt utrymme
  • PostgresSQL och
  • MS SQL Server

Med Presto, kan du söka efter data var den än lagras. Det betyder att du inte behöver överföra data till en relationsdatabas eller datalager. Presto skapades för SQL och stöder standard SQL-semantik. Detta inkluderar underfrågor, komplexa frågor, yttre kopplingar, distinkta räkningar och ungefärliga percentiler.

Det går också snabbare att köra frågor, eftersom det går parallellt med en minnesbaserad arkitektur. Därför behöver du inte längre oroa dig för hur lång tid det kan ta att söka efter en massiv databas. Resultaten kommer tillbaka på några sekunder.

Lära sig hur man distribuerar Presto och dess arkitektur på deras dokumentation.

Läs också: Hur uppdaterar jag enhetsdrivrutiner i Windows 10? {Enkel guide}


Nyckelbegrepp

Viktiga SQL-koncept är allmänt kända. För att förstå hur Presto fungerar måste vi först förstå dess kärnkoncept.

Servertyper

Presto använder två servertyper: den samordnare server och arbetaren server. Arbetarnoderna behandlar frågorna och hämtar data från anslutningarna. Samordnaren hämtar resultaten och skickar dem till klienten. Koordinatorservrar analyserar också uttalanden och hanterar noder.

Det fungerar på samma sätt som Massive Parallel Processing databashanteringssystem.

Databashanteringssystem för massiv parallell bearbetningBildkälla: tutorialspoint

Presto använder kontakter för att länka mellan det distribuerade systemet och källan, till exempel Amazon S3. Prestos många kontakter, till relationella och icke-relationella källor, gör systemet utbyggbart till nästan alla datakällor.

Läs också: Hur man uppdaterar drivrutiner på Windows 10,8,7 – Uppdatera enhetsdrivrutiner


Hur bearbetar Presto frågor?

När presto tar emot en fråga exekverar den den genom att dela upp den i flera steg. Vanligtvis skapar systemet ett rotstadium och relaterade stadier. Stadierna fördelas sedan i uppgifter över arbetarnoderna.


Fördelar med att använda Presto

Presto blir mycket populärt bland stora företag som Netflix, Facebook, Atlassian och Airbnb. Till exempel använder Facebook Presto för att bearbeta en petabyte data varje dag och kör över 30 000 frågor.

Presto inkluderar två separata projekt med öppen källkod: PrestoSQL (nu kallad Trino) och PrestoDB. Det är mycket populärt för ett brett spektrum av användningsfall, över olika typer av datasjöar och datalager. Låt oss titta på några av fördelarna som gör Presto så populär.

1. Enkel integration

En av de viktigaste fördelarna med Presto är att den integreras med ditt befintliga datasystem utan att behöva modifieras. Genom att lägga till Presto lägger du därför till snabba analysfunktioner utan att behöva justera ditt befintliga system.

2. Snabbare prestanda

En av anledningarna till att Presto utvecklades var att den befintliga Apache Hive inte fungerade bra med interaktiva frågor. Presto är designat för att hantera interaktiva BI-frågor. Dessutom följer den push-modellen, bearbetar en SQL-fråga med flera steg samtidigt, vilket innebär att alla steg är pipelinerade utan att vänta mellan stegen.

Presto har också minne-till-minne dataöverföring, utan att behöva skriva data till disk, vilket förbättrar prestandan.

3. Designad för molnet

Presto kör lagring och beräknar separat, vilket gör den mycket lämplig för molnmiljöer. Företag som använder PrestoSQL kan enkelt skala upp eller ner beroende på belastningen utan att orsaka dataförlust. Detta kan hända eftersom Presto-klustret inte lagrar några data.

4. Unified SQL-gränssnitt

SQL är det mest populära språket för dataanalys. Datavetare, analytiker och ingenjörer använder SQL för att bearbeta, analysera och testa data, och integrera dem med affärsinformationsverktyg.

Presto har förmågan att inte bara fråga data från SQL-källor utan också från NoSQL-databaser som Elasticsearch och Cassandra. Den stöder ANSI-SQL och Postgres-anslutning. Detta ger Presto en mångsidighet som andra distribuerade system inte har.

Gränssnittet är idealiskt för medelstora data eftersom det har samma Fönsterfunktioner som PostgreSQL har.

Läs också: Hur man uppdaterar grafikdrivrutiner i Windows 10 {Enkel guide}


Vad kan du använda Presto till?

Presto används i olika branscher för en mängd olika användningsfall. Den är särskilt lämplig för ad-hoc och interaktiva frågor. Låt oss utforska några vanliga användningsfall:

Datasjöanalys

Du kan använda PrestoSQL för att fråga data på en datasjö utan att behöva transformera data. Presto låter dig fråga data var den sitter. Därför kan du använda den för att stärka din datasjöanalys genom att fråga strukturerad och ostrukturerad data.

Ad hoc-förfrågningar

Presto låter dig köra frågor när som helst oavsett var din data finns. Ännu bättre, med Presto-anslutningar kan dina team komma åt datauppsättningar i ett brett utbud av datakällor, och eftersom frågor körs på sekunder istället för timmar, presterar ditt system snabbare.

Batch ETL

Istället för att använda äldre batchbearbetningssystem kan du använda Presto för att köra frågor som är effektiva på resurser. Du kan samla data från flera datakällor och utföra högkapacitetsfrågor.

Sammanfattningsvis har Presto flera fördelar för företag som behöver bearbeta stora mängder data, utföra ad hoc, interaktiva frågor och köra analyser från olika datakällor.