เร่งความเร็วการพัฒนา ML โดยใช้ SageMaker Feature Store และ Apache Iceberg ร้านค้าออฟไลน์การบดอัด PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.

การพัฒนา ML ความเร็วโดยใช้ SageMaker Feature Store และ Apache Iceberg การบีบอัดร้านค้าออฟไลน์

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

Amazon SageMaker ฟีเจอร์สโตร์ เป็นโซลูชันการจัดการฟีเจอร์ที่สร้างขึ้นตามวัตถุประสงค์ซึ่งช่วยให้นักวิทยาศาสตร์ข้อมูลและวิศวกร ML จัดเก็บ ค้นพบ และแชร์ข้อมูลที่คัดสรรแล้วอย่างปลอดภัยซึ่งใช้ในเวิร์กโฟลว์การฝึกอบรมและการทำนาย ขณะนี้ SageMaker Feature Store รองรับแล้ว ภูเขาน้ำแข็งอาปาเช่ เป็นรูปแบบตารางสำหรับจัดเก็บคุณสมบัติ สิ่งนี้ช่วยเร่งการพัฒนาโมเดลโดยเปิดใช้งานประสิทธิภาพการสืบค้นที่รวดเร็วขึ้นเมื่อแยกชุดข้อมูลการฝึกอบรม ML โดยใช้ประโยชน์จากการกระชับตาราง Iceberg ขึ้นอยู่กับการออกแบบของกลุ่มคุณลักษณะและสเกล คุณสามารถรับประสบการณ์การปรับปรุงประสิทธิภาพคิวรีการฝึกอบรม 10x ถึง 100x โดยใช้ความสามารถใหม่นี้

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

SageMaker Feature Store และ Apache Iceberg

Amazon SageMaker ฟีเจอร์สโตร์ เป็นที่จัดเก็บฟีเจอร์และข้อมูลเมตาที่เกี่ยวข้องแบบรวมศูนย์ ทำให้ทีมนักวิทยาศาสตร์ข้อมูลสามารถค้นพบและใช้ซ้ำฟีเจอร์ต่างๆ ที่ทำงานในโครงการต่างๆ หรือโมเดล ML ได้โดยง่าย

SageMaker Feature Store ประกอบด้วยโหมดออนไลน์และออฟไลน์สำหรับการจัดการคุณสมบัติต่างๆ ร้านค้าออนไลน์ใช้สำหรับกรณีการใช้งานการอนุมานตามเวลาจริงที่มีเวลาแฝงต่ำ ร้านค้าออฟไลน์ใช้สำหรับการคาดการณ์แบบกลุ่มและการฝึกอบรมแบบจำลองเป็นหลัก ร้านค้าออฟไลน์เป็นร้านค้าแบบต่อท้ายเท่านั้น และสามารถใช้เพื่อจัดเก็บและเข้าถึงข้อมูลประวัติคุณลักษณะ ด้วยร้านค้าออฟไลน์ ผู้ใช้สามารถจัดเก็บและให้บริการคุณลักษณะสำหรับการสำรวจและการให้คะแนนเป็นชุด และแยกชุดข้อมูลที่ถูกต้อง ณ เวลาใดเวลาหนึ่งสำหรับการฝึกแบบจำลอง

ข้อมูลร้านค้าออฟไลน์ถูกจัดเก็บไว้ในบัคเก็ต Amazon Simple Storage Service (Amazon S3) ในบัญชี AWS ของคุณ SageMaker Feature Store จะสร้าง AWS Glue Data Catalog โดยอัตโนมัติในระหว่างการสร้างกลุ่มฟีเจอร์ ลูกค้ายังสามารถเข้าถึงข้อมูลร้านค้าออฟไลน์โดยใช้รันไทม์ Spark และดำเนินการประมวลผลข้อมูลขนาดใหญ่สำหรับการวิเคราะห์ฟีเจอร์ ML และกรณีการใช้งานวิศวกรรมฟีเจอร์

รูปแบบตารางเป็นวิธีสร้างไฟล์ข้อมูลแบบนามธรรมเป็นตาราง ในช่วงหลายปีที่ผ่านมา รูปแบบตารางจำนวนมากได้เกิดขึ้นเพื่อรองรับธุรกรรม ACID การกำกับดูแล และกรณีการใช้งานแค็ตตาล็อก ภูเขาน้ำแข็งอาปาเช่ เป็นรูปแบบตารางเปิดสำหรับชุดข้อมูลการวิเคราะห์ขนาดใหญ่มาก โดยจะจัดการคอลเลกชันขนาดใหญ่ของไฟล์เป็นตาราง และสนับสนุนการดำเนินการ Data Lake เชิงวิเคราะห์ที่ทันสมัย ​​เช่น การแทรกระดับเรกคอร์ด อัปเดต ลบ และแบบสอบถามการเดินทางข้ามเวลา Iceberg ติดตามไฟล์ข้อมูลแต่ละไฟล์ในตารางแทนที่จะเป็นในไดเร็กทอรี สิ่งนี้ทำให้ผู้เขียนสามารถสร้างไฟล์ข้อมูลได้ (ไฟล์จะไม่ถูกย้ายหรือเปลี่ยนแปลง) และเพิ่มเฉพาะไฟล์ลงในตารางในการกระทำที่ชัดเจนเท่านั้น สถานะของตารางจะคงอยู่ในไฟล์ข้อมูลเมตา การเปลี่ยนแปลงสถานะของตารางทั้งหมดจะสร้างเวอร์ชันไฟล์ข้อมูลเมตาใหม่ที่แทนที่ข้อมูลเมตาที่เก่ากว่าในระดับอะตอม ไฟล์ข้อมูลเมตาของตารางติดตามสคีมาของตาราง การกำหนดค่าการแบ่งพาร์ติชัน และคุณสมบัติอื่นๆ

Iceberg มีการผสานรวมกับบริการของ AWS ตัวอย่างเช่น คุณสามารถใช้ AWS กาว Data Catalog เป็น metastore สำหรับตาราง Iceberg และ Athena รองรับการอ่าน การเดินทางข้ามเวลา เขียน และการสืบค้น DDL สำหรับตาราง Apache Iceberg ที่ใช้รูปแบบ Apache Parquet สำหรับข้อมูลและแคตตาล็อก AWS Glue สำหรับ metastore

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

ด้วยการรวม Iceberg เป็นรูปแบบตารางและการดำเนินการบำรุงรักษาตาราง เช่น การกระชับ ลูกค้าจะได้รับประสิทธิภาพการสืบค้นที่รวดเร็วขึ้นเมื่อทำงานกับกลุ่มฟีเจอร์ออฟไลน์ตามขนาด ทำให้สร้างชุดข้อมูลการฝึกอบรม ML ได้รวดเร็วยิ่งขึ้น

แผนภาพต่อไปนี้แสดงโครงสร้างของร้านค้าออฟไลน์โดยใช้ Iceberg เป็นรูปแบบตาราง

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

สำหรับคำแนะนำทีละขั้นตอน เรายังมี โน๊ตบุ๊คตัวอย่างซึ่งสามารถพบได้ใน GitHub ในโพสต์นี้เราจะเน้นส่วนที่สำคัญที่สุด

การสร้างกลุ่มคุณลักษณะโดยใช้รูปแบบตารางภูเขาน้ำแข็ง

ก่อนอื่นคุณต้องเลือก Iceberg เป็นรูปแบบตารางเมื่อสร้างกลุ่มคุณลักษณะใหม่ พารามิเตอร์ทางเลือกใหม่ TableFormat สามารถตั้งค่าแบบโต้ตอบโดยใช้ Amazon SageMaker Studio หรือผ่านโค้ดโดยใช้ API หรือ SDK พารามิเตอร์นี้ยอมรับค่า ICEBERG or GLUE (สำหรับรูปแบบ AWS Glue ปัจจุบัน) ข้อมูลโค้ดต่อไปนี้แสดงวิธีสร้างกลุ่มฟีเจอร์โดยใช้รูปแบบ Iceberg และ FeatureGroup.create API ของ SageMaker SDK

orders_feature_group_iceberg.create(
s3_uri=f"s3://{s3_bucket_name}/{prefix}",
record_identifier_name=record_identifier_feature_name,
event_time_feature_name=event_time_feature_name,
role_arn=role,
enable_online_store=True,
table_format=TableFormatEnum.ICEBERG
)

ตารางจะถูกสร้างขึ้นและลงทะเบียนโดยอัตโนมัติใน AWS Glue Data Catalog

ตอนนี้ที่ orders_feature_group_iceberg ถูกสร้างขึ้น คุณสามารถนำเข้าคุณสมบัติโดยใช้ไปป์ไลน์การส่งผ่านข้อมูลที่คุณเลือก ในตัวอย่างนี้ เรานำเข้าบันทึกโดยใช้ FeatureGroup.ingest() API ซึ่งนำเข้าบันทึกจาก Pandas DataFrame คุณยังสามารถใช้ FeatureGroup().put_record API เพื่อนำเข้าบันทึกแต่ละรายการหรือเพื่อจัดการแหล่งที่มาของการสตรีม ผู้ใช้ Spark ยังสามารถนำเข้า Spark dataframes โดยใช้ของเรา ขั้วต่อ Spark.

orders_fg = FeatureGroup(name=orders_feature_group_iceberg_name,
sagemaker_session=feature_store_session)
orders_fg.ingest(data_frame=order_data, wait=True)

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

เร่งความเร็วการพัฒนา ML โดยใช้ SageMaker Feature Store และ Apache Iceberg ร้านค้าออฟไลน์การบดอัด PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.

ดำเนินการขั้นตอนการจัดการตารางภูเขาน้ำแข็ง

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

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

ในการบดอัด คุณใช้ OPTIMIZE table REWRITE DATA คำสั่งการบำรุงรักษาโต๊ะบดอัดใน Athena ไวยากรณ์ต่อไปนี้แสดงวิธีเพิ่มประสิทธิภาพโครงร่างข้อมูลของกลุ่มคุณลักษณะที่จัดเก็บโดยใช้รูปแบบตาราง Iceberg เดอะ sagemaker_featurestore แสดงถึงชื่อของฐานข้อมูล SageMaker Feature Store และ orders-feature-group-iceberg-post-comp-03-14-05-17-1670076334 คือชื่อตารางกลุ่มคุณลักษณะของเรา

OPTIMIZE sagemaker_featurestore.orders-feature-group-iceberg-post-comp-03-14-05-17-1670076334 REWRITE DATA USING BIN_PACK

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

VACUUM sagemaker_featurestore.orders-feature-group-iceberg-post-comp-03-14-05-17-1670076334

โปรดทราบว่าคุณสมบัติของตารางสามารถกำหนดค่าได้โดยใช้ Athena's ALTER TABLE. สำหรับตัวอย่างวิธีการทำ โปรดดูที่ เอกสารประกอบของเอเธน่า. สำหรับสุญญากาศ vacuum_min_snapshots_to_keep และ vacuum_max_snapshot_age_seconds สามารถใช้เพื่อกำหนดค่าพารามิเตอร์การตัดสแน็ปช็อต

มาดูผลกระทบด้านประสิทธิภาพของการเรียกใช้การบีบอัดในตารางกลุ่มคุณลักษณะตัวอย่าง เพื่อจุดประสงค์ในการทดสอบ เรานำเข้าบันทึกคุณลักษณะคำสั่งซื้อเดียวกันออกเป็นสองกลุ่มคุณลักษณะ orders-feature-group-iceberg-pre-comp-02-11-03-06-1669979003 และ orders-feature-group-iceberg-post-comp-03-14-05-17-1670076334โดยใช้งานการประมวลผล SageMaker แบบคู่ขนานกับ Scikit-Learn ซึ่งส่งผลให้มีอ็อบเจ็กต์ 49,908,135 รายการที่จัดเก็บไว้ใน Amazon S3 และมีขนาดรวม 106.5 GiB

เราเรียกใช้แบบสอบถามเพื่อเลือกสแนปชอตล่าสุดที่ไม่มีรายการซ้ำและไม่มีบันทึกที่ถูกลบในกลุ่มคุณสมบัติ orders-feature-group-iceberg-pre-comp-02-11-03-06-1669979003. ก่อนการบีบอัด ข้อความค้นหาใช้เวลา 1 ชั่วโมง 27 นาที

เร่งความเร็วการพัฒนา ML โดยใช้ SageMaker Feature Store และ Apache Iceberg ร้านค้าออฟไลน์การบดอัด PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.

จากนั้นเราก็ทำการบดอัด orders-feature-group-iceberg-post-comp-03-14-05-17-1670076334 โดยใช้การสืบค้น Athena OPTIMIZE ซึ่งย่อตารางกลุ่มคุณลักษณะเป็น 109,851 อ็อบเจ็กต์ใน Amazon S3 และขนาดรวม 2.5 GiB หากเราเรียกใช้แบบสอบถามเดียวกันหลังจากการบีบอัด รันไทม์จะลดลงเหลือ 1 นาที 13 วินาที

เร่งความเร็วการพัฒนา ML โดยใช้ SageMaker Feature Store และ Apache Iceberg ร้านค้าออฟไลน์การบดอัด PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.

ด้วยการบีบอัดไฟล์ Iceberg เวลาในการดำเนินการค้นหาดีขึ้นอย่างมาก สำหรับข้อความค้นหาเดียวกัน เวลาทำงานลดลงจาก 1 ชั่วโมง 27 นาที เป็น 1 นาที 13 วินาที ซึ่งเร็วขึ้น 71 เท่า

การกำหนดเวลาการบดอัด Iceberg ด้วยบริการของ AWS

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

เร่งความเร็วการพัฒนา ML โดยใช้ SageMaker Feature Store และ Apache Iceberg ร้านค้าออฟไลน์การบดอัด PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.

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

การตั้งค่า AWS Glue Job

คุณใช้งาน AWS Glue เพื่อดำเนินการบำรุงรักษาตาราง Iceberg ตามกำหนดเวลา ก่อนอื่น คุณต้องสร้างบทบาท IAM สำหรับ AWS Glue เพื่อให้มีสิทธิ์เข้าถึง Amazon Athena, Amazon S3 และ CloudWatch

ถัดไป คุณต้องสร้างสคริปต์ Python เพื่อเรียกใช้ขั้นตอนของ Iceberg คุณสามารถหา สคริปต์ตัวอย่าง ใน GitHub สคริปต์จะดำเนินการค้นหา OPTIMIZE โดยใช้ boto3

optimize_sql = f"optimize {database}.{table} rewrite data using bin_pack"

สคริปต์ได้รับการกำหนดพารามิเตอร์โดยใช้ AWS Glue getResolvedOptions(args, options) ฟังก์ชันอรรถประโยชน์ที่ให้คุณเข้าถึงอาร์กิวเมนต์ที่ส่งไปยังสคริปต์ของคุณเมื่อคุณเรียกใช้งาน ในตัวอย่างนี้ ภูมิภาค AWS, ฐานข้อมูล Iceberg และตารางสำหรับกลุ่มคุณลักษณะของคุณ, เวิร์กกรุ๊ป Athena และโฟลเดอร์ผลลัพธ์ของตำแหน่งเอาต์พุต Athena สามารถส่งผ่านเป็นพารามิเตอร์ไปยังงาน ทำให้สคริปต์นี้ใช้ซ้ำได้ในสภาพแวดล้อมของคุณ

สุดท้าย คุณสร้างงาน AWS Glue จริงเพื่อเรียกใช้สคริปต์เป็นเชลล์ใน AWS Glue

  • นำทางไปยังคอนโซล AWS Glue
  • เลือก งาน แท็บภายใต้ AWS Glue Studio
  • เลือก โปรแกรมแก้ไขสคริปต์ Python Shell.
  • Choose อัปโหลดและแก้ไขสคริปต์ที่มีอยู่. คลิก สร้างบัญชีตัวแทน.
  • พื้นที่ รายละเอียดงาน ปุ่มช่วยให้คุณกำหนดค่างาน AWS Glue คุณต้องเลือกบทบาท IAM ที่คุณสร้างไว้ก่อนหน้านี้ เลือก งูหลาม 3.9 หรือ Python เวอร์ชันล่าสุดที่มีอยู่
  • ในแท็บเดียวกัน คุณยังสามารถกำหนดตัวเลือกการกำหนดค่าอื่นๆ ได้ เช่น จำนวนครั้งในการลองใหม่ or หมดเวลางาน. ใน คุณสมบัติขั้นสูงคุณสามารถเพิ่มพารามิเตอร์งานเพื่อเรียกใช้สคริปต์ ดังที่แสดงในภาพหน้าจอตัวอย่างด้านล่าง
  • คลิก ลด.

เร่งความเร็วการพัฒนา ML โดยใช้ SageMaker Feature Store และ Apache Iceberg ร้านค้าออฟไลน์การบดอัด PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.

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

เร่งความเร็วการพัฒนา ML โดยใช้ SageMaker Feature Store และ Apache Iceberg ร้านค้าออฟไลน์การบดอัด PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.

คุณสามารถตรวจสอบการรันงานเพื่อทำความเข้าใจเมตริกรันไทม์ เช่น สถานะการเสร็จสิ้น ระยะเวลา และเวลาเริ่มต้น คุณยังสามารถตรวจสอบ CloudWatch Logs สำหรับงาน AWS Glue เพื่อตรวจสอบว่าขั้นตอนทำงานได้สำเร็จ

เร่งความเร็วการพัฒนา ML โดยใช้ SageMaker Feature Store และ Apache Iceberg ร้านค้าออฟไลน์การบดอัด PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.

ดำเนินงานการจัดการตาราง Iceberg ด้วย Spark

ลูกค้ายังสามารถใช้ Spark เพื่อจัดการงานบดอัดและวิธีการบำรุงรักษา สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับขั้นตอนของ Spark โปรดดูที่ เอกสารเกี่ยวกับประกายไฟ.

คุณต้องกำหนดค่าคุณสมบัติทั่วไปบางอย่างก่อน

%%configure -f
{
  "conf": {
    "spark.sql.catalog.smfs": "org.apache.iceberg.spark.SparkCatalog",
    "spark.sql.catalog.smfs.catalog-impl": "org.apache.iceberg.aws.glue.GlueCatalog",
    "spark.sql.catalog.smfs.warehouse": "",
    "spark.sql.extensions":"org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions",
    "spark.sql.catalog.smfs.glue.skip-name-validation": "true"
  }
}

สามารถใช้รหัสต่อไปนี้เพื่อเพิ่มประสิทธิภาพกลุ่มคุณลักษณะผ่าน Spark

spark.sql(f"""CALL smfs.system.rewrite_data_files(table => '{DATABASE}.`{ICEBERG_TABLE}`')""")

จากนั้น คุณสามารถดำเนินขั้นตอนการบำรุงรักษาตารางสองขั้นตอนถัดไปเพื่อลบสแน็ปช็อตและไฟล์ orphan ที่เก่ากว่าซึ่งไม่ต้องการอีกต่อไป

spark.sql(f"""CALL smfs.system.expire_snapshots(table => '{DATABASE}.`{ICEBERG_TABLE}`', older_than => TIMESTAMP '{one_day_ago}', retain_last => 1)""")
spark.sql(f"""CALL smfs.system.remove_orphan_files(table => '{DATABASE}.`{ICEBERG_TABLE}`')""")

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

หากต้องการสำรวจตัวอย่างรหัสที่สมบูรณ์และลองใช้ในบัญชีของคุณเอง โปรดดูที่ repo GitHub.

สรุป

SageMaker Feature Store มอบโซลูชันการจัดการฟีเจอร์ที่สร้างขึ้นตามวัตถุประสงค์เพื่อช่วยให้องค์กรปรับขนาดการพัฒนา ML ทั่วทั้งทีมวิทยาศาสตร์ข้อมูล ในโพสต์นี้ เราได้อธิบายวิธีที่คุณสามารถใช้ประโยชน์จาก Apache Iceberg เป็นรูปแบบตารางและการดำเนินการบำรุงรักษาตาราง เช่น การบดอัด เพื่อให้ได้ประโยชน์จากการสืบค้นที่รวดเร็วขึ้นอย่างมากเมื่อทำงานกับกลุ่มคุณลักษณะออฟไลน์ตามขนาด และทำให้สร้างชุดข้อมูลการฝึกอบรมได้เร็วขึ้น ลองดูและแจ้งให้เราทราบว่าคุณคิดอย่างไรในความคิดเห็น


เกี่ยวกับผู้แต่ง

เร่งความเร็วการพัฒนา ML โดยใช้ SageMaker Feature Store และ Apache Iceberg ร้านค้าออฟไลน์การบดอัด PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.อาร์นาฟ ลอเออร์ เป็น Senior Partner Solutions Architect ในทีมภาครัฐที่ AWS เขาช่วยให้คู่ค้าและลูกค้าเข้าใจวิธีที่ดีที่สุดในการใช้เทคโนโลยี AWS เพื่อแปลงความต้องการทางธุรกิจให้เป็นโซลูชัน เขานำประสบการณ์มากกว่า 17 ปีในการนำเสนอและออกแบบโครงการการเปลี่ยนแปลงทางดิจิทัลในหลากหลายอุตสาหกรรม รวมถึงภาครัฐ พลังงาน และสินค้าอุปโภคบริโภค Arnaud มีใบรับรอง AWS 12 รายการ รวมถึงใบรับรอง ML Specialty

เร่งความเร็วการพัฒนา ML โดยใช้ SageMaker Feature Store และ Apache Iceberg ร้านค้าออฟไลน์การบดอัด PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.ไอโออัน คาทาน่า เป็นสถาปนิกโซลูชันผู้เชี่ยวชาญด้านปัญญาประดิษฐ์และการเรียนรู้ของเครื่องที่ AWS เขาช่วยลูกค้าพัฒนาและปรับขนาดโซลูชัน ML ใน AWS Cloud Ioan มีประสบการณ์มากกว่า 20 ปีในด้านการออกแบบสถาปัตยกรรมซอฟต์แวร์และวิศวกรรมระบบคลาวด์

เร่งความเร็วการพัฒนา ML โดยใช้ SageMaker Feature Store และ Apache Iceberg ร้านค้าออฟไลน์การบดอัด PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.มาร์ครอย Ro คือ Principal Machine Learning Architect สำหรับ AWS ซึ่งช่วยลูกค้าในการออกแบบและสร้างโซลูชัน AI/ML งานของ Mark ครอบคลุมกรณีการใช้งาน ML ที่หลากหลาย โดยมีความสนใจหลักในด้านคอมพิวเตอร์วิทัศน์ การเรียนรู้เชิงลึก และการปรับขนาด ML ทั่วทั้งองค์กร เขาได้ช่วยบริษัทต่างๆ ในหลายอุตสาหกรรม รวมถึงการประกันภัย บริการทางการเงิน สื่อและความบันเทิง การดูแลสุขภาพ สาธารณูปโภค และการผลิต Mark มีใบรับรอง AWS หกใบ รวมถึง ML Specialty Certification ก่อนร่วมงานกับ AWS Mark เคยเป็นสถาปนิก นักพัฒนา และผู้นำด้านเทคโนโลยีมานานกว่า 25 ปี รวมถึง 19 ปีในด้านบริการทางการเงิน

เร่งความเร็วการพัฒนา ML โดยใช้ SageMaker Feature Store และ Apache Iceberg ร้านค้าออฟไลน์การบดอัด PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.แบรนดอน ชาแธม เป็นวิศวกรซอฟต์แวร์กับทีม SageMaker Feature Store เขาหลงใหลอย่างมากในการสร้างระบบที่หรูหราซึ่งนำข้อมูลขนาดใหญ่และการเรียนรู้ของเครื่องมาสู่ปลายนิ้วของผู้คน

ประทับเวลา:

เพิ่มเติมจาก AWS Machine Learning AWS