大数据简介

什么是大数据

大数据简而言之就是巨量的数据。随着互联网的发展,我们的行为,我们日常活动、自然界运行的规律随时随地都在产生数据信息。而由互联网而链接的数据是海量的,这些数据的背后蕴含的价值也是巨大的。对这些数据的分析与挖掘,能让我们更好的了解事、物、自然以及人类社会运行的规律。

所以说大数据:就是对海量数据进行处理、分析、挖掘获取数据背后蕴含价值的技术体系。

大数据体系

大数据体系结构主要包含数据存储数据传输数据计算

数据存储:对海量数据的保存与备份
数据计算:对海量数据等计算分析,挖掘数据等价值
数据传输:协助大数据存储和计算等各环节数据等传输读取工作

数据存储

数据存储:对海量数据的保存与备份

随着大数据等发展,数据越来越大,对海量数据等存储也成了企业发展中的难点。在企业中,对于数据等存储一般都是以PB、EB计算的。单机的情况下,不能很好的完成对数据的存储与备份。所以目前的数据存储都是以分布式存储的方式对数据进行存储。

分布式存储可以分为中心化模式去中心化模式

中心化模式

中心化模式又被称为主从模式(Master and Slaves)。中心化模式的主要特点是有一个中心节点服务器来统筹管理其他服务器的工作,统一对资源进行调度、避免争抢资源而引起的混乱。如大数据中最流行的框架Hadoop的HDFS文件系统就是以中心化模式进行的存储。

中心化模式的稳定性和安全性依赖于中心节点的稳定和安全,所以中心化模式虽然能对资源进行统一调度和安排,但一旦中心节点出现问题,造成的影响必然是不可估量的。在Hadoop的HDFS存储文件系统中,可以设置两个中心化节点,当一个中心节点出现问题时,可以无缝衔接第二个中心节点,这种多中心化节点的模式能很好的解决单中心化模式存在的缺陷。

在多中心化节点的模式中,如果条件允许,尽量选择异地组网的方式,避免同一个机房因相同的问题导致中心节点都出现问题。

对存储模式的一些思考
想必很多人都听说过NAS系统,相比于高成本的大数据分布式存储。NAS这种产品更平民化,更适合于普通用户或小型工作室的大量数据存储。
大家对NAS的印象可能是大文件存储,安全性,毕竟NAS采用raid冗余性磁盘阵列,能放下更多的磁盘。
但在实际的应用中,首先,组raid需要一定的级别,即需要多盘才能体现出相应的优势。在少量硬盘的情况下,一旦出现一个坏盘,对整体的稳定性和数据安全性都是不可估量的。其次,若是在一次到位的情况下,用户购买硬盘都是买的同批量的硬盘,在这种情况下,一旦一台硬盘出现问题,那理论上,其他硬盘本身也快到其理论寿命来。
综上所述,对于数据的安全存储,最好的方式还是采用异地异机的方式进行存储。在同一机房的情况下,难免会因为相同的原因导致批量的硬盘出现故障问题。

数据存储硬盘的讨论
热点数据/预热数据存储在SSD中,能更快的进行访问读取
温数据/数据备份存储在机械硬盘中,相比于SSD硬盘更加稳定
冷数据(如果有的话)存储在磁带,读取数据只能一次性全部读取

数据计算

数据计算:对海量数据等计算分析,挖掘数据等价值
数据计算主要是对海量数据进行统计分析,挖掘数据的价值,了解数据背后的统计规律。为更好的服务社会,创造生产力提供支持。

数据传输

数据传输:协助大数据存储和计算等各环节数据等传输读取工作
在大数据中,对数据的传输也是重中之重。大数据体系由于采用分布式架构,其数据是分布存储到不同的设备中的,在多台设备之间的传输也是大数据体系的重中之重。

在数据传输中一般采用消息队列或数据总线的方式实现资源的调度和传输。如Kafka消息队列。

为什么采用消息队列进行数据传输

  • 在高并发的场景下,由于来不及处理同步请求,请求会发生堵塞。通过消息队列,可以异步的处理请求,缓解系统压力
  • 当系统资源有限时,不断的向系统发起请求,超过系统所能处理请求的最大阈值,可能会导致系统崩溃。
  • 当发起请求需要立即获得回调信息,而请求的处理需要消费一点的时间时。如:发送邮件,系统下单,模型训练,远程接口调用等
  • 消息队列在消费者和生产者中引入了exchange的概念,当压力增长的情况下,可以通过配置exchange在不停机的情况下调整系统资源,缓解服务压力

数据传输方式

以下内容由CSDN博主小杰911提供并享有创造版权

  • 批量传输(Batch Transfer):批量传输是指将数据按照一定的规模和时间窗口进行打包,然后定期以批量的方式进行传输。这种方式适用于数据量较大、传输时间要求相对宽松的场景,例如数据仓库的离线加载或数据备份等。
  • 实时传输(Real-time Transfer):实时传输是指将数据实时地从源系统传输到目标系统,以保证数据的及时性和准确性。这种方式适用于需要快速获取最新数据的场景,例如在线交易系统或监控系统等。
  • 增量传输(Incremental Transfer):增量传输是指只传输发生变化的部分数据,而不是全量数据。通过识别变化的数据,可以节省传输带宽和时间。这种方式适用于频繁更新的数据源,例如日志记录或传感器数据等。
  • 分布式传输(Distributed Transfer):分布式传输是指将数据分成多个部分,在不同的节点之间并行传输,以加快数据传输的速度。这种方式适用于大规模数据集的处理,例如分布式文件系统或分布式计算框架等。
  • 数据流传输(Streaming Transfer):数据流传输是指将数据以连续的数据流方式进行传输,而不是批量或离散的方式。这种方式适用于需要实时处理和分析数据的场景,例如流式计算或事件处理等。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

北溪入江流

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

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

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

打赏作者

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

抵扣说明:

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

余额充值