分布式系统与海量数据处理

article/2025/9/25 9:19:34

科技发展带来的挑战

在科技的快速发展推动下,在 IT 领域,企业会面临两个方面的问题。

一是如何实现网站的高可用、易伸缩、可扩展、高安全等目标。为了解决这样一系列问题,迫使网站的架构在不断发展。从单一架构迈向高可用架构,这过程中不得不提的就是分布式。

二是用户规模越来越大,由此产生的数据也在以指数倍增长,俗称数据大爆炸。海量数据处理的场景也越来越多。技术上该如何面对?

分布式系统


概述

分布式系统是一个硬件或软件组件分布在不同的网络计算机上,彼此之间仅。 仅通过消息传递进行通信和协调的系统。简单来说就是一群独立计算机集合共同对外提供服务,但是对于系统的用户来说,就像是一台计算机在提供服务一样。

分布式意味着可以采用更多的普通计算机(相对于昂贵的大型机)组成分布式集群对外提供服务。计算机越多,CPU、内存、存储资源等也就越多,能够处理的并发访问量也就越大。

初代的 web 服务网站架构往往比较简单,应用程序、数据库、文件等所有的资源都在一台服务器上。
图:互联网初始阶段的网站架构

图:现在互联网网站常用的架构
图:现在互联网网站常用的架构
图:现在互联网网站常用的架构
图:现在互联网网站常用的架构

从分布式系统的概念中我们知道,各个主机之间通信和协调主要通过网络进行,所以,分布式系统中的计算机在空间上几乎没有任何限制,这些计算机可能被放在不同的机柜上,也可能被部署在不同的机房中,还可能在不同的城市中,对于大型的网站甚至可能分布在不同的国家和地区。

特征


分布性:分布式系统中的多台计算机之间在空间位置上可以随意分布,系统中的多台计算机之间没有主、从之分,即没有控制整个系统的主机,也没有受控的从机。

透明性:系统资源被所有计算机共享。每台计算机不仅可以使用本机的资源,还可以使用分布式系统中其他计算机的资源(包括 CPU、文件、打印机等)。

同一性:系统中的若干台计算机可以互相协作来完成一个共同的任务,或者说一个程序可以分布在几台计算机上并行地运行。

通信性:系统中任意两台计算机都可以通过通信来交换信息。

常用 分布式方案


分布式应用和服务:将应用和服务进行分层和分割,然后将应用和服务模块进行分布式部署。这样做不仅可以提高并发访问能力、减少数据库连接和资源消耗,还能使不同应用复用共同的服务,使业务易于扩展。比如:分布式服务框架 Dubbo。

分布式静态资源:对网站的静态资源如 JS、CSS、图片等资源进行分布式部署可以减轻应用服务器的负载压力,提高访问速度。比如:CDN。

分布式数据和存储:大型网站常常需要处理海量数据,单台计算机往往无法提供足够的内存空间,可以对这些数据进行分布式存储。比如 Apache Hadoop HDFS。

分布式计算:随着计算技术的发展,有些应用需要非常巨大的计算能力才能完成,如果采用集中式计算,需要耗费相当长的时间来完成。分布式计算将该应用分解成许多小的部分,分配给多台计算机进行处理。这样可以节约整体计算时间,大大提高
计算效率。比如 Apache Hadoop MapReduce。

分布式 、 集群


分布式(distributed)是指在多台不同的服务器中部署不同的服务模块,通过远程调用协同工作,对外提供服务。

集群(cluster)是指在多台不同的服务器中部署相同应用或服务模块,构成一个集群,通过负载均衡设备对外提供服务。

海量数据处理


公开数据显示,互联网搜索巨头百度 2013 年拥有数据量接近 EB 级别。阿里、腾讯都声明自己存储的数据总量都达到了百 PB 以上。此外,电信、医疗、金融、公共安全、交通、气象等各个方面保存的数据量也都达到数十或者上百 PB级别。全球数据量以每两年翻倍的速度增长,在 2010 年已经正式进入 ZB 时代,到 2020 年全球数据总量将达到 44ZB。

图:数据

数据分析的前提是有数据,数据存储的目的是支撑数据分析。究竟怎么去存储庞大的数据量,是开展数据分析的企业在当下面临的一个问题。传统的数据存储模式存储容量是有大小限制或者空间局限限制的,怎么去设计出一个可以支撑大量数据的存储方案是开展数据分析的首要前提。

当解决了海量数据的存储问题,接下来面临的海量数据的计算问题也是比较让人头疼,因为企业不仅追求可以计算,还会追求计算的速度、效率。以目前互联网行业产生的数据量级别,要处理这些数据,就需要一个更好、更便捷的分析计算方式了。传统的显然力不从心了,而且效率也会非常低下。这正是传统数据分析领域面临的另一个挑战,如何让去分析、计算。


http://chatgpt.dhexx.cn/article/kioebhV2.shtml

相关文章

海量数据处理的方法总结

基础知识: bit:位byte:字节1 byte 8 bit int 类型为 4 byte,共32位bit,unsigned int也是2^32 byte 4G 1G 2^30 10.7亿 海量数据处理概述: 所谓海量数据处理,就是指数据量太大,无法…

海量数据处理算法

原文地址:http://www.2cto.com/kf/201606/519107.html 海量信息即大规模数据,随着互联网技术的发展,互联网上的信息越来越多,如何从海量信息中提取有用信息成为当前互联网技术发展必须面对的问题。 在海量数据中提取信息&#xff…

我的《海量数据处理与大数据技术实战》出版啦!

我是如何持续写作的? 其实,关于写作,我也没多想,就是想着总结自己学习和工作中遇到的一些问题。我最开始写文章并不是在CSDN或者其他的一些博客平台,而是在QQ空间。那时的我还在上学,在QQ空间里写下了自己…

海量数据处理--离线批处理技术(Hadoop)

一、概述 大数据领域的两大难题: 1、存储 2、处理 解决方案:Hadoop解决类存储和处理的两大难题,其主要提供两大核心技术: 1、Hadoop分布式文件系统 2、MapReduce并行计算 二、Google核心云计算技术 海量数据存储的三大核心…

海量数据处理技巧

数据时代来临,数据量的爆炸式增长是最为显著的特征。当高性能硬件的普及还跟不上这样的数据大潮时,如何在有限的时空资源内处理海量数据成为了计算机科学以及数理统计等领域最大的挑战。 所谓“数据处理”,在本文中特指通过计算机技术,对海量数据进行存储、统计、查询等操…

Mysql海量数据处理

一说海量数据有人就说了直接用大数据,那只能说不太了解这块,为此我们才要好好的去讲解一下海量的处理 海量数据的处理分为两种情况 1)表中有海量数据,但是每天不是很快的增长 2)表中有还流量数据,而且每天很…

海量数据处理方法总结

目录 海量数据处理算法与数据结构基础海量数据处理方法归纳分而治之 / hash 映射 hash 统计 堆 / 快速 / 归并排序多层桶结构Bitmap / Bloom filterBitmapBloom filter Trie树/数据库/倒排索引Trie树数据库索引倒排索引(Inverted index) 外排序分布式处理之Hadoop/Mapreduce …

如何解决海量数据的处理问题

一、海量数据,为高效查询,如何处理?分库分表会带来哪些副作用?可能的解决方式有哪些? 目前经常使用的关系型数据库如 MySQL、SQL Server 等,都是以“行”为单位进行存储,为了快速检索&#xff…

海量数据处理

目录 补充 1.位图应用 (1)给定100亿个整数,设计算法找到只出现一次的整数 (2)给两个文件,分别有100亿个整数,我们只有1G内存,如何找到两个文件的交集 (3)一个文件有100亿个整数,1G内存,设计算法找到出现…

H264视频码流格式浅析

针对H264码流格式说明,网上已经有很多介绍了,最近也在看这个,这里根据自己理解,做个记录。 1、H264的功能分为两层:视频编码层(VLC,Video Coding Layer)和网络提取层(NAL, Network Abstraction Layer)。VLC数据即 编码…

H.264(H264)视频文件的制作

一、准备工作 1.下载并安装优酷客户端 2.下载ffmpeg可执行文件,解压可用,不需要下载源码自己编译。 ffmpeg可执行文件下载链接:http://download.csdn.net/detail/caoshangpa/9492758 二、用优酷客户端下载视频并转码 用优酷客户端下载一…

H264和H265区别

很多小伙伴应该都听过H.265和H.264这两种编码,也了解专业术语的解释。包括电视机 都会标注支持H.265格式4K视频编码,视频监控系统也会 标注支持H.265。但是在没有用过的情况下,很难说真的已经 知道两者的区别了,那么H.265和H.264这…

H264 编解码协议详解

1.、什么是 H264? H264 是 MPEG-4 标准所定义的最新编码格式,同时也是技术含量最高、代表最新技术水平的视频编码格式之一,标准写法应该是H.264 H264 视频格式是经过有损压缩的,但在技术上尽可能做的降低存储体积下获得较好图像…

视频和视频帧:H264编码格式整理

本文将介绍的是: H264的发展历史。将介绍H26x和MPEG家族的发展和关联。H264的编码格式。主要介绍VCL和NAL,前者与视频编码数据紧密相关,后者和H264格式相关,也是本文介绍的重点。NAL。介绍NAL的组成单元:NALU。包括NA…

h264文件视频存储格式和音频存储格式

mp4封装 目录 h264视频流格式介绍 aac音频流格式介绍 h264视频文件读取 通过帧索引解析h264文件 通过解析h264结构读取文件 aac音频文件读取 mp4封装 初始化 数据封装 关闭mp4文件句柄 注意点 目录 h264视频流格式介绍 视频数据帧分为I帧,P帧,B帧,其中I帧为关键帧,所包含的图像…

H264和h265编码

未压缩的码流:一秒钟码流大小:640x480x1.5x15x855296000 (是55MB)其中 1.5是yuv占用1.5倍,rgb是3倍,8是一个字节是八位bit H264的建议码流是500kpbs,因此压缩比是100 电影一般帧率大于60帧;在线教育,实时通信一般是15帧 工具使…

H264格式 详细介绍

原文地址:http://blog.csdn.net/yangzhongxuan/article/details/8003494 名词解释 场和帧 : 视频的一场或一帧可用来产生一个编码图像。在电视中,为减少大面积闪烁现象,把一帧分成两个隔行的场。 片: 每个图象中&…

H264码流格式

h264码流格式 码流格式 …NAL头RBSPNAL头RBSPNAL头RBSP… H264 传输 SPSSEIPPSI片图像定界符P片P片 NAL头格式 start code ( 3 or 4 )forbidden_zero_bit(1)nal_ref_idc (2)nal_unit_type( 5)RBSP 解释 start code&#xf…

H264H265格式

文章目录 H2641. NALU1.1 NALU Header1.1.1 nal_unit_type 2. 码流格式2.1 Annex B格式2.2 AVCC格式2.2.1 extradata结构 2.3 H264 Annexb与AVCC格式转换 3. 视频编码帧3.1 压缩方式3.2 编码帧3.3 丢帧 4. PTS与DTS4.1 概念4.2 为什么需要PTS,DTS? H2651…

音视频——视频流H264编码格式

1 H264介绍 我们了解了什么是宏快,宏快作为压缩视频的最小的一部分,需要被组织,然后在网络之间做相互传输。 H264更深层次 —》宏块 太浅了 ​ 如果单纯的用宏快来发送数据是杂乱无章的,就好像在没有集装箱 出现之前,…