# dbt - พื้นฐาน (Data Analytics) > โปรเจกต์ dbt, models, sources, refs, tests, เอกสาร, materializations, seeds - 20 คำถามสัมภาษณ์ - Mid-Level - [คำถามสัมภาษณ์: Data Analytics](https://sharpskill.dev/th/technologies/data-analytics/interview-questions.md) ## 1. dbt (data build tool) คืออะไร? **คำตอบ** dbt เป็นเครื่องมือแปลงข้อมูลที่อนุญาตให้นักวิเคราะห์และวิศวกรข้อมูลเขียนการแปลงข้อมูลด้วย SQL หรือ Python โดยตรงใน data warehouse โดยใช้แนวทาง ELT (Extract, Load, Transform) ซึ่งข้อมูลจะถูกโหลดเข้าสู่ warehouse ก่อนแล้วแปลงในตำแหน่งนั้น ต่างจาก ETL แบบดั้งเดิมที่แปลงก่อนการโหลด dbt จัดการการพึ่งพาระหว่างโมเดล การทดสอบ และเอกสารโดยอัตโนมัติ ## 2. โครงสร้างพื้นฐานของโปรเจกต์ dbt คืออะไร? **คำตอบ** โปรเจกต์ dbt ถูกจัดระเบียบรอบๆ โฟลเดอร์หลัก: models/ ประกอบด้วยไฟล์ SQL ที่กำหนดการแปลงข้อมูล seeds/ เก็บไฟล์ CSV ที่โหลดเป็นตาราง tests/ เก็บการทดสอบที่กำหนดเอง macros/ มีฟังก์ชัน Jinja ที่ใช้ซ้ำได้ และ snapshots/ เก็บการจับภาพสถานะ ไฟล์ dbt_project.yml ที่รูทกำหนดค่าโปรเจกต์ (ชื่อ เวอร์ชัน materializations เริ่มต้น) ในขณะที่ profiles.yml กำหนดการเชื่อมต่อ warehouse ## 3. model ใน dbt คืออะไร? **คำตอบ** dbt model คือไฟล์ SQL ที่มีคำสั่ง SELECT ซึ่งกำหนดการแปลงข้อมูล แต่ละ model สอดคล้องกับไฟล์ .sql ในโฟลเดอร์ models/ และสร้างตารางหรือ view ใน data warehouse เมื่อทำงาน Model สามารถอ้างอิง model อื่นผ่านฟังก์ชัน ref() สร้างกราฟการพึ่งพา (DAG) ที่ dbt ดำเนินการตามลำดับที่ถูกต้อง ## มีอีก 17 คำถาม - ฟังก์ชัน ref() ใน dbt มีจุดประสงค์อะไร? - source ใน dbt คืออะไรและจะประกาศอย่างไร? สมัครฟรี: https://sharpskill.dev/th/login ## หัวข้อสัมภาษณ์ Data Analytics อื่นๆ - [Google Sheets - พื้นฐาน](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/google-sheets-basics.md): 20 คำถาม, Junior - [Google Sheets - สูตรขั้นสูง](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/google-sheets-advanced.md): 20 คำถาม, Junior - [SQL - พื้นฐาน](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/sql-basics.md): 25 คำถาม, Junior - [SQL - การรวมและการจัดกลุ่ม](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/sql-aggregations.md): 20 คำถาม, Junior - [SQL - Joins](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/sql-joins.md): 20 คำถาม, Junior - [BigQuery - พื้นฐาน](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/bigquery-fundamentals.md): 20 คำถาม, Junior - [Data Cleaning - การทำความสะอาดข้อมูล](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/data-cleaning.md): 20 คำถาม, Junior - [KPI และเมตริกทางธุรกิจ](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/kpis-metrics.md): 20 คำถาม, Junior - [สถิติเชิงพรรณนา](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/descriptive-statistics.md): 20 คำถาม, Junior - [Zapier และระบบอัตโนมัติ No-Code](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/zapier-automation.md): 20 คำถาม, Junior - [หลักการ Data Visualization](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/data-viz-principles.md): 20 คำถาม, Junior - [Python & Pandas - พื้นฐาน](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/python-pandas-basics.md): 20 คำถาม, Junior - [Google Sheets - แดชบอร์ดอัตโนมัติ](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/google-sheets-dashboards.md): 20 คำถาม, Mid-Level - [SQL - Subquery และ CTE](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/sql-subqueries-ctes.md): 20 คำถาม, Mid-Level - [SQL - Window Functions](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/sql-window-functions.md): 20 คำถาม, Mid-Level - [BigQuery - ฟีเจอร์ขั้นสูง](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/bigquery-advanced.md): 20 คำถาม, Mid-Level - [Data Modeling](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/data-modeling.md): 20 คำถาม, Mid-Level - [การวิเคราะห์ Funnel และ Conversion](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/funnel-analysis.md): 20 คำถาม, Mid-Level - [การวิเคราะห์ Cohort และ Retention](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/cohort-retention.md): 20 คำถาม, Mid-Level - [Google Tag Manager และการติดตาม](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/gtm-tracking.md): 20 คำถาม, Mid-Level - [API และ Webhook](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/apis-webhooks.md): 20 คำถาม, Mid-Level - [AB Testing และสถิติประยุกต์](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/ab-testing.md): 20 คำถาม, Mid-Level - [Looker Studio (Google Data Studio)](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/looker-studio.md): 20 คำถาม, Mid-Level - [Power BI - พื้นฐาน](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/power-bi-fundamentals.md): 20 คำถาม, Mid-Level - [SQL - การคิวรีเชิงวิเคราะห์ขั้นสูง](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/sql-advanced-analytics.md): 20 คำถาม, Senior - [dbt - ฟีเจอร์ขั้นสูง](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/dbt-advanced.md): 20 คำถาม, Senior - [Power BI - DAX และแดชบอร์ดขั้นสูง](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/power-bi-dax.md): 20 คำถาม, Senior - [Python Analytics - การวิเคราะห์ขั้นสูงและ ML](https://sharpskill.dev/th/technologies/data-analytics/interview-questions/python-analytics-advanced.md): 20 คำถาม, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/th/technologies/data-analytics/interview-questions/dbt-fundamentals