Skip to content

This is a quick guide on how to get started and create your data models using dbt (data build tool). dbt is a Python-based packaged for managing Transformations in the ELT (Extract, Load, Transform) lifecyle.

CloudChaoszero/onboarding-2-dbt

main
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta charset="utf-8" />
    <title>Analytic Engineering &amp; dbt: 0-100 &#8212; Analytic Engineering &amp; dbt: 0-100</title>
    
  <link rel="stylesheet" href="_static/css/index.d431a4ee1c1efae0e38bdfebc22debff.css">

    
  <link rel="stylesheet"
    href="_static/vendor/fontawesome/5.13.0/css/all.min.css">
  <link rel="preload" as="font" type="font/woff2" crossorigin
    href="_static/vendor/fontawesome/5.13.0/webfonts/fa-solid-900.woff2">
  <link rel="preload" as="font" type="font/woff2" crossorigin
    href="_static/vendor/fontawesome/5.13.0/webfonts/fa-brands-400.woff2">

    
      
  <link rel="stylesheet"
    href="_static/vendor/open-sans_all/1.44.1/index.css">
  <link rel="stylesheet"
    href="_static/vendor/lato_latin-ext/1.44.1/index.css">

    
    <link rel="stylesheet" href="_static/sphinx-book-theme.bfb7730f9caf2ec0b46a44615585038c.css" type="text/css" />
    <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
    <link rel="stylesheet" type="text/css" href="_static/togglebutton.css" />
    <link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
    <link rel="stylesheet" type="text/css" href="_static/mystnb.css" />
    <link rel="stylesheet" type="text/css" href="_static/sphinx-thebe.css" />
    <link rel="stylesheet" type="text/css" href="_static/panels-main.c949a650a448cc0ae9fd3441c0e17fb0.css" />
    <link rel="stylesheet" type="text/css" href="_static/panels-variables.06eb56fa6e07937060861dad626602ad.css" />
    
  <link rel="preload" as="script" href="_static/js/index.30270b6e4c972e43c488.js">

    <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
    <script type="text/javascript" src="_static/jquery.js"></script>
    <script type="text/javascript" src="_static/underscore.js"></script>
    <script type="text/javascript" src="_static/doctools.js"></script>
    <script type="text/javascript" src="_static/language_data.js"></script>
    <script type="text/javascript" src="_static/togglebutton.js"></script>
    <script type="text/javascript" src="_static/clipboard.min.js"></script>
    <script type="text/javascript" src="_static/copybutton.js"></script>
    <script type="text/javascript">var togglebuttonSelector = '.toggle, .admonition.dropdown, .tag_hide_input div.cell_input, .tag_hide-input div.cell_input, .tag_hide_output div.cell_output, .tag_hide-output div.cell_output, .tag_hide_cell.cell, .tag_hide-cell.cell';</script>
    <script type="text/javascript" src="_static/sphinx-book-theme.be0a4a0c39cd630af62a2fcf693f3f06.js"></script>
    <script async="async" type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/latest.js?config=TeX-AMS-MML_HTMLorMML"></script>
    <script type="text/x-mathjax-config">MathJax.Hub.Config({"tex2jax": {"inlineMath": [["\\(", "\\)"]], "displayMath": [["\\[", "\\]"]], "processRefs": false, "processEnvironments": false}})</script>
    <script async="async" type="text/javascript" src="https://unpkg.com/thebelab@latest/lib/index.js"></script>
    <script type="text/javascript">
        const thebe_selector = ".thebe"
        const thebe_selector_input = "pre"
        const thebe_selector_output = ".output"
    </script>
    <script async="async" type="text/javascript" src="_static/sphinx-thebe.js"></script>
    <link rel="index" title="Index" href="genindex.html" />
    <link rel="search" title="Search" href="search.html" />

    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <meta name="docsearch:language" content="en" />



  </head>
  <body data-spy="scroll" data-target="#bd-toc-nav" data-offset="80">
    

    <div class="container-xl">
      <div class="row">
          
<div class="col-12 col-md-3 bd-sidebar site-navigation show" id="site-navigation">
    
        <div class="navbar-brand-box">
<a class="navbar-brand text-wrap" href="index.html">
  
  
  <h1 class="site-logo" id="site-title">Analytic Engineering & dbt: 0-100</h1>
  
</a>
</div>

<form class="bd-search d-flex align-items-center" action="search.html" method="get">
  <i class="icon fas fa-search"></i>
  <input type="search" class="form-control" name="q" id="search-input" placeholder="Search this book..." aria-label="Search this book..." autocomplete="off" >
</form>

<nav class="bd-links" id="bd-docs-nav" aria-label="Main navigation">
  <ul class="nav sidenav_l1">
 <li class="toctree-l1">
  <a class="reference internal" href="index.html">
   Analytic Engineering &amp; dbt: 0-100
  </a>
 </li>
</ul>
<p class="caption">
 <span class="caption-text">
  Installation
 </span>
</p>
<ul class="nav sidenav_l1">
 <li class="toctree-l1">
  <a class="reference internal" href="0-Installation/index.html">
   1. Installation
  </a>
 </li>
</ul>
<p class="caption">
 <span class="caption-text">
  Creating a Project
 </span>
</p>
<ul class="nav sidenav_l1">
 <li class="toctree-l1">
  <a class="reference internal" href="1-Create-A-Project/index.html">
   1. Creating a Project
  </a>
 </li>
</ul>
<p class="caption">
 <span class="caption-text">
  Base/Raw Extraction
 </span>
</p>
<ul class="nav sidenav_l1">
 <li class="toctree-l1">
  <a class="reference internal" href="2-I-Source-Config/index.html">
   1. Source Configuration
  </a>
 </li>
 <li class="toctree-l1">
  <a class="reference internal" href="2-II-Instantiate-Base-Tables/index.html">
   2. Instantiate your Base Tables!
  </a>
 </li>
 <li class="toctree-l1">
  <a class="reference internal" href="2-III-Materialization-Development/index.html">
   3. Development in BASE
  </a>
 </li>
</ul>
<p class="caption">
 <span class="caption-text">
  Staging Transformations
 </span>
</p>
<ul class="nav sidenav_l1">
 <li class="toctree-l1">
  <a class="reference internal" href="3-Model-Stage-Tables/index.html">
   Get up to the Stage
  </a>
 </li>
</ul>
<p class="caption">
 <span class="caption-text">
  Mart Reporting
 </span>
</p>
<ul class="nav sidenav_l1">
 <li class="toctree-l1">
  <a class="reference internal" href="4-Model-Mart-Tables/index.html">
   1. What are the Facts?
  </a>
 </li>
 <li class="toctree-l1">
  <a class="reference internal" href="4-Model-Mart-Tables/index.html#dimension-and-fact-tables">
   2. Dimension and Fact Tables
  </a>
 </li>
 <li class="toctree-l1">
  <a class="reference internal" href="4-Model-Mart-Tables/index.html#embedding-business-logic">
   3. Embedding Business Logic
  </a>
 </li>
</ul>
<p class="caption">
 <span class="caption-text">
  Documentation
 </span>
</p>
<ul class="nav sidenav_l1">
 <li class="toctree-l1">
  <a class="reference internal" href="5-Documentation/index.html">
   1. Documention
  </a>
 </li>
</ul>
<p class="caption">
 <span class="caption-text">
  Additional Content
 </span>
</p>
<ul class="nav sidenav_l1">
 <li class="toctree-l1">
  <a class="reference internal" href="6-Advanced-Tests/index.html">
   1. Testing, Testing…
  </a>
 </li>
 <li class="toctree-l1">
  <a class="reference internal" href="7-Advanced-Templates/index.html">
   2. Templating &amp; Macros
  </a>
 </li>
</ul>
<p class="caption">
 <span class="caption-text">
  Next Steps
 </span>
</p>
<ul class="nav sidenav_l1">
 <li class="toctree-l1">
  <a class="reference internal" href="Thank-You/index.html">
   1. Next Steps!
  </a>
 </li>
</ul>

</nav>

 <!-- To handle the deprecated key -->

<div class="navbar_extra_footer">
  Powered by <a href="https://jupyterbook.org">Jupyter Book</a>
</div>

</div>


          


          
<main class="col py-md-3 pl-md-4 bd-content overflow-auto" role="main">
    
    <div class="row topbar fixed-top container-xl">
    <div class="col-12 col-md-3 bd-topbar-whitespace site-navigation show">
    </div>
    <div class="col pl-2 topbar-main">
        
        <button id="navbar-toggler" class="navbar-toggler ml-0" type="button" data-toggle="collapse"
            data-toggle="tooltip" data-placement="bottom" data-target=".site-navigation" aria-controls="navbar-menu"
            aria-expanded="true" aria-label="Toggle navigation" aria-controls="site-navigation"
            title="Toggle navigation" data-toggle="tooltip" data-placement="left">
            <i class="fas fa-bars"></i>
            <i class="fas fa-arrow-left"></i>
            <i class="fas fa-arrow-up"></i>
        </button>
        
        <div class="dropdown-buttons-trigger">
    <button id="dropdown-buttons-trigger" class="btn btn-secondary topbarbtn" aria-label="Download this page"><i
            class="fas fa-download"></i></button>

    
    <div class="dropdown-buttons">
        <!-- ipynb file if we had a myst markdown file -->
        
        <!-- Download raw file -->
        <a class="dropdown-buttons" href="_sources/README.md"><button type="button"
                class="btn btn-secondary topbarbtn" title="Download source file" data-toggle="tooltip"
                data-placement="left">.md</button></a>
        <!-- Download PDF via print -->
        <button type="button" id="download-print" class="btn btn-secondary topbarbtn" title="Print to PDF"
            onClick="window.print()" data-toggle="tooltip" data-placement="left">.pdf</button>
    </div>
    
</div>
        <!-- Source interaction buttons -->

<div class="dropdown-buttons-trigger">
    <button id="dropdown-buttons-trigger" class="btn btn-secondary topbarbtn"
        aria-label="Connect with source repository"><i class="fab fa-github"></i></button>
    <div class="dropdown-buttons sourcebuttons">
        <a class="repository-button"
            href="https://github.com/CloudChaoszero/dbtOfCourse"><button type="button" class="btn btn-secondary topbarbtn"
                data-toggle="tooltip" data-placement="left" title="Source repository"><i
                    class="fab fa-github"></i>repository</button></a>
        <a class="issues-button"
            href="https://github.com/CloudChaoszero/dbtOfCourse/issues/new?title=Issue%20on%20page%20%2FREADME.html&body=Your%20issue%20content%20here."><button
                type="button" class="btn btn-secondary topbarbtn" data-toggle="tooltip" data-placement="left"
                title="Open an issue"><i class="fas fa-lightbulb"></i>open issue</button></a>
        
    </div>
</div>


        <!-- Full screen (wrap in <a> to have style consistency -->
        <a class="full-screen-button"><button type="button" class="btn btn-secondary topbarbtn" data-toggle="tooltip"
                data-placement="bottom" onclick="toggleFullScreen()" title="Fullscreen mode"><i
                    class="fas fa-expand"></i></button></a>

        <!-- Launch buttons -->

    </div>

    <!-- Table of contents -->
    <div class="d-none d-md-block col-md-2 bd-toc show">
        
        <div class="tocsection onthispage pt-5 pb-3">
            <i class="fas fa-list"></i> Contents
        </div>
        <nav id="bd-toc-nav">
            <ul class="nav section-nav flex-column">
 <li class="toc-h1 nav-item toc-entry">
  <a class="reference internal nav-link" href="#">
   Analytic Engineering &amp; dbt: 0-100
  </a>
 </li>
 <li class="toc-h1 nav-item toc-entry">
  <a class="reference internal nav-link" href="#summary">
   Summary
  </a>
  <ul class="nav section-nav flex-column">
   <li class="toc-h2 nav-item toc-entry">
    <a class="reference internal nav-link" href="#donate">
     Donate
    </a>
   </li>
  </ul>
 </li>
 <li class="toc-h1 nav-item toc-entry">
  <a class="reference internal nav-link" href="#installation">
   Installation
  </a>
  <ul class="nav section-nav flex-column">
   <li class="toc-h2 nav-item toc-entry">
    <a class="reference internal nav-link" href="#the-tutorial">
     The Tutorial
    </a>
   </li>
   <li class="toc-h2 nav-item toc-entry">
    <a class="reference internal nav-link" href="#environment">
     Environment
    </a>
   </li>
  </ul>
 </li>
 <li class="toc-h1 nav-item toc-entry">
  <a class="reference internal nav-link" href="#resources">
   Resources
  </a>
 </li>
</ul>

        </nav>
        
    </div>
</div>
    <div id="main-content" class="row">
        <div class="col-12 col-md-9 pl-md-3 pr-md-0">
        
              <div>
                
  <div class="section" id="analytic-engineering-dbt-0-100">
<h1>Analytic Engineering &amp; dbt: 0-100<a class="headerlink" href="#analytic-engineering-dbt-0-100" title="Permalink to this headline">¶</a></h1>
<p><img alt="dbt Logo" src="https://docs.getdbt.com/img/dbt-logo-full.png" /></p>
</div>
<div class="section" id="summary">
<h1>Summary<a class="headerlink" href="#summary" title="Permalink to this headline">¶</a></h1>
<p>This is a quick guide on how to get started and create your data models using dbt (data build tool).
dbt is a Python-based packaged for managing <code class="docutils literal notranslate"><span class="pre">Transform</span></code>ations in the ELT (Extract, Load, Transform) lifecyle.</p>
<p>You can find a quick slide deck on dbt from <a class="reference external" href="https://raulingaverage.dev/Presentations/PyBayTalks/2020/dbt/Lighting-Talk-dbt#/">my past Lighting Talk on dbt, here</a>.
A video summary of this documentation can <a class="reference external" href="https://www.youtube.com/watch?v=EkeYdYnJ6kM&amp;list=PL83V3nc76mDrEfz1rRZ3L2fDYXDGm8yLk&amp;index=1">be found here, on Youtube</a>.
To see the resulting documentation portal, head to <a class="reference external" href="https://raulingaverage.dev/dbt-Docs-Tutorial-Portal/">raulingaverage.dev/dbt-Docs-Tutorial-Portal/)</a>.</p>
<ul class="simple">
<li><p>Tutorial: <a class="reference external" href="https://github.com/CloudChaoszero/onboarding-2-dbt">onboarding-2-dbt</a></p></li>
<li><p>Code: <a class="reference external" href="https://github.com/CloudChaoszero/customer-analytics">Github Repository</a></p></li>
<li><p>Youtube Overview: <a class="reference external" href="https://www.youtube.com/watch?v=EkeYdYnJ6kM&amp;list=PL83V3nc76mDrEfz1rRZ3L2fDYXDGm8yLk&amp;index=1">Analytics Engineering &amp; dbt: 0-100 playlist</a></p></li>
</ul>
<div class="section" id="donate">
<h2>Donate<a class="headerlink" href="#donate" title="Permalink to this headline">¶</a></h2>
<p>If you would like to support this project, feel free to consider donating to one of the following:</p>
<ul class="simple">
<li><p><a class="reference external" href="https://psfmember.org/civicrm/contribute/transact?reset=1&amp;id=6">PyLadies Donation</a></p>
<ul>
<li><p>Note: <a class="reference external" href="https://rladies.org/">RLadies</a> too, but I think they have enough funding, compared to PyLadies. Your choice, of course. :D</p></li>
<li><p>Why? With the recent trend gatekeeping and impact on COVID-19 on women, I feel this is top priority.</p></li>
</ul>
</li>
<li><p><a class="reference external" href="http://www.deltanalytics.org/donate.html">Delta Analytics</a></p>
<ul>
<li><p>Why? Nonprofit I volunteer for</p></li>
</ul>
</li>
<li><p><a class="reference external" href="https://devmission.org/">Dev/Mission</a></p>
<ul>
<li><p>Why? I really care about minorities, Blackx and Latinx groups going into tech.</p></li>
</ul>
</li>
<li><p><a class="reference external" href="https://numfocus.org/donate">NumFocus Donate</a></p>
<ul>
<li><p>Why? &lt;3 Python community</p></li>
</ul>
</li>
</ul>
</div>
</div>
<div class="section" id="installation">
<h1>Installation<a class="headerlink" href="#installation" title="Permalink to this headline">¶</a></h1>
<div class="section" id="the-tutorial">
<h2>The Tutorial<a class="headerlink" href="#the-tutorial" title="Permalink to this headline">¶</a></h2>
<p>Go to this repository <a class="reference external" href="https://github.com/CloudChaoszero/customer-analytics">customer-analytics</a>, and enter the following in your CLI (outside of this repo):</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>git clone https://github.com/CloudChaoszero/customer-analytics.git
</pre></div>
</div>
<ul class="simple">
<li><p>Note: I used a Snowflake Trial to implement this tutorial.</p></li>
</ul>
</div>
<div class="section" id="environment">
<h2>Environment<a class="headerlink" href="#environment" title="Permalink to this headline">¶</a></h2>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>conda create --name dbtcourse
python -m ipykernel install --user --name dbtcourse --display-name <span class="s2">&quot;Python (dbt Course)&quot;</span>
</pre></div>
</div>
</div>
</div>
<div class="section" id="resources">
<h1>Resources<a class="headerlink" href="#resources" title="Permalink to this headline">¶</a></h1>
<ul class="simple">
<li><p><a class="reference external" href="https://docs.getdbt.com/">dbt Documentation</a></p></li>
<li><p>Tutorial <a class="reference external" href="https://github.com/CloudChaoszero/customer-analytics">customer-analytics</a></p></li>
</ul>
<p><img alt="" src="https://media.giphy.com/media/QYkX9IMHthYn0Y3pcG/giphy.gif" /></p>
</div>

    <script type="text/x-thebe-config">
    {
        requestKernel: true,
        binderOptions: {
            repo: "binder-examples/jupyter-stacks-datascience",
            ref: "master",
        },
        codeMirrorConfig: {
            theme: "abcdef",
            mode: "python"
        },
        kernelOptions: {
            kernelName: "python3",
            path: "./."
        },
        predefinedOutput: true
    }
    </script>
    <script>kernelName = 'python3'</script>

              </div>
              
        </div>
    </div>
    
    
    <div class='prev-next-bottom'>
        

    </div>
    <footer class="footer mt-5 mt-md-0">
    <div class="container">
      <p>
        
          By Raul Maldonado<br/>
        
            &copy; Copyright 2020.<br/>
      </p>
    </div>
  </footer>
</main>


      </div>
    </div>

    
  <script src="_static/js/index.30270b6e4c972e43c488.js"></script>


    
  </body>
</html>

About

This is a quick guide on how to get started and create your data models using dbt (data build tool). dbt is a Python-based packaged for managing Transformations in the ELT (Extract, Load, Transform) lifecyle.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published