【数据蒋堂】第44期:谈谈临时性计算

简介: 临时性计算,顾名思义,是指临时发生的一些计算需求。这种计算在日常数据处理中很常见,我们举一些例子: 应对业务部门的取数需求:比如销售部门想获得进行了某项促销活动前后的销售情况变化信息;数据挖掘算法前的清理准备:将来自各个业务系统的数据(甚至一些企业外部的数据)整理成规则一致的二维表,这些动作常常.

临时性计算,顾名思义,是指临时发生的一些计算需求。这种计算在日常数据处理中很常见,我们举一些例子:

  • 应对业务部门的取数需求比如销售部门想获得进行了某项促销活动前后的销售情况变化信息;
  • 数据挖掘算法前的清理准备将来自各个业务系统的数据(甚至一些企业外部的数据)整理成规则一致的二维表,这些动作常常比挖掘本身耗时还长得多;
  • 有业务规则的测试数据生成测试数据不能完全随机生成,必须满足一定的业务规则以及分布比例;
  • 大数据计算的优化方案实验性能优化是个迭代的过程,需要不断尝试各种计算方案;
  • 非日常(外部)数据的清洗和入库比如有些下级部门提供的Excel表格要写入数据库再进行统计分析;

可以看出,临时性计算具体相当的普遍性。那么,我们是用什么方法来处理这种具有普遍性的计算需求呢?

其实也就是编程序了,常用来对付临时性计算的编程方案有三种:以Java为代表的高级语言、以SQL为代表的数据库语言、以Python为代表的脚本语言。

然后,第二个问题,我们怎么评估这些方法的优劣和适应性呢?

为了回答这个问题,我们要先分析临时性计算的需求特征:

  • 需求随意,不可预测这是临时性计算的基本特征,计算需求时临时产生的,不能事先预测到而做进数据分析系统中,只能临时面对;
  • 经常只做一次,缺乏直接可复用性这也是临时性的特征,做完就完了,没有必要刻意地反复优化,也没必要也不可能事先为计算做准备工作;
  • 大量涉及多样性的原始外部数据很多计算的涉及数据并不在数据库中,比如收集上来的Excel表格,从网上爬下来的文本等,这些数据还常常以原始形式出现;
  • 常常涉及多步骤的过程计算本来分析处理类的运算就会步骤比较多,而数据源的杂乱更会加剧这一现象;
  • 必要时可能转变成日常计算也有些临时性计算可能重复发生,这时就有必要转化成日常计算放进数据分析系统中;
  • 以结构化数据计算为主这一点并非临时性计算特有的,其实数据分析和处理类的计算都是主要面对结构化或即将被结构化的数据。 

从需求的特征出发,我们就可以提出应对临时性计算的方案的技术要求了:

  • 开发快捷:临时性计算随时发生,需要快速解决,所以要注重开发效率,相对来讲,对于运算性能要求会低一些;
  • 人员要求低:临时性计算发生场景很普遍,那么应当尽量降低实施开发人员的要求,而不是总是需要专业的程序员才能做;
  • 环境简单:经常只做一次的事情,要让环境搭建足够简单,如果准备计算环境花费时间超过实施计算本身了,那就得不偿失了;
  • 数据适应面广:计算方案要能方便地面对各种各样的数据源,不要总是需要专门的接口和技术体系,特别地要能处理较大的数据量;
  • 易于集成:要转变成日常计算时,临时写出来的代码最好能够只要简单修改甚至不加修改就能集成到数据分析系统中去。

现在我们按这套技术要求来考查前面提到的三种技术方案,并给评个分(前四项满分10,第五项重要程度低满分5)

1. 以Java为代表的高级语言

c64c38cfe4ec824acd82af50f556cacc7bdc3ed1

2. 以SQL为代表的数据库语言总分:13分

388fef002403125801ec84806bad34e7903a0818
3. 以Python为代表的脚本语言
总分:24分

ea6cecb5953ae607ad4c473aacf2eb55fe31b52f
算下来还是脚本语言相对最好。总分:
30分


原文发布时间为:2018-02-27

本文作者:蒋步星

本文来自云栖社区合作伙伴“数据蒋堂”,了解相关信息可以关注“数据蒋堂”微信公众号

相关文章
|
11月前
|
消息中间件 缓存 NoSQL
技术派中的缓存一致性解决方案
技术派中的缓存一致性解决方案
|
存储 小程序 编译器
【C/C++】庖丁解牛 深究数据在内存中如何存储
【C/C++】庖丁解牛 深究数据在内存中如何存储
141 0
|
数据采集 机器学习/深度学习 数据挖掘
谈谈数据交易中的几个重点问题
数据是具有特殊属性的资产,数据既然要流通和交易,就要把数据进行产品化,形成不同的数据产品。
谈谈数据交易中的几个重点问题
|
机器学习/深度学习 人工智能 算法
谈谈从分析到行动看数据驱动和数据信息的区别
近年来,“数据驱动”这个术语已经被广泛使用,很多人谈论要成为一个数据驱动的组织。
谈谈从分析到行动看数据驱动和数据信息的区别
|
消息中间件 分布式计算 安全
超200万?约翰斯·霍普金大学数据错误!——谈谈如何保证实时计算数据准确性
超200万?约翰斯·霍普金大学数据错误!——谈谈如何保证实时计算数据准确性
621 0
超200万?约翰斯·霍普金大学数据错误!——谈谈如何保证实时计算数据准确性
|
缓存 数据库
缓存架构设计细节二三事
本文主要讨论这么几个问题:“缓存与数据库”需求缘起、“淘汰缓存”还是“更新缓存”、缓存和数据库的操作时序、缓存和数据库架构简析。
2270 0
|
大数据 索引
带你读《数据资产》第二章数据资产的相关概念2.1相关概念状况
带你读《数据资产》第二章数据资产的相关概念2.1相关概念状况
|
存储 自动驾驶 大数据
带你读《数据资产》第一章绪论1.1界定数据(一)
《数据资产》第一章绪论1.1界定数据(一)
|
存储 传感器 大数据
带你读《数据资产》第一章绪论1.2数据资源
《数据资产》第一章绪论1.2数据资源
|
存储 数据采集 安全

热门文章

最新文章