Apache Spark บน Amazon EMR
เหตุใดต้องใช้ Apache Spark บน EMR
Amazon EMR ช่วยให้คุณสามารถสร้าง Data Lake เชิงธุรกรรมแบบเปิดด้วย Apache Spark และ Apache Iceberg รันไทม์ที่ปรับให้เหมาะสมกับประสิทธิภาพของเราทำงานร่วมกันได้กับ API อย่างสมบูรณ์ 100% ด้วย Spark แบบโอเพนซอร์ส ซึ่งทำงานได้เร็วกว่าโอเพนซอร์สเทียบเท่าถึง 4.5 เท่า ในขณะที่ให้ประสิทธิภาพการเขียน Iceberg เร็วกว่า 2.7 เท่า
EMR รองรับ Apache Iceberg v3 และ Spark 4.0 (เวอร์ชันทดลอง) ช่วยให้คุณสามารถใช้ประโยชน์จากความสามารถเช่นธุรกรรม ACID และการวิวัฒนาการของสคีมาด้วยคุณสมบัติเช่นประเภทข้อมูล VARIANT หรือข้อมูลกึ่งมีโครงสร้างในปริมาณมากและการปฏิบัติตามข้อกำหนด ANSI SQL เพื่อความสมบูรณ์ของข้อมูล ไม่ว่าคุณจะต้องการการควบคุมแบบละเอียดของ EC2 ขนาดของ EKS แบบคอนเทนเนอร์ หรือความเรียบง่ายของ EMR แบบไม่ต้องใช้เซิร์ฟเวอร์ Amazon EMR ก็ให้ความเร็ว ความน่าเชื่อถือ และความสมบูรณ์ของข้อมูล
คุณสมบัติและประโยชน์
รันไทม์ Apache Spark ที่ปรับให้เหมาะสมกับประสิทธิภาพของ Amazon EMR ช่วยเร่งการทำงานของเวิร์กโหลด Data Lake ด้วยการดำเนินการได้เร็วกว่าแบบโอเพนซอร์สเทียบเท่าถึง 4.5 เท่าในขณะที่ยังคงการทำงานร่วมกันได้กับ API 100% การเพิ่มประสิทธิภาพนี้ขยายไปถึงการดำเนินงาน Apache Iceberg ซึ่งให้ประสิทธิภาพการเขียนที่เร็วขึ้น 2.7 เท่า สำหรับ Data Lake เชิงธุรกรรมที่ต้องการทั้งความเร็วและความเสถียร
ด้วยการรองรับ Apache Iceberg v3 และ Spark 4.0 (เวอร์ชันทดลอง) EMR ช่วยให้มีความสามารถขั้นสูงรวมถึงธุรกรรม ACID วิวัฒนาการของสคีมา ประเภทข้อมูล VARIANT สำหรับการประมวลผลข้อมูลกึ่งมีโครงสร้าง และการปฏิบัติตามข้อกำหนด ANSI SQL
รันไทม์ Amazon EMR สำหรับ Spark ช่วยเพิ่มประสิทธิภาพแผนการสืบค้นของคุณให้ทำงานในหน่วยความจำทั้งหมด โดยเพิ่มการใช้ฮาร์ดแวร์ของคุณให้สูงสุด สำหรับการปรับปรุงวิธีการจัดการข้อมูลระดับกลาง EMR จะช่วยลดเวลาในการสร้างผลลัพธ์สำหรับเวิร์กโหลดแมชชีนเลิร์นนิงที่ใช้ทรัพยากรมากที่สุด ช่วยให้คุณทำซ้ำได้เร็วขึ้น
ปรับปรุงเวิร์กโฟลว์ของคุณให้ทันสมัยด้วย SageMaker Unified Studio และ EMR Studio ซึ่งมีสภาพแวดล้อมแบบบูรณาการสำหรับ SQL, Python และ Scala ใช้ประโยชน์จาก Amazon Q Developer เพื่อสร้างโค้ด PySpark ที่ปรับให้เหมาะสมและแก้ไขปัญหาแผนการดำเนินการที่ซับซ้อน (DAG) แบบเรียลไทม์ EMR มอบ Spark UI แบบคงทนซึ่งแตกต่างจาก Spark มาตรฐาน ช่วยให้คุณสามารถวิเคราะห์และแก้ไขข้อบกพร่องข้อมูลบันทึกงานได้แม้ว่าแอปพลิเคชันแบบไม่ต้องใช้เซิร์ฟเวอร์หรือคลัสเตอร์แบบชั่วคราวของคุณจะสิ้นสุดลง ความคงทนนี้มีความสำคัญสำหรับการตรวจสอบและการปรับแต่งประสิทธิภาพอย่างต่อเนื่องในสภาพแวดล้อมการผลิต
EMR แบบไม่ต้องใช้เซิร์ฟเวอร์ช่วยขจัดแรงเสียดทานในการทำงานโดยมอบประสบการณ์โน้ตบุ๊กแบบเปิดทำงานทันที คุณไม่จำเป็นต้องจัดหา ปรับขนาด หรือจัดการคลัสเตอร์อีกต่อไป คุณแนบสภาพแวดล้อมการพัฒนาที่คุณต้องการเช่น Amazon SageMaker Unified Studio หรือ JupyterLab กับแอปพลิเคชัน EMR แบบไม่ต้องใช้เซิร์ฟเวอร์ และเริ่มสืบค้น รันไทม์ EMR สำหรับ Spark ช่วยให้มั่นใจได้ว่าโค้ดแบบโต้ตอบของคุณทำงานด้วยความเร็วระดับองค์กรเท่ากับไปป์ไลน์การผลิตของคุณ ไม่ว่าคุณจะทำการค้นหาข้อมูลเฉพาะกิจในข้อมูล S3 ระดับเพตะไบต์ หรือทำงานในกระบวนการสร้างฟีเจอร์ใหม่ที่ซับซ้อน Amazon EMR ก็มอบสภาพแวดล้อมที่ราบรื่นและมีประสิทธิภาพสูงที่จำเป็นเพื่อเร่งเวิร์กโฟลว์วิทยาศาสตร์ข้อมูลที่สำคัญที่สุดของคุณ
เอเจนต์อัปเกรด Apache Spark จะระบุการเปลี่ยนแปลง API และการปรับเปลี่ยนพฤติกรรมที่ครอบคลุมแอปพลิเคชัน PySpark และ Scala โดยอัตโนมัติ วิศวกรสามารถเริ่มการอัปเกรดได้โดยตรงจาก SageMaker Unified Studio หรือ IDE ได้ตามความต้องการด้วยความช่วยเหลือของการรองรับ MCP (Model Context Protocol) ในระหว่างกระบวนการอัปเกรด เอเจนต์จะวิเคราะห์โค้ดที่มีอยู่และแนะนำการเปลี่ยนแปลงแบบเฉพาะเจาะจง และวิศวกรสามารถตรวจสอบและอนุมัติก่อนที่จะนำไปใช้ โดยเอเจนต์จะตรวจสอบความถูกต้องของการทำงานผ่านการตรวจสอบคุณภาพข้อมูล ปัจจุบันเอเจนต์ชนิดนี้รองรับการอัปเกรด Spark 2.4 เป็น 3.5 และรักษาความแม่นยำในการประมวลผลข้อมูลตลอดกระบวนการอัปเกรด
กรณีการใช้งาน
ใช้และประมวลผลข้อมูลเรียลไทม์จาก Amazon Kinesis, Apache Kafka หรือสตรีมข้อมูลอื่น ๆ ด้วย Spark Streaming บน EMR ดำเนินการวิเคราะห์การสตรีมด้วยวิธีที่ทนทานต่อความผิดพลาดและเขียนผลลัพธ์ไปยัง S3 หรือ HDFS บนคลัสเตอร์
Apache Spark บน EMR ได้รวม MLlib สำหรับอัลกอริทึมแมชชีนเลิร์นนิงที่ปรับขนาดได้แบบต่าง ๆ เอาไว้หรือคุณสามารถใช้ไลบรารีของคุณเองได้ การจัดเก็บชุดข้อมูลในหน่วยความจำระหว่างงานช่วยให้ Spark มีประสิทธิภาพการทำงานที่ยอดเยี่ยมสำหรับการสืบค้นซ้ำที่พบบ่อยในปริมาณงานแมชชีนเลิร์นนิ่ง คุณสามารถเพิ่มความสามารถของ Amazon SageMaker ได้โดยใช้ Amazon SageMaker Spark เชื่อมต่ออินสแตนซ์โน้ตบุ๊กเข้ากับคลัสเตอร์ Apache Spark ที่รันอยู่บน Amazon EMR เพื่อการฝึกโมเดลและการโฮสต์โมเดลอย่างง่ายดาย
ใช้ Spark SQL สำหรับการสืบค้นเชิงโต้ตอบที่มีเวลาแฝงต่ำด้วย SQL หรือ HiveQL Spark บน EMR สามารถใช้ EMRFS ดังนั้นคุณจึงเข้าถึงชุดข้อมูลใน S3 แบบเฉพาะกิจได้ นอกจากนี้ คุณยังสามารถใช้ EMR Studio, EMR Notebooks, Zeppelin Notebooks หรือเครื่องมือ BI ผ่านการเชื่อมต่อ ODBC และ JDBC ได้อีกด้วย
ความสำเร็จของลูกค้า
Yelp
ทีมกำหนดเป้าหมายโฆษณาของ Yelp สร้างรูปแบบการคาดการณ์ในการกำหนดความเป็นไปได้ของการโต้ตอบกับโฆษณาของผู้ใช้ Yelp มีรายได้เพิ่มขึ้นและมีอัตราการคลิกผ่านในการโฆษณาเพิ่มขึ้นโดยใช้ Apache Spark บน Amazon EMR ในการประมวลผลข้อมูลจำนวนมากเพื่อฝึกโมเดลแมชชีนเลิร์นนิง
The Washington Post
Washington Post ใช้ Apache Spark บน Amazon EMR ในการสร้างโมเดลที่ส่งเสริมเอนจิ้นการให้คำแนะนำบนเว็บไซต์เพื่อเพิ่มการมีส่วนร่วมและความพึงพอใจของผู้อ่าน พวกเขาใช้ประโยชน์จากการเชื่อมต่อประสิทธิภาพสูงของ Amazon EMR กับ Amazon S3 เพื่ออัปเดตโมเดลที่แทบจะเทียบได้กับแบบเรียลไทม์
Krux
เนื่องจากเป็นส่วนหนึ่งของแพลตฟอร์มการจัดการข้อมูลสำหรับข้อมูลเชิงลึกของลูกค้า Krux จึงเปิดใช้งานหลายแมชชีนเลิร์นนิงและเวิร์กโหลดการประมวลผลทั่วไปโดยใช้ Apache Spark Krux ใช้คลัสเตอร์ Amazon EMR แบบชั่วคราวกับ Amazon EC2 Spot Capacity เพื่อลดต้นทุน และใช้ Amazon S3 กับ EMRFS เป็นโครงสร้างข้อมูลสำหรับ Apache Spark
GumGum
GumGum ซึ่งเป็นแพลตฟอร์มการโฆษณาในภาพและในหน้าจอ ใช้ Spark บน Amazon EMR สำหรับการคาดการณ์สินค้าคงคลัง การประมวลผลข้อมูลบันทึกการคลิกสตรีม และการวิเคราะห์เฉพาะข้อมูลที่ไม่มีโครงสร้างใน Amazon S3 การเพิ่มประสิทธิภาพการทำงานของ Spark ช่วย GumGum ประหยัดเวลาและเงินสำหรับเวิร์กโฟลว์เหล่านี้ได้
Hearst Corporation
Hearst Corporation เป็นบริษัทสื่อและข้อมูลที่มีขนาดใหญ่ซึ่งมีลูกค้าที่ดูเนื้อหาบนเว็บไซต์กว่า 200 เว็บ ฝ่ายบรรณาธิการของ Hearst สามารถดูข้อมูลได้แบบเรียลไทม์เพื่อให้รู้ว่าบทความไหนที่ได้รับความนิยม โดยใช้ Apache Spark Streaming บน Amazon EMR
CrowdStrike
CrowdStrike มีระบบป้องกันปลายทางเพื่อไม่ให้เกิดการละเมิด พวกเขาใช้ Amazon EMR ที่มี Spark ในการประมวลผลข้อมูลเหตุการณ์กว่าร้อยเทราไบต์และรวบรวมลงในคำอธิบายลักษณะการทำงานระดับสูงกว่าบนโฮสต์ จากข้อมูลดังกล่าว CrowdStrike สามารถดึงข้อมูลเหตุการณ์เข้าไว้ด้วยกันและระบุการดำเนินการที่เป็นอันตราย