ธุรกิจต่างๆ เก็บรวบรวมข้อมูลมากขึ้นทุกวันเพื่อขับเคลื่อนกระบวนการต่างๆ เช่น การตัดสินใจ การรายงาน และการเรียนรู้ของเครื่อง (ML) ก่อนทำความสะอาดและแปลงข้อมูลของคุณ คุณต้องพิจารณาว่าข้อมูลนั้นเหมาะสมหรือไม่ ข้อมูลที่ไม่ถูกต้อง ขาดหายไป หรือผิดรูปแบบสามารถมีผลกระทบอย่างมากต่อการวิเคราะห์ดาวน์สตรีมและกระบวนการ ML การดำเนินการตรวจสอบคุณภาพข้อมูลจะช่วยระบุปัญหาก่อนหน้านี้ในเวิร์กโฟลว์ของคุณ เพื่อให้คุณแก้ไขปัญหาได้รวดเร็วยิ่งขึ้น นอกจากนี้ การตรวจสอบเหล่านี้โดยใช้สถาปัตยกรรมแบบอิงเหตุการณ์จะช่วยให้คุณลดจุดสัมผัสแบบแมนนวลและปรับขนาดตามปริมาณข้อมูลที่เพิ่มมากขึ้น
AWS กาว DataBrew เป็นเครื่องมือเตรียมข้อมูลภาพที่ช่วยให้ค้นหาสถิติคุณภาพข้อมูลได้ง่าย เช่น ค่าที่ซ้ำกัน ค่าที่ขาดหายไป และค่าผิดปกติในข้อมูลของคุณ คุณยังสามารถตั้งค่ากฎคุณภาพข้อมูลใน DataBrew เพื่อทำการตรวจสอบตามเงื่อนไขตามความต้องการทางธุรกิจเฉพาะของคุณ ตัวอย่างเช่น ผู้ผลิตอาจต้องตรวจสอบให้แน่ใจว่าไม่มีค่าที่ซ้ำกันโดยเฉพาะใน a Part ID
หรือผู้ให้บริการด้านสุขภาพอาจตรวจสอบค่านั้นใน SSN
คอลัมน์มีความยาวที่แน่นอน หลังจากที่คุณสร้างและตรวจสอบกฎเหล่านี้ด้วย DataBrew แล้ว คุณสามารถใช้ อเมซอน EventBridge, ฟังก์ชันขั้นตอนของ AWS, AWS แลมบ์ดาและ บริการแจ้งเตือนแบบง่ายของ Amazon (Amazon SNS) เพื่อสร้างเวิร์กโฟลว์อัตโนมัติและส่งการแจ้งเตือนเมื่อกฎไม่ผ่านการตรวจสอบความถูกต้อง
ในโพสต์นี้ เราจะแนะนำคุณเกี่ยวกับเวิร์กโฟลว์แบบ end-to-end และวิธีการใช้โซลูชันนี้ โพสต์นี้มีการสอนทีละขั้นตอน an โมเดลแอปพลิเคชัน AWS Serverless เทมเพลต (AWS SAM) และโค้ดตัวอย่างที่คุณสามารถใช้เพื่อปรับใช้แอปพลิเคชันในสภาพแวดล้อม AWS ของคุณเอง
ภาพรวมโซลูชัน
วิธีแก้ปัญหาในโพสต์นี้รวม serverless บริการของ AWS เพื่อสร้างไปป์ไลน์ที่ขับเคลื่อนด้วยเหตุการณ์แบบ end-to-end แบบอัตโนมัติอย่างสมบูรณ์สำหรับการตรวจสอบคุณภาพข้อมูล ไดอะแกรมต่อไปนี้แสดงสถาปัตยกรรมโซลูชันของเรา
เวิร์กโฟลว์โซลูชันประกอบด้วยขั้นตอนต่อไปนี้:
- เมื่อคุณอัปโหลดข้อมูลใหม่ไปที่ .ของคุณ บริการจัดเก็บข้อมูลอย่างง่ายของ Amazon บัคเก็ต (Amazon S3) กิจกรรมถูกส่งไปยัง EventBridge
- กฎ EventBridge ทริกเกอร์เครื่องสถานะ Step Functions ให้ทำงาน
- เครื่องสถานะเริ่มงานโปรไฟล์ DataBrew โดยกำหนดค่าด้วยชุดกฎและกฎคุณภาพข้อมูล หากคุณกำลังพิจารณาที่จะสร้างโซลูชันที่คล้ายกัน ตำแหน่งงานที่ส่งออกของโปรไฟล์ DataBrew และบัคเก็ต S3 ของแหล่งข้อมูลควรไม่ซ้ำกัน ซึ่งจะป้องกันการรันงานแบบเรียกซ้ำ เราปรับใช้ทรัพยากรของเราด้วย an การก่อตัวของ AWS Cloud เทมเพลต ซึ่งสร้างบัคเก็ต S3 ที่ไม่ซ้ำใคร
- ฟังก์ชัน Lambda อ่านผลลัพธ์คุณภาพข้อมูลจาก Amazon S3 และส่งคืนการตอบสนองบูลีนไปยังเครื่องสถานะ ฟังก์ชันส่งคืน
false
ถ้ากฎอย่างน้อยหนึ่งกฎในชุดกฎล้มเหลว และส่งคืนtrue
ถ้ากฎทั้งหมดสำเร็จ - หากการตอบสนองบูลีนคือ
false
เครื่องของรัฐจะส่งการแจ้งเตือนทางอีเมลกับ Amazon SNS และเครื่องสถานะจะลงท้ายด้วย afailed
สถานะ. หากการตอบสนองบูลีนคือtrue
, เครื่องของรัฐลงท้ายด้วย asucceed
สถานะ. คุณยังสามารถขยายโซลูชันในขั้นตอนนี้เพื่อรันงานอื่นๆ เมื่อสำเร็จหรือล้มเหลว ตัวอย่างเช่น หากกฎทั้งหมดสำเร็จ คุณสามารถส่งข้อความ EventBridge เพื่อทริกเกอร์งานการแปลงอื่นใน DataBrew
ในโพสต์นี้ คุณใช้ AWS CloudFormation เพื่อปรับใช้การสาธิตที่ทำงานได้อย่างสมบูรณ์ของโซลูชันการตรวจสอบคุณภาพข้อมูลที่ขับเคลื่อนด้วยเหตุการณ์ คุณทดสอบโซลูชันด้วยการอัปโหลดไฟล์ค่าที่คั่นด้วยเครื่องหมายจุลภาค (CSV) ที่ถูกต้องไปยัง Amazon S3 ตามด้วยไฟล์ CSV ที่ไม่ถูกต้อง
ขั้นตอนมีดังนี้:
- เปิดใช้ CloudFormation stack เพื่อปรับใช้ทรัพยากรโซลูชัน
- ทดสอบวิธีแก้ปัญหา:
- อัปโหลดไฟล์ CSV ที่ถูกต้องไปยัง Amazon S3 และสังเกตการตรวจสอบคุณภาพข้อมูลและเครื่องสถานะ Step Functions สำเร็จ
- อัปโหลดไฟล์ CSV ที่ไม่ถูกต้องไปยัง Amazon S3 และสังเกตการตรวจสอบคุณภาพข้อมูลและสถานะของ Step Functions ที่ล้มเหลว และรับการแจ้งเตือนทางอีเมลจาก Amazon SNS
โค้ดตัวอย่างทั้งหมดสามารถพบได้ใน พื้นที่เก็บข้อมูล GitHub.
เบื้องต้น
สำหรับคำแนะนำนี้ คุณควรมีข้อกำหนดเบื้องต้นต่อไปนี้:
ปรับใช้ทรัพยากรโซลูชันโดยใช้ AWS CloudFormation
คุณใช้สแต็ก CloudFormation เพื่อปรับใช้ทรัพยากรที่จำเป็นสำหรับโซลูชันการตรวจสอบคุณภาพข้อมูลที่ขับเคลื่อนด้วยเหตุการณ์ สแต็กประกอบด้วยชุดข้อมูลตัวอย่างและชุดกฎใน DataBrew
- ลงชื่อเข้าใช้บัญชี AWS ของคุณแล้วเลือก เรียกใช้ Stack:
- เกี่ยวกับ สร้างกองอย่างรวดเร็ว หน้าสำหรับ ที่อยู่อีเมลป้อนที่อยู่อีเมลที่ถูกต้องสำหรับการแจ้งเตือนทางอีเมลของ Amazon SNS
- ปล่อยให้ตัวเลือกที่เหลือตั้งค่าเป็นค่าเริ่มต้น
- เลือกกล่องกาเครื่องหมายตอบรับ
- Choose สร้างสแต็ก
สแต็ก CloudFormation ใช้เวลาประมาณ 5 นาทีในการเข้าถึง CREATE_COMPLETE
สถานะ
- ตรวจสอบกล่องจดหมายของที่อยู่อีเมลที่คุณให้ไว้และยอมรับการสมัคร SNS
คุณต้องตรวจสอบและยอมรับการยืนยันการสมัครเพื่อสาธิตคุณลักษณะการแจ้งเตือนทางอีเมลเมื่อสิ้นสุดคำแนะนำ
เกี่ยวกับ Outputs แท็บของสแต็ก คุณสามารถค้นหา URL เพื่อเรียกดูทรัพยากร DataBrew และ Step Functions ที่เทมเพลตสร้างขึ้น นอกจากนี้ ให้สังเกตคำสั่ง AWS CLI ที่เสร็จสมบูรณ์ที่คุณใช้ในขั้นตอนต่อๆ ไป
หากคุณเลือก AWSGlueDataBrewRuleset
ลิงก์ค่า คุณควรเห็นหน้ารายละเอียดชุดกฎ ดังในภาพหน้าจอต่อไปนี้ ในคำแนะนำนี้ เราสร้างชุดกฎคุณภาพข้อมูลที่มีกฎสามข้อที่ตรวจสอบค่าที่หายไป ค่าผิดปกติ และความยาวของสตริง
ทดสอบวิธีแก้ปัญหา
ในขั้นตอนต่อไปนี้ คุณใช้ AWS CLI เพื่ออัปโหลดเวอร์ชันที่ถูกต้องและไม่ถูกต้องของไฟล์ CSV เพื่อทดสอบโซลูชันการตรวจสอบคุณภาพข้อมูลตามเหตุการณ์
- เปิดเทอร์มินัลหรือพรอมต์บรรทัดคำสั่ง และใช้ AWS CLI เพื่อดาวน์โหลดข้อมูลตัวอย่าง ใช้คำสั่งจากเอาต์พุตสแต็ก CloudFormation ด้วยชื่อคีย์
CommandToDownloadTestData
: - ใช้ AWS CLI อีกครั้งเพื่ออัปโหลดไฟล์ CSV ที่ไม่เปลี่ยนแปลงไปยังบัคเก็ต S3 ของคุณ เปลี่ยนสตริง ด้วยชื่อบัคเก็ตของคุณ หรือคัดลอกและวางคำสั่งที่คุณได้รับจากเอาต์พุตเทมเพลต CloudFormation:
- บนคอนโซล Step Functions ค้นหาเครื่องสถานะที่สร้างโดยเทมเพลต CloudFormation
คุณสามารถค้นหา URL ได้ในผลลัพธ์ของ CloudFormation ที่บันทึกไว้ก่อนหน้านี้
- เกี่ยวกับ การประหารชีวิต คุณควรเห็นการรันเครื่องสถานะใหม่
- เลือก URL ของการวิ่งเพื่อดูกราฟเครื่องสถานะและติดตามความคืบหน้า
รูปภาพต่อไปนี้แสดงเวิร์กโฟลว์ของเครื่องสถานะของเรา
เพื่อแสดงความล้มเหลวของกฎคุณภาพข้อมูล คุณต้องแก้ไข . อย่างน้อยหนึ่งครั้ง votes.csv
ไฟล์
- เปิดไฟล์ในโปรแกรมแก้ไขข้อความหรือเครื่องมือสเปรดชีตที่คุณต้องการ แล้วลบเพียงเซลล์เดียว
ในภาพหน้าจอต่อไปนี้ ฉันใช้ตัวแก้ไข GNU nano บน Linux คุณยังสามารถใช้ตัวแก้ไขสเปรดชีตเพื่อลบเซลล์ ซึ่งทำให้กฎ "ตรวจสอบคอลัมน์ทั้งหมดสำหรับค่าที่หายไป" ล้มเหลว
ภาพหน้าจอต่อไปนี้แสดงไฟล์ CSV ก่อนแก้ไข
ภาพหน้าจอต่อไปนี้แสดงไฟล์ CSV ที่เปลี่ยนแปลง
- บันทึกการแก้ไข
votes.csv
ไฟล์และกลับไปที่พรอมต์คำสั่งหรือเทอร์มินัลของคุณ - ใช้ AWS CLI เพื่ออัปโหลดไฟล์ไปยังบัคเก็ต S3 ของคุณอีกครั้ง คุณใช้คำสั่งเดียวกับเมื่อก่อน:
- บนคอนโซล Step Functions ให้ไปที่เครื่องสถานะล่าสุดที่รันเพื่อตรวจสอบ
การตรวจสอบคุณภาพข้อมูลล้มเหลว ทำให้เกิดการแจ้งเตือนทางอีเมล SNS และความล้มเหลวของการรันเครื่องสถานะโดยรวม
รูปภาพต่อไปนี้แสดงเวิร์กโฟลว์ของเครื่องสถานะล้มเหลว
ภาพหน้าจอต่อไปนี้แสดงตัวอย่างอีเมล SNS
- คุณสามารถตรวจสอบความล้มเหลวของกฎบนคอนโซล DataBrew ได้โดยเลือก
AWSGlueDataBrewProfileResults
ค่าในเอาต์พุตสแต็ก CloudFormation
ทำความสะอาด
เพื่อหลีกเลี่ยงค่าใช้จ่ายในอนาคต ให้ลบทรัพยากร บนคอนโซล AWS CloudFormation ให้ลบสแต็กที่ชื่อ AWSBigDataBlogDataBrewDQSample
.
สรุป
ในโพสต์นี้ คุณได้เรียนรู้วิธีสร้างไปป์ไลน์การตรวจสอบคุณภาพข้อมูลที่ขับเคลื่อนด้วยเหตุการณ์โดยอัตโนมัติ ด้วย DataBrew คุณสามารถกำหนดกฎเกณฑ์คุณภาพข้อมูล เกณฑ์ และชุดกฎสำหรับธุรกิจและข้อกำหนดทางเทคนิคของคุณ Step Functions, EventBridge และ Amazon SNS ช่วยให้คุณสร้างไปป์ไลน์ที่ซับซ้อนด้วยการจัดการข้อผิดพลาดที่ปรับแต่งได้และการแจ้งเตือนที่ปรับให้เหมาะกับความต้องการของคุณ
คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับโซลูชันนี้และซอร์สโค้ดได้โดยไปที่ พื้นที่เก็บข้อมูล GitHub. หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับกฎคุณภาพข้อมูล DataBrew โปรดไปที่ ตอนนี้ AWS Glue DataBrew ช่วยให้ลูกค้าสร้างกฎคุณภาพข้อมูลเพื่อกำหนดและตรวจสอบข้อกำหนดทางธุรกิจได้ หรืออ้างถึง การตรวจสอบคุณภาพข้อมูลใน AWS Glue DataBrew.
เกี่ยวกับผู้เขียน
เลธ อัล-ซาดูน เป็นสถาปนิกต้นแบบต้นแบบในทีม Envision Engineering เขาสร้างต้นแบบและโซลูชันโดยใช้ AI, แมชชีนเลิร์นนิง, IoT และเอดจ์คอมพิวติ้ง, การวิเคราะห์การสตรีม, วิทยาการหุ่นยนต์ และการคำนวณเชิงพื้นที่เพื่อแก้ปัญหาของลูกค้าในโลกแห่งความเป็นจริง ในเวลาว่าง Laith สนุกกับกิจกรรมกลางแจ้ง เช่น การถ่ายภาพ เล่นโดรน ปีนเขา และเพนท์บอล
กอร์ดอน เบอร์เกส เป็นผู้จัดการผลิตภัณฑ์อาวุโสของ AWS Glue DataBrew เขาหลงใหลในการช่วยให้ลูกค้าค้นพบข้อมูลเชิงลึกจากข้อมูลของพวกเขา และมุ่งเน้นที่การสร้างประสบการณ์ของผู้ใช้และฟังก์ชันการทำงานที่หลากหลายสำหรับผลิตภัณฑ์การวิเคราะห์ นอกที่ทำงาน กอร์ดอนชอบอ่านหนังสือ ดื่มกาแฟ และประกอบคอมพิวเตอร์
- '
- &
- 100
- 107
- 7
- เกี่ยวกับเรา
- ลงชื่อเข้าใช้
- กิจกรรม
- ที่อยู่
- AI
- ทั้งหมด
- อเมซอน
- การวิเคราะห์
- การใช้งาน
- สถาปัตยกรรม
- อัตโนมัติ
- AWS
- สร้าง
- การก่อสร้าง
- ธุรกิจ
- โหลด
- การตรวจสอบ
- การทำความสะอาด
- รหัส
- กาแฟ
- คอลัมน์
- ซับซ้อน
- คอมพิวเตอร์
- การคำนวณ
- ปลอบใจ
- ลูกค้า
- ข้อมูล
- คุณภาพของข้อมูล
- วัน
- ค้นพบ
- เสียงหึ่งๆ
- ขอบ
- การคำนวณที่ทันสมัย
- บรรณาธิการ
- อีเมล
- สิ้นสุด
- ชั้นเยี่ยม
- สิ่งแวดล้อม
- เหตุการณ์
- ตัวอย่าง
- ประสบการณ์
- ความล้มเหลว
- เร็วขึ้น
- ลักษณะ
- พอดี
- เที่ยวบิน
- พบ
- ฟรี
- ฟังก์ชัน
- ฟังก์ชั่น
- อนาคต
- การเจริญเติบโต
- การจัดการ
- การดูแลสุขภาพ
- จะช่วยให้
- การธุดงค์
- สรุป ความน่าเชื่อถือของ Olymp Trade?
- ทำอย่างไร
- HTTPS
- แยกแยะ
- ภาพ
- การดำเนินการ
- ข้อมูลเชิงลึก
- สอบสวน
- IOT
- ปัญหา
- IT
- การสัมภาษณ์
- คีย์
- ใหญ่
- ล่าสุด
- เรียนรู้
- ได้เรียนรู้
- การเรียนรู้
- Line
- LINK
- ลินุกซ์
- ที่ตั้ง
- เรียนรู้เครื่อง
- ผู้ผลิต
- ML
- ข้อมูลเพิ่มเติม
- นาโน
- จำเป็น
- การประกาศ
- Options
- ใบสั่ง
- อื่นๆ
- ของเล่นกลางแจ้ง
- การถ่ายภาพ
- หลัก
- ผลิตภัณฑ์
- ผลิตภัณฑ์
- โปรไฟล์
- การสร้างต้นแบบ
- ผู้จัดหา
- คุณภาพ
- การอ่าน
- ลด
- แทนที่
- ความต้องการ
- แหล่งข้อมูล
- คำตอบ
- ผลสอบ
- รับคืน
- ทบทวน
- หุ่นยนต์
- กฎระเบียบ
- วิ่ง
- ขนาด
- serverless
- บริการ
- ชุด
- คล้ายคลึงกัน
- ง่าย
- So
- โซลูชัน
- แก้
- เกี่ยวกับอวกาศ
- การคำนวณเชิงพื้นที่
- เฉพาะ
- สเปรดชีต
- สถานะ
- สถิติ
- Status
- การเก็บรักษา
- ที่พริ้ว
- การสมัครสมาชิก
- ความสำเร็จ
- วิชาการ
- สถานีปลายทาง
- ทดสอบ
- ที่มา
- ตลอด
- เวลา
- เครื่องมือ
- การแปลง
- การเปลี่ยนแปลง
- เกี่ยวกับการสอน
- ความคุ้มค่า
- รายละเอียด
- งาน
- เวิร์กโฟลว์