美文网首页
大数据的一些名词概念

大数据的一些名词概念

作者: clever哲思 | 来源:发表于2020-04-28 10:44 被阅读0次
    • etl: 数据的抽取(Extract), 数据清洗(Transform), 装载(Load), 业务系统的数据经过抽取、清洗转换之后加载到数据仓库的过程,目的是将企业中的分散、零乱、标准不统一的数据整合到一起,为企业的决策提供分析依据

    • ODS: Operational Data Store,操作型数据存储

    • DW: Data Warehousing,数据仓库,是数据的归宿,这里保存着所有的从ODS到来的数据,并长期保存,而且这些数据不会被修改

    • DM: 数据集市,以某个业务应用为出发点而建立的局部DW,DW只关心自己需要的数据,不会全盘考虑企业整体的数据架构和应用,每个应用有自己的DM. 比如django操作的msyql, 就是dm

    • 数据流向: 一般ODS存储着外部来的原始数据,经过etl清洗, 进入DW数仓, ODS和DW都可以用hive数据库实现. ODS和DW只是hive中的逻辑分类. 然后最后流到DM, 各个应用程序从DM(比如mysql)中查找数据展示

    • Storm: 是最佳的流式计算框架,Storm由Java和Clojure写成,Storm的优点是全内存计算,所以它的定位是分布式实时计算系统

    • Spark: 是一个基于内存计算的开源集群计算系统,目的是更快速的进行数据分析, 类似于Hadoop MapReduce的通用并行计算框架

    • RDD:Spark 中最基本的数据抽象是 RDD。弹性分布式数据集 (Resilient Distributed DataSet)

    • Hadoop: 是实现了MapReduce的思想,将数据切片计算来处理大量的离线数据。Hadoop处理的数据必须是已经存放在HDFS上或者类似HBase的数据库中 ,

    • 适用场景: Hadoop适合于离线的批量数据处理适用于对实时性要求极低的场景, Storm适合于实时流数据处理,实时性方面做得极好, Spark是内存分布式计算框架,

    • Hadoop: 主要包括三部分内容:hdfs,mapreduce,yarn。

    • Hdfs: 是一种分布式文件系统,是Hadoop体系中数据存储管理的基础。它是一个高度容错的系统,能检测和应对硬件故障,用于在低成本的通用硬件上运行。Hdfs简化了文件的一致性模型,通过流式数据访问,提供高吞吐量应用程序数据访问功能,适合带有大型数据集的应用程序。

    • Mapreduce: 它由两部分组成:编程模型(programming model)和运行时环境(runtime environment)。它的基本编程模型是将问题抽象成Map和Reduce两个阶段,其中Map阶段将输入数据解析成key/value,迭代调用map()函数处理后,再以key/value的形式输出到本地目录,而Reduce阶段则将key相同的value进行规约处理,并将最终结果写到HDFS上。

    • yarn: 是一种新的 Hadoop 资源管理器,它是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度。它将资源管理和处理组件分开,它的引入为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处。可以把它理解为大数据集群的操作系统。可以在上面运行各种计算框架(包括MapReduce、Spark、Storm、MPI等)。

    • Hive: 是一种基于Hadoop的数据仓库。Hive定义了一种类似SQL的查询语言(HQL),将SQL转化为MapReduce任务在Hadoop上执行。通常用于离线分析。帮助熟悉SQL的人运行MapReduce任务, 本质是将SQL转换为MapReduce程序。

    • HBase: 存储key/value来工作, 采用了BigTable的数据模型:增强的稀疏排序映射表(Key/Value),其中,键由行关键字、列关键字和时间戳构成。HBase提供了对大规模数据的随机、实时读写访问,同时,HBase中保存的数据可以使用MapReduce来处理,它将数据存储和并行计算完美地结合在一起。

    • Sqoop是一款开源的工具,主要用于在Hadoop和传统的数据库(mysql、postgresql等)进行数据的传递,可以将一个关系型数据库(例如:MySQL、Oracle、Postgres等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。

    • Flume是Cloudera(一个知名的基于开源hadoop的大数据发行商)设计开发的一个开源的日志收集工具, 具有分布式、高可靠、高容错、易于定制和扩展的特点, 是一个可扩展、适合复杂环境的海量日志收集系统。

    • Kafka: 是一种分布式的,基于发布/订阅的消息系统,类似于消息对列的功能,可以接收生产者(如webservice、文件、hdfs、hbase等)的数据,本身可以缓存起来,然后可以发送给消费者(同上),起到缓冲和适配的作。它的最大的特性就是可以实时的处理大量数据以满足各种需求场景:比如基于hadoop的批处理系统、低延迟的实时系统、storm/Spark流式处理引擎,web/nginx日志、访问日志,消息服务等等,严格保证了消息队列的顺序

    • es集群: Elasticsearch是一个基于Lucene构建的开源、分布式、RESTful接口的全文搜索引擎。Elasticsearch还是一个分布式文档数据库,其中每个字段均可被索引,而且每个字段的数据均可被搜索,可以在极短的时间内存储、搜索和分析大量的数据。

    MySQL-> Database -> Table -> Row -> Column
    Elasticsearch -> Index -> Type -> Document -> Field

    • Flink: Flink是原生的流处理系统, 较好的支持窗口, Flink和Storm功能类似

    • Azkaban: 是由Linkedin开源的一个批量工作流任务调度器。用于在一个工作流内以一个特定的顺序运行一组工作和流程。Azkaban定义了一种KV文件格式来建立任务之间的依赖关系,并提供一个易于使用的web用户界面维护和跟踪你的工作流。

    • ** CDP**: customer data platform

    • CDH: CDH是Hadoop众多分支中的一种,由Cloudera维护,基于稳定版本的Apache Hadoop构建,全称Cloudera’s Distribution, including Apache Hadoop。CDH提供了Hadoop的核心可扩展存储(HDFS)和分布式计算(MR),还提供了WEB页面进行管理、监控。

    • Presto: 是一个开源的分布式SQL查询引擎,适用于交互式分析查询,数据量支持GB到PB字节

    相关文章

      网友评论

          本文标题:大数据的一些名词概念

          本文链接:https://www.haomeiwen.com/subject/jhyuwhtx.html