Data Engineer ทักษะที่ต้องมี โจทย์ เครื่องมือ และความท้าทายที่ต้องเจอ

สวัสดีครับ กลับมาพบกันอีกครั้งกับบทความยาวๆ แบบที่อ่านจบรู้เล่าเอาไปโม้ต่อได้เลย วันนี้ผมจะมาแนะนำให้รู้จักกับสายอาชีพวิศวกรข้อมูล หรือ Data Engineer กัน แต่เราจะไปไกลกันมากกว่านั้น ผมจะพาไปรู้จักกับที่มาที่ไปของสายอาชีพนี้ด้วยว่ามันเกิดขึ้นมาได้อย่างไร งานปรกติทำอะไรกัน มีเครื่องมืออะไรต้องรู้จักบ้าง และปิดท้ายที่ตัวอย่างโจทย์ทางฝั่ง Data Engineer จากบริษัท Credit OK ที่ผมทำงานอยู่

บทความนี้อาจจะยาวๆ หน่อย เพราะเขียนขึ้นมาเพื่อตกผลึกความคิดสำหรับไปบรรยายให้นักศึกษามหาวิทยาลัยเทคโนโลยีพระจอมเกล้าธนบุรีฟังในหัวข้อ Introduction to Data Engineer and Data Pipeline at Credit OK และงาน CodeMania 1010 ในหัวข้อ Serverless Big Data Architecture with Google Cloud Platform ท่านผู้อ่านสามารถเข้าไปดู Slides ได้จากลิงค์นะครับ อ่อ แล้วก็มี Video ด้วยนะ เข้าไปดูได้ที่นี่ครับถ้าสนใจ https://www.youtube.com/watch?v=BAeo0FcF6f8 ขอขอบคุณอาจารย์และทีมงานผู้จัดงานดังกล่าวที่ให้โอกาสผมให้ได้สร้างผลงานนี้ออกมาด้วยครับ

คำเตือน บทความนี้จะเริ่มจากปูความรู้พื้นๆ แล้วค่อยลึกขึ้นเรื่อยๆ โดยเฉพาะในฝั่ง Technical เพราะการตกผลึกความรู้ที่เกิดจากการใช้งานจริง ผมต้องกราบขออภัยท่านผู้อ่านที่พื้นฐานไม่แข็งแรงด้วยนะครับ ผมไม่สามารถลงลึกเล่าในทุกๆ ประเด็นได้จริงๆ เพราะเท่านี้ก็ยืดยาวมากแล้ว แต่ก็อยากให้ลองอ่านกันก่อนนะ อย่าเพิ่งรีบปิดหนีไปกันซะก่อน 555

เอาล่ะ เราอย่ามัวรีรอกันอยู่เลย มาเข้าเรื่องกันดีกว่าครับ 🙂

Continue reading

ทำ Data Pipeline กับ SFTP Server ด้วย GitLab และ Google Cloud Platform

เมื่อวานลองทำ Data Pipeline ท่าใหม่ที่ไม่เคยทำมาก่อน โดยลูกค้าจะเอาไฟล์มา Drop ไว้ให้บน SFTP แล้วเราจะต้องดูดจาก SFTP ส่งไปหา BigQuery คิดไปคิดมาได้ Solution แปลกใหม่น่าสนใจ เลยเอามาแชร์ให้อ่านกันเล่นๆ

Concept โดยคร่าวคือ เราจะต้อง Sync ข้อมูลจาก SFTP ลงมาใน Local ให้ได้ก่อน แล้วก็เลือกเฉพาะไฟล์ที่มีการเปลี่ยนแปลงส่งขึ้นไปบน Google Cloud Function (GCF) แล้วไปรัน Data Pipeline ต่อบนนั้น ซึ่งข้างบน GCloud นี่ไม่น่าเห็นห่วง เครื่องมือเขาพร้อมอยู่แล้ว แล้วน้องๆ ก็ช่วยกันดำเนินการจนสำเร็จสวยงามไปแล้ว เหลือแต่ส่วนที่เรารับผิดชอบเนี่ยแหละยังไม่ได้ทำ ทุกคนรออยู่ 555 สิ่งที่ต้องคิดเพราะยังไม่เคยทำมาก่อนคือ เรา Sync ไฟล์ลงมาจาก SFTP ได้ยังไงนี่ล่ะ แล้วจะเลือกส่งเฉพาะไฟล์ที่มีการอัพเดทได้อย่างไร

Continue reading

EP 3: Serverless Big Data Architecture on Google Cloud Platform @ Credit OK

สวัสดีทุกท่าน มาถึงตอนสุดท้ายแล้วนะครับ ซึ่งในตอนนี้ผมจะเล่าถึงวิธีการจัดการกับ Big Data แบบที่ Credit OK ทำอยู่นั้นเป็นประมาณไหน แล้วเราใช้ Serveeless Service จาก GCP อย่างไร เราเจออุปสรรคอะไรบ้าง และแก้ปัญหามาได้อย่างไร

บทความนี้เขียนขึ้นเพราะได้ขึ้นไปพูดที่งาน Barcamp นะครับ ใครสนใจดู Slide เปิดได้จากที่นี่เลย Serverless Big Data Architecture on Google Cloud Platform at Credit OK

Continue reading

EP 2: Serverless Big Data Architecture on Google Cloud Platform @ Credit OK

สวัสดีครับ สัปดาห์นี้จะมาเล่าต่อกันเรื่องการใช้ Google Cloud Platform ที่บริษัท Credit OK สำหรับสัปดาห์ที่แล้วได้เล่าถึงประวัติศาสตร์การ Deploy Application ต่างๆ ตั้งแต่ Bare Metal ไปจนถึง Cloud Functions ท่านใดสนใจจะกลับไปอ่านบทความก่อนหน้าก็ตามลิงค์ไปได้เลย Server & Application Deployment History ส่วนสัปดาห์นี้ ผมจะขอแนะนำบริการต่าง  ที่น่าสนใจบน Google Cloud Platform ทั้งทางฝั่ง Compute, Storage, Database และ Data Analytics

Continue reading

EP 1: Serverless Big Data Architecture on Google Cloud Platform @ Credit OK

สวัสดีครับทุกท่าน สืบเนื่องจากที่ผมได้ทำงานอยู่ที่ Credit OK ซึ่งเป็น Fintech Startup ที่ต้องใช้เทคโนโลยีสำหรับจัดการกับ Big Data แบบเป็นเรื่องเป็นราว มาตั้งแต่ตอนต้นปี 2018 โดยเริ่มต้นจากไม่มีอะไรเลย จึงได้มีโอกาสได้ศึกษาและเลือกเทคโนโลยีที่จะใช้อย่างอิสระ ได้ทดลองแล้วมาถูกใจกับ Google Cloud Platform (GCP) เพราะบริการที่มีให้ค่อนข้างตรงกับโจทย์ธุรกิจที่ต้องการ นอกจากนั้นยังเป็นบริการที่เข้าไปใช้งานได้เลยผ่านทาง GUI หรือ Library โดยไม่ต้องมากดตั้งเครื่องสักตัว (Serverless) ก็เลยรู้สึกว่าอยากจะมาแบ่งปันประสบการณ์​ที่ได้พบเจอมา และได้มีโอกาสไปพูดเป็นวิทยากรในหัวข้อนี้กับ MSIT ของ ม.เกษตร และในงาน Barcamp Bangkhen 2018 ก็พบว่าหลายคนให้ความสนใจในหัวข้อนี้ จึงเป็นอันควรแล้วจะมาเขียน Blog แบ่งปันความรู้กัน 🙂

สำหรับ Slide ในงาน Barcamp สามารถดูได้จากที่นี่ครับ
Serverless Big Data Architecture on Google Cloud Platform at Credit OK

Continue reading