我的编程空间,编程开发者的网络收藏夹
学习永远不晚

重复数据删除的使用和关键技术

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

重复数据删除的使用和关键技术

  这篇文章主要讲的是重复数据的概念原理和怎样使用重复数据删除技术。重复数据删除是一个很热门的存储技术。希望本篇文章多你们有用,大家要认真看噢~
  Dedupe概述
  De-duplication,即重复数据删除,它是一种目前主流且非常热门的存储技术,可对存储容量进行有效优化。它通过删除数据集中重复的数据,只保留其中一份,从而消除冗余数据。如下图所示。这种技术可以很大程度上减少对物理存储空间的需求,从而满足日益增长的数据存储需求。

重复数据删除的使用和关键技术_数据中心_数据存储_互联网_编程学习网

      Dedupe技术可以带许多实际的利益,主要包括以下诸多方面:
  (1) 满足ROI(投资回报率,Return On Investment)/TCO(总持有成本,Total Cost of Ownership)需求;
  (2) 可以有效控制数据的急剧增长;
  (3) 增加有效存储空间,提高存储效率;
  (4) 节省存储总成本和管理成本;
  (5) 节省数据传输的网络带宽;
  (6) 节省空间、电力供应、冷却等运维成本。

Dedupe技术目前大量应用于数据备份与归档系统,因为对数据进行多次备份后,存在大量重复数据,非常适合这种技术。事实上,dedupe技术可以用于很多场合,包括在线数据、近线数据、离线数据存储系统,可以在文件系统、卷管理器、NAS、SAN中实施。Dedupe也可以用于数据容灾、数据传输与同步,作为一种数据压缩技术可用于数据打包。Dedupe技术可以帮助众多应用降低数据存储量,节省网络带宽,提高存储效率、减小备份窗口,节省成本。
  Dedupe技术目前大量应用于数据备份与归档系统,因为对数据进行多次备份后,存在大量重复数据,非常适合这种技术。事实上,dedupe技术可以用于很多场合,包括在线数据、近线数据、离线数据存储系统,可以在文件系统、卷管理器、NAS、SAN中实施。Dedupe也可以用于数据容灾、数据传输与同步,作为一种数据压缩技术可用于数据打包。Dedupe技术可以帮助众多应用降低数据存储量,节省网络带宽,提高存储效率、减小备份窗口,节省成本。
  大数据与海量数据已经成为数据中心的主要业务,而重复数据删除与压缩是可以节约大量数据存储的技术。
  只有备份还不够。重复数据删除与压缩即将成为主存储的必备功能。
  重复数据删除是一种压缩技术,通过识别重复内容,进行去重,并在对应的存储位置留下指针,来最小化数据量。这个指针通过给定大小的数据模式进行哈希创建。
  也许在于你已经在备份系统上实施了重复数据删除备份和归档多年,问题在于:是否需要在主存储上运用重复数据删除与压缩技术?
  并非所有的重复数据删除技术都一样。IT专业人士在将其添加到主存储环境之前,应该权衡其各自的特点。
  何时使用重复数据删除
  重复数据删除首先开始于创建数据。接着是所有其他业务——备份、复制、归档以及任何网络传输——都可以受益于规模缩小后的数据,位于Hopkinton。
  “几年前,我写道,自己知道为什么重复数据删除技术通常被应用于备份设备上。但是,如果没有限制,重复数据删除应该在数据被创建时进行,而且数据在整个生命周期内,应该以某种脱水格式存储,” Taneja说。唯一的例外应该是当用户或应用程序需要访问这些数据时。
  但把重复数据删除应用在主数据这一场景很难被用户接收,因为这样做是在篡改主数据集,Storage Switzerland LLC存储顾问公司的首席分析师George Crump说。“做好备份,就算没有重复数据删除技术,也不会因为搞砸生产环境的数据而出大乱子,”他说,“但是如果动到主存储,问题就很大了,而且需要了解这项技术会如何影响性能、可靠性与数据完整性。”
  目前只有少数主存储阵列提供重复数据删除作为产品的附加功能。只有不到5%的磁盘阵列真正支持在线重复数据删除与压缩,Permabit公司的CEO Tom Cook说。该公司是一家数据效率技术供应商。不过,这个数字在未来的18个月内将可能增长到25%,并且在36个月后达到75%,Cook说。
  Dedupe关键技术
  存储系统的重复数据删除过程一般是这样的:首先将数据文件分割成一组数据块,为每个数据块计算指纹,然后以指纹为关键字进行Hash查找,匹配则表示该数据块为重复数据块,仅存储数据块索引号,否则则表示该数据块是一个新的唯一块,对数据块进行存储并创建相关元信息。这样,一个物理文件在存储系统就对应一个逻辑表示,由一组FP组成的元数据。当进行读取文件时,先读取逻辑文件,然后根据FP序列,从存储系统中取出相应数据块,还原物理文件副本。,Dedupe的关键技术主要包括文件数据块切分、数据块指纹计算和数据块检索。

存储系统的重复数据删除过程一般是这样的:首先将数据文件分割成一组数据块,为每个数据块计算指纹,然后以指纹为关键字进行Hash查找,匹配则表示该数据块为重复数据块,仅存储数据块索引号,否则则表示该数据块是一个新的唯一块,对数据块进行存储并创建相关元信息。这样,一个物理文件在存储系统就对应一个逻辑表示,由一组FP组成的元数据。当进行读取文件时,先读取逻辑文件,然后根据FP序列,从存储系统中取出相应数据块,还原物理文件副本。
  (1) 文件数据块切分
  Dedupe按照消重的粒度可以分为文件级和数据块级。文件级的dedupe技术也称为单一实例存储(SIS, Single Instance Store),数据块级的重复数据删除其消重粒度更小,可以达到4-24KB之间。显然,数据块级的可以提供更高的数据消重率,因此目前主流的dedupe产品都是数据块级的。数据分块算法主要有三种,即定长切分(fixed-size partition)、CDC切分(content-defined chunking)和滑动块(sliding block)切分。定长分块算法采用预先义好的块大小对文件进行切分,并进行弱校验值和md5强校验值。弱校验值主要是为了提升差异编码的性能,先计算弱校验值并进行hash查找,如果发现则计算md5强校验值并作进一步hash查找。由于弱校验值计算量要比md5小很多,因此可以有效提高编码性能。定长分块算法的优点是简单、性能高,但它对数据插入和删除非常敏感,处理十分低效,不能根据内容变化作调整和优化。
  CDC(content-defined chunking)算法是一种变长分块算法,它应用数据指纹(如Rabin指纹)将文件分割成长度大小不等的分块策略。与定长分块算法不同,它是基于文件内容进行数据块切分的,因此数据块大小是可变化的。算法执行过程中,CDC使用一个固定大小(如48字节)的滑动窗口对文件数据计算数据指纹。如果指纹满足某个条件,如当它的值模特定的整数等于预先设定的数时,则把窗口位置作为块的边界。CDC算法可能会出现病态现象,即指纹条件不能满足,块边界不能确定,导致数据块过大。实现中可以对数据块的大小进行限定,设定上下限,解决这种问题。CDC算法对文件内容变化不敏感,插入或删除数据只会影响到检少的数据块,其余数据块不受影响。CDC算法也是有缺陷的,数据块大小的确定比较困难,粒度太细则开销太大,粒度过粗则dedup效果不佳。如何两者之间权衡折衷,这是一个难点。
  滑动块(sliding block)算法结合了定长切分和CDC切分的优点,块大小固定。它对定长数据块先计算弱校验值,如果匹配则再计算md5强校验值,两者都匹配则认为是一个数据块边界。该数据块前面的数据碎片也是一个数据块,它是不定长的。如果滑动窗口移过一个块大小的距离仍无法匹配,则也认定为一个数据块边界。滑动块算法对插入和删除问题处理非常高效,并且能够检测到比CDC更多的冗余数据,它的不足是容易产生数据碎片。
  了解了它的关键技术,再来学习重点
  重复数据删除的比例
  通过数据去重节约的空间十分可观,这取决于数据类型以及所使用的数据去重引擎的组块大小。以文本文件与虚拟桌面架构环境为例,受益于高删除率,压缩比可达到40:1。而视频可以压缩的,但没法去重。存储厂商认为6:1是重复数据删除率的最佳平均值。加上相同的块压缩,数据中心可以通过这些技术轻松实现10:1的存储空间节约。
  这些技术能够节约空间,十分具有,但重复数据删除属于计算密集型技术。在相对不重要的二级存储中,一般不会出现问题,但可能给主存储环境出现短暂拥塞现象。
  “真正令人当心的是,应用程序可能在写入存储甚至在读取时被卡住,” Russell说。“如果主存储阵列的性能是一个瓶颈,那么就必须采取后处理方式”,在数据已经被写入存储后才开始压缩。
  重复数据删除不仅可以在实时删除重复数据,还可以让供应商通过算法最大化潜在的数据压缩率。以Quantum的DXi系列备份设备为例,使用可改变块大小的重复数据删除算法,该算法是固定块大小方法效率的三倍以上。
  今天的分享就到这了,也不知道对大家有用不,如果有用的话,那就点个赞吧!如果哪部分知识点欠缺,欢迎各位朋友进行补充哦~更多精彩的内容,就在编程学习网教育,还不赶紧行动?等着你们哟~

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

重复数据删除的使用和关键技术

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

重复数据删除的使用和关键技术

这篇文章主要讲的是重复数据的概念原理和怎样使用重复数据删除技术。重复数据删除是一个很热门的存储技术。希望本篇文章多你们有用,大家要认真看噢~今天的分享就到这了,也不知道对大家有用不,如果有用的话,那就点个赞吧!如果哪部分知识点欠缺,欢迎各位朋友进行补充哦~更多精彩的内容,就在编程学习网教育,还不赶紧行动?等着你们哟~
重复数据删除的使用和关键技术
2024-04-23

大数据时代的重复数据删除技术

编程学习网:重复数据删除在几年前是一个独立的功能,主要用于企业备份和归档部门的存储系统。如如今,重复数据删除在云端网关找到了新的用途,为即将进入阵列或虚拟磁带库的数据过滤掉没有用处的数据。重复数据删除技术已经成为一种统计算系统预先集成的功能,而企业对于这项技术的有效使用成为一种需求。
大数据时代的重复数据删除技术
2024-04-23

怎么使用Python pandas找出删除重复的数据

这篇文章主要介绍了怎么使用Python pandas找出删除重复的数据的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用Python pandas找出删除重复的数据文章都会有所收获,下面我们一起来看看吧。前
2023-07-02

使用shell脚本怎么删除mysql中的重复数据

这期内容当中小编将会给大家带来有关使用shell脚本怎么删除mysql中的重复数据,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。#!/bin/sh# delete all companys duplica
2023-06-09

如何正确的使用一条SQL删除重复数据

数据库中表存在重复数据,需要清理重复数据,清理后保留其中一条的情况是比较常见的需求,如何通过1条SQL准确的删除数据呢?
SQL数据库2024-11-30

php如何查找和删除数组中的重复数据

本文小编为大家详细介绍“php如何查找和删除数组中的重复数据”,内容详细,步骤清晰,细节处理妥当,希望这篇“php如何查找和删除数组中的重复数据”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。查找重复项首先,在进行
2023-07-05

清除重复数据:MySQL中的去重技巧和策略

在处理大量数据时,需要注意性能问题,并使用适当的索引和优化技术来提高查询效率。同时,建议在执行任何去重操作之前对数据进行备份,以防止意外数据丢失。
数据库清除2024-11-30

使用Python删除排序数组中的重复项

给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。

Oracle使用fy_recover_data恢复truncate删除的数据

目录前言1.创建测试表2.truncate table pak_tab3 编译fy_recover_data包4.执行fy_rechttp://www.cppcns.comover_data包5.把数据插回原表6.校验数据总结前言TRUN
2022-07-20

PHP 防抖和防重复提交技术:优化用户交互的关键之一

随着互联网的发展,用户对于网站和应用的使用体验要求也越来越高。在用户的交互过程中,防抖和防重复提交技术成为了优化用户体验的关键。本文将介绍PHP中的防抖和防重复提交技术,并提供具体的代码示例。防抖技术是指在用户连续进行某个操作时,通过限制触
2023-10-21

关键的Golang数据处理方法和技术必须了解

Golang数据处理:你需要了解的关键方法和技术在当今大数据时代,对数据进行高效处理成为了许多软件开发中不可或缺的一部分。而Golang作为一种高效、并发以及易于编程的语言,广泛应用于数据处理和后端开发领域。本文将介绍一些Golang中进行
关键的Golang数据处理方法和技术必须了解
2023-12-23

绝对定位技术的关键特性和使用指南

绝对定位技术(Absolute Positioning)是一种在网页设计中常用的布局方法,可以精确地控制元素在页面中的位置。无论页面如何滚动,这些元素都会始终停留在指定的位置上。本文将介绍绝对定位技术的关键特点和使用技巧,并提供一些具体的代
绝对定位技术的关键特性和使用指南
2024-01-23

Redis:构建高可用性数据库系统的关键技术

Redis:构建高可用性数据库系统的关键技术随着互联网的发展,大数据时代的到来,数据库系统的高可用性需求也愈发迫切。作为一种内存存储型的 NoSQL 数据库系统,Redis 凭借其出色的性能和灵活的数据模型,成为构建高可用性数据库系统的关键
Redis:构建高可用性数据库系统的关键技术
2023-11-07

使用pymysql循环删除重复数据,并修改自增字段偏移值

创建表:  CREATE TABLE `info` (   `id` tinyint NOT NULL AUTO_INCREMENT,   `name` varchar(20) NOT NULL,   PRIMARY KEY (`id`)  ) ENGI
使用pymysql循环删除重复数据,并修改自增字段偏移值
2017-09-03

编程热搜

  • Mysql分表查询海量数据和解决方案
    众所周知数据库的管理往往离不开各种的数据优化,而要想进行优化通常我们都是通过参数来完成优化的。那么到底这些参数有哪些呢?为此在本篇文章中编程学习网笔者就为大家简单介绍MySQL,以供大家参考参考,希望能帮助到大家。以上就是关于大数据的知识点了。喜欢的可以分享给你的朋友,也可以点赞噢~更多内容,就在编程学习网!
    Mysql分表查询海量数据和解决方案
  • 大数据的妙用及17年趋势
    2017年,支持大量结构化和非结构化数据的系统将继续增长。市场需要数据平台来帮助数据管理人员管理和保护大数据,同时允许最终用户进行数据分析。这些系统将逐步成熟,在企业内部的IT系统中更好地运行。所以,我们更要了解大数据!互联网普及使得网民的行为更加多元化,通过互联网产生的数据发展更加迅猛,更具代表性。互联网世界中的商品信息、社交媒体中的图片、文本信息以及视频网站的视频信息,互联网世界中的人与人交互信息、位置信息等,都已经成为大数据的最重要也是增长最快的来源。大家都了解到了吗!更多内容就在编程学习网哟
    大数据的妙用及17年趋势
  • 5G大数据时代空降来袭
    欢迎各位阅读本篇文章,本文主要讲了5G大数据时代。如今 5G 概念已不再陌生,按照行业认同的说法:2017年至2018年 5G 将在国内开始有序测试,2019年进行预商用。工信部之前已表示,中国将在2020年启动 5G 商用。编程学习网教育平台提醒各位:本篇文章纯干货~因此大家一定要认真阅读本篇文章哦!
    5G大数据时代空降来袭
  • es详解-原理-从图解构筑对es原理的初步认知
    在学习ElasticSearch原理时,我推荐你先通过官方博客中的一篇图解文章(虽然是基于2.x版本)来构筑对ES的初步认知(这种认识是体系上的快速认知)。ES详解 - 原理:从图解构筑对ES原理的初步认知前言图解ElasticSearch图解LuceneSegmentInverted IndexStored Fiel
    es详解-原理-从图解构筑对es原理的初步认知
  • elasticsearch-wrapperquery
    在工作中遇到ElasticSearch版本升级时出现Java High Level接口变更导致的兼容性问题: 之前使用的是2.4.x,考虑性能和功能的增强,需要更换为6.4.x; 2.4.x中我们使用DSL语句直接查询(数据的不确定性和方便动态建立查询规则等因素),而新的ES Java 高阶API中去掉了相关接口的支持
    elasticsearch-wrapperquery
  • 学习大数据营销思维(下)
    编程学习网: 其实,通过上面的介绍,我们知道苹果通过各类产品与服务销售相互促进以理及薄利多销的方式来盈利第二种战略联盟类型是合作方的共同赢利。苹果公司打造了一个参与方共同受益的业务系统。
    学习大数据营销思维(下)
  • 纯干货:HLS 协议详解及优化技术全面解析
    编程学习网:HLS (HTTP Live Streaming), 是由 Apple 公司实现的基于 HTTP 的媒体流传输协议。他跟 DASH 协议的原理非常类似,通过将整条流切割成一个小的可以通过 HTTP 下载的媒体文件,然后提供一个配套的媒体列表文件给客户端,让客户端顺序地拉取这些媒体文件播放, 来实现看上去是在播放一条流的效果。HLS 目前广泛地应用于点播和直播领域。
    纯干货:HLS 协议详解及优化技术全面解析
  • 关于Python 代码全面分析
    欢迎各位阅读本篇,Python(KK 英语发音:/ˈpaɪθən/)是一种面向对象、直译式计算机程序设计语言。本篇文章讲述了关于Python 代码全面分析。
    关于Python 代码全面分析
  • es详解-原理-es原理之索引文档流程详解
    ElasticSearch中最重要原理是文档的索引和文档的读取,本文带你理解ES文档的索引过程。ES详解 - 原理:ES原理之索引文档流程详解文档索引步骤顺序单个文档多个文档文档索引过程详解整体的索引流程分步骤看数据持久化过程深入ElasticSearch索引文档的实现机制写操作的关键点Lucene的写Elastics
    es详解-原理-es原理之索引文档流程详解
  • 五大“网管”必备的网络数据分析工具
    是不是在为如何分析统计网络数据和流量烦恼呢?想不想监控、运维、排障轻松一些?下面给大家提供一些免费网络分析工具,以帮助大家更好的掌控自己的网络!编程学习网教育
    五大“网管”必备的网络数据分析工具

目录