我们正在努力寻找一种成本更低、更易于管理的方式来存储和执行查询。一种方法是每次有人查询时从60列中检索信息,另一种选择是对任何必要的列进行处理。会对成本产生巨大影响吗?
场景:我们有一个视图,它使用60列读取并进行一些计算,我们对5个度量进行选择,比如说,这5个度量本来只使用15列计算。
另一种方法是,只选择这15列并提供结果。
前者的成本会比后者高吗?会达到什么程度?
是,在多个级别上。
几种方法:
- 解析所有60列值的处理能力与20列相反
- 网络IO:更多的列意味着更多的网络IO用于将数据从云传输到客户端。因此,在这种情况下,在使用60列的情况下,大约需要2倍的IO。(当然,这取决于列数据类型、大小等(
尽管看起来不多,但每一个低效的查询都会一点一点地增加成本,而且成本会很高,尤其是如果您计划长期使用它。