`

海量数据的删除策略

 
阅读更多

编辑:http://www.iteye.com/topic/922315

 

1.延迟删除
一条数据会被很多数据引用。当被引用的数据删除时,引用的数据也需要删除。这时候可以用延迟删除的方法。
例子:
用户发表的帖子,可以被转发到很多地方。所有转发过的贴都是对原帖的引用,用户接着把他的原帖删除,所有被转发过的帖子也需要进行清理。我们采用 的是延迟删除的方法,用户操作时,先直接删除原帖,被转发的贴,在点击时,会到原帖加载内容,这时发现原帖已经不存在,此时这条被点击的转发贴也会被删 除。

当用户访问引用的数据时,发现被引用的数据不存在,此时删除引用的数据。

2.线下删除
一条数据关联到很多数据。但这条数据是所有其他数据的入口。
例子:
一个扣扣群里,会有很多内容,相册,图片等等。在解散扣扣群时是不可能同步删除和该群相关的所有数据的。此时可以用线下删除的方法。先将扣扣群的 状态置为 inactive(解散)状态。然后提交一条任务,在指定的时候将所有和该扣扣群相关的数据都删除。任务可以在系统负载比较低的时候触发。因为扣扣群的状 态已经被设置为inactive状态,它也不会再被其他人访问到。所有访问需要加状态进行判断。

3.异步删除
当某个系统的服务和其他系统的服务做了集成后,业务数据就可能是相互关联的。当某个服务的数据被删除时,需要通知相关联的所有系统删除和他相关联的数据。
例子:
用户会对他所加入的群进行了偏好设置,比如对某个群的评价,是否接收该群的通知等等。而这些数据是存在用户系统(其他服务器)上的。当一个群组被 解散时,无法同步地调用用户系统的服务删除所有的数据。因为一个群组可能有几万甚至更多的成员。此时可以用异步的方式通知用户系统,群组系统发送一条“群 解散”消息给用户系统,用户系统接收到消息后,会把所有相关联的数据都清除。

延迟删除结合使用:
如果数据量很大的话异步删除也需要相当长的时间,这时可以结合使用延迟删除的方法。
当用户在用户中心点击某群的偏好设置时,系统发现该群组已经被删除,就通知用户该群不存在,并删除相关的偏好设置。

线下删除结合使用
数据量很大如果立即删除会给系统突发地带来相当大的负载,甚至可能会引起用户访问的响应率降低。这时需要采用线下删除的方法,将删除任务分割成很多很小的任务。分批地提交给系统定时处理。

4.不删除
有些相关联的数据,重要性很低,又有有效期。我们是不会再花费额外的代价去删除它们的。

例子:
系统会记录用户的访问足迹。用户可以查询他的这些访问足迹。
您在2011.02.03在群组B(链接)回复了C(链接)发表的帖子D(链接)。
当B被解散或D被删除后,不需要主动去清理这条数据。因为所有的访问足迹都是有有效期的,当有效期到了的时候,这条数据就会被自动清除。
但是当D被删除后,用户点击D链接会提示用户404。

分享到:
评论

相关推荐

    一种基于云计算的海量数据分布式存储策略.pdf

    本文介绍了一种基于云计算的海量数据分布式存储策略,该策略通过划分服务区域并采用多层服务器集群的方式,实现了用户无论在何时何地都能高效、正确、完整地访问所需数据的目标。该策略还解决了数据副本数量的问题,...

    百亿级别海量数据删除方案(不停机维护)

    ### 百亿级别海量数据删除...综上所述,对于百亿级别的海量数据删除工作,在不停机维护的前提下,需要综合运用多种技术和策略,确保数据删除的高效性和安全性。同时,也需要密切监控系统的运行状态,确保业务不受影响。

    MySQL海量数据查询优化策略.

    在处理MySQL海量数据查询优化时,我们需要关注的策略包括但不限于以下几点: 1. 优化索引使用:避免全表扫描至关重要。为此,应当在查询条件(WHERE)和排序(ORDER BY)涉及的列上创建索引。索引有助于数据库管理...

    如何处理海量数据.pdf

    ### 如何处理海量数据 #### 一、挑战与难点 ...综上所述,处理海量数据需要综合运用多种技术和策略。只有深入了解这些技术和策略,并结合具体场景灵活运用,才能有效地管理并充分利用这些宝贵的资源。

    虚拟列表快速显示海量数据

    在IT行业中,尤其是在开发大型数据应用时,如何高效地处理和显示海量数据是一个常见的挑战。`DataGridView`控件是Windows Forms应用程序中常用的一种用于显示表格数据的组件,它提供了丰富的功能,包括排序、筛选和...

    大数据量,海量数据 处理方法总结

    ### 大数据量,海量数据处理方法总结 在IT领域,特别是大数据分析、数据库管理和算法设计方面,处理海量数据的能力是至关重要的技能之一。本文旨在总结处理大数据量、海量数据的有效方法,涵盖从理论基础到实际应用...

    海量数据查询优化

    在处理海量数据时,有效的查询优化策略至关重要。以下是一些优化查询性能的方法: 1. **选择合适的索引策略**:根据查询模式创建索引,特别是对频繁出现在WHERE子句中的列。考虑创建复合索引,如果查询经常基于多列...

    海量数据处理总结(大量数据处理)

    本文将围绕“海量数据处理”这一主题,详细探讨几种核心的技术方法,包括Bloom Filter、Hashing以及Bit-Map,它们在实际场景中的应用以及优化策略。 #### 一、Bloom Filter:高效的空间换时间 Bloom Filter是一种...

    SQL 海量数据查询

    ### SQL Server 海量数据处理:查询、插入与删除 在现代数据分析与企业级应用中,高效处理海量数据是IT专业人员必须掌握的关键技能之一。本文将深入探讨SQL Server环境下如何进行大规模数据的操作,包括查询、插入...

    C++海量数据求最大值程序

    在C++编程中,处理海量数据是一项挑战,尤其是在找出数据中的最大值或前n个最大值时。这里我们将深入探讨如何利用数据结构有效地解决这个问题。首先,我们要理解,当面对大规模数据时,直接使用简单的线性搜索算法是...

    海量数据处理的方法

    ### 海量数据处理的方法详解 #### 一、Bloom Filter **定义**: Bloom Filter是一种高效的数据结构,用于快速判断一个元素是否在一个集合中。它使用位数组和多个哈希函数来实现。虽然Bloom Filter可能会产生误报...

    python 做海量数据处理

    在Python中进行海量数据处理是一项挑战,因为Python解释器在内存管理和性能方面相对于其他专为大数据设计的语言(如Java或C++)可能稍显不足。然而,通过一些策略和技巧,我们可以有效地处理大规模数据。以下是从...

    常见的海量数据处理方法

    ### 常见的海量数据处理方法 在大数据时代,如何高效、准确地处理海量数据是许多企业和组织面临的关键挑战之一。本文将详细介绍几种实用的数据处理方法,包括但不限于算法优化和技术选择,旨在帮助读者更好地理解和...

    大数据量,海量数据处理方法总结[转][文].pdf

    【大数据量,海量数据处理方法总结】 大数据量的处理是现代信息技术领域的重要课题,尤其在互联网巨头如百度、谷歌和腾讯等公司中,这类问题尤为常见。本文将概述几种处理海量数据的有效方法,包括Bloom Filter、...

    海量数据的MySQL数据集

    综上所述,“海量数据的MySQL数据集”是一个丰富的资源,涵盖了MySQL在大数据处理中的各种技术,包括优化策略、导入方法、存储引擎选择、数据冗余和复制、以及数据分析。对开发者和数据分析师来说,这是一个学习和...

    论文研究-海量数据快速批量处理的研究与实现.pdf

    本文是关于海量数据快速批量处理的研究与实现的论文,重点研究了在数据库应用中如何快速大批量抽取和处理数据,并针对特定需求提出了基于共性特征的数据集进行交互式批量处理和批量加工的实现方法。 1. 海量数据的...

    海量数据去重的Hash与BloomFilter,bitmap1

    本文将深入探讨两种常用的技术:哈希和布隆过滤器,以及它们在处理海量数据时的应用。 哈希算法是数据去重的基础,它能够将任意大小的数据映射为固定长度的哈希值。在分布式一致性哈希算法中,哈希空间被组织成一个...

    基于文件路径的重复数据删除集群的数据路由策略 (2014年)

    重复数据删除集群是解决不断增长的海量数据备份需求的一种有效方法。它的关键问题是数据路由策略,即如何把数据合理分配到集群内的各个节点。目前的数据路由策略利用文件或者数据段的最小数据块签名计算路由目标节点,...

    大存储数据检索删除工具

    "大存储数据检索删除工具"的标题表明,它专注于在海量数据环境中进行快速查找和移除信息。 大数据,作为标签之一,是指那些传统数据处理工具无法有效管理的海量、高速生成的数据集合。这些数据可能来自各种来源,...

Global site tag (gtag.js) - Google Analytics