Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> ฐานข้อมูล

เพิ่มประสิทธิภาพกลยุทธ์ Data Engineering ด้วย AWS: เส้นทางที่พิสูจน์แล้วสู่ความสำเร็จ Big Data

เผยแพร่ครั้งแรกเมื่อเดือนพฤษภาคม 2019 ที่ Onica.com/blog

ทุกคนรู้จักศักยภาพของ Big Data แตสำหรับบางธุรกิจ ข้อมูลและการวิเคราะห์ยังคงอยู่ในโลก Legacy (โลกเก่า) นี่คือโลกของ Structured Data ที่จัดเก็บภายในเซิร์ฟเวอร์ On-premises และวิเคราะห์ด้วยซอฟต์แวร์เฉพาะ (Proprietary Software)

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

Data Engineering คืออะไร?

นิยามของ Data Engineering ไม่ได้เปลี่ยนแปลงมากนักตลอดหลายปี อย่างไรก็ตาม พื้นฐานและเครื่องมือได้เปลี่ยนแปลงอย่างมีนัยสำคัญ ที่แก่นหนึ่ง Data Engineering คือพื้นฐานที่รองรับ Data Science และ Analytics ผ่านความรู้อย่างกว้างขวางเกี่ยวกับเทคโนโลยีข้อมูล Data Governance และ Security ที่เหมาะสม และความเข้าใจที่แข็งแกร่งเกี่ยวกับการประมวลผลข้อมูล

ในขณะที่เทคโนโลยีแบบดั้งเดิมอย่าง Relational และ Transactional Databases ยังคงมีที่ในสถาปัตยกรรม Big Data การมาถึงของผู้เล่นใหม่ได้สร้างนวัตกรรมในพื้นที่นี้ เมื่อพูดถึง Data Engineering AWS® ได้เปลี่ยนเกม บางผลิตภัณฑ์หลักประกอบด้วย:

Amazon® DynamoDB®: Amazon DynamoDB เป็นฐานข้อมูล NoSQL® ที่เสนอทางเลือกแทน Relational Databases โดยให้คุณใช้โมเดลข้อมูลหลากหลาย รวมถึง Document, Graph, Key-Value, Memory และ Search สร้างฐานข้อมูลที่ Scalable, Flexible, High Performance และ Highly Functional สำหรับ Workloads สมัยใหม่

Apache® Hadoop®: Apache Hadoop เป็นบริการ Open-source ที่คุณสามารถใช้ประมวลผลชุดข้อมูลขนาดใหญ่โดยใช้ประโยชน์จาก Clustering Hadoop มีระบบนิเวศ (Ecosystem) เครื่องมือครบวงจรที่สามารถตอบสนองความต้องการ Workload ได้ Hadoop สามารถรันบน AWS โดยใช้ Amazon Elastic MapReduce (EMR) ซึ่งทำให้การจัดการคลัสเตอร์ง่ายขึ้นเมื่อรัน Hadoop และแอปพลิเคชันที่เกี่ยวข้องใน Hadoop Ecosystem

Amazon EMR: เครื่องมือสำหรับจัดการ Hadoop Ecosystem บน AWS EMR ทำให้การประมวลผลข้อมูลข้าม Amazon Elastic Compute Cloud® (Amazon EC2) Instances ง่ายและคุ้มค่า Amazon EMR ยังช่วยให้รัน Distributed Frameworks อื่นๆ เช่น Apache Spark® และ HBase® และเปิดใช้งานการโต้ตอบกับ AWS Data Stores เช่น Amazon Simple Storage Service Amazon S3 และ Amazon DynamoDB

Amazon Redshift: Data Warehouse ที่รวดเร็วและ Scalable Amazon Redshift ทำให้การขยายคิวรีไปยัง Data Lake ของคุณง่ายขึ้น ด้วยการใช้ Machine Learning, Parallel Query Execution และ Columnar Storage Amazon Redshift ให้ประสิทธิภาพเร็วกว่า Data Warehouse อื่นๆ 10 เท่า

AWS Glue: AWS Glue เป็นบริการ Extract, Transform, and Load (ETL) ที่จัดการเต็มรูปแบบ (Fully Managed) ทำให้ลูกค้าเตรียมและโหลดข้อมูลสำหรับ Analytics ได้ง่าย หลังจากจัดทำแคตตาล็อกแล้ว ข้อมูลของคุณสามารถค้นหา Query และพร้อมสำหรับ ETL ทันที

Amazon Athena: Amazon Athena เป็นบริการ Interactive Query ที่ทำให้การวิเคราะห์ข้อมูลใน Amazon S3 โดยใช้ SQL® มาตรฐานง่ายขึ้น มันยังรวมกับ AWS Glue Data Catalog ช่วยให้คุณสร้าง Unified Metadata Repository ข้ามบริการต่างๆ Crawl Data Sources เพื่อค้นพบ Schemas เติม Catalog ด้วย Table และ Partition Definitions ใหม่และที่แก้ไข และรักษา Schema Versioning

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

Data Engineering กับ AWS: ตัวอย่างลูกค้า

ตัวอย่างที่แข็งแกร่งมาจากลูกค้าของเราที่กำลังผลักดันข้อมูลผ่านระบบรายงานรายเดือน แม้รายงานจะให้สิ่งที่ลูกค้าต้องการเฉพาะเจาะจง แต่พวกเขาไม่ได้รับค่าเพิ่มเติมจากโพรงข้อมูลมากมายที่พวกเขาสะสมไว้ ในฐานะส่วนหนึ่งของการมีส่วนร่วม เราสามารถสร้าง Data Lake พร้อม Automated Pipelines และ Built-in Data Checks สำหรับการประมวลผล ที่ข้อมูลผ่านก่อนจะส่งไปยังระบบรายงาน

ด้วยการเพิ่มคอมโพเนนต์นี้เข้าสู่สถาปัตยกรรมข้อมูล ลูกค้าไม่เพียงแต่รักษาระบบรายงานของพวกเขาไว้ แต่ยังเพิ่มความสามารถและการเข้าถึงชุดข้อมูลต้นทางที่มากขึ้น ทำให้พวกเขาสามารถตอบคำถาม Ad-hoc รอบ Cost Management และ Profitability ได้ นี่พิสูจน์ว่า แม้บริษัทหลายแห่งใช้ข้อมูลและ Analytics ในธุรกิจประจำวัน แต่การบูรณาการเครื่องมือที่เหมาะสม โดยเฉพาะเครื่องมือและเทคโนโลยีใหม่ สามารถให้คุณใช้ประโยชน์จากข้อมูลเพื่อผลลัพธ์ที่ใหญ่กว่า

การนำ Data Processing ไปใช้ (Implementing Data Processing)

การมีคอมโพเนนต์สถาปัตยกรรมข้อมูลที่เหมาะสมเพียงอย่างเดียวไม่พอ หากคุณมองหาการใช้ประโยชน์จาก Data Engineering คุณต้องมีพื้นฐานที่แข็งแกร่งใน Data Processing Data Processing ไม่ได้รวมแค่การเคลื่อนย้ายข้อมูลผ่าน Data Lifecycle ของมัน แต่ยังรวมถึงการเพิ่มประสิทธิภาพข้อมูลผ่าน Quality Checks และเทคนิคในการทำความสะอาด Bad Data

ส่วนที่สำคัญที่สุดของ Data Processing อาจเป็น Data Ingestion แม้ในหัวใจแล้ว Data Ingestion คือแค่การเคลื่อนย้ายข้อมูลจากจุดกำเนิดไปยังระบบจัดเก็บ แต่มีหลายวิธีในการทำได้ Data Ingestion ทำงานได้ดีที่สุดเมื่อเป็นอัตโนมัติ เพราะมันอนุญาตให้อัปเดตข้อมูลเพื่อความสดใหม่ (Freshness) ได้แบบ Low Maintenance มันยังสามารถเป็น Continuous และ Real-time ผ่าน Streaming Data Pipelines หรือ Asynchronous ผ่าน Batch Processing หรือแม้แต่ทั้งสองอย่าง การตัดสินใจรอบวิธี Ingestion ที่จะใช้ ขึ้นอยู่กับประเภทข้อมูลที่ Ingest แหล่งที่มา และปลายทาง AWS เสนอวิธี Data Ingestion ของตัวเอง รวมถึงบริการอย่าง Amazon Kinesis Firehose (ซึ่งเสนอ Fully Managed Real-time Streaming) ไปยัง Amazon S3 และ AWS Snowball (ซึ่งอนุญาตการย้าย On-premises Storage และ Hadoop Clusters แบบ Bulk) ไปยัง Amazon S3 และ AWS Storage Gateway (ซึ่งบูรณาการ On-premises Data Processing Platforms กับ Amazon S3-based Data Lakes)

หากคุณทำงานกับ Relational Databases อีกส่วนหนึ่งของ Ingestion นี้คือ Extraction, Transformation, and Loading (ETL) ETL Processing ทำความสะอาดข้อมูลโดย Deduplicating (ลบซ้ำ) รวมถึงการทำความสะอาดและ Flagging Bad Data และแปลงมันให้สอดคล้องกับรูปแบบของฐานข้อมูล สิ่งนี้สามารถทำได้ผ่านภาษาอย่าง Python, Java หรือ Scala ขณะใช้ Frameworks เช่น Spark หรือ Flink และเป็นกุญแจสำคัญในการปรับปรุงคุณภาพข้อมูล

ไม่ว่าคุณจะใช้ประเภทฐานข้อมูลอะไร โปรแกรม Data Quality ที่แข็งแกร่งมีความสำคัญเพื่อให้แน่ใจว่าข้อมูลที่ได้เป็น Accurate และ Reliable นี้หมายถึงการระบุและตั้งค่าบทบาทสำหรับการเข้าถึงข้อมูลผ่านเครื่องมืออย่าง AWS Identity and Access Management (IAM) การจัดทำกระบวนการสำหรับ Standardization และ Reconciliation และการ 제정 Quality Checks เพื่อรักษาความสมบูรณ์ของข้อมูล แม้ Data Quality จะไม่ใช่แนวคิดใหม่ แตทรัพยากรที่พร้อมใช้งานเพื่อส่งเสริม Quality Data นั้นใหม่ ผ่าน Modern Data Tooling ทีมของเราสร้าง Automated Data Quality Reporting ให้ลูกค้า นี่เกี่ยวข้องกับการเปรียบเทียบข้อมูลจาก Source System กับ Downstream Systems ที่ไปยัง Reporting Dashboard แบบ Scheduled และ Periodic ทำให้ได้ Insights ที่ไม่มีที่เทียบเท่ากันเกี่ยวกับคุณภาพข้อมูลที่ออกจากระบบ และระบุ Errors หรือ Quality Loss อย่างเชิงรุก (Proactively) อนุญาตให้แก้ไขปัญหาล่วงหน้าก่อนที่จะได้รับร้องเรียนจาก Data Consumers

ใช้ประโยชน์จาก Big Data สำหรับความสำเร็จปัจจุบันและอนาคต

สิ่งที่ชัดเจนที่สุดในการวิเคราะห์การเปลี่ยนแปลงเหล่านี้ใน Data Engineering ไม่ได้เป็นแค่ว่ากระบวนการเปลี่ยนไป แต่ยังคงเปลี่ยนแปลงต่อไป ขณะที่มันทำเช่นนั้น จึงสำคัญที่จะพิจารณาผลลัพธ์ของการเปลี่ยนแปลงเหล่านี้ต่อ Data Policies ของธุรกิจของคุณ และวิธีใช้การเปลี่ยนแปลงเหล่านี้เพื่อปรับปรุงความสำเร็จทางธุรกิจ การเปลี่ยนแปลงใน Data และ Analytics ไม่ได้ส่งผลแค่ต่อ Architecture และ Tooling แต่ยังสร้าง Systems และ Mindsets ใหม่รอบการใช้งานข้อมูล

แม้ความพยายาม Data และ Analytics ก่อนหน้านี้จะเกิดขึ้น عند การเสร็จสิ้นโครงการ หรือเป็น Follow-up ต่อความพยายามทางธุรกิจ แต่ตอนนี้เป็นมาตรฐาน (Norm) ที่จะทำงานกับข้อมูลอย่างอัตโนมัติและต่อเนื่อง สิ่งนี้เป็นไปได้ผ่านเครื่องมือที่ปรับปรุง Data Architecture เช่น Amazon S3, Amazon DynamoDB และ Data Ingestion Pipelines รวมถึง Methodologies และ Processes ที่เปลี่ยนวิธีที่เรา Monitor และ Consume ข้อมูล เช่น Machine Learning และ Automated Data Dashboards ธุรกิจตอนนี้สามารถเก็บข้อมูลนานขึ้นโดยไม่เสียพื้นที่จัดเก็บหรือเงิน ทำให้ Data Cleansing เป็นอัตโนมัติเพื่อให้ข้อมูล Curated ได้ดี และเข้าถึงได้ง่าย และสามารถเข้าถึงได้ Real-time ให้ Competitive Advantage กับผู้ที่นำบริการเหล่านี้ไปใช้ใน Data Architecture ของพวกเขา

ใช้แท็บ Feedback เพื่อแสดงความคิดเห็นหรือถามคำถาม คุณยังสามารถคลิก Sales Chat เพื่อแชททันทีและเริ่มการสนทนา