Presto SQL, сега Trino, носи силата на машините за заявки за анализ на големи данни

Обработката на големи данни е един от критичните аспекти на тази цифрова ера. Компаниите използват повече изкуствен интелект, машинно обучение и анализ на данни, които произвеждат и събират повече данни. Следователно, това води до огромни количества данни които трябва да бъдат запитани и анализирани ефективно.

Ето къде облачните изчисления и Presto могат да помогнат.

Съдържаниешоу
Какво е Presto?
Ключови понятия
Типове сървъри
Как Presto обработва заявки?
Предимства на използването на Presto
1. Лесна интеграция
2. По-бързо изпълнение
3. Проектиран за облака
4. Унифициран SQL интерфейс
За какво можете да използвате Presto?
Анализ на езерото от данни
Ad hoc запитване
Партиден ETL

Какво е Presto?

Според дефиницията на Amazon AWS: Presto е разпределен SQL двигател за заявки, създаден за извършване на бързи аналитични заявки към набори от данни от всякакъв размер. Той беше ребрандиран в края на 2020 г. като Trino, за да отдели проекта от Prestodb.

Presto има предимството, че е с отворен код, което означава, че се актуализира редовно и разработчиците допринасят често за него.

Платформата Presto работи с нерелационни източници на данни като:

  • Amazon S3
  • Hadoop
  • HDFS
  • MongoDB
  • HBase

И релационни бази данни като:

  • Моето пространство
  • PostgresSQL и
  • MS SQL сървър

С Presto, можете да заявявате данни, където и да се съхраняват. Това означава, че не е необходимо да прехвърляте данните в релационна база данни или хранилище за данни. Presto е създаден за SQL и поддържа стандартна SQL семантика. Това включва подзаявки, сложни заявки, външни обединения, отделни бройки и приблизителни процентили.

Изпълнението на заявки също е по-бързо, тъй като работи успоредно с архитектура, базирана на памет. Следователно не е нужно да се притеснявате повече за това колко време може да отнеме заявката за масивна база данни. Резултатите се връщат за секунди.

Уча как да разположите Presto и неговата архитектура върху тяхната документация.

Прочетете също: Как да актуализирате драйвери на устройства в Windows 10? {Просто ръководство}


Ключови понятия

Основните концепции на SQL са широко известни. За да разберем как работи Presto, първо трябва да разберем основните му концепции.

Типове сървъри

Presto използва два типа сървъри: координатор сървър и работникът сървър. Работните възли обработват заявките, извличайки данни от конекторите. Координаторът извлича резултатите и ги изпраща на клиента. Координаторските сървъри също анализират изрази и управляват възли.

Работи подобно на системите за управление на бази данни с масивна паралелна обработка.

Системи за управление на бази данни с масивна паралелна обработкаИзточник на изображението: tutorialspoint

Presto използва конектори за свързване между разпределената система и източника, например Amazon S3. Многобройните конектори на Presto, към релационни и нерелационни източници, правят системата разширяема до почти всеки източник на данни.

Прочетете също: Как да актуализирате драйвери на Windows 10,8,7 – Актуализирайте драйвери на устройства


Как Presto обработва заявки?

Когато presto получи заявка, тя я изпълнява, като я разбива на няколко етапа. Обикновено системата създава основен етап и свързани етапи. След това етапите се разпределят в задачи в работните възли.


Предимства на използването на Presto

Presto става много популярен сред големи предприятия като Netflix, Facebook, Atlassian и Airbnb. Например, Facebook използва Presto за обработка на един петабайт данни всеки ден, изпълнявайки над 30 000 заявки.

Presto включва два отделни проекта с отворен код: PrestoSQL (сега наречен Trino) и PrestoDB. Той е много популярен за широк спектър от случаи на използване, в различни видове езера с данни и хранилища за данни. Нека разгледаме някои от предимствата, които правят Presto толкова популярен.

1. Лесна интеграция

Едно от ключовите предимства на Presto е, че се интегрира с вашата съществуваща система за данни, без да има нужда от модификации. Следователно, като добавите Presto, вие добавяте възможности за бърз анализ, без да е необходимо да настройвате съществуващата си система.

2. По-бързо изпълнение

Една от причините Presto да бъде разработен е, че съществуващият Apache Hive не се представя добре с интерактивните заявки. Presto е проектиран да обработва интерактивни BI заявки. Освен това, той следва модела на натискане, обработвайки SQL заявка, използвайки множество етапи едновременно, което означава, че всички етапи се извеждат без изчакване между етапите.

Presto също има трансфер на данни от памет към памет, без да е необходимо да записвате данни на диск, подобрявайки производителността.

3. Проектиран за облака

Presto работи за съхранение и изчислява отделно, което го прави много подходящ за облачни среди. Компаниите, използващи PrestoSQL, могат лесно да увеличават или намаляват в зависимост от натоварването, без да причиняват загуба на данни. Това може да се случи, защото клъстерът Presto не съхранява никакви данни.

4. Унифициран SQL интерфейс

SQL е най-популярният език за анализ на данни. Учените по данни, анализатори и инженери използват SQL за обработка, анализ и тестване на данни, като ги интегрират с инструменти за бизнес разузнаване.

Presto има способността не само да заявява данни от SQL източници, но и от NoSQL бази данни като Elasticsearch и Cassandra. Той поддържа ANSI-SQL и Postgres свързаност. Това дава на Presto гъвкавост, каквато други разпределени системи нямат.

Интерфейсът е идеален за данни със среден размер, защото има същото Функции на прозореца който PostgreSQL има.

Прочетете също: Как да актуализирате графични драйвери в Windows 10 {Simple Guide}


За какво можете да използвате Presto?

Presto се използва в различни индустрии за голямо разнообразие от случаи на употреба. Той е особено подходящ за ad-hoc и интерактивни заявки. Нека разгледаме някои често срещани случаи на употреба:

Анализ на езерото от данни

Можете да използвате PrestoSQL за запитване на данни в езеро от данни, без да е необходимо да трансформирате данните. Presto ви позволява да заявявате данни къде се намират. Ето защо можете да го използвате, за да улесните анализа на езерото си от данни чрез запитване на структурирани и неструктурирани данни.

Ad hoc запитване

Presto ви позволява да изпълнявате заявки по всяко време, независимо къде се намират вашите данни. Още по-добре, с конекторите Presto, вашите екипи имат достъп до набори от данни в широк спектър от източници на данни и тъй като заявките се изпълняват за секунди вместо часове, вашата система работи по-бързо.

Партиден ETL

Вместо да използвате наследени системи за пакетна обработка, можете да използвате Presto за изпълнение на заявки, които са ефективни по отношение на ресурсите. Можете да агрегирате данни от множество източници на данни и да провеждате заявки с висока производителност.

В обобщение, Presto има няколко предимства за компаниите, които трябва да обработват големи количества данни, да провеждат ad hoc интерактивни заявки и да изпълняват анализи от различни източници на данни.