传统ETL ,Mapreduce,Hive,Spark等处理数据文件的应用场景都有哪些?
收起传统的ETL在数据量不大比如<20G的数据文件处理,他的优势在于他是可视化的步骤比较简单,上手比较快
Mapreduce对于数据量比较大的,处理数据业务逻辑变化不是很大,因为每次用java或者python等都得反复调试,比如淘宝底层日志解析,日志的格式基本都不会有太大的变化,写一次Mapreduce就稳定跑了
Hive采用类sql的方式,门槛比较低,只要会写sql就可以了,缺点是需要优化的话,你得对hive底层运行原理了解一些,优化的门槛比较高
Spark 基于内存计算是sql,虽说是sql但是还要写代码,所以没有hive方便,但是速度某些场景会比hive快,调优方面也是需要对spark底层运行原理有所了解