ico1

网站策划设计

客户网站定制开发,设计;手机WAP网站设计制作;独立网店系统定制开发等。

ico1

数字化行销

OA办公自动化平台;CRM客户关系管理系统;企业电子邮箱;企业短信平台;CMS建站平台。

ico1

行业信息化

网站SEO搜索引擎优化,Keywords分析;SEM搜索引擎营销整体解决方案;Google Aniliticys分析。

ico1

基础互联网服务

企业邮局,集团邮;
虚拟主机;
.cn,.com,.net,.mobi,..org等域名注册;

 

#数字智能:数据技术           (2022-10-18)

 

原创:吕建伟
来源:阿朱说

(1)存储:NOSQL数据库

随着互联网的发展,互联网应用的特性催生了NOSQL。其实这些各种各样的NOSQL早在80-90年代就产生了,只不过当时需求量不大,没有引起大家的注意而已。只是因为互联网应用恰好需要它们了,它们才被人们注意到,然后高速地发展起来了。

如即时通信应用,如果消息的顺序次序错了,那话的意思就完全变了。所以,对于IM,时序数据库就起来了。

如社交网络,人和人的关系是网状结构,用关系数据库来搞存取,存储成本又高、存储结构又复杂、取的程序又需要编写的很复杂而且性能还差,还不如搞一个专门的网状数据库来做事。于是,图数据库就起来了。

你看看数据结构的书:堆、栈、队列、链表、树、散列、图...,因而产生了许多各种各样的数据库。我们企业管理软件常用的关系数据库,就是树数据结构。

不过对于企业内部管理应用来说,不太需要这些。


(2)存储:SQL数据库

互联网因为是海量数据,所以一个关系数据库无法承载那么多的海量数据。那怎么办?程序员们就发明了Sharding中间件。

现在Sharding中间件不流行了,又开始流行分布式SQL数据库,如国内的TiDB、国外的CrockRoachDB。这就不用我们再操心什么分库分表架构设计了,也不需要操心一主多从架构设计了。

对于企业内部管理应用来说,这是需要的,尤其对于做真正公有云多租户SaaS的。


(3)存储:文件系统

互联网,除了要各种各样的数据结构的数据,互联网还有大量的网页、文档、照片、音乐、视频...。这就用到了各种各样的文件系统。有的需要的是树状层层结构的文件系统,和咱们现在个人电脑用的文件系统作用差不多。但是还有的需要的就是对象存储的文件系统了,KV散列,一个Key ID对应一个文件地址,直接索引找到那个文件。

对于做协同&OA应用的,文档较多。对于企业内部管理应用来说,主要都是些人工录入的文本性结构数据,没有太多多媒体数据,所以也都不用Care。


(4)存储:数据仓库

数据仓库Data WareHouse建设是为了分析。而分析就需要多种角度互相对比着看。所以数据仓库往往按多种维度来设计。所以数据从SQL和NOSQL数据库中搞来,还得经过ETL抽取转换,也就是说:各种样的数据结构的数据,到了数据仓库,都按照维度表来存储。数据存储好,就可以使用DMX类SQL编程语言,进行多维数据计算。

这种套路都是90年代流行的套路。


(5)存储:OLAP MPP数据库

很多人嫌数据仓库需要设计维度、还得做ETL麻烦。于是大家就还想用关系数据库的思路来搞分析,但是关系数据库适合事务处理不适合分析,怎么办?所以大家就发明了OLAP MPP数据库,不需要事务保证,可以按关系数据库思想来存储数据,但必须要保证多维度查询和统计的高性能。

于是咱们看到从PostgreSQL延伸出来的Greenplum,以及大家现在流行用的俄罗斯的ClickHouse,以及咱们中国百度开源的Apache Doris。

现在搞企业内部应用的数据统计,OLAP MPP数据库这个套路,我是强力推荐的。


(6)存储:数据湖

数据湖Lake House是近五年的流行。在2003-2006这几年谷歌发表了关于大数据的三大论文,开源业界对应出了:Hadoop HDFS、Hadoop MR、Hbase。现在MR和Hbase都不怎么流行了,就剩下HDFS作为文件存储系统了。

我也不知道为啥人们把2009年发表的Hadoop HDFS又改名为数据湖了。难道就是因为Hudi、Iceberg它们给HDFS加了数据可更新特性?谁知道,跟我说说。

我个人觉得企业内部应用,使用数据湖的场景并不多,但可能会因使用计算引擎而被迫使用数据湖。


(5)可视化:报表

咱们刚才讲完各种存储技术了,接下来几个小节我给大家讲讲数据库可视化。

商业智能是啥,我过去知道,但我现在不知道是啥了。现在人们好像把商业智能特指成:报表、图表了,这不就是数据可视化么?那和商业智能有啥关系呢?况且,咱们中国企业管理软件中常说的报表,其实是数据Query/Grid展示、或者是固定格式Table,而不能称为报表Report。但是咱们中国人是不分Table表格和Report报表的,反正都有个表字,那就等同,就如同老婆饼和老婆都有老婆两字,那就等同。

不过报表里面有个特殊的报表形式,叫Cross Table,我们叫它交叉表。而且它可以多层交叉,还可以分组小计、总计,我个人觉得这就有点数据分析的意味了。


(6)可视化:图表

图表,其实有两类,一类叫Chart,一类叫Graph。

常见的饼图、柱状图、折线图、雷达图、散点图、气泡图...,都是Chart。

但是像布局图这就是Graph了,再比如MAP地图、GIS地理图,也都是Graph范畴。而Graph这个分支,现在又被人起了个流行的名字叫数字孪生了。估计数字孪生随着3D化和仿真渲染化,又要被改名为数字全真了。


(7)可视化:Cube

还有个东西,和数据可视化有关,和数据仓库有关,和数据分析也有关,但这个东西我个人观点觉得它更偏向分析,那这个东西叫Cube,可以旋转和切片、上钻和下钻。所以我个人认为要把它独立出来,不应该归到数据仓库范畴里,也不应该归到数据可视化范畴里,严格来说它属于数据分析范畴。


(8)数据查询:查询引擎

咱们上面讲了许多存储和数据库,其实偏存储引擎。其实除了存储引擎,还有查询引擎、计算引擎。甚至从查询引擎这里又分出来搜索引擎,从搜索引擎又衍生出来推荐引擎。

咱们常见的查询引擎比如说Presto,人们制作了很多数据源连接器,可以连接各种各样数据源,进行分布式查询,查询性能又快,而且查询各种数据源都是Presto一种使用操作方式,熟悉。


(9)数据查询:Full-text Index


全文检索就属于数据查询的范畴。过去我们用SQL来做全文检索,现在我们使用搜索引擎来做。不管你是文档还是网页,还是数据库记录,我们都可以用搜索引擎来统一处理。常见开源的ElasticSearch就是干这事用的。

从搜索引擎延伸出来的推荐引擎,如PredictionIO,就挺好用。


(10)数据计算:计算引擎

我过去写企业业务应用软件的时候,需要每天日结的功能,也就是说需要在零点以后进行前一天的各种业务汇总结算。所以写了不少数据库定时Job任务。有时候为了好调试、或者为了更复杂的编程,写SQL JOB也觉得不太方便,就用编程语言+SQL编程语言混合写个服务器端软件,用服务器的定时调度来触发启动执行。

而现在,计算引擎的出现就是为了代替我过去土法炼钢方式的。如批处理MR、批流处理Spark、流处理Flink都是。所以现在Spark和Flink流行也不为怪。


(11)数据计算:数据统计

我不把数据统计Statistical当做数据分析。统计就是统计,分析是拿到统计数据后再做下一步,那才是分析。所以我把统计放到了数据计算的范畴。

如果学计算机,大家一定都学过统计学这门课。当然,有的人学的简单,把概率论和统计学都合成一本书一门课简单学学了。还有的人更专业,上学学的专业就是统计学,那里面的统计学问更多。咱们常见的方法如:平均数/中位数、标准差/方差、K-S检验、W检验...,一堆常见统计方法。

我过去用的SPSS就是典型的统计工具。


(12)数据计算:数值计算

数值计算也是一门独立的课,如果有人学的是数学方向的专业,那这门课肯定必学。

数值计算也有很多基本方法,应用数值微积分的方法,以及线性代数矩阵计算、拉格朗日插值法、最小二乘法等等,就能搞许多事,如有限元分析、有限容积分析...。

我没使用过MathLab,大家有用过的说说。MathLab就是典型的数值计算工具。

 

(13)数据分析:预测

讲完数据查询、数据计算,再给大家讲讲数据分析。

数据分析其实有很多事:如推理Inference、仿真Simulation、异常检测Anomaly Detection、优化Optimization、运筹Operationalizing、预测Forecast。

我对数据分析这个领域不熟悉,我有下属在搞时间序列方面的预测time series forecasting,给大家分享了常见的时间序列预测方法,如自回归AR/向量自回归VAR、移动平均模型MA、自回归滑动平均模型ARMA、差分移动平均自回归ARIMA、季节性SARIMA、向量自回归滑动平均模型VARMA...。除了时间序列领域以外,其他方面的预测方法,我也不熟悉。

我看业界知名公司SAS,做预测工具就做的挺好的。


(14)数据分析:推理

推理这事我也不熟。我有下属在搞知识推理、因果推断。我个人感觉中国人翻译词汇的时候正好颠倒了。因果推断才应该叫因果推理,是causal inference。应该知识推理才是知识推断,用词应该是:knowledge reasoning。

除了知识推断、因果推理,我也不知道其他的推理。

因果推理,Uber开源的CausalML就挺好用。


(15)数据分析:异常检测

在数据分析领域,异常检测指的是异常检测的方法,至于说你用异常检测的方法去真正检测你业务中的异常,那是更上层的应用的事了。

异常检测也是一堆常见方法:如基于分布方法的3Sigma、Z-score、Boxplot,基于距离的KNN,基于密度的LOF、COF、SOS,基于聚类的DBSCAN,基于分类的One-Class SVM,基于树的iForest,基于降维的PCA、AutoEncoder,基于预测方法的ARIMA...。


(16)数据分析:运筹

其实像京东的仓储物流规划、美团外卖骑手的调度、滴滴出租车的调度等等,都是运筹学的范畴。

我一个下属今年花了大半年时间给大家分享运筹学。按说这个专业是中国企业非常需要的,但是很可惜,市面上连一本好书都没有。

业界知名公司SAS,做运筹工具软件也做的不错。


(17)数据挖掘与机器学习

我过去是学了一堆数据挖掘的方法,如分类、聚类、K近邻、决策树、随机森林、关联规则、线性回归、遗传算法、贝叶斯、马尔科夫链、支持向量机...。这些方法现在又被称为机器学习。为啥改名,我也不知道。谁知道,也跟我说说。

另外,还有两个词:洞察InSight、决策Decision,这两个词在商业用语中常见,但我却见不到洞察的常见方法、决策的常见方法,更看不到擅长做洞察或做决策的的工具软件。

所以,应该就没有商业决策软件这个东西,应该是人们搞的营销噱头,打开来,应该是数据可视化、数据查询、数据计算、数据分析、数据挖掘。


(18)人工智能与深度学习

现在人们说人工智能包含机器学习,而机器学习包含深度学习。而我个人观点:人工智能和机器学习深度学习,是关联关系,而不是包含关系。

计算机的发明虽然是因为弹道计算需要而被迫发明,但是计算机的先驱三巨头:图灵(图灵测试)、香农(信息论)、冯诺依曼(存储计算架构),梦想的计算机是真正的电脑(电子脑子)。所以图灵提出了图灵测试、香农发明了自动寻径老鼠、冯诺依曼写出了最经典的《博弈论》。

而三巨头希望电子脑子能真正像人脑一样:能思考、能编写创作。计算机真正能像人一样:能看(眼)、能听说(嘴)、能走路能拿东西(手脚)。所以人工智能的经典范畴常常是:视觉、语音、自然语言处理、机器人。当然,机器人现在也被分为:工业机器人-商用机器人-家用机器人,甚至衍生到无人机-智能汽车乃至无人驾驶汽车。

咱们中国视觉四小龙搞的人脸识别就是视觉处理范畴,不过现在流行的不再是识别了,而是生成了,现在全世界热门都在搞视觉AI生成,都希望实现70年前计算机先驱们的梦想:创作,至少是音频视频创作。

咱们中国的语音AI公司典型的就是科大讯飞,这几年在语音识别、语音转录、语音合成,由于海量大数据的出现和人工校正标注而进化颇多。不过天然拥有海量视觉语音数据的微信、抖音,我看他们的语音和视觉,进展更飞速。

而文本-自然语言处理,这几年出了Transformer-BERT、GPT-3,就无声无息了。想了想,还是海量大数据的问题。短信-IM、微博-朋友圈、抖音,这是咱们中国人民常见的手机应用,养成了少于100字少于3分钟的心理和习惯。看复杂的,看不了了。

现在玩人工智能,都在玩暴力美学了:看谁拥有海量数据,看谁拥有更多人工来做专业数据标注,看谁拥有海量钱来进行大算力训练,看谁拥有常备团队进行模型持续调优。

至于机器学习算法、深度学习算法,已经停滞在了上世纪80-90年代了。

 
 
  • 新传科技-万网邮品牌授权中心|企业邮箱15天试用
  • USHOP18网店系统-新传科技
  • oa协同办公平台-新传科技