<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">"use strict";(self.webpackChunk=self.webpackChunk||[]).push([[76581],{7435:(e,t,o)=&gt;{o.r(t),o.d(t,{assets:()=&gt;l,contentTitle:()=&gt;a,default:()=&gt;h,frontMatter:()=&gt;r,metadata:()=&gt;s,toc:()=&gt;c});var n=o(74848),i=o(28453);const r={title:"To defer or to clone, that is the question",description:"In dbt v1.6, we introduce support for zero-copy cloning via the new dbt clone command. In this blog post, Kshitij will cover what clone is, how it is different from deferral, and when to use each.",slug:"to-defer-or-to-clone",image:"/img/blog/2023-10-31-to-defer-or-to-clone/preview.png",authors:["kshitij_aranke","doug_beatty"],tags:["analytics craft"],hide_table_of_contents:!1,date:new Date("2023-10-31T00:00:00.000Z"),is_featured:!0},a=void 0,s={permalink:"/blog/to-defer-or-to-clone",source:"@site/blog/2023-10-31-to-defer-or-to-clone.md",title:"To defer or to clone, that is the question",description:"In dbt v1.6, we introduce support for zero-copy cloning via the new dbt clone command. In this blog post, Kshitij will cover what clone is, how it is different from deferral, and when to use each.",date:"2023-10-31T00:00:00.000Z",tags:[{inline:!0,label:"analytics craft",permalink:"/blog/tags/analytics-craft"}],readingTime:5.445,hasTruncateMarker:!0,authors:[{job_title:"Senior Software Engineer",links:[{icon:"fa-linkedin",url:"https://www.linkedin.com/in/aranke/"}],name:"Kshitij Aranke",organization:"dbt Labs",imageURL:"/img/blog/authors/kshitij-aranke.jpg",key:"kshitij_aranke"},{job_title:"Senior Developer Experience Advocate",name:"Doug Beatty",organization:"dbt Labs",imageURL:"/img/blog/authors/dbeatty.jpeg",key:"doug_beatty"}],frontMatter:{title:"To defer or to clone, that is the question",description:"In dbt v1.6, we introduce support for zero-copy cloning via the new dbt clone command. In this blog post, Kshitij will cover what clone is, how it is different from deferral, and when to use each.",slug:"to-defer-or-to-clone",image:"/img/blog/2023-10-31-to-defer-or-to-clone/preview.png",authors:["kshitij_aranke","doug_beatty"],tags:["analytics craft"],hide_table_of_contents:!1,date:"2023-10-31T00:00:00.000Z",is_featured:!0},unlisted:!1,prevItem:{title:"Why you should specify a production environment in dbt Cloud",permalink:"/blog/specify-prod-environment"},nextItem:{title:"Optimizing Materialized Views with dbt",permalink:"/blog/announcing-materialized-views"}},l={authorsImageUrls:[void 0,void 0]},c=[];function d(e){const t={a:"a",code:"code",li:"li",ol:"ol",p:"p",...(0,i.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)(t.p,{children:["Hi all, I\u2019m Kshitij, a senior software engineer on the Core team at dbt Labs.\nOne of the coolest moments of my career here thus far has been shipping the new ",(0,n.jsx)(t.code,{children:"dbt clone"})," command as part of the dbt-core v1.6 release."]}),"\n",(0,n.jsxs)(t.p,{children:["However, one of the questions I\u2019ve received most frequently is guidance around \u201cwhen\u201d to clone that goes beyond ",(0,n.jsx)(t.a,{href:"https://docs.getdbt.com/reference/commands/clone",children:"the documentation on \u201chow\u201d to clone"}),".\nIn this blog post, I\u2019ll attempt to provide this guidance by answering these FAQs:"]}),"\n",(0,n.jsxs)(t.ol,{children:["\n",(0,n.jsxs)(t.li,{children:["What is ",(0,n.jsx)(t.code,{children:"dbt clone"}),"?"]}),"\n",(0,n.jsx)(t.li,{children:"How is it different from deferral?"}),"\n",(0,n.jsx)(t.li,{children:"Should I defer or should I clone?"}),"\n"]})]})}function h(e={}){const{wrapper:t}={...(0,i.R)(),...e.components};return t?(0,n.jsx)(t,{...e,children:(0,n.jsx)(d,{...e})}):d(e)}},28453:(e,t,o)=&gt;{o.d(t,{R:()=&gt;a,x:()=&gt;s});var n=o(96540);const i={},r=n.createContext(i);function a(e){const t=n.useContext(r);return n.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function s(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:a(e.components),n.createElement(r.Provider,{value:t},e.children)}}}]);</pre></body></html>