上一篇文章给大家分享了一些关于维度表和事实表的内容,今天给大家带来的是关于维度表技术的一些内容,希望对大家有所帮助。
一、维度表结构
1.每个维度表都包含单一的主键列。
3.维度表通常比较宽,是扁平型非规范表,包含大量的低粒度的文本属性。
二、常见维度表技术
1.维度代理键
DW/BI需要申明对所有的维度的主键的空置,无法采用自然键或者附加日期的自然键。最好是建立无语意的整型主键。
2.自然键、持久键、超自然键
自然键,例如员工编号
持久键,有时也被叫做超自然持久键。数据仓库为员工编号创建一个单一键,这个单一键保持永久性不会发生变化。
最后的持久键应该独立于原始的业务过程。
3.下钻
商业分析的基本方法:
上卷(roll-up):上卷是沿着维的层次向上聚集汇总数据。 例如,对产品销售数据,沿着时间维上卷,可以求出所有产品在所有地区每月 (或季度或年或全部)的销售额。
下探(drill-down):下探是上卷的逆操作,它是沿着维的层次向下,查看更详细的数据。
3.空值属性
推荐采用标识性标识空值,例如unknown。因为不同数据库对空值处理不同。
4.日历日期维度
用YYYYMMdd更容易划分。
5.维度子集
一些需求是不需要最细节的数据的,那么此时事实数据需要关联特定的维度,这些特定维度包含在从细节维度选择的行中,因此就叫做维度子集。
细节维度和维度子集具有相同的属性或内容,具有一致性。
(1)建立包含属性子集的子维度
例如需要上钻到子维度。
(2)建立包含行子集的子维度
在两个维度处于同一细节粒度的情况下,如果其中一个仅仅是行的子集,那么就会产生另外一种一致性维度构造子集。
在某些版本的Hive中,对ORC表使用overwrite会出错,为了保持兼用性,通常会使用truncate 。
(3)使用视图实现维度子集
这种方式存在着两个主要问题:一是新创建的子维度是物理表,因此需要额外的存储空间;二是存在数据不一致的潜在风险。
通常的解决方法是在基本维度上建立视图生成子维度。
优点:
a.可以简单实现,不需要修改原来脚本的逻辑;
b.因为视图不真正存储数据,因此不会占用存储空间;
c.将数据不一致的可能消除掉。
缺点:
a.如果基本维度和子维度表数据量相差悬殊的话,性能比物理表差很多;
b.如果定义视图查询,并且视图很多,可能对元数据存储系统造成压力,严重影响查询性能。
6.层次维度
通常我们使用grouping__id 二进制序列,rollup,collect_set,concat_ws等函数。
层次关系方法:固定深度层次进行分组和钻取查询,递归层次结构数据装载、展开与平面化,多路径层次和参差不齐处理
7.退化维度
除了业务主键外没有其他内容的维度表。
8.杂项维度
包含数据具有很少可能值的维度。有时与其为每个标志或属性定义不同的维度,不如建立单独的讲不同维度合并到一起的杂项维度。
9.维度合并
如果几个相关维度的基数都很小,或者具有多个公共属性时,可以考虑合并。
10.分段维度
包含连续的分段度量值,通常用作客户维度的行为标记时间序列,分析客户行为。
数据分析咨询请扫描二维码
寻找数据分析之路 学习路径选择: 数据分析领域广泛,包括统计学、编程(如Python、SQL)、数据可视化等。建议从基础概念开始 ...
2024-12-02数据分析领域是一个广阔而令人兴奋的领域,涉及众多强大工具和软件。掌握这些工具不仅可以提升我们的工作效率,还能让数据讲述更 ...
2024-12-02在当今信息爆炸的时代,数据成为引领业务决策和创新的关键。数据分析作为一项关键技能,已经成为各行业中备受追捧的职业。本文将 ...
2024-12-02在当今竞争激烈的职场环境中,掌握数据分析技能已然成为职业发展中不可或缺的一环。无论你是刚入行的菜鸟还是希望获得更多机会的 ...
2024-12-02重要性和影响 数据分析技能对职业发展具有显著影响。不仅在就业市场竞争激烈,个人职业路径上也起着关键作用。数据分析需求广泛 ...
2024-12-02在追求数据分析师梦想的道路上,最常问及的问题之一是:“最佳学习时间究竟是多久?”这个问题承载着我们对知识获取和实践运用的 ...
2024-12-02在当今信息爆炸的时代,数据早已成为企业决策和发展的核心。掌握数据分析技能不仅可以让你更好地理解数据背后的故事,还可以在职 ...
2024-12-02数学课程对数据分析师的重要性 数据分析师的角色在当今信息时代变得至关重要。他们扮演着解读数据、发现趋势以及为业务决策提供 ...
2024-12-02作为数据分析领域的探险家,我们身处一个充满机遇与挑战的时代。数据分析师不仅面临着广阔的职业前景,还要应对技术进步、人才竞 ...
2024-12-02就业前景与挑战 数据分析师在当前和未来的就业市场中面临着广阔的机遇和挑战。随着大数据时代的到来,企业对数据分析师的需求不 ...
2024-12-02作为数据分析师,掌握数据可视化技术是至关重要的。通过有效的数据呈现和分析,我们能够从数据中提炼出有意义的见解,为业务决策 ...
2024-12-02在今天的数字化时代,数据扮演着至关重要的角色。对于数据分析师而言,熟练掌握各种数据可视化技术至关重要。通过恰到好处的数据 ...
2024-12-02在追求数据分析技能提升的漫漫征途上,制定科学合理的学习计划和精准的时间管理至关重要。本文将为您呈现一份系统且实用的数据分 ...
2024-12-02在当今信息爆炸的时代,数据分析已成为许多行业中不可或缺的一环。然而,要想在这个领域脱颖而出,除了熟练掌握技术工具外,科 ...
2024-12-02在当今数字化时代,数据分析已成为各行各业中至关重要的一环。掌握数据分析技能不仅可以拓宽个人职业发展道路,还能为企业决策提 ...
2024-12-02在追求数据分析职业发展的道路上,合适的学习路径和认证至关重要。从基础到高级,多样化的课程和证书为不同层次的学习者提供了丰 ...
2024-12-02在追求数据分析领域的深度和广度时,建立坚实的基础至关重要。这些基础不仅承载着理解数据的能力,还支撑着对数据进行精确处理和 ...
2024-12-02数据分析基础知识 学习数据分析是一项渐进的过程,从掌握基础知识开始可以帮助我们更好地理解数据的本质以及处理方法。以下是学 ...
2024-12-02在当今信息爆炸的时代,数据分析已成为各行各业提升效率、发现洞见的重要工具。不过,对于初学者来说,学习数据分析可能显得十分 ...
2024-12-02明确学习目标与需求 对于新手,选择入门级课程掌握基础概念和工具。 深入学习统计学、机器学习等高级主题则需要进阶或专业化课 ...
2024-12-02