14 คะแนน โดย xguru 2020-10-19 | 4 ความคิดเห็น | แชร์ทาง WhatsApp
  • ข้อมูลและคำอธิบายคำศัพท์เกี่ยวกับโครงสร้างพื้นฐานข้อมูลสมัยใหม่ที่เรียบเรียงจากการสัมภาษณ์ผู้เชี่ยวชาญด้านข้อมูล

  • PDF 6 หน้าที่ดีมากสำหรับทำความเข้าใจภาพรวมของแวดวงข้อมูล

ภาพแนวคิดของโครงสร้างพื้นฐานข้อมูลแบบบูรณาการใน 1 หน้า

  1. Sources : สร้างข้อมูลทางธุรกิจและข้อมูลการดำเนินงาน

→ OLTP DB via *CDC

→ Applications/ERP(Oracle,Salesforce,Netsuite) : ข้อมูลทั้งหมดที่เกิดขึ้นในธุรกิจ

→ ตัวเก็บรวบรวม Event (Segment,Snowplow) : รวบรวม Event ทั้งหมดของผู้ใช้บริการ

→ Logs : ล็อกจากเว็บเซิร์ฟเวอร์และเซิร์ฟเวอร์ต่าง ๆ

โฆษณา

→ Third-party API (Stripe เป็นต้น) : ข้อมูลที่เกิดจากการชำระเงินและ API ใช้งานอื่น ๆ

→ ไฟล์และอ็อบเจ็กต์สตอเรจ

  1. Ingestion and Transformation : ปัจจุบันเป็น ETL to ELT, Extract / Load / Transform

ดึงข้อมูลจากระบบปฏิบัติการ (E) / ย้ายไปยังสตอเรจ (L) / แปลงข้อมูลเพื่อการวิเคราะห์ (T)

→ Connector(Fivetran, Stitch, Matillion) : เครื่องมือย้ายข้อมูลจากหลายแหล่งไปยัง DW

→ Data Modeling (dbt, LookML) : การทำโมเดลและการแปลงข้อมูล

→ Workflow Manager (Airflow, Dagster, Prefect) : orchestrator / scheduler สำหรับทำงานอัตโนมัติของ data flow

→ Spark Platform (Databricks, Amazon EMR) : แพลตฟอร์มคลัสเตอร์ประสิทธิภาพสูงสำหรับการประมวลผลแบบกระจาย

→ Python Libs : ไลบรารีวิเคราะห์ข้อมูล - Pandas, อินเทอร์เฟซ AWS - Boto, Dask สำหรับประมวลผลขนานขนาดใหญ่, Ray สำหรับประมวลผลแบบกระจาย..

โฆษณา

→ Batch Query Engine (Hive) : คิวรีบิ๊กดาต้า

→ Event Streaming (Confluent/Kafka, Pulsar, AWS Kinesis) : แพลตฟอร์ม messaging/streaming แบบเรียลไทม์

→ Stream Processing (Databricks/Spark, Confluent/Kafka, Flink) : รวบรวม/ประมวลผลและวิเคราะห์ข้อมูลสตรีมมิง

  1. Storage : จัดเก็บข้อมูลในรูปแบบที่สามารถคิวรีและประมวลผลได้ ต้นทุนต่ำ ขยายได้ และเหมาะกับงานวิเคราะห์

→ Data Warehouse ( Snowflake, BigQuery, Redshift ) : สตอเรจรวมข้อมูลที่รวบรวมสารสนเทศที่สามารถวิเคราะห์ได้

→ Data Lake : ต่างจาก DW ตรงที่เก็บข้อมูลดิบทั้งแบบมีโครงสร้าง/ไม่มีโครงสร้างที่ยังไม่ผ่านการปรับแต่ง

Databricks/Delta Lake(ดาต้าเลกที่ทำให้เกิด ACID transaction บน Spark และ S3/HDFS เป็นต้น),

Apache Iceberg(ฟอร์แมตตารางขนาดมหึมาที่เก็บระดับเพตะไบต์ พัฒนาโดย Netflix),

Apache Hudi(ดาต้าเลกที่มีประสิทธิภาพ พัฒนาโดย Uber), Hive Acid

โฆษณา

→ Apache Parquet - ฟอร์แมตการจัดเก็บแบบคอลัมน์

Apache ORC - Optimized Row Columnar, บันทึกเป็นคอลัมน์พร้อมบันทึกดัชนีไปด้วย

Apache Avro - บันทึกเป็นแถว เหมาะกับการเขียน และเหมาะกับ schema evolution

→ AWS S3(Simple Storage Service), GCS(Google Cloud Storage), ABS(Azure Blob Storage), HDFS(Hadoop Distributed File System)

4&5. Historical & Predictive : ให้ interface (query) สำหรับให้นักวิเคราะห์และนักวิทยาศาสตร์ข้อมูลใช้ดึง insight

Historical : อธิบายว่าเกิดอะไรขึ้นในอดีต รวมถึงช่วงล่าสุดมาก ๆ (เกือบเรียลไทม์)

Predictive : การคาดการณ์อนาคต, แอปพลิเคชันที่ขับเคลื่อนด้วยข้อมูล/ML

→ Data Science Platform (Databricks, Domino, Sagemaker, Dataiku, DataRobot, Anaconda, ...)

โฆษณา

→ Data Science and ML Libraries ((Pandas, Numpy, R, Dask, Ray, Spark, Scikit-learn, Pytorch, TensorFlow, Spark ML, XGBoost, )

→ Ad Hoc Query Engine (Presto, Dremio/Drill, Impala)

→ Real-time Analytics : Imply/Druid - การวิเคราะห์แบบเรียลไทม์, Altinity/Clickhouse - OLAP, Rockset - เอนจินวิเคราะห์เรียลไทม์เชิงพาณิชย์ (บนพื้นฐานของ RocksDB ซึ่งเป็น embedded DB แบบ KV ประสิทธิภาพสูง)

  1. Output : เครื่องมือสำหรับแสดงผลลัพธ์การวิเคราะห์ข้อมูลทั้งภายใน/ภายนอก นำ data model ที่สร้างไว้ไป embed ในระบบปฏิบัติการและแอปพลิเคชัน

→ Dashboards : Looker, Apache Superset, Mode, Tableau - เครื่องมือ Business Intelligence

→ Embedded Analytics : Sisense, Looker, cube.js - embed เครื่องมือ BI เข้าไปในระบบภายใน อิง API สามารถสร้างแอปวิเคราะห์ภายในได้

→ Augmented Analytics : Thoughtspot, Outlier, Anodot, Sisu - เครื่องมือที่ใช้ AI วิเคราะห์ให้โดยอัตโนมัติ

→ App Frameworks : Plotly Dash, Streamlit - เฟรมเวิร์กที่ช่วยให้สร้าง ML App ได้

  1. อื่น ๆ
โฆษณา

→ Metadata Management (Collibra, Alation, Hive Metastore, DataHub, ...)

→ Quality and Testing (Great Expectations)

→ Entitlements and Security (Privacera, Immuta)

→ Observability (Unravel, Accel Data, Fiddler)

  1. บลูพรินต์หลัก 3 ด้าน

→ BI สมัยใหม่

→ การประมวลผลข้อมูลแบบมัลติโหมด

→ ด้าน AI และ ML

  • Change Data Capture : คัดลอกข้อมูลการเปลี่ยนแปลงของ OLTP ไปยังสตอเรจอื่น ๆ (DB,DW) แบบเรียลไทม์

4 ความคิดเห็น

 
xguru 2020-12-08

ผมได้ลองทำวิดีโอ YouTube ที่อธิบายแต่ละบริการและโอเพนซอร์สที่กล่าวถึงไว้ทีละรายการครับ

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

ทำความเข้าใจโครงสร้างพื้นฐานข้อมูลสมัยใหม่ by GeekNews

 
inthelife 2020-10-21

ลิงก์ฉบับแปลไม่ถูกต้องครับ 555; กรุณาอ้างอิงลิงก์ด้านล่าง ^^;

https://drive.google.com/file/d/…

 
xguru 2020-10-21

ว้าว ขอบคุณมากครับ/ค่ะ ผม/ฉันก็ชอบข้อมูลนี้มากเหมือนกัน เลยกำลังลองทำสื่ออธิบายแผนภาพหลักแยกต่างหาก (วิดีโอ) อยู่ครับ/ค่ะ

 
inthelife 2020-10-21

https://drive.google.com/file/d/…

เนื้อหาดูน่าสนใจดี เลยลองแปลต้นฉบับแบบย่อ ๆ ดูครับ ^^