大数据基础组件初步了解

一、 Hadoop

  1. HDFS:分布式文件存储系统,大数据环境的基石
  2. MapReduce(MR):基于磁盘计算,主要用于大量数据的批处理计算
  3. Spark(RDD):基于内存计算
    SparkSQL:一般情况都是基于离线数据处理
    Spark Streaming:一般情况是基于微批(实时)处理
  4. Flink 流式计算引擎
    Flink SQL:类似SparkSQL,可以写SQL,更快的使用批处理操作
    Flink Streaming:流式数据,(开发思路)生产库产生数据一部分发送至kafka、一部分落库,后续Filnk对接kafka中的Topic ,实时对kafka中数据进行去重、清洗、汇总、计算,维度可以存放至redis中。。。

二、 消息队列

  1. Kafka:可理解生产者和消费者之间的数据传递,大数据量发送传递及消费,主要功能点是削峰填谷
  2. MQ:主要运用于事务性消息队列,但是对于数据量来看,量级很小

三、 数据库(关系型、非关系型)

  1. Hive:hive只是有个管理工具,不存储任何数据,将hdfs中的文件映射成表的形式进行数据处理,主要面向于(离线)数据仓库使用,内部执行引擎(MapReduce/Spark/Tez),也可以开发一下自定义的UTF函数。
  2. Impala:号称是当前大数据领域最快的查询sql工具,占用内存比较多,我们在工作中都是使用Hive+Impala做离线数仓。(即席查询)
  3. Presto:一个分布式SQL查询引擎,整体性能还是可以的。(即席查询)
  4. HBases: 典型的NoSQL、分布式存储的数据库,速度够快。
  5. Kudu:在更新更及时的基础上实现更快的数据分析,个人感觉是在大量数据中做到更快的查询速度。
  6. Kylin:分布式分析引擎,我们主要用于做OLAP多维数据立方体数据,就类似与Cognos中的动态CUBE。
  7. ClickHouse:(不基于Hadoop集群,可独立安装)列式数据库,主要用于实时数据仓库,这个也是基于内存的,特点就是快。单表查询块,多表关联是弊端。(即席查询)
  8. Doris:一个基于 MPP 架构的高性能、实时的分析型数据库,尽量使用星型模型,单表不要超过100列,(即席查询)

四、 ETL工具

  1. Sqoop:主要是用于关系型数据与分布式数据库的数据抽取任务,类似MYSQL数据抽取至HDFS/Hive。sqoop底层运用的计算引擎也是MR,只不顾没有用到Reduce而已
  2. SeaTunnel(WaterDrop):大数据集群数据同步工具,主要引擎有spark和flink,Kakfa->PostgreSQL、ClinkHouse->PostgreSQL、MongoDB->PostgreSQL,PostgreSQL->HDFS等等。我就使用了这么多,其他的功能还需小伙伴继续钻研
  3. DataX:阿里开发,可多线程抽取数据,但是会有一些数据丢失问题,可能是生产库数据有脏数据问题,有待考证。
  4. FlinkX: 袋鼠云开源,有待考证。

五、 数据可视化

  1. DataV:阿里开发
  2. Datart(Davinci):宜信开发,可支持中国式复杂报表开发,也支持图表等二三十种图表样式支持,可自定义开发图表组件
  3. Superset:百度开源,现已贡献给Apache 开源基金会,图表绚丽

六、 任务调度工具

  1. Azkaban:一个脚本任务调度工具,一般用于ETL脚本执行调度,需要单独配置调度文件。在文件中需要配置依赖脚本等信息,全程在WEB端开发,在查看调度的时候有点费眼睛,DAG图不可以缩得太小或太大
  2. DolphinScheduler:俗称小海豚,国人开发的脚本调度工具,但是每次每一个脚本都得需要上传到服务器上,如果该工具能够支持git自动同步脚本文件的话,将是一个很好的脚本工具,开发及迁移都是很好使用的
  3. Kettle:传统的ETL工具+调度工具,有两大特性:job和转换,win和linux都可以兼容,很好使的一个ETL处理工具

持续更新中。。。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值