数据服务相关

一、什么是OLAP

OLAP(On-line Analytical Processing,联机分析处理)是在基于数据仓库多维模型的基础上实现的面向分析的各类操作的集合。

hadoop
hive
hbase

ck
flink

redis
es


Google三驾马车:
GFS => HDFS
Mapreduce => Mapreduce
BigTable => Hbase

其中,HDF+Mapreduce构成Hadoop,
Hbase是用来做存储的,Mapreduce和Spark都是用来做计算的,但是目前Spark比Mapreduce更好。


Hadoop:是一个分布式计算的开源框架,是一个生态,包括很多组件,主要的三大组件是:HDFS 分布式文件系统 +Mapreduce 分布式计算框架 + Yarn 调度系统。

Hbase:Hbase是Google BigTable的开源实现,是一款基于HDFS的数据库,是一种NoSQL数据库,主要适用于海量明细数据(十亿、百亿)的随机实时查询,如日志明细、交易清单、轨迹行为等。Hbase其实是Hadoop Database的简称,本质上来说就是Hadoop系统的数据库,为Hadoop框架当中的结构化数据提供存储服务,是面向列的分布式数据库。在线查询场景中最常见的生态组件大概就是HBase了,HBase能够提供强一致性的低延时数据访问,非常适合一般的在线业务。Hbase的特点海量存储、面向列、列式存储、极易扩展、高并发

Hive是一个基于Hadoop的数据仓库工具,它允许用户使用类似于SQL的语言来查询和分析大规模数据。Hive将SQL语句转换为MapReduce任务,以便在Hadoop集群上执行。它通常用于处理结构化数据,例如日志文件和其他业务数据。

Hive表主要用于存储和管理结构化数据,并提供了一种方便的方式来处理大规模数据集。Hive表通常基于Hadoop分布式文件系统(HDFS)存储数据,并支持使用SQL类似的查询语言进行数据分析和处理。通过Hive表,用户可以轻松地进行数据分析和处理,从而帮助他们更好地理解和利用数据。

在这里插入图片描述

Spark:
Spark 是一种开源的,大规模数据处理引擎。Spark 可以处理任何 Hadoop 数据源,也能在 Hadoop 集群上执行,但是Spark也可以完全独立于 Hadoop,它有自己的集群管理系统。更重要的是,同样数据量,同样集群配置,Spark 的数据处理速度要比 Hadoop MapReduce 快10倍左右。Spark 的一个关键的特性是数据可以在内存中迭代计算,提高数据处理的速度。虽然Spark是用 Scala开发的,但是它对 Java、Scala、Python 和 R 等高级编程语言提供了开发接口。

MapReduce和Spark都是批处理框架,用来进行离线计算。

clikchouse
ClickHouse 是 Yandex(俄罗斯最大的搜索引擎)开源的一个用于实时数据分析的基于列存储的数据库,其处理数据的速度比传统方法快 100-1000 倍。

ck优点:

  • 写入速度非常快,50-200M/s,对于大量的数据更新非常适用。
  • 支持SQLClickHouse支持基于SQL的声明式查询语言,该语言大部分情况下是与SQL标准兼容的。

ck缺点:

  • 不支持事务,不支持真正的删除/更新;
  • 不支持高并发,官方建议qps为100,可以通过修改配置文件增加连接数,但是在服务器足够好的情况下;

实时计算和离线计算有什么区别?

在大数据处理的实际需求当中,实时计算和离线计算可以说是最常见也是最普遍的两种需求,针对这两种数据处理需求,也有相应的计算框架来解决问题。

实时计算和离线计算,从字面上我们也能看出,这两者主要是在数据处理延迟性上有不同的要求。对应这两种计算模式,有流处理和批处理两种概念。

简单来说,流处理,就是对源源不断的数据流进行处理;而批处理,则是对一定规模量的数据进行计算。流处理要求更高的实时性,而批处理则主要在数据处理规模上发力,批处理的典型代表就是Hadoop MapReduce。而流处理,经历了几个阶段的发展,Spark Streaming、Storm、Flink等框架,都在流处理方面有不错的变现。


基于 Flink+ClickHouse 构建实时数据分析平台


  • 数据库:hbase、clickhouse、es(本身支持分词)
    hbase优点:海量数据存储;缺点:但是不支持SQL,需要Hive转换才能使写法更容易;不适合于大范围扫描查询。
    clickhouse优点:写入速度快,50-200 M/S ,对于大量的数据更新非常实用。查询快,比HIVE快200倍以上,比MYSQL快800倍以上;缺点:不支持事物;

  • 计算引擎:实时流处理计算Flink;离线批处理计算:MapReduce和Spark,(mapReduce依赖于Hadoop生态,Spark是可以独立的,且性能更高)


数仓模型 - 对数据仓库进行分层

adm层:高度聚合,应用层就是以特定业务场景为目标而高度汇总的数据,一般以数据集市的形态呈现,比如大家常说的营销集市、风险集市、绩效集市。由于数据集市的建设对应的是特定且独立的业务场景,几无共性可言,所以必须对每类集市进行单独说明。
gdm层:通用聚合

https://cloud.tencent.com/developer/news/689755


  • 什么是Dimension table(维表)
    Dimension Table概念多出现于数据仓库里面,维表与事实表相对应,比如一个 “销售统计表” 就是一个 事实表,而 “销售统计表” 里面统计数据的来源离不开 “商品价格表”,“商品价格表” 就是销售统计的一个维度表。事实数据和维度数据的识别必须依据具体的主题问题而定。“事实表” 用来存储事实的度量及指向各个维的外键值。维表用来保存该维的元数据。

元数据和主数据


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

. . . . .

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值