• 1.大数据集群部署在服务器上
  • 2.除大数据集群组件之外的服务是部署在docker容器里面的(集群和trino是在物理机上)
  • 3.目前不支持大数据集群容器化部署(即大数据集群暂时不能部署在docker容器内)
    • 说明:理论上是可以把大数据集群部署在docker容器内的,难度较大,需要java后端同事评估可行性和时间
  • 专业词汇说明:
    • 1.虚拟机和服务器:
      • 目的:虚拟机和服务器的存在均是为了软件开发人员应用linux系统
      • 虚拟机:在电脑当中划分出一部分资源生成的软件编程环境
      • 服务器:一台专门用于软件开发的电脑
      • 区别:应用场景不同。虚拟机通常是软件开发人员在自己电脑上做测试使用,而服务器是应用于企业级项目的开发项目使用
    • 2.docker容器
      • 容器为应用程序提供了隔离的运行空间:每个容器内都包含一个独享的完整用户环境空间,并且一个容器内的变动不会影响其他容器的运行环境
      • 容器和虚拟机的区别:
        • 容器和虚拟机都是从电脑中划分出一部分独立的区域,但是,虚拟机无法隔离这片区域内的不同程序,而容器可以
        • 容器是按程序进行单独隔离出一片片的空间
    • 大数据集群
      • 集群的概念
        • 为什么要用大数据集群:
          • 1.分布式
            • 公司做大了,很容易产生海量数据,典型的代表就是互联网公司。这时候普通的数据库难以支撑该量级,更别说进一步分析。当发现目前的数据库已不能支撑业务持续发展的时候,就是该了解Hadoop分布式集群的时候了。
            • Hadoop的工作原理,通俗易懂地来讲,类似于众筹。一台机器不够用,就利用多台机器的资源协同工作。
            • Hadoop分布式集群,是由三个重要组成部分构成的,包括分布式存储(HDFS),分布式计算(MapReduce),数据仓库工具(Hive)
          • 2.大数据集群的有超多能实现不同 功能的组件
            • Hadoop被公认是一套行业大数据标准开源软件,在分布式环境下提供了海量数据的处理能力。Apache Hadoop是一个可以利用计算机集群来完成海量数据的存储和计算的软件框架。它被设计成可以从单台服务到上千台机器的横向扩展,每台机器都可以提供存储和计算。而且利用在计算机集群之上部署高可用服务来检测和处理应用层的错误或失败,而不会依赖于硬件去实现高可用性。
            • 1.HADOOP是apache旗下的一套开源软件平台2.HADOOP提供的功能:利用服务器集群,根据用户的自定义业务逻辑,对海量数据进行分布式处理3.HADOOP的核心组件有A.HDFS(分布式文件系统)B.YARN(运算资源调度系统)C.MAPREDUCE(分布式运算编程框架)广义上来说,HADOOP通常是指一个更广泛的概念——HADOOP生态圈
            • 一个大数据集群中可以添加非常多实现不同功能的组件
                • HDFS:分布式文件系统
                • YARN: 负责工作调度和集群资源分配管理的框架
                • MAPREDUCE:分布式运算程序开发框架
                  • 只需要编写少量的业务逻辑代码即可实现一个强大的海量数据并发处理程序负责海量数据集的离线并行运算,运行在YARN之上。MapReduce将一个算法抽象成Map和Reduce两个阶段进行处理,非常适合数据密集型计算
                • HIVE:
                  • 基于大数据技术(文件系统+运算框架)的SQL数据仓库工具数据仓库工具,使用方便,功能丰富,基于MR延迟大基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行
                • HBASE:基于HADOOP的分布式海量数据库
                • ZOOKEEPER:分布式协调服务基础组件
                • Mahout:基于mapreduce/spark/flink等分布式运算框架的机器学习算法库
                • Oozie:工作流调度框架
                • Sqoop:数据导入导出工具
                • Flume:日志数据采集框架
                • Pig: 一种处理hadoop数据流的轻量级脚本语言
                • Spark: 计算引擎
                  • 处理大数据的快速且通用计算引擎。但不同于MapReduce的是工作中间输出和结果可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的map reduce的算法。
                • Tez:
                  • 是基于Hadoop YARN之上的DAG(有向无环图,Directed Acyclic Graph)计算框架。它把Map/Reduce过程拆分成若干个子过程,同时可以把多个Map/Reduce任务组合成一个较大的DAG任务,减少了Map/Reduce之间的文件存储。
                • Storm用来实时计算数据流的工具
                • Kafka是什么 是一个分布式消息队列:生产者、消费者的功能
                • flink 实时计算引擎
        • 市场上主流的大数据集群
          • apache hadoop 要自己集成各组件,维护成本高,麻烦,不适用 于企业级项目
          • cdh hadoop 要收费,最标准的版本
          • ambari hadoop 目前免费,但接下来的也快收费了
        • 大数据集群
          • ambari hadoop 也叫hdp,因为开发商叫Hortonwork 所以是 Hortonwork hadoop集群,简称hdp

作者 admin

张宴银,大数据开发工程师

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注