dbt seeds

इंटरमीडिएट dbt

Mike Metzger

Data Engineer

dbt seeds क्या हैं?

  • CSV फाइलें जिन्हें डेटा वेयरहाउस में लोड करना है
  • आम तौर पर बहुत कम बदलने वाले डेटा सेट
    • देशों की सूची
    • पोस्टल कोड की सूची
  • कच्चे डेटा के लिए बिल्कुल नहीं

Seeds

1 Photo by Maddi Bazzocco on Unsplash
इंटरमीडिएट dbt

क्यों?

  • मैनेज करना आसान
  • कई scenarios में इस्तेमाल करना आसान
  • सोर्स कंट्रोल में रख सकते हैं
इंटरमीडिएट dbt

Seeds कैसे परिभाषित होते हैं?

  • seeds डायरेक्टरी में CSV फाइल जोड़ें
  • हेडर पहली row में हो, यह सुनिश्चित करें
  • dbt seed कमांड से इम्पोर्ट करें
zipcode,place,state
99553,Akutan,Alaska
99571,Cold Bay,Alaska
99583,False Pass,Alaska

bash> dbt seed
1 Postal codes provided via https://github.com/zauberware/postal-codes-json-xml-csv
इंटरमीडिएट dbt

अतिरिक्त कॉन्फ़िगरेशन

  • कई options
    • कौन-सा schema?
    • कौन-सा database?
    • कॉलम quoting
    • कॉलम data types
  • पूरे प्रोजेक्ट या individual seeds पर लागू कर सकते हैं
  • dbt_project.yml या seeds/properties.yml में जोड़ सकते हैं
इंटरमीडिएट dbt

Datatypes परिभाषित करना

  • उपलब्ध data types आपके data warehouse पर निर्भर करती हैं
  • सामान्य types मिलती हैं
    • Integer
    • Varchar
    • आदि
  • यदि type परिभाषित नहीं है, तो डेटा के आधार पर infer होता है
version: 2

seeds:
  - name: zipcodes
    config:
      column_types:
        zipcode: varchar(5)
इंटरमीडिएट dbt

Test

  • Tests सपोर्टेड हैं
  • बिल्कुल models और sources की तरह
version: 2

seeds:
  - name: zipcodes
    config:
      column_types:
        zipcode: varchar(5)
    columns:
      - name: zipcode
        tests:
          - unique
इंटरमीडिएट dbt

Seeds तक पहुँच

  • {{ ref() }} कमांड से उपलब्ध
  • प्रारंभिक इम्पोर्ट के बाद model जैसा व्यवहार करता है
select * from
  {{ ref('zipcodes') }}
इंटरमीडिएट dbt

अभ्यास करते हैं!

इंटरमीडिएट dbt

Preparing Video For Download...