กลับไปหน้าบทความ

อ่าน 4 นาที

การแปลงข้อมูล (การคำนวณ)

ใน ด้าน การคำนวณการแปลงข้อมูลคือกระบวนการแปลงข้อมูลจากรูปแบบหรือโครงสร้างหนึ่งไปเป็นรูปแบบหรือโครงสร้างอื่น ถือเป็นแง่มุมพื้นฐานของการบูรณาการข้อมูล ส่วนใหญ่ และ งาน...

การแปลงข้อมูล (การคำนวณ)

ใน ด้าน การคำนวณการแปลงข้อมูลคือกระบวนการแปลงข้อมูลจากรูปแบบหรือโครงสร้างหนึ่งไปเป็นรูปแบบหรือโครงสร้างอื่น ถือเป็นแง่มุมพื้นฐานของการบูรณาการข้อมูล ส่วนใหญ่ [ 1 ]และ งาน การจัดการข้อมูลเช่นการจัดการข้อมูลการจัดเก็บข้อมูล การบูรณาการข้อมูลและการบูรณาการแอปพลิ เคชัน

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

การปรับโครงสร้างข้อมูลหลัก ( Master Data Recast) เป็นอีกรูปแบบหนึ่งของการแปลงข้อมูล โดยที่ฐานข้อมูลทั้งหมดจะถูกแปลงหรือปรับโครงสร้างใหม่โดยไม่ต้องดึงข้อมูลออกจากฐานข้อมูล ข้อมูลทั้งหมดในฐานข้อมูลที่ออกแบบมาอย่างดีจะมีความสัมพันธ์โดยตรงหรือโดยอ้อมกับตารางฐานข้อมูล หลักจำนวนจำกัด ผ่านเครือข่ายของ ข้อ จำกัดคีย์ต่างประเทศ (Foreign Key Constraints) ข้อจำกัดคีย์ต่างประเทศแต่ละข้อขึ้นอยู่กับดัชนีฐานข้อมูล ที่ไม่ซ้ำกัน จากตารางฐานข้อมูลหลัก ดังนั้น เมื่อตารางฐานข้อมูลหลักที่เหมาะสมถูกปรับโครงสร้างใหม่ด้วยดัชนีที่ไม่ซ้ำกันที่แตกต่างกัน ข้อมูลที่เกี่ยวข้องโดยตรงและโดยอ้อมก็จะถูกปรับโครงสร้างใหม่หรือจัดเรียงใหม่ด้วยเช่นกัน ข้อมูลที่เกี่ยวข้องโดยตรงและโดยอ้อมอาจยังคงสามารถดูได้ในรูปแบบเดิม เนื่องจากดัชนีที่ไม่ซ้ำกันเดิมยังคงมีอยู่กับข้อมูลหลัก นอกจากนี้ การปรับโครงสร้างฐานข้อมูลจะต้องทำในลักษณะที่ไม่ส่งผลกระทบต่อสถาปัตยกรรมซอฟต์แวร์ ของแอปพลิเคชัน

เมื่อการแมปข้อมูลเป็นไปโดยอ้อมผ่านแบบจำลองข้อมูล ที่เป็นตัวกลาง กระบวนการนี้เรียกว่าการไกล่เกลี่ยข้อมูล (Data Mediation )

กระบวนการแปลงข้อมูล

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

ขั้นตอนเหล่านี้มักเป็นจุดสนใจของนักพัฒนาหรือนักวิเคราะห์ข้อมูลทางเทคนิค ซึ่งอาจใช้เครื่องมือเฉพาะทางหลายอย่างในการปฏิบัติงาน

ขั้นตอนต่างๆ สามารถอธิบายได้ดังนี้:

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

การแมปข้อมูลคือกระบวนการกำหนดวิธีการแมป แก้ไข รวม กรอง รวบรวม ฯลฯ ฟิลด์แต่ละรายการเพื่อสร้างผลลัพธ์สุดท้ายที่ต้องการ นักพัฒนาหรือนักวิเคราะห์ข้อมูลทางเทคนิคมักจะทำการแมปข้อมูล เนื่องจากพวกเขาทำงานในเทคโนโลยีเฉพาะเพื่อกำหนดกฎการแปลง (เช่นเครื่องมือETL แบบภาพ [ 3 ]ภาษาการแปลง)

การสร้างโค้ดคือกระบวนการสร้างโค้ดที่สามารถเรียกใช้งานได้ (เช่น SQL, Python, R หรือคำสั่งที่สามารถเรียกใช้งานได้อื่นๆ) ซึ่งจะแปลงข้อมูลตามกฎการแมปข้อมูลที่ต้องการและกำหนดไว้[ 4 ]โดยทั่วไป เทคโนโลยีการแปลงข้อมูลจะสร้างโค้ดนี้[ 5 ]โดยอิงตามคำจำกัดความหรือเมตาเดตาที่กำหนดโดยนักพัฒนา

การเรียกใช้โค้ดคือขั้นตอนที่โค้ดที่สร้างขึ้นจะถูกเรียกใช้กับข้อมูลเพื่อสร้างผลลัพธ์ที่ต้องการ โค้ดที่เรียกใช้อาจถูกผสานรวมเข้ากับเครื่องมือแปลงข้อมูลอย่างแน่นหนา หรืออาจต้องมีขั้นตอนแยกต่างหากจากนักพัฒนาเพื่อเรียกใช้โค้ดที่สร้างขึ้นด้วยตนเอง

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

ประเภทของการแปลงข้อมูล

การแปลงข้อมูลแบบกลุ่ม

ตาม ธรรมเนียมแล้ว การแปลงข้อมูลเป็นกระบวนการแบบกลุ่มหรือแบบแบตช์[ 6 ]โดยนักพัฒนาจะเขียนโค้ดหรือใช้กฎการแปลงในเครื่องมือการรวมข้อมูล จากนั้นจึงดำเนินการโค้ดหรือกฎเหล่านั้นกับข้อมูลจำนวนมาก[ 7 ]กระบวนการนี้สามารถปฏิบัติตามขั้นตอนเชิงเส้นตามที่อธิบายไว้ในกระบวนการแปลงข้อมูลข้างต้นได้

การแปลงข้อมูลแบบกลุ่มถือเป็นรากฐานสำคัญของเทคโนโลยีการบูรณาการข้อมูลแทบทุกประเภท เช่น การจัดเก็บข้อมูล การย้ายข้อมูล และการบูรณาการแอปพลิเคชัน[ 1 ]

เมื่อจำเป็นต้องแปลงและส่งข้อมูลด้วยความหน่วงต่ำ มักใช้คำว่า "ไมโครแบทช์" [ 6 ] ซึ่งหมายถึงชุดข้อมูลขนาดเล็ก (เช่น จำนวนแถวน้อยหรือชุดวัตถุข้อมูลขนาดเล็ก) ที่สามารถประมวลผลได้อย่างรวดเร็วและส่งไปยังระบบเป้าหมายเมื่อจำเป็น

ประโยชน์ของการแปลงข้อมูลแบบกลุ่ม

กระบวนการแปลงข้อมูลแบบดั้งเดิมได้ให้บริการบริษัทต่างๆ ได้เป็นอย่างดีมานานหลายทศวรรษ เครื่องมือและเทคโนโลยีต่างๆ (การวิเคราะห์ข้อมูล การแสดงภาพข้อมูล การทำความสะอาดข้อมูล การบูรณาการข้อมูล ฯลฯ) ได้พัฒนาจนสมบูรณ์ และองค์กรส่วนใหญ่ (หากไม่ใช่ทั้งหมด) แปลงข้อมูลจำนวนมหาศาลที่ป้อนเข้าสู่แอปพลิเคชันภายในและภายนอก คลังข้อมูล และแหล่งเก็บข้อมูลอื่นๆ[ 8 ]

ข้อจำกัดของการแปลงข้อมูลแบบดั้งเดิม

กระบวนการแบบดั้งเดิมนี้ยังมีข้อจำกัดที่ขัดขวางประสิทธิภาพและประสิทธิผลโดยรวมอีกด้วย[ 1 ] [ 2 ] [ 7 ]

ผู้ที่จำเป็นต้องใช้ข้อมูล (เช่น ผู้ใช้ทางธุรกิจ) ไม่ได้มีบทบาทโดยตรงในกระบวนการแปลงข้อมูล[ 9 ]โดยทั่วไป ผู้ใช้จะมอบหมายงานแปลงข้อมูลให้กับนักพัฒนาที่มีทักษะการเขียนโค้ดหรือทักษะทางเทคนิคที่จำเป็นในการกำหนดการแปลงและดำเนินการกับข้อมูล[ 8 ]

กระบวนการนี้ทำให้งานส่วนใหญ่ในการกำหนดการแปลงที่จำเป็นตกอยู่กับนักพัฒนา ซึ่งมักจะไม่มีความรู้ด้านโดเมนเหมือนกับผู้ใช้ทางธุรกิจ นักพัฒนาจะตีความข้อกำหนดของผู้ใช้ทางธุรกิจและนำโค้ด/ตรรกะที่เกี่ยวข้องไปใช้ ซึ่งอาจทำให้เกิดข้อผิดพลาดในกระบวนการ (จากการตีความข้อกำหนดผิดพลาด) และยังทำให้ใช้เวลานานขึ้นในการหาทางออกอีกด้วย[ 9 ] [ 10 ]

ปัญหานี้ทำให้เกิดความต้องการความคล่องตัวและการบริการตนเองในการบูรณาการข้อมูล (กล่าวคือ การเพิ่มศักยภาพให้ผู้ใช้ข้อมูลและช่วยให้พวกเขาสามารถแปลงข้อมูลได้ด้วยตนเองแบบโต้ตอบ) [ 7 ] [ 10 ]

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

อย่างไรก็ตาม อาจมีปัญหาเรื่องความเข้ากันได้อยู่บ้าง (เช่น แหล่งข้อมูลใหม่ๆ เช่นIoTอาจใช้งานไม่ได้กับเครื่องมือรุ่นเก่า) และข้อจำกัดด้านการปฏิบัติตามกฎระเบียบเนื่องจากความแตกต่างใน แนวทาง การกำกับดูแลข้อมูลการเตรียมข้อมูล และการตรวจสอบ[ 12 ]

การแปลงข้อมูลแบบโต้ตอบ

การแปลงข้อมูลแบบโต้ตอบ (IDT) [ 13 ]เป็นความสามารถใหม่ที่ช่วยให้นักวิเคราะห์ธุรกิจและผู้ใช้ทางธุรกิจสามารถโต้ตอบกับชุดข้อมูลขนาดใหญ่ได้โดยตรงผ่านอินเทอร์เฟซแบบภาพ[ 9 ]เข้าใจลักษณะของข้อมูล (ผ่านการสร้างโปรไฟล์ข้อมูลอัตโนมัติหรือการแสดงภาพ) และเปลี่ยนแปลงหรือแก้ไขข้อมูลผ่านการโต้ตอบง่ายๆ เช่น การคลิกหรือเลือกองค์ประกอบบางอย่างของข้อมูล[ 2 ]

แม้ว่าการแปลงข้อมูลแบบโต้ตอบจะใช้ขั้นตอนกระบวนการบูรณาการข้อมูลแบบเดียวกับการบูรณาการข้อมูลแบบแบตช์ แต่ความแตกต่างที่สำคัญคือขั้นตอนต่างๆ ไม่จำเป็นต้องทำตามแบบเชิงเส้น และโดยทั่วไปไม่จำเป็นต้องใช้ทักษะทางเทคนิคมากนักในการดำเนินการให้เสร็จสมบูรณ์[ 14 ]

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

โซลูชันการแปลงข้อมูลแบบโต้ตอบมีอินเทอร์เฟซภาพแบบบูรณาการที่รวมขั้นตอนต่างๆ ที่เคยแยกจากกัน เช่น การวิเคราะห์ข้อมูล การแมปข้อมูล การสร้าง/ดำเนินการโค้ด และการตรวจสอบข้อมูล[ 8 ]กล่าวคือ หากมีการเปลี่ยนแปลงในขั้นตอนใดขั้นตอนหนึ่ง (เช่น การเปลี่ยนชื่อ) ซอฟต์แวร์จะอัปเดตขั้นตอนก่อนหน้าหรือขั้นตอนถัดไปโดยอัตโนมัติ อินเทอร์เฟซสำหรับการแปลงข้อมูลแบบโต้ตอบประกอบด้วยการแสดงภาพเพื่อแสดงรูปแบบและความผิดปกติในข้อมูลแก่ผู้ใช้ เพื่อให้พวกเขาสามารถระบุค่าที่ผิดพลาดหรือผิดปกติได้[ 9 ]

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

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

ภาษาการแปลงรูป

มีภาษามากมายที่ใช้ในการแปลงข้อมูลภาษาการแปลงข้อมูลหลายภาษาจำเป็นต้อง มี ไวยากรณ์ในหลายกรณี ไวยากรณ์จะมีโครงสร้างโดยใช้รูปแบบที่คล้ายกับBackus–Naur form (BNF) มีภาษามากมายที่ใช้เพื่อวัตถุประสงค์ดังกล่าว โดยมีความแตกต่างกันในด้านการเข้าถึง (ต้นทุน) และประโยชน์โดยทั่วไป[ 15 ]ตัวอย่างของภาษาดังกล่าว ได้แก่:

  • AWK - หนึ่งในภาษาสำหรับการแปลงข้อมูลข้อความที่เก่าแก่และได้รับความนิยมมากที่สุด
  • Perl - ภาษาโปรแกรมระดับสูงที่มีทั้งไวยากรณ์เชิงกระบวนการและเชิงวัตถุ สามารถดำเนินการที่มีประสิทธิภาพกับข้อมูลไบนารีหรือข้อความได้
  • ภาษาเทมเพลต - ภาษาเฉพาะทางที่ใช้ในการแปลงข้อมูลให้เป็นเอกสาร (ดูเพิ่มเติมที่ตัวประมวลผลเทมเพลต )
  • TXL - ภาษาสำหรับการสร้างต้นแบบคำอธิบาย ใช้สำหรับการแปลงซอร์สโค้ดหรือข้อมูล
  • XSLT - ภาษามาตรฐานสำหรับการแปลงข้อมูล XML (เหมาะสำหรับXQueryในหลายแอปพลิเคชัน)

นอกจากนี้ บริษัทต่างๆ เช่น Trifacta และ Paxata ได้พัฒนาภาษาการแปลงเฉพาะโดเมน (DSL) สำหรับการให้บริการและการแปลงชุดข้อมูล การพัฒนาภาษาเฉพาะโดเมนมีความเชื่อมโยงกับการเพิ่มผลผลิตและการเข้าถึงสำหรับผู้ใช้ที่ไม่ใช่ผู้เชี่ยวชาญด้านเทคนิค[ 16 ] “Wrangle” ของ Trifacta เป็นตัวอย่างหนึ่งของภาษาเฉพาะโดเมนดังกล่าว[ 17 ]

ข้อดีอีกประการหนึ่งของแนวโน้มภาษาการแปลงเฉพาะโดเมนในปัจจุบันคือ ภาษาการแปลงเฉพาะโดเมนสามารถแยกส่วนการดำเนินการพื้นฐานของตรรกะที่กำหนดไว้ในภาษาการแปลงเฉพาะโดเมนได้ นอกจากนี้ยังสามารถใช้ตรรกะเดียวกันนั้นในเอ็นจิ้นการประมวลผลต่างๆ เช่นSpark , MapReduceและDataflowได้อีกด้วย กล่าวอีกนัยหนึ่ง ด้วยภาษาการแปลงเฉพาะโดเมน ภาษาการแปลงจะไม่ผูกติดกับเอ็นจิ้นพื้นฐาน[ 17 ]

แม้ว่าภาษาโปรแกรมเชิงการแปลงมักจะเหมาะสมที่สุดสำหรับการแปลง แต่สิ่งง่ายๆ อย่างเช่นนิพจน์ปกติก็สามารถนำมาใช้ในการแปลงที่มีประโยชน์ได้เช่นกันโปรแกรมแก้ไขข้อความอย่างvim , emacsหรือTextPadรองรับการใช้นิพจน์ปกติพร้อมอาร์กิวเมนต์ ซึ่งจะช่วยให้สามารถแทนที่ทุกๆ ตัวอย่างของรูปแบบเฉพาะด้วยรูปแบบอื่นโดยใช้ส่วนต่างๆ ของรูปแบบดั้งเดิม ตัวอย่างเช่น:

foo ("สตริงบางส่วน", 42, gCommon); บาร์ (วัตถุบางอย่าง, วัตถุอีกอย่าง); foo ("สตริงอื่น", 24, gCommon); บาร์ (myObj, myOtherObj); 

ทั้งสองอย่างสามารถแปลงให้เป็นรูปแบบที่กะทัดรัดยิ่งขึ้นได้ดังนี้:

foobar("some string", 42, someObj, anotherObj); foobar("another string", 24, myObj, myOtherObj); 

กล่าวอีกนัยหนึ่งคือ การเรียกใช้ฟังก์ชัน foo ด้วยอาร์กิวเมนต์สามตัว ตามด้วยการเรียกใช้ฟังก์ชันด้วยอาร์กิวเมนต์สองตัวทุกครั้ง จะถูกแทนที่ด้วยการเรียกใช้ฟังก์ชันเพียงครั้งเดียว โดยใช้อาร์กิวเมนต์บางส่วนหรือทั้งหมดจากชุดอาร์กิวเมนต์เดิม

ดูเพิ่มเติม

  • รูปแบบไฟล์ การแปลงไฟล์ และการย้ายไฟล์ บทความที่เกี่ยวข้องจาก Wikiversity
ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Data_transformation_(computing)&oldid=1311600311 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ การแปลงข้อมูล (การคำนวณ)

ใน ด้าน การคำนวณการแปลงข้อมูลคือกระบวนการแปลงข้อมูลจากรูปแบบหรือโครงสร้างหนึ่งไปเป็นรูปแบบหรือโครงสร้างอื่น ถือเป็นแง่มุมพื้นฐานของการบูรณาการข้อมูล ส่วนใหญ่ และ งาน...

กระบวนการแปลงข้อมูล

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

การแปลงข้อมูลแบบกลุ่ม

ตาม ธรรมเนียมแล้ว การแปลงข้อมูลเป็นกระบวนการแบบกลุ่มหรือแบบแบตช์ [ 6 ] โดยนักพัฒนาจะเขียนโค้ดหรือใช้กฎการแปลงในเครื่องมือการรวมข้อมูล จากนั้นจึงดำเนินการโค้ดหรือกฎเหล่านั้นกับข้อมูลจำนวนมาก [ 7 ]...

ประโยชน์ของการแปลงข้อมูลแบบกลุ่ม

กระบวนการแปลงข้อมูลแบบดั้งเดิมได้ให้บริการบริษัทต่างๆ ได้เป็นอย่างดีมานานหลายทศวรรษ เครื่องมือและเทคโนโลยีต่างๆ (การวิเคราะห์ข้อมูล การแสดงภาพข้อมูล การทำความสะอาดข้อมูล การบูรณาการข้อมูล ฯลฯ