DataOps เน้นย้ำถึงความจำเป็นในการทดสอบ ETL อัตโนมัติ (ตอนที่ 1)

DataOps เน้นย้ำถึงความจำเป็นในการทดสอบ ETL อัตโนมัติ (ตอนที่ 1)

คลิกเพื่อเรียนรู้เพิ่มเติมเกี่ยวกับผู้แต่ง Wayne Yaddow DataOps ซึ่งมุ่งเน้นไปที่เครื่องมืออัตโนมัติตลอดวงจรการพัฒนา ETL ตอบสนองต่อความท้าทายครั้งใหญ่สำหรับการรวมข้อมูลและโครงการ ETL โดยทั่วไป โครงการ ETL อาศัยกระบวนการที่คล่องตัวและการทดสอบอัตโนมัติมากขึ้น โครงการ ETL (เช่น แยก แปลง โหลด) มักจะปราศจากการทดสอบอัตโนมัติ การขาดการทดสอบอัตโนมัติมักเกิดจาก 1) ฟังก์ชันการทดสอบ ETL ที่สำคัญซึ่งไม่มีในตลาดหรือโอเพ่นซอร์ส 2) ความซับซ้อนของเครื่องมือทดสอบ ETL บางตัว หรือ 3) ค่าใช้จ่ายสูงในการพัฒนาเครื่องมือภายในองค์กร Gartner Group ได้ยืนยันซ้ำแล้วซ้ำอีกว่า 70% หรือมากกว่าของการรวมข้อมูล การย้ายข้อมูล และการริเริ่มทางธุรกิจอัจฉริยะล้มเหลวในการพยายามครั้งแรก เนื่องจากธุรกิจสร้างข้อมูล (และต้องการมากขึ้น) มากขึ้นกว่าเดิม อัตราความล้มเหลวจึงน่าประหลาดใจ ไฮไลท์ชุดบล็อกสองส่วนนี้: อะไรทำให้การประมวลผล DataOps มีค่าสำหรับโครงการ ETL อะไรคือแรงผลักดันสำหรับระบบอัตโนมัติในการทดสอบ ETL เหตุใดจึงสำคัญที่ต้องใช้เครื่องมือทดสอบเป็นโซลูชัน ไม่ใช่ความคิดริเริ่มแบบครั้งเดียว ขั้นตอนในการเริ่มต้นการทดสอบข้อมูลอัตโนมัติ DataOps โดยสรุป “DataOps เป็นแนวทางอัตโนมัติที่ขับเคลื่อนด้วยกระบวนการในการส่งมอบข้อมูลและการวิเคราะห์ DataOps ใช้แนวทางที่คล่องตัวระหว่างเจ้าของข้อมูลและทีมเทคนิคเพื่อปรับปรุงคุณภาพในขณะที่ลดรอบเวลา มันยืมวิธีการจาก DevOps เพื่อทำการปรับปรุงที่คล้ายคลึงกัน DataOps ไม่ได้ผูกติดอยู่กับเครื่องมือหรือเทคโนโลยีใด ๆ เลย” (CloverDX.com) DataOps ได้รับการออกแบบมาเพื่อสร้างเวิร์กโฟลว์อัตโนมัติเพื่อให้ทีมพัฒนาและทีมปฏิบัติการไม่ขัดแย้งระหว่างการเปิดตัว การสร้างกระบวนการที่ทำซ้ำได้สำหรับการปรับใช้แต่ละครั้งจะนำความเร็ว ความสม่ำเสมอ และความน่าเชื่อถือมาสู่งานที่เคยวุ่นวายได้ดีที่สุด ขณะนี้มีเครื่องมือ ETL หลายร้อยรายการที่อ้างว่าช่วยให้การพัฒนา การปรับใช้ และการบำรุงรักษาทำได้ง่าย คุณลักษณะอีกประการของ DataOps คือการผสานรวมอย่างต่อเนื่องและการทดสอบคุณภาพข้อมูลในทุกระยะวงจรชีวิตของไปป์ไลน์ข้อมูล ขั้นตอนที่จำเป็น ได้แก่ (1) การทดสอบข้อมูลทั้งหมดที่มาจากแหล่งที่มาโดยใช้การทดสอบหน่วยและการตรวจสอบสคีมา/SQL/การสตรีม (2) การตรวจสอบความถูกต้องของข้อมูลในแต่ละขั้นตอนในโฟลว์ข้อมูล (3) การบันทึกและเผยแพร่ตัววัด และ (4) การนำกลับมาใช้ใหม่ เครื่องมือทดสอบในโครงการต่างๆ เครื่องมือทดสอบขั้นสูงสำหรับการรวมข้อมูลอย่างต่อเนื่อง ได้แก่ Soda, SQL และ DbFit DataOps ได้รับการออกแบบให้เป็นวิธีการทำงานร่วมกันและทำงานข้ามฟังก์ชันต่างๆ ผู้ที่ปฏิบัติตามระเบียบวิธีของ DataOps จะใช้เครื่องมืออัตโนมัติต่างๆ ที่มักเรียกกันว่า “ทูลเชน” ซึ่งเป็นชุดเครื่องมือที่ช่วยในการพัฒนา ทดสอบ ส่งมอบ ตรวจสอบ และจัดการข้อมูลตลอดวงจรชีวิตการพัฒนาระบบ (SDLC) ซึ่งทั้งหมดนี้ประสานงานโดยองค์กร ที่ใช้แนวปฏิบัติของ DataOps Toolchains จัดอยู่ในหมวดหมู่ต่อไปนี้อย่างน้อยหนึ่งหมวด ซึ่งสะท้อนถึงลักษณะสำคัญของกระบวนการ SDLC: การพัฒนา – การจัดเตรียมข้อมูล การผสานรวมอย่างต่อเนื่องการกำหนดค่า – Dev, QA, การกำหนดค่าโครงสร้างพื้นฐานด้านการผลิต และการจัดการ การปรับใช้ – การผสานรวมอย่างต่อเนื่องและการควบคุมเวอร์ชันการทดสอบ – การทดสอบอย่างต่อเนื่อง การตรวจสอบ ตัวชี้วัด และระบบอัตโนมัติ การเปิดตัว – การควบคุมเวอร์ชัน DB การจัดการการเปลี่ยนแปลง การอนุมัติการปล่อย การปล่อยอัตโนมัติ การตรวจสอบการผลิต – การตรวจสอบคุณภาพข้อมูลและประสิทธิภาพ ETL โปรเจ็กต์ที่มีระบบอัตโนมัติในการทดสอบเพียงเล็กน้อยไม่ใช่ DataOps การทดสอบ ETL ด้วยตนเองที่เป็นไปตามข้อกำหนดจะดำเนินการทีละขั้นตอนและมักจะ ช้า. ผลลัพธ์มักจะมีราคาแพง เนื่องจากพวกเขาต้องการใครสักคนเพื่อสร้างสภาพแวดล้อมและทำการทดสอบทีละครั้ง การทดสอบด้วยตนเองอาจนำไปสู่ความผิดพลาดของมนุษย์ได้ ในโดเมน DataOps มีแนวโน้มที่จะมุ่งความสนใจไปที่เครื่องมือที่ช่วยทำการทดสอบโดยอัตโนมัติ นอกเหนือจากนั้น ยังมีสถานการณ์ที่คาดเดาได้ยากว่าการประกันคุณภาพโครงการและการทดสอบเฉพาะนั้นเหมาะสมกับวงจรชีวิตของผลิตภัณฑ์ DataOps อย่างไร ทีมงานจะได้รับความเข้าใจอย่างเพียงพอเกี่ยวกับข้อบกพร่องที่อาจเกิดขึ้นซึ่งการเปลี่ยนแปลงที่เพิ่มขึ้นเล็กน้อยเกิดขึ้นโดยไม่ทำให้เวิร์กโฟลว์ช้าลงได้อย่างไร การตอบสนองของผู้ทดสอบควรเป็นแนวทางปฏิบัติในการปรับแต่งกลยุทธ์การทดสอบที่แสดงถึงเป้าหมายร่วมกันในทีมโครงการ กระบวนการ DataOps ควรทำการทดสอบโดยอัตโนมัติในขอบเขตที่เป็นไปได้ ในขณะที่พิจารณาเทคโนโลยีไอทีที่นำมาใช้สำหรับโครงการ การทดสอบอัตโนมัติสามารถเชื่อถือได้ แต่ประสิทธิภาพของการทดสอบนั้นขึ้นอยู่กับคุณภาพและขอบเขตของเครื่องมือและการทดสอบ ในองค์กรที่ใช้ DataOps สมาชิกของทีมโครงการใช้เวลา 20% หรือมากกว่าในการวางแผนและทดสอบการเขียน เมื่อใดก็ตามที่พบปัญหาและแก้ไข การทดสอบใหม่จะถูกเพิ่ม หลังจากนั้นจึงควรรันการทดสอบการถดถอย ข้อได้เปรียบหลักของการทดสอบ ETL แบบอัตโนมัติคือดำเนินการซ้ำๆ และสม่ำเสมอได้ง่ายขึ้น การทดสอบด้วยตนเองมักจะมีราคาแพงเกินไปและทำงานช้าเป็นระยะ เพื่อให้แน่ใจว่ามีคุณภาพสูง คุณต้องทดสอบข้อมูลและตรรกะ ETL ของคุณอย่างสม่ำเสมอและสม่ำเสมอ (ดู “The DataOps Cookbook” ฉบับที่ 2) การทำให้กระบวนการทดสอบเป็นอัตโนมัตินั้นอาจเป็นเรื่องที่ท้าทาย แต่ในขณะเดียวกันก็มีความสำคัญอย่างยิ่งต่อการเพิ่มความเร็วและความน่าเชื่อถือของการพัฒนา การทดสอบอัตโนมัติของ ETL ประกอบด้วยการทดสอบประเภทต่อไปนี้สำหรับอินพุตไปป์ไลน์ข้อมูล การแปลงข้อมูล ตรรกะทางธุรกิจ และเอาต์พุต: การทดสอบหน่วย – การทดสอบแบบสแตนด์อโลนของแต่ละส่วนประกอบ การเปลี่ยนแปลงข้อมูลการทดสอบประสิทธิภาพ – การตรวจสอบการตอบสนองภายใต้ปริมาณงานที่คาดหวัง การทดสอบควัน – การทดสอบอย่างรวดเร็วหลังจากสร้างข้อมูล การทดสอบแบบ end-to-end – ตรวจสอบกระบวนการไปป์ไลน์ข้อมูลทั้งหมด เพื่อสนับสนุนเทคโนโลยีการพัฒนาของคุณ ชุดเครื่องมือทดสอบที่วางแผนมาอย่างดีเป็นองค์ประกอบพื้นฐานของ DataOps ดูรูปที่ 1 รูปที่ 1: ส่วนประกอบของกลยุทธ์การทดสอบ DataOps ที่มา: SoftwareTestingHelp.com กลยุทธ์การทดสอบทั่วทั้งโครงการของ DataOps เป็นสิ่งจำเป็น กลยุทธ์การทดสอบโครงการคือแผนโดยสรุปว่าคุณจะบรรลุเป้าหมายด้านคุณภาพตลอด SDLC ได้อย่างไร ใน DataOps เป้าหมายคือการส่งมอบคุณค่าให้กับลูกค้าอย่างรวดเร็ว การสนับสนุนกิจกรรมด้านไอทีด้วยการทดสอบควรเป็นแบบอัตโนมัติโดยค่าเริ่มต้น แต่สิ่งที่มักจะขาดหายไปคือ “กลยุทธ์” คุณรู้ได้อย่างไรว่าการทดสอบอัตโนมัติของคุณจะช่วยให้บรรลุเป้าหมายโดยไม่ต้องใช้กลยุทธ์การทดสอบและแผนที่เกี่ยวข้อง กรณีสำหรับ Fast-Tracking to ETL Test Automation “เครื่องมือทดสอบระบบอัตโนมัติเป็นองค์ประกอบที่สำคัญของ Toolchain DataOps เครื่องมือเหล่านั้นเป็นตัวช่วยให้บรรลุแนวทางคุณภาพอย่างต่อเนื่องที่จำเป็นสำหรับ DataOps ที่ประสบความสำเร็จ” (Magic Quadrant ของ Gartner Group สำหรับการทดสอบซอฟต์แวร์อัตโนมัติ) องค์กรต่างๆ กำลังเผยแพร่แอปพลิเคชันใหม่และอัปเดตได้เร็วกว่าที่เคย – บางครั้งวันละหลายครั้ง องค์กรมักใช้กระบวนการทดสอบ ETL แบบแมนนวลและเครื่องมือไม่เพียงพอในการจัดการส่วนสำคัญของแอปพลิเคชันที่มองเห็นได้ชัดเจนและต้องพบกับลูกค้า และสิ่งนี้แปลเป็นความเสี่ยง – ความเสี่ยงต่อความภักดีของลูกค้า แบรนด์ และข้อมูลที่เป็นความลับ การใช้แนวทางการทดสอบ DataOps สำหรับโครงการ ETL หมายถึงการทดสอบอัตโนมัติสำหรับชุดข้อมูลต้นทางและเป้าหมาย และทำให้แน่ใจว่าชุดข้อมูลเหล่านั้นเป็นปัจจุบันและถูกต้อง สิ่งนี้มีประโยชน์มากในการจัดการกับแหล่งข้อมูลและโวลุ่มที่หลากหลาย (รูปที่ 2) ทีมของคุณจะตรวจพบข้อผิดพลาดก่อนที่จะคุกคามแอปพลิเคชันในการผลิต และคุณจะมีเวลามากขึ้นในการแก้ไขปัญหาก่อนที่จะถึงขั้นตอนการผลิตซึ่งปัญหาเหล่านั้นจะตามมาอีก รูปที่ 2: ความหลากหลายของแหล่งข้อมูล เป้าหมาย และแพลตฟอร์มที่เกี่ยวข้องในปัจจุบัน บทสรุป ทีมบูรณาการ/การย้ายข้อมูลจำนวนมากพบว่ามีความเป็นไปได้ที่จะประสบความสำเร็จด้วยการทดสอบ ETL อัตโนมัติหลายระดับและประเภทต่างๆ ตลอด DataOps SDLC การทดสอบอัตโนมัติจะไม่แทนที่ยูนิตแบบแมนนวล ส่วนประกอบ และการทดสอบแบบ end-to-end ทั้งหมดในโปรเจ็กต์ DataOps อย่างไรก็ตาม การเน้นที่การทดสอบอัตโนมัติจะช่วยให้มั่นใจได้ว่าการทดสอบด้วยตนเองที่มีราคาแพงกว่าจะเน้นไปที่กิจกรรมที่มีความเสี่ยงสูงและมีมูลค่าสูง การสร้างการทดสอบ ETL แบบอัตโนมัตินั้นคุ้มค่ากับความพยายาม โดยเฉพาะในคลังข้อมูลและโครงการไปป์ไลน์ข้อมูล การทดสอบอัตโนมัติสามารถทำได้หลายร้อยครั้งโดยมีค่าใช้จ่ายโดยรวมเพียงเล็กน้อยและมีความแม่นยำมากขึ้น ส่วนที่ 2 ในชุดนี้จะ 1) นำเสนอ “แผนงาน” ที่มีต่อการทดสอบอัตโนมัติของ ETL และ 2) ให้คำแนะนำเพื่อช่วยผู้อ่านในการพิจารณาว่าการทดสอบ ETL ใดที่ควรพิจารณาสำหรับการทดสอบอัตโนมัติ

  • บ้าน
  • ธุรกิจ
  • วิทยาศาสตร์ข้อมูล
  • การตลาดดิจิทัล

  • ตลาดการค้า
  • Leave a comment

    Your email address will not be published. Required fields are marked *