Presto SQL ซึ่งปัจจุบันคือ Trino นำข้อดีของเครื่องมือสืบค้นข้อมูล Analytics มาสู่ Data Lakes

เผยแพร่แล้ว: 2021-05-27

การประมวลผลข้อมูลขนาดใหญ่เป็นหนึ่งในแง่มุมที่สำคัญของยุคดิจิทัลนี้ บริษัทต่างๆ ใช้ปัญญาประดิษฐ์ แมชชีนเลิร์นนิง และการวิเคราะห์ข้อมูลมากขึ้น ซึ่งผลิตและเก็บรวบรวมข้อมูลมากขึ้น ดังนั้นจึงส่งผลให้มีข้อมูลจำนวนมหาศาลที่ต้องสืบค้นและวิเคราะห์อย่างมีประสิทธิภาพ

คลาวด์คอมพิวติ้งและ Presto สามารถช่วยได้ที่นี่

สารบัญ แสดง
Presto คืออะไร?
แนวคิดหลัก
ประเภทเซิร์ฟเวอร์
Presto ประมวลผลการสืบค้นอย่างไร
ข้อดีของการใช้ Presto
1. บูรณาการได้ง่าย
2. ประสิทธิภาพที่เร็วขึ้น
3. ออกแบบมาสำหรับระบบคลาวด์
4. อินเทอร์เฟซ SQL แบบครบวงจร
คุณสามารถใช้ Presto ทำอะไรได้บ้าง
การวิเคราะห์ Data Lake
แบบสอบถามเฉพาะกิจ
ชุด ETL

Presto คืออะไร?

ตามคำจำกัดความของ Amazon AWS: Presto เป็นเอ็นจิ้นการสืบค้น SQL แบบกระจาย ซึ่งสร้างขึ้นเพื่อดำเนินการสืบค้นแบบวิเคราะห์อย่างรวดเร็วบนชุดข้อมูลทุกขนาด มันถูกรีแบรนด์เมื่อปลายปี 2020 เนื่องจาก Trino เพื่อแยกโปรเจ็กต์ออกจาก Prestodb

Presto มีข้อได้เปรียบในการเป็นโอเพ่นซอร์ส ซึ่งหมายความว่ามีการอัปเดตเป็นประจำและนักพัฒนามีส่วนสนับสนุนบ่อยครั้ง

แพลตฟอร์ม Presto ทำงานร่วมกับ แหล่งข้อมูลที่ไม่สัมพันธ์ กัน เช่น:

  • อเมซอน S3
  • Hadoop
  • HDFS
  • MongoDB
  • HBase

และ ฐานข้อมูลเชิงสัมพันธ์ เช่น:

  • พื้นที่ของฉัน
  • PostgresSQL และ
  • MS SQL Server

ด้วย Presto คุณสามารถสืบค้นข้อมูลได้ทุกที่ที่จัดเก็บ นั่นหมายความว่าคุณไม่จำเป็นต้องถ่ายโอนข้อมูลไปยังฐานข้อมูลเชิงสัมพันธ์หรือคลังข้อมูล Presto ถูกสร้างขึ้นสำหรับ SQL และรองรับความหมายของ SQL มาตรฐาน ซึ่งรวมถึงคิวรีย่อย คิวรีที่ซับซ้อน การรวมภายนอก การนับที่แตกต่างกัน และเปอร์เซ็นไทล์โดยประมาณ

การดำเนินการค้นหาทำได้เร็วกว่าด้วย เนื่องจากทำงานควบคู่ไปกับสถาปัตยกรรมที่ใช้หน่วยความจำ ดังนั้น คุณไม่ต้องกังวลอีกต่อไปว่าจะใช้เวลานานแค่ไหนในการสืบค้นฐานข้อมูลขนาดใหญ่ ผลลัพธ์จะกลับมาในไม่กี่วินาที

เรียนรู้วิธีปรับใช้ Presto และสถาปัตยกรรมในเอกสารประกอบ

อ่านเพิ่มเติม: วิธีอัปเดตไดรเวอร์อุปกรณ์ใน Windows 10 {คู่มือง่ายๆ}


แนวคิดหลัก

แนวคิดหลักของ SQL เป็นที่รู้จักกันอย่างแพร่หลาย เพื่อให้เข้าใจว่า Presto ทำงานอย่างไร เราต้องเข้าใจแนวคิดหลักก่อน

ประเภทเซิร์ฟเวอร์

Presto ใช้เซิร์ฟเวอร์สองประเภท: เซิร์ฟเวอร์ ผู้ประสานงาน และเซิร์ฟเวอร์ ผู้ปฏิบัติงาน โหนดผู้ปฏิบัติงานประมวลผลการสืบค้น โดยดึงข้อมูลจากตัวเชื่อมต่อ ผู้ประสานงานดึงผลลัพธ์และส่งให้กับลูกค้า เซิร์ฟเวอร์ผู้ประสานงานยังแยกวิเคราะห์คำสั่งและจัดการโหนด

ทำงานคล้ายกับระบบการจัดการฐานข้อมูลการประมวลผลแบบขนานขนาดใหญ่

Massive Parallel Processing database management systems ที่มาของรูปภาพ: 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 เป็นที่นิยมอย่างมากสำหรับกรณีการใช้งานที่หลากหลาย ใน data lake และคลังข้อมูลประเภทต่างๆ มาดูข้อดีบางประการที่ทำให้ 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 มีความเก่งกาจที่ระบบแบบกระจายอื่นๆ ไม่มี

อินเทอร์เฟซเหมาะสำหรับข้อมูลขนาดกลาง เพราะมีฟังก์ชัน Window เดียวกันกับ PostgreSQL

อ่านเพิ่มเติม: วิธีอัปเดตไดรเวอร์กราฟิกใน Windows 10 {Simple Guide}


คุณสามารถใช้ Presto ทำอะไรได้บ้าง

Presto ใช้ในอุตสาหกรรมต่างๆ สำหรับกรณีการใช้งานที่หลากหลาย เหมาะอย่างยิ่งสำหรับการสืบค้นแบบเฉพาะกิจและแบบโต้ตอบ มาสำรวจกรณีการใช้งานทั่วไปกัน:

การวิเคราะห์ Data Lake

คุณสามารถใช้ PrestoSQL เพื่อสืบค้นข้อมูลใน Data Lake โดยไม่ต้องแปลงข้อมูล Presto ช่วยให้คุณสามารถสืบค้นข้อมูลได้ว่าอยู่ที่ไหน ดังนั้น คุณสามารถใช้เพื่อเพิ่มศักยภาพในการวิเคราะห์ Data Lake ของคุณด้วยการสืบค้นข้อมูลที่มีโครงสร้างและไม่มีโครงสร้าง

แบบสอบถามเฉพาะกิจ

Presto ช่วยให้คุณเรียกใช้คิวรีได้ทุกเมื่อไม่ว่าข้อมูลของคุณจะอยู่ที่ใด ยิ่งไปกว่านั้น ด้วยตัวเชื่อมต่อ Presto ทีมของคุณสามารถเข้าถึงชุดข้อมูลในแหล่งข้อมูลที่หลากหลาย และเนื่องจากการสืบค้นจะดำเนินการในไม่กี่วินาทีแทนที่จะเป็นชั่วโมง ระบบของคุณจึงทำงานเร็วขึ้น

ชุด ETL

แทนที่จะใช้ระบบประมวลผลแบบกลุ่มเดิม คุณสามารถใช้ Presto เพื่อเรียกใช้การสืบค้นที่มีประสิทธิภาพในทรัพยากร คุณสามารถรวมข้อมูลจากแหล่งข้อมูลต่างๆ และดำเนินการค้นหาที่มีปริมาณงานสูงได้

โดยสรุป Presto มีข้อดีหลายประการสำหรับบริษัทที่ต้องการประมวลผลข้อมูลจำนวนมาก ดำเนินการเฉพาะกิจ สืบค้นแบบโต้ตอบ และเรียกใช้การวิเคราะห์จากแหล่งข้อมูลที่แตกต่างกัน