Intro to Data Build Tool (dbt) // Create your first project!

Sdílet
Vložit
  • čas přidán 24. 07. 2024
  • Learn how to get started using dbt (data-build-tool) by following along with this step-by-step tutorial.
    In this video, you will learn how to install dbt, initialize a new project and then publish your project to a GitHub repository.
    What is Dbt?
    dbt (data build tool) enables analytics engineers to transform data in their warehouses by simply writing select statements. dbt handles turning these select statements into tables and views.
    dbt does the T in ELT (Extract, Load, Transform) processes - it doesn’t extract or load data, but it’s extremely good at transforming data that’s already loaded into your warehouse.
    ►► The Starter Guide for dbt (Free PDF)
    Get clarity on key dbt concepts so you can build better projects & avoid common mistakes → bit.ly/starter-dbt
    Timestamps:
    0:00 - Intro
    0:51 - Begin Installation
    2:10 - Create GitHub Repository
    3:25 - Initialize dbt Project
    4:19 - Review Project Layout
    6:27 - Setup Profile for Snowflake
    9:42 - Run dbt Commands / Deploy Models
    11:54 - Push to GitHub
    13:17 - Update Folder Layout
    Title & Tags:
    Getting Started (Install & Create a Project) | dbt labs | Data Build Tool (dbt) Tutorial for Beginners
    #kahandatasolutions #databuildtool #dataengineering

Komentáře • 131

  • @KahanDataSolutions
    @KahanDataSolutions  Před 3 lety +12

    ►► The Starter Guide for dbt (Free PDF) → bit.ly/starter-dbt

  • @joseantoniolopezmesa6807

    Well I need to say this is great to start on DBT. Not too complicated, not too simple, just something in between. I am watching the whole playlist. I am excited because this will get me up to speed for POC purposes quick enough. Thanks

  • @varinderjitkaur3656
    @varinderjitkaur3656 Před 2 lety +8

    Hey Mike! Thank you so much for creating this DBT playlist. i am so grateful to you, i had a job assesment exam for Data modelling using DBT and your videos really helped me to learn the basics and later develop my own project. Again thank you so much! 😊😊

    • @KahanDataSolutions
      @KahanDataSolutions  Před 2 lety +1

      That is awesome! So glad to hear it was helpful you for you. That type of feedback is what makes creating these videos worth it!

  • @yanelakantomboxolo185

    Thank you very much. This was the best video for a beginner like myself .... 1 or 2 things that had been changed by dbt since 2020, but I was able to follow you.

  • @1ma4ighter
    @1ma4ighter Před rokem

    sweeeeeet! thanks for all the videos, I'mana go through all of these over the next two weeks

  • @TubeDirektor
    @TubeDirektor Před 3 lety

    Nicely done, was able to follow through and get my first commit into a snowflake instance.

  • @JusmaVids
    @JusmaVids Před 3 lety +10

    I was able to get started with dbt a lot faster than going through dbt documentation and videos.

    • @KahanDataSolutions
      @KahanDataSolutions  Před 3 lety +5

      Great to hear! Thank you for watching.

    • @tatamanasa4398
      @tatamanasa4398 Před 3 lety +1

      @jusmaVids does dbt cloud have an in hand database with data to try few queries on?

  • @praveen-dten-0871
    @praveen-dten-0871 Před 7 měsíci

    Great tutorial, thanks Kahan for uploading this.

  • @SnowGateAI
    @SnowGateAI Před 5 měsíci

    Great Video For Any Beginner, thank You

  • @navdeepkumar5946
    @navdeepkumar5946 Před 2 lety +1

    Very informative and helpful. Thanks

  • @TalhaIftikhar-wj3bu
    @TalhaIftikhar-wj3bu Před rokem

    Nice and clear, thank you.

  • @mikepain5011
    @mikepain5011 Před 3 lety +1

    Super helpful! Thank you!

  • @khaledtawfik7268
    @khaledtawfik7268 Před rokem

    Hey Mike
    I love your videos as they helped me a lot.
    wanted to ask if you have any plan to make a video about incremental techniques and the difference between them and best practices, i always struggle with this as an analytics engineer. Thanks

  • @Ashok-oe3lo
    @Ashok-oe3lo Před 3 lety +1

    Thank you very much for your time, very helpful

  • @sungod595
    @sungod595 Před rokem

    Hey Mike, Excellent Content. Many Thanks. I know these videos are good to start with . Do you plan to include any videos on advanced concepts Once again Thanks so much for great content

  • @muchumarriamarnath1858

    It is really good one to start DBT.. Thank you

  • @miniaturkid
    @miniaturkid Před 2 lety

    fantastic playlist. Thank you.

  • @VaibhavPatil-rx7pc
    @VaibhavPatil-rx7pc Před 7 měsíci

    Excellent information

  • @AnkitSinhaforself
    @AnkitSinhaforself Před 3 lety

    thanks for this !!! really helpful

  • @pendragonmeat
    @pendragonmeat Před 2 lety

    Great content. Thanks Mike

  • @parthapratimdas4051
    @parthapratimdas4051 Před rokem

    this is the best tutorial on dbt!

  • @tushargp
    @tushargp Před 2 lety

    Also if you can please advise how can I run update statement.

  • @ankuraeran1819
    @ankuraeran1819 Před rokem

    Good tutorial, thank you!

  • @v4varun86
    @v4varun86 Před 3 lety +2

    I am getting dbt command not found error in visual studio code. However pip dbt install was successful and its running fine from cmd
    dbt : The term 'dbt' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or
    if a path was included, verify that the path is correct and try again.
    At line:1 char:1
    + dbt debug
    + ~~~
    + CategoryInfo : ObjectNotFound: (dbt:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

  • @parrisgjerde9212
    @parrisgjerde9212 Před rokem

    Nice video. Thanks.

  • @ravibabumca
    @ravibabumca Před 3 lety +1

    Really good Brother

  • @livu69
    @livu69 Před 2 lety

    Great tutorial!

  • @tushargp
    @tushargp Před 2 lety

    Hello, Please advise how can i run update statement on snowflake.

  • @roberbonox
    @roberbonox Před 11 měsíci

    dude how r you, i have the next question, what could i do if i have a stream on snowflake that i want to "consume" in dbt but not creating a physical table or view, instead something live a ephemeral materialization, only to purge the stream and avoid to become stale. I create an ephemeral model and select the stream source but that only create obviously an ephemeral materialization but kind not clean the data on the stream, thoughts??

  • @litttlemooncream5049
    @litttlemooncream5049 Před 2 lety

    hey mike. Thanks for your video. really helpful! I wonder if I can use python to do loops instead of writing 1000+ rows sql? is it possible to combine dbt and python

    • @KahanDataSolutions
      @KahanDataSolutions  Před 2 lety +1

      I recommend checking out Jinja, which allows you to incorporate more dynamic things like loops into your SQL code.
      docs.getdbt.com/docs/building-a-dbt-project/jinja-macros

  • @danielejiofor3493
    @danielejiofor3493 Před rokem +5

    Please update the video, looks the installation process has changed

  • @user-er3mo2jg6v
    @user-er3mo2jg6v Před 11 měsíci

    10/10 --thanks for the video. New dbt users should view before visiting @dbt. Found this after nearly a day installing/reinstalling to dbt spec (is 'erratic' a good description for dbt docs? maybe...'incorrect'?).

  • @lucymat3746
    @lucymat3746 Před 10 měsíci

    so helpful, thank you

  • @sakthivadivel1057
    @sakthivadivel1057 Před 3 lety +1

    Hi @kahan, While I try to install dbt (pip install dbt) an error occurs.Error:KeyError:ICU_VERSION.could you help me to fix?

    • @KahanDataSolutions
      @KahanDataSolutions  Před 3 lety

      Hi there - Unfortunately that sounds like an environment issue specific to your machine/setup and not something I can easily answer. Make sure you are using an acceptable version of Python for dbt and try searching around online to see if others have encountered similar issues.

  • @sararodriguez5803
    @sararodriguez5803 Před 3 lety

    Can you possibly configure dbt profile to work with Spark into AWS S3 parquet files?

    • @KahanDataSolutions
      @KahanDataSolutions  Před 3 lety

      Here are the list of available adapters - docs.getdbt.com/docs/available-adapters

  • @jaredfiacco1107
    @jaredfiacco1107 Před 2 lety

    Thanks Kahan!

  • @mayureshpachangane7523
    @mayureshpachangane7523 Před 8 měsíci

    Do you know how we can write stored-procs in dbt? Can you provide something on that

  • @vishwanathmuthuraman5530

    I was able to pip install dbt, but when i run " dbt init [project name] " it says something like cant recognize path, external, or batch file ?? what do it do ?

  • @qone2363
    @qone2363 Před 5 dny

    Hey Kahan! There were some changes to get the dbt env setup going.. perhaps it's time for an update? Had to find work arounds.. when I do it, profiles.yml file doesn't exist or cannot be found.. anyways, thanks for making the tutorial

  • @frankbell3033
    @frankbell3033 Před 3 lety

    when I run your dbt init step in the beginning on a mac I keep getting an error raise ValidationError(f"Unable to create schema for '{type_name}'")
    hologram.ValidationError: Unable to create schema for 'Optional'

    • @mechy6065
      @mechy6065 Před 3 lety

      Hello Frank, If you are running Python 3.9, One of their dependencies is not compatible. You will have to downgrade your python version maybe 3.8. If you had found any other solution please reply to this message.

  • @mounikarepakula1910
    @mounikarepakula1910 Před 2 lety

    Hey Mike! Thank You so much.
    May i know how to create a new table in DBT tool?

    • @KahanDataSolutions
      @KahanDataSolutions  Před 2 lety

      Thanks for watching! To create a table you create a model (sql file) and set the materialization as "table". You can follow along the rest of the videos in this playlist to learn more about how to use dbt.

  • @tatamanasa4398
    @tatamanasa4398 Před 3 lety +1

    does dbt cloud have an in hand data base with data to try out the commands?

    • @KahanDataSolutions
      @KahanDataSolutions  Před 3 lety

      Hi Tata - Unfortunately DBT does not come out of the box with a database, but instead is designed to plug into one that you already have.

  • @0xsuperman
    @0xsuperman Před rokem +1

    I don't see the .dbt folder under my admin folder, will this still work?

  • @cherah3012
    @cherah3012 Před 3 lety +1

    Hello @Kahan. Thank you for everything you share with us. It's a pleasure to follow you.
    For this tutorial, I followed everything well until 11:30. dbt shows me "Completed successfully" => 2 of 2 Ok created view model Public ... etc. But when I look in snowflake under public, nothing has been created ... Do you have an explanation? Thx

    • @KahanDataSolutions
      @KahanDataSolutions  Před 3 lety

      Hello and thank you for your kind words!
      Regarding your visibility in Snowflake - perhaps you need to switch roles when you sign into Snowflake. For example, if you set your profiles.yml on dbt to use accountadmin , then any role with "less" privileges won't have visibility. This is where access control comes into play, but was unfortunately outside the scope of this video. Let me know if that does it. Thanks again.

    • @cherah3012
      @cherah3012 Před 3 lety +1

      Hi​@@KahanDataSolutions Thank you for your quick response
      In fact, I had done everything right.
      while I am testing something else in snowflake by creating a table by hand in the same schema (DEMO_DB.PUBLIC, in my case), I saw the table and the view appear in the worksheet (MY_FIRST_DBT_MODEL and MY_SECOND_DBT_MODEL) ... It's a bit strange !! but everything is fine, I will be able to move forward ...

    • @stephensun6672
      @stephensun6672 Před 2 lety

      @@cherah3012 you have to grant privileges to SYSADMIN then you'll be able to see the table.

  • @PawanKumar-un7sk
    @PawanKumar-un7sk Před 3 lety

    After the command applied pip install dbt
    When I check for dbt --version it's showing that dbt is not recognized as an internal or external command, operable program or batch file what I do now?

  • @n_128
    @n_128 Před 2 lety +2

    The command "pip install dbt" will not work anymore. The documentation says:
    "Note that, as of v1.0.0, pip install dbt is no longer supported and will raise an explicit error. Since v0.13, the PyPi package named dbt was a simple "pass-through" of dbt-core and the four original database adapter plugins. For v1, we formalized that split."
    This command emulates the behaviour of the pip install dbt command:
    ```
    pip install \
    dbt-core \
    dbt-postgres \
    dbt-redshift \
    dbt-snowflake \
    dbt-bigquery
    ```

    • @KahanDataSolutions
      @KahanDataSolutions  Před 2 lety

      You are correct - This video is now a bit dated compared to the latest version but if you make the adjustment you mention you should be all set. Here is a reference link for others who are interested: docs.getdbt.com/dbt-cli/install/pip#pip-install-dbt

  • @shankarbonda6977
    @shankarbonda6977 Před rokem

    @KahanDataSolutions Hi, while running dbt debug, I am facing connection test error, could not connect to snowflake backend, I have populated all the fields popularly. Could you please help me ?

  • @bashabash3697
    @bashabash3697 Před 9 měsíci

    hey Mike. Can we install DBT in Azure data factory

  • @blancamola
    @blancamola Před 2 lety

    Hello there!
    I got stuck at the start.
    I installed dbt by pip with no errors (Actually dbt-redshift). But when I run dbt --version or any other dbt command I get the typical error of not recognized as internal.
    I tried to add .....\python310\site-packages in the path of environment variables, but no luck.
    Thank you for any help,
    Looking forward to watching the rest of videos too.
    😃

    • @samuelbrown797
      @samuelbrown797 Před 2 lety

      Hi Serna. Sorry for reaching out to you but I am encountering the same problem. Were you able to find a solution to this problem?

  • @user-kl1dc8nh3l
    @user-kl1dc8nh3l Před 6 měsíci

    thanks!

  • @Faith_Ojumah
    @Faith_Ojumah Před rokem

    HI, I am having difficulties finding my profiles.yml file on my MacOS. Please help?

  • @tushargp
    @tushargp Před 2 lety +1

    Hello, I have 2 models in same folder , but wants dbt to write out put from each model to separate database in same account, how can I do that? Please advise.

    • @KahanDataSolutions
      @KahanDataSolutions  Před 2 lety

      Hi Dinesh, this can be accomplished by changing the "database" config setting. Here is the documentation:
      docs.getdbt.com/docs/building-a-dbt-project/building-models/using-custom-databases

    • @tushargp
      @tushargp Před 2 lety

      Thank you, This is what I have been looking for. Can you please advise on below scenario where I have 4 tables to load, each table has 4 scripts to run in specific sequence (insert script + logging scripts), please advise how can I set this 16 script project with dependencies.

  • @anjanashetty482
    @anjanashetty482 Před 2 lety

    How to update records in dbt. Update operation is failing upon dbt run.

  • @lokendrasinghtanwar5917

    can you please make a video on how to setup dbt in VS code

  • @shrero
    @shrero Před 11 měsíci

    Will this intro work on a mac as well?

  • @jeremiahworkman1631
    @jeremiahworkman1631 Před 2 lety

    Is this tutorial applicable (after the initial install for WIndows) for MacOS?

    • @KahanDataSolutions
      @KahanDataSolutions  Před 2 lety

      Hey Jeremiah - Yes the general workflow of dbt will be the same across operating systems.

  • @udaykumar-tb5kn
    @udaykumar-tb5kn Před rokem

    Dbt is cloud login right why did you install it locally?? What difference between on prem vs cloud dbt login pls help

  • @TheSimpGatsby
    @TheSimpGatsby Před rokem

    thanks mate.

  • @mohitsondhi
    @mohitsondhi Před rokem

    where do i find profiles.yml file when installed in mac?

    • @KahanDataSolutions
      @KahanDataSolutions  Před rokem

      It will be on your home directory at "~/.dbt"
      However, it might be hidden by default in the finder so you need to press "CMD + Shift + ." to show hidden directories.

    • @mohitsondhi
      @mohitsondhi Před rokem

      @@KahanDataSolutions Great, Thank you so much, I am about to buy your course, have 1-2 questions on that, can we somehow chat or have a call?

  • @grantdoyle1259
    @grantdoyle1259 Před 2 lety

    Ive done everything correct up to this point but when I run dbt debug I get an error "dbt : The term 'dbt' is not recognized as the name of a cmdlet, function, script file, or operable
    program."

    • @samuelbrown797
      @samuelbrown797 Před 2 lety

      Hi Grant - Sorry for reaching out to you but I am encountering the same problem. Were you able to find a solution to this error? Thanks Sam

    • @grantdoyle1259
      @grantdoyle1259 Před 2 lety

      @@samuelbrown797 I ended up just working with DBT in a virtual environment. They have some documentation on it and I believe he has a video on it. I am taking a DBT udemy course that has been solid in setting up and configuring DBT

  • @xhshaw4930
    @xhshaw4930 Před 2 lety

    nice👍

  • @StephenRayner
    @StephenRayner Před 18 dny

    Please make videos on “Meltano” and how to use dbt within this? 🎉

  • @SravaniK-ee8td
    @SravaniK-ee8td Před 10 dny

    How to avoid hardcoding of username and password?

  • @MrEsdrasadiel
    @MrEsdrasadiel Před rokem

    Hello! I am watching your video, for now the dbt request to choose an version in according the situation. In my case i choose the dbt-redshift to install. "pip install dbt-redshift"

    • @KahanDataSolutions
      @KahanDataSolutions  Před rokem

      That's correct! Here's more docs on Redshift specifically: docs.getdbt.com/reference/warehouse-setups/redshift-setup

  • @ademolaoladapo9024
    @ademolaoladapo9024 Před 2 lety +1

    Good Morning, when i tried checking the version of dbt, i get this error - 'dbt' is not recognized as an internal or external command, operable program or batch file. How do i proceed?

    • @KahanDataSolutions
      @KahanDataSolutions  Před 2 lety +1

      Did you successfully install dbt before running that command? Perhaps you need to open a new/fresh terminal.

    • @ademolaoladapo9024
      @ademolaoladapo9024 Před 2 lety +1

      @@KahanDataSolutions i did install dbt using pip3 before running that command

    • @hantt
      @hantt Před 2 lety

      This means that dbt is not added to the path of your execution. Make sure when you run pip install that your virtual environment is active.

  • @jaym7178
    @jaym7178 Před 2 lety

    Hi
    I am looking into a career as a Data Engineer i am overwhelmed with software I should learn other than learning python,sql is the any tools and areas I should focus Thanks

  • @vickysworld9
    @vickysworld9 Před 3 lety

    I am unable to install dbt on windows from CLI "Error: Could not build wheels for cryptography which use PEP 517 and cannot be installed directly"

    • @KahanDataSolutions
      @KahanDataSolutions  Před 3 lety

      What version of Windows and Python are you using?

    • @vickysworld9
      @vickysworld9 Před 3 lety

      @@KahanDataSolutions windows 10 & python 3.9

    • @vickysworld9
      @vickysworld9 Před 3 lety

      @@KahanDataSolutions Please help

    • @KahanDataSolutions
      @KahanDataSolutions  Před 3 lety

      stackoverflow.com/questions/59441794/error-could-not-build-wheels-for-cryptography-which-use-pep-517-and-cannot-be-i

    • @graceluo9813
      @graceluo9813 Před 3 lety

      @@vickysworld9 found that python 3.9 does not support dbt's snowflake connector hence downgraded my python installation version to 3.8 which helped

  • @prateekganguly9285
    @prateekganguly9285 Před 11 měsíci

    If i were 3 years younger I'd have pushed the code with all the secrets in the yaml file

  • @abdullahsiddique7787
    @abdullahsiddique7787 Před 2 lety

    How’s dbt as a career with snowflake

    • @KahanDataSolutions
      @KahanDataSolutions  Před 2 lety +1

      There is a big demand right now for dbt developers, particularly with Snowflake.
      Having said that, I would consider dbt as just one of the many possible tools in the broader career of a data/analytics engineer.
      Either way - I'd strongly suggest learning it!

    • @abdullahsiddique7787
      @abdullahsiddique7787 Před 2 lety

      @@KahanDataSolutions thanks bro for replying , so if we learn dbt is there any need to learn ETL tools like informatica talend etc and is your playlist complete course on dbt

  • @emanueol
    @emanueol Před rokem

    nice playlist, but i found really annying CZcamsrs not buying decent microphones and forcing viewers to hear every single mouse click and every single keyboard key press.. sorry for being honest, but we can only improve with others suggestions

    • @KahanDataSolutions
      @KahanDataSolutions  Před rokem

      Appreciate the feedback & glad to hear the playlist was helpful! I've also upgraded my microphone since this video and you can see it on my newer videos.

  • @TJ-hs1qm
    @TJ-hs1qm Před měsícem

    The terminal on Windows is an abomination, that shouldn't exist 😭

  • @InPersian
    @InPersian Před rokem

    Unfortunately, I tried to install dbt but it is not working"\Python311\Lib\site-packages\mashumaro\meta\helpers.py", line 161, in is_generic raise NotImplementedError, I tried to find the solution but still no result

  • @sateeshbabu5792
    @sateeshbabu5792 Před 2 měsíci

    Hi , This is sateesh, i have completed snowflake snow pro certification. planning to learn DBT. What are the pre-requisites ? and complete Python is required before learn DBT ? Could you please let me know.

    • @KahanDataSolutions
      @KahanDataSolutions  Před 2 měsíci

      I recommend having a solid understanding of SQL as the #1 pre-req. You don't need to be a master Python dev to use it. Very beginner understanding of general programming is all you need to get started.

    • @sateeshbabu5792
      @sateeshbabu5792 Před 2 měsíci

      @@KahanDataSolutions Thank you so much for your reply. Are you providing online training on DBT ?

    • @KahanDataSolutions
      @KahanDataSolutions  Před 2 měsíci

      @@sateeshbabu5792 I do have a dbt course. You can check it out here - www.kahandatasolutions.com/the-playbook-for-dbt