乐趣区

关于云计算:维度建模实践一例-一-维度还是事实

1. 问题概述

最近在做工业我的项目模型设计评审的时候,遇到了一个设计问题,有点纠结。和其余共事替换了意见,思考了过后,也想跟大家分享一下。

问题:“老本”和“单价”是一个销售实体的事实,还是产品维度的属性?

对于这个问题,最开始是在探讨成本计算的时候发现的。与教科书中批发场景不一样的是,工业上某个产品的老本是要计算出来的。而《维度建模权威指南》书中的老本是事实表的一个事实。如下图所示:

在另外一个例子中,单价、老本都是销售实体中的事实,如下图所示:

事实局部翻译如下:

Sales Quantity — 销售数量
Regular Unit Price — 惯例单价
Discount Unit Price — 折扣单价
Net Unit Price — 净单价
Extended Discount Dollar Amount — (扩大 - 总) 折扣金额
Extended Sales Dollar Amount — (扩大 - 总) 销售金额
Extended Cost Dollar Amount — (扩大 - 总) 老本金额
Extended Gross Dollar Amount — (扩大 - 总) 毛利润金额

如上图所示,个别咱们批发场景中商品的单价是绝对固定的,零售商会有一些折扣(线上商家的折扣应该会更简单),所以,单价、老本是固定的利润是与订单相干的。咱们能够从上述事实表中取得一些事实:

① 销售数量、销售金额、老本金额、毛利润金额都是可加事实。
② 单价是一个不可加事实。在批发的销售剖析场景,单价与老本是作为销售实体的事实。而在我当初遇到的场景,咱们遇到的第一个场景是剖析产品的老本与价格。

2. 老本与单价的实质

抛开剖析场景,我思考了老本和单价的实质,在销售这个事实中单价和老本实质上是产品的属性。批发的场景中,销售的单价是商品的单价,销售的老本是是商品的老本。所以,单价和老本就是商品的属性。

然而为什么我在《维度建模权威指南》的书中看到的产品维度都没有这两个属性呢?我还特地去搜了一下内网的 dataworks 数据地图上的产品、商品的维度表,发现的确有很多维度表都没有单价和老本两个属性,然而也有一些商品维度表是有这两个属性的。

为什么本人会感觉这两个表中的事实并不是销售这个事实表中的事实呢?思考过后我终于意识到,我疏忽了剖析的需要。不足业务认知的我意识不到商品的老本和单价的变动,我谬误的疏忽了这两个事实的剖析需要。然而作为商品生产和经销商,价格和老本的变动是时时刻刻的。所以,就有剖析单价和老本这两个事实的需要。

这就是为什么大部分场景,商品维度表中都没有单价和老本。因为这两个事实要么在“销售事实表”中,要么在其余“商品剖析事实表”中。而这些事实表中的商品的维度就不会有单价和老本了。

3. 事实表的设计

通过下面的思考,我意识到了一个问题:商品的单价、老本自身就是一个事实。只是老本是通过一系列的简单计算取得的一个事实,其自身是依据原材料的老本、制作老本、运输成本等多种因素计算而来。而且价格自身又与老本有肯定的强关联性。

咱们通过在销售这个业务过程中去剖析单价和老本这两个事实,阐明销售这个业务过程中剖析人员会关注客单的商品和老本。而且,在销售这个业务过程对单价和老本的剖析次要是关乎销售这个过程,这个业务过程可能是一个企业业务剖析中最外围和要害的事实。

咱们其实能够依据对产品自身的剖析需要构建一个商品定价业务过程的事实表,这个业务过程比商品销售更简略。而且对于我参加的这个我的项目来的客户来说,这是一家第一产业工业企业,其生产规模十分大。订单中商品的品种绝对批发这种销售场景,其实是非常少且绝对固定的,其老本和单价是每天进行一次计算和定价。

所以,我在思考过后,倡议还是保留一个商品定价的事实,这是销售事实前的业务过程。在商品定价事实中有商品的成本计算相干的事实、单价等。另外在销售事实中,依然会保留老本和单价这两个事实。对这个设计的解释,我认为销售业务过程中的单价和老本自身就是销售业务过程中的事实,然而谋求其起源是产品定价中的事实。

4. 总结

谈及整个过程,我认为最外围的是找到咱们的业务需要是什么。例如这个我的项目的场景中,对商品的老本和定价的剖析自身是与企业生产资料相干的。而在这个企业的销售场景,在这里去剖析产品的老本和定价其实是有点多余的,销售业务过程外围剖析的还是销售自身。因为自身对一个产品品种不多,每天一个老本和定价的状况.

我在最开始之所以被困扰,就是我疏忽了剖析的实质,谬误的对待产品的定价这个事实,选择性的熟视无睹。然而当我思考过后,从新对待剖析的需要,我就不再有这个疑难。

通过这件事,我认为在做模型设计的时候,肯定要尽可能的去参考一些前人对这些模型的设计。因为咱们在初步进入一个行业的时候,对这些新行业的业务的了解都是有欠缺的,都是逐渐去学习了解的。参考这些成熟模型,就会让你有了一个参照物,防止走入误区。再就是肯定不要放弃思考,如果我一开始就以书中的参考模型为原型去设计,或者就是把老本和单价放到产品维度中,我就不会对这个设计有更深的了解。

最初感激与我一起探讨这个问题的实质的共事们!谢谢大家!

原文链接

本文为阿里云原创内容,未经容许不得转载。

退出移动版