รวบรวมพื้นฐานของ Data Engineering ที่ควรทราบไปกันเลย
- ชนิดของข้อมูล
- Structured - ข้อมูลที่มีโครงสร้าง Schema เช่น ข้อมูลใน Database
- Unstructured เช่น Raw text file รูปภาพ วิดิโอ ไฟล์เสียง ไฟล์ Word
- Semi-Structured เช่น XML และ JSON files
- 3-4 Vs
- Volume - ขนาดข้อมูลเป็นหน่วย เช่น 1 GB 2 TB
- Velocity - ความเร็วที่ข้อมูลเกิดขึ้นมา เช่น Batching Near Realtime หรือ Realtime processing
- Variety - แหล่งของข้อมูล เช่น ข้อมูลระบบของโปรแกรม ระบบจาก email
- Data Warehouse ที่เก็บรวบรวมข้อมูล Structured Data เช่น Amazon Redshift, Google BigQuery
- Data Lakes ที่เก็บ Raw Data Unstructured เช่น Amazon S3, Hadoop Distributed File System (HDFS), Azure Data Lake Storage
- Data Mesh คือ การจัดการข้อมูลโดยจัดตามโดเมน หลักคือ Governance Services**** ของ Data Warehouse หรือ Data Lakes
- ETL คือ Extracted, Transform, Load (แตกข้อมูล, เปลี่ยนรูปแบบข้อมูล, โหลดข้อมูล) ตัวอย่าง Services ที่เป็น ETL เช่น AWS Glue, Apache Airflow, AWS Lambda
- Common Data Formats เช่น JDBC (Java Database Connectivity) OBDC (Open Database Connectivity), APIs, Streams, CSV files, JSON, Arvo, Parquet
- Data Performance Optimization
- Indexing
- Partitioning
- Compression
- Data Sampling Techniques
- Random Sampling สุ่มเลย
- Stratified Sampling แบ่งข้อมูลเป็นกลุ่มย่อยก่อน Sampling
- Systemic Sampling สุ่มแบบที่ระบบหรือเงื่อนไขเพิ่มเข้าไป
- Data Skew Mechanisms คือ กลไลในการแบ่งแยกข้อมูลเมื่อจำนวนข้อมูลไม่สมดุล
- Data Validation and Profiling คือ กระบวนการทำให้ข้อมูลแสดงและถูกต้อง เพราะถ้าข้อมูลหายหรือไม่ถูกต้องจะทำให้กระบวนการวิเคราะห์ไม่ถูกต้อง
- SQL Reviews
- Aggregations เช่น COUNT, SUM, AVG, MAX/MIN
- CASE Statement
- Grouping
- Sorting
- Pivoting
- JOIN
- Regular Expressions
ส่วนมากจะเป็นหัวข้อที่ควรจะต้องทราบว่าคืออะไรไว้สำหรับทบทวนพื้นฐาน ถ้าลืมส่วนไหนให้กลับไปทบทวนได้ครับ :)