开发者社区> 问答> 正文

Dataphin中商品作为维表跟我们之前的经验一致, 但是商品名称,交易价格,新旧程度只是属性,

Dataphin中商品作为维表跟我们之前的经验一致, 但是商品名称,交易价格,新旧程度只是属性, 全都要建为虚拟/枚举对象, 再建为维表, 进行维度关联, 就是为了在DWS层计算逻辑中group by 后面多加几个字段, 感觉很麻烦诶是不是有更简单的方法呢?

展开
收起
提个问题! 2023-07-24 15:09:58 77 0
6 条回答
写回答
取消 提交回答
  • 根据您的描述,如果商品名称、交易价格和新旧程度只是属性,您可以考虑将它们作为事实表的字段,而不是建立虚拟/枚举对象和维表进行关联。这样,在DWS层的计算逻辑中,您可以直接使用这些字段进行group by操作,而无需通过额外的关联操作。

    如果您需要更复杂的逻辑处理或者扩展属性,可以考虑使用维表,并在维表中添加相关字段,然后在DWS层进行关联操作。这样可以更好地管理和维护数据,并且在需要时可以方便地进行扩展。

    最终的选择取决于您的业务需求和数据模型,根据具体情况选择最合适的方案。

    2023-07-27 22:37:27
    赞同 展开评论 打赏
  • 北京阿里云ACE会长

    在 Dataphin 中,为了在 DWS 层计算逻辑中使用商品名称、交易价格和新旧程度等属性,可以将它们建立为虚拟/枚举对象,并建立对应的维度表,然后与事实表进行关联。这种做法虽然有些繁琐,但可以保证数据模型的规范性和可扩展性。

    如果觉得这种做法过于复杂,也可以考虑将商品属性直接加入到事实表中,作为冗余字段进行处理。这种做法虽然会增加数据冗余,但可以简化数据模型和查询逻辑,同时也可以提高查询性能。在实际应用中,可以根据具体的业务需求和数据规模,选择适合的数据建模方式。

    2023-07-27 11:08:04
    赞同 展开评论 打赏
  • 云端行者觅知音, 技术前沿我独行。 前言探索无边界, 阿里风光引我情。

    如果您觉得在Dataphin中为每个属性都建立虚拟/枚举对象并创建维表进行维度关联太麻烦,确实有一种更简单的方法可以实现您的需求。

    您可以考虑使用冗余维度属性的方式,将商品名称、交易价格和新旧程度直接冗余到事实表中,而无需创建额外的维表。这样可以简化数据模型和查询操作,避免频繁的维度关联。

    在DWS层的计算逻辑中,您可以直接使用冗余的维度属性进行group by操作,而无需进行额外的维度关联。这样可以更方便地进行聚合计算和分析。

    需要注意的是,使用冗余维度属性的方式可能会增加数据冗余和维护成本。在使用冗余维度属性时,需要确保数据的一致性和更新机制,以避免数据不一致的问题。

    如果您觉得在Dataphin中创建虚拟/枚举对象并建立维表太麻烦,可以考虑使用冗余维度属性的方式来简化数据模型和查询操作。这样可以更方便地进行聚合计算和分析。但需要注意数据冗余和维护成本的管理。

    2023-07-25 18:59:28
    赞同 展开评论 打赏
  • 在阿里云Dataphin中,如果您需要在DWS层中进行商品维度的计算和分析,可以将商品名称、交易价格和新旧程度等属性建立为虚拟/枚举对象,再建立为维表进行维度关联。这样做的目的是为了方便在DWS层中进行复杂的分析和计算,例如按照商品名称和交易价格进行分组统计等等。

    如果您觉得这种方法比较麻烦,可以考虑使用一些ETL工具或者数据仓库自动化构建工具来简化数据处理流程。这些工具可以帮助您自动地将数据从数据源中提取、转换和加载到数据仓库中,并进行一些预处理和清洗操作。例如,您可以使用阿里云DataWorks来进行数据集成和ETL处理,使用DataV来进行数据可视化和分析。

    另外,如果您的数据量比较小,也可以考虑直接在OLAP层中进行计算和分析,避免在DWS层中进行复杂的处理。OLAP层可以根据业务需求对数据进行聚合和计算,并提供多维分析和数据透视等功能,方便您进行复杂的业务分析和决策支持。

    2023-07-24 23:51:26
    赞同 展开评论 打赏
  • 在Dataphin中,对于一些属性字段(如商品名称、交易价格、新旧程度),您可以考虑使用虚拟/枚举对象来简化维度建模的过程。通过将这些属性字段定义为虚拟/枚举对象,并创建相应的维表进行维度关联,可以在DWS层的计算逻辑中更方便地使用这些字段。

    然而,如果您认为在建模过程中创建虚拟/枚举对象并创建额外的维表比较繁琐,也可以考虑以下两种简化方法:

    1. 冗余字段:作为替代方法,您可以直接在事实表中添加冗余字段,例如商品名称、交易价格、新旧程度等。这样可以避免创建虚拟/枚举对象和维表,但需要权衡数据冗余和存储成本之间的平衡。

    2. 使用计算列:Dataphin支持在DWS层的计算列中定义逻辑表达式,无需创建额外的维表或字段。您可以使用计算列来衍生所需的属性值,并在查询时使用这些计算列。这种方式不需要额外的维度关联,但需要确保计算列的表达式正确无误。

    请注意,选择哪种方法取决于您的具体业务需求、数据模型设计和性能要求。您可以根据实际情况选择最适合的方法来简化建模过程。如果您对具体方法有任何疑问或需要更多指导,请咨询Dataphin团队或参考Dataphin平台文档,以获取更准确和详细的解决方案。

    2023-07-24 15:47:11
    赞同 展开评论 打赏
  • 目前是这样的,建议根据维度一一创建维表,配置统计粒度哈,此回答整理自钉群“Dataphin公共云答疑群”

    2023-07-24 15:10:59
    赞同 展开评论 打赏
滑动查看更多
来源圈子
更多
收录在圈子:
问答排行榜
最热
最新

相关电子书

更多
构建企业级好数据(Dataphin智能数据建设与治理白皮书) 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载