【云计算与大数据技术】数据编码LZSS算法、Snappy压缩库及分布式通信系统的讲解(图文解释 超详细)

这篇具有很好参考价值的文章主要介绍了【云计算与大数据技术】数据编码LZSS算法、Snappy压缩库及分布式通信系统的讲解(图文解释 超详细)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、数据编码概述

数据编码概述 - 在分布式系统中需要处理大量的网络数据,为了加快网络数据的传输速度,通常需 要对传输数据进行编码压缩

数据压缩是以尽可能少的数码来表示信源所发出的信号,减少容纳给定的消息集合或数据采样集合的信号空间,这里讲的信号空间就是被压缩的对象,是指某信号集合所占的时域、空域和频域。信号空间的这几种形式是相互关联的,存储空间的减少意味着信号传输效率的提高,所占用带宽的节省,只要采取某种方法来减少某个信号空间就能够压缩数据

一般来说,数据压缩主要是通过数据压缩编码来实现的。在给定的模型下通过数据编码来消除冗余,大致有以下3种情况

信源符号之间存在相关性

如果消除了这些相关性,就意味着数据压缩

信源符号之间存在分布不等概性

根据不同符号出现的不同概率分别进行编码,概率大的符合用较短的码长编码,概率小的符号用较短的码长编码,最终使信源的平均码长达到最短,通常采用统计编码的方法

 利用信息内容本身的特点(如自相似性)  

用模型的方法对需要传输的信息进行参数估测,充分利用人类的视觉、听觉等特性,同时考虑信息内容的特性,确定并遴选出其中的部分内容进行编码,从而实现数据压缩,通常采用模型基编码的方法

目前比较认同的、常用的数据压缩的编码方法大致分为两大类

冗余压缩法或无损压缩法 - 这类压缩方法只是去掉数据中的冗余部分,并没有损失熵,而这些冗余数据是 可以重新插入到原数据中的

熵压缩法或有损压缩法 - 这类压缩法由于压缩了熵,也就损失了信息量,而损失的信息是不能恢复的

二、LZSS算法

LZSS算法属于字典算法,是把文本中出现频率较高的字符组合做成一个对应的字 典列表,并用特殊代码来表示这个字符

LZSS算法的字典模型使用自适应方式,基本的思路是搜索目前待压缩串是否在以前出现过,如果出现过,则利用前次出现的位置和长度来代替现在的待压缩串,输出该字符串的出现位置以及长度,否则输出新的字符串,从而起到压缩的目的,但是在实际使用过程中,由于被压缩的文件往往较大,一般使用滑动窗口压缩方式,也就是说将一个虚拟的、可以跟随压缩进程滑动的窗口作为术语字典,LZSS算法最大的好处是压缩算法的细节处理不同,只对压缩率和压缩时间有影响,不会影响到解压程序,LZSS算法最大的问题是速度,每次都需要向前搜索到原文开头,对于较长的原文需要的时间是不可忍受的,这也是LZSS算法较大的一个缺点

lzss算法,云计算与大数据技术,大数据,云计算,阿里云,数据编码,算法

 三、Snappy压缩库

Snappy是在 Google公司内部生产环境中被许多项目使用的压缩/解压缩的链接库, 使用该库的软件包括BigTable、MapReduce 和 RPC 等

Snappy是面向字节编码的 LZ77类型压缩器。Snappy采用的编码单元是 字节(byte), 而不是比特(bit)

采用小端方式 (little-endian )存储 , 同时兼顾可变长度编码。每个字节的后面7位存储具体的数据,最高位用于表示下一个字节是否为同一个整数,剩下的字节用4种元素类型中的一种进行编码,元素类型在元素数据中的第二个字节,该字节的最后两位表示类型

lzss算法,云计算与大数据技术,大数据,云计算,阿里云,数据编码,算法

四、分布式通信系统

分布式通信研究分布式系统中不同子系统或进程之间的信息交换机制,我们从大数据系统中归纳出三种最常见的通信机制:远程过程调用,消息队列,多播通信

1:远程过程调用

远程过程调用的重点是网络中位于不同机器上进程之间的交互

远程过程调用 (Remote Procedure Call RPC)是一个计算机通信协议,通 过该协议运行于一台计算机上的程序可以调用另一台计算机的子程序,而程序员无须额外地为这个交互编程。

RPC框架都支持以下特性:接口描述语言、高性能、数据版本支持以及二进制数据格式

Thrift 是由 Facebook 公司开发的远程服务调用框架 ,它采用接口描述语言定义并创建服务,支持可扩展的跨语言服务开发

2:消息队列

消息队列的重点是子系统之间的消息可靠传递

消息队列也是设计大规模分布式系统时经常采用的中间件产品 

消息队列是在消息传递过程中保存消 息的容器或中间件,其主要目的是提供消息路由并保障消息可靠传递

分布式消息系统 Kafka 采用pub-sub机制,具有极高的消息吞吐量、较强的扩展型和高可用性

3:应用层多播通信

多播通信是实现信息的高效多播传递

分布式系统中的一个重要的研究内容是如何将数据通知到网络中的多个接收 方,这一般被称为多播通信

Gosip协议就是常见的应用层多播通信协议

Gossip协议也被称为“感 染 协 议 ”(Epidemic Protocol),用来尽快地将 本地更新数据通知到网络中的所有其他节点

其具体更新模型又可以分为3种:全通知模型、反熵模 型和散步谣言模型

创作不易 觉得有帮助请点赞关注收藏~~~文章来源地址https://www.toymoban.com/news/detail-603170.html

到了这里,关于【云计算与大数据技术】数据编码LZSS算法、Snappy压缩库及分布式通信系统的讲解(图文解释 超详细)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数字孪生的技术实现:云计算与大数据分析

    数字孪生(Digital Twin)是一种数字化的模拟体,通过实时的数据传输和实时的模拟计算,实现物理世界的设备、系统或过程与其数字模拟体之间的实时同步。数字孪生可以用于设备的故障预警、设备的远程控制、设备的性能优化、设备的生命周期管理等多种应用场景。数字孪生

    2024年04月15日
    浏览(23)
  • 基于Hadoop的云计算与大数据处理技术

    一、实验目的 1.了解Scala语言的基本语法 2.了解Spark Scala开发的原理 3.了解Spark Java API的使用 4.了解Spark的Scala API及Java API对数据处理的不同点 二、实验内容  某电商网站记录了大量用户对商品的收藏数据,并将数据存储在名为buyer_favorite1的文件中,数据格式以及数据内容如下

    2024年02月04日
    浏览(27)
  • 云计算与大数据处理:面向未来的技术路线

    随着互联网的普及和人们对信息的需求不断增加,数据的产生和存储量也随之增长呈指数级增长。大数据技术是应对这种数据爆炸的一种解决方案,它涉及到的领域非常广泛,包括数据存储、数据处理、数据挖掘、数据分析等。云计算是一种基于互联网的计算资源分配和管理

    2024年04月09日
    浏览(27)
  • 鲸鱼优化算法与大数据:高效网站分析优化技术

    作者:禅与计算机程序设计艺术 引言 1.1. 背景介绍 随着互联网的发展,网站数量日益增长,用户访问量也不断增加。网站作为企业或个人的门面,其稳定性和可用性对用户体验和访问转化率有着至关重要的影响。因此,如何对网站进行优化成为了一个重要的课题。 1.2. 文章

    2024年02月16日
    浏览(26)
  • 【云计算与大数据技术】分布式计算、虚拟化技术、并行编程技术等技术讲解(超详细必看)

    分布式计算是一种计算方法,和集中式计算相对,随着计算的发展,一些应用需要巨大的计算能力才能完成,如果采用集中式计算则需要耗费很长的时间,而分布式计算将应用分解成许多更小的部分,分配到多台计算机进行处理,这样可以节省整体计算时间,大大提高计算效

    2023年04月15日
    浏览(48)
  • 云计算与大数据分析的技术研发及其创新思路

    随着互联网的普及和人们对信息的需求不断增加,数据的产生和存储量也随之增加。随着计算机硬件的不断发展,我们可以更加高效地处理这些大量的数据,从而发现更多的价值。云计算是一种基于互联网的计算资源共享和分配方式,它可以让我们更加高效地存储和处理大量

    2024年04月09日
    浏览(29)
  • 【云计算与大数据技术】大数据系统总体架构概述(Hadoop+MapReduce )

    企业级大数据应用框架需要满足业务的需求,一是要求能够满足基于数据容量大,数据类型多,数据流通快的大数据基本处理需求,能够支持大数据的采集,存储,处理和分析,二是要能够满足企业级应用在可用性,可靠性,可扩展性,容错性,安全性和隐私性等方面的基本

    2024年02月09日
    浏览(35)
  • 云计算与大数据课程笔记(九)之虚拟化技术(下)

    内存复用技术是操作系统中用来高效管理和优化内存资源的一组策略。这些技术旨在提高内存利用率,减少物理内存的需求,并确保系统运行时的高性能。 内存共享技术 允许多个进程访问同一块内存区域 ,这有助于减少相同数据的多份拷贝,从而节省内存资源。内存共享可

    2024年04月16日
    浏览(35)
  • 【云计算与大数据技术】资源管理、调度模型策略的讲解

    集群资源管理模型通常由两个部分组成,即资源表示模型和资源分配模型,由于这两个部分是耦合的,所有优化集群资源管理时需要同时结合这两个部分考虑,资源表示模型用于描述集群资源的组织方式,是集群资源统一管理的基础,从狭义上来讲,计算资源是指具有计算能

    2024年02月21日
    浏览(33)
  • 云计算与大数据平台:实现高度安全性的关键技术

    云计算和大数据平台在现代信息技术中扮演着越来越重要的角色。随着数据的产生和传输量日益增加,数据安全和系统安全成为了企业和个人最关注的问题。本文将从云计算与大数据平台的角度,深入探讨实现高度安全性的关键技术。 云计算是一种基于互联网的计算资源共享

    2024年04月27日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包