您现在的位置: 首页 > 网站导航收录 > 百科知识百科知识
(idl是什么意思)-lidl是什么意思
数据,业务,架构(idl是什么意思)-lidl是什么意思
发布时间:2020-12-06加入收藏来源:互联网点击:
严选数仓分层模型将数据分为三层,ods,dw和dm层。其中ods是操作数据层,保留最原始的数据;dw包含dwd和dws层,这两层共同组成中间层;dm是应用层,基于dw层做汇总加工,满足各产品、分析师和业务方的需求。
5. 网易云音乐数仓分层架构四、分享作者数仓分层架构不多说,这里不同之处在于增加了stg缓冲层,用于存储每天的增量数据和变更数据,配合ODS对数据进行沉淀,减少了抽取的复杂,比如进行增量数据的合并操作等。
五、个人对如何设计数仓分层架构的想法(数仓到底分几层)数据仓库分层没有绝对的规范,适合的就是最好的,至于分几层,建议按照目前的业务和建设现状,进行合理解构和分层设计,一般刚开始做,建议3、4层。规划1-1.5年的架构,然后不断的建设、优化、再优化。不断逼近满足所有需求。
下面针对一些场景说下分层的想法:
场景一:时间紧任务重,急于看结果这种场景,直接连各个业务数据库,抽取数据到大数据平台,根据需求组合join或者汇总count、sum就行,就不要不分层了,作者现在公司服务的数仓项目前身就是这样,将各个业务系统数据抽取到oracle,你看都没有大数据平台就做了。
场景二:公司业务简单,且相对比较固定,数据来源不多,结构也很清晰,需求也不多
那么还弄啥来,直接使用通用的数仓架构就行,ODS起到解耦业务数据库+异构数据源的问题,DWD解决数据脏乱差的问题,DWS服用的指标计算,ADS直接面向前台业务需求。
场景三:公司业务复杂,业务变化较快那就多一层DWT层做汇总,多一层解耦,业务变化的时候,我们只改DWS层就好了,最多穿透到DWT层。业务变化的时候调整一下,工作量也不会太大,最重要的是能保证底层结构的稳定和数据分析的可持续。
场景四:公司业务较为复杂,集团公司,下辖多个部门bu事业线,bu间业务内容交叉不大
可以在数仓通用分层架构上,增加一层DM层,也就是数据集市层,各个数据集市层,单独供数,甚至有单独的计算资源,这样可以避免因为计算任务代码混在一起、数据权限拆分等问题带来的数据变更成本。
六、一个好的数仓模型分层,应该具备的要素一个好的数仓模型分层,应该具备的要素是数据模型可复用,完善且规范的。
从完善度上来讲,主要衡量DWD层和汇总层两块的完善度,DWD层完善度,主要是希望DWD等尽可能被汇总层引用,ODS层被除了DWD层外的尽可能少的引用,最好是没有。
从复用度上来讲,我们希望80%需求由20%的表来支持。直接点讲,就是大部分(80%以上)的需求,都用DWS的表来支持。
从规范度上来讲,主要从表名、字段名来看,一个规范的表名应该包括层级、主题域、分区规则,抽取类型等信息。字段规范应该是和词根一致,同字段同名等,具体这块可以看作者写得《数仓命名规范篇》
七、总结数据仓库分层没有绝对的规范,适合的就是最好的,数据仓库分层的核心逻辑是解耦,在有限时间、资源等条件下满足业务需求,同时又要兼顾业务的快速变化。所以我们作为数据架构师,需要兼顾业务的复杂变化,以及开发的复杂度和可维护,在两者之间做一个平衡和取舍,选择合适的分层架构。
另外分层架构是需要不断的优化调整的,不能超前太多,也不能脱离业务。按照Inmon和Kimball吵了十几年的经验上看,建议架构设计时,按超越当前实际情况1~1.5年的设计是比较合适的。
本文由 @白程序员的自习室 原创发布于人人都是产品经理,未经作者许可,禁止转载。
题图来自Pexels,基于CC0协议。
本文到此结束,希望对大家有所帮助呢。
上一篇:大飞快艇 偷渡大飞快艇
下一篇:返回列表
相关链接 |
||
网友回复(共有 0 条回复) |