Case Study: dbt के साथ E-Commerce Data Models बनाना
Susan Sun
Freelance Data Scientist
dbt इंस्टॉल करें
pip install dbt
dbt प्रोजेक्ट looker_ecommerce इनिशियलाइज़ करें
dbt init looker_ecommerce
सेटअप सफल है, जाँचें
cd looker_ecommerce
dbt debug
dbt द्वारा ऑटो-जनरेटेड फाइल डायरेक्टरी:

distribution_centers.csv छोटा और स्टैटिक है, केवल 10 रो हैं
कच्ची distribution_centers.csv फाइल का एक सैंपल

orders.csv बड़ा है और लगातार अपडेट होता है, 125,000 रो और 9 कॉलम
कच्ची orders.csv फाइल का एक सैंपल:

Distribution center कच्ची डेटा फाइल:
Orders कच्ची डेटा फाइल:
dbt seeddbt sourcedbt init बेसिक फाइल स्ट्रक्चर ऑटो-जनरेट करता है:
looker_ecommerce/
macros/
models/
seeds/
snapshots/
tests/
dbt_project.yml
distribution_center को seed के रूप में लोड करें:
looker_ecommerce/
macros/
models/
stg_looker__distribution_centers.sql
seeds/
looker__distribution_centers.csv
snapshots/
tests/
dbt_project.yml
stg_looker__distribution_centers.sql में:
SELECT
id,
name,
latitude,
longitude
FROM
{{ref('looker__distribution_centers')}}
orders को source के रूप में लोड करें:
looker_ecommerce/
macros/
models/
stg_looker__orders.sql
seeds/
snapshots/
tests/
dbt_project.yml
stg_looker__orders.sql में:
SELECT *
FROM
{{source('looker_ecommerce', 'orders')}}
sources को डॉक्यूमेंट करने के लिए:
looker_ecommerce/
macros/
models/
_looker__sources.yml
seeds/
snapshots/
tests/
dbt_project.yml
_looker__sources.yml में:
version: 2
sources:
- name: looker_ecommerce
tables:
- name: orders
models डायरेक्टरी में सैंपल _looker__models.yml फाइल:version: 2
models:
- name: stg_looker__distribution_centers
description: Distribution center का नाम और लोकेशन
- name: stg_looker__orders
description: Order की जानकारी, जैसे order status
looker_ecommerce/
macros/
models/
_looker__models.yml
_looker__sources.yml
stg_looker__distribution_centers.sql
stg_looker__orders.sql
seeds/
looker__distribution_centers.csv
snapshots/
tests/
dbt_project.yml
csv फाइलों को seed फाइलों के रूप में लोड करता है
dbt seed
dbt प्रोजेक्ट के सभी मॉडल बनाता/अपडेट करता है
dbt run
निर्दिष्ट मॉडल बनाता/अपडेट करता है
dbt run --select model
dbt प्रोजेक्ट के सभी टेस्ट चलाता है
dbt test
निर्दिष्ट मॉडल के साथ टेस्ट चलाता है
dbt test --select model
dbt run और dbt test को एक में जोड़ता है!
dbt build
dbt build --select model
models नेमिंग स्ट्रक्चर:
<data_source>__<model_name>.sqlउदा.
stg_looker__distribution_centers.sqlstg_looker__orders.sqlyaml फाइल नेमिंग स्ट्रक्चर:
_<data_source>__<artifact_type>.ymlउदा.
_looker__models.yml_looker__sources.ymlCase Study: dbt के साथ E-Commerce Data Models बनाना