0 0

关于大数据量的数据合并与处理3

目前正在做一个业务很简单,但数据量比较大的一个小项目。
需求:从数据库中取到三个条件对应的ID号,例如, A对应有2千万的ID,B对应有2亿的ID,C对应有4亿的数据,目前就这么三种,但是肯定要考虑到以后的扩展,也许还会  有4个,5个,6个的这样的Conditions. (A,B,C 其实是一个列表,会有很多的条件数据)。
功能:将A对应的ID,B对应的ID,C对应的ID进行Merge,或者根据前台的用户输入条件,进行AND,OR,NOT操作。(也就是将ABC...中对应的ID排重或条件排重后,得到  一个含有ID唯一的集合);Merge之后的集合根据条件的不同,数量级也不同。

 

目前,我自己写了一个Merge的方法,速度上还算可以:

 

Condition Numer  each Condtion Data

Merge time (ms)

10 100000000

1835

 

也就是说ABC...的条件数为10, 每个condition对应的DataNumber 为1亿, Merge所花费时间为:1835毫秒。

Merge之后的集合根据条件的不同,有些会比较大,而且不是一般的大,也许一个用户的操作,就可能占用10Mb的内存,目前是在单机上部署的,只能说是一个Demo。

但是如果真正的上线的话,需要进行支持线性扩展,目前的想法是应用前方再架一个F5,进行水平扩展,但是对应单机压力来说,还会比较大,特别是内存与CPU。

 

问题:

1.大家有没有更好的解决方案?目前我的这种做法只能再用户输入condition的时候进行Merge,我也想过使用Cache,但是因为A,B,C的条件是随意组合而且量比较大,如果说提前将所有的Merge结果保持住的话,不太现实,而且数据是按天在更新的。

2.是否有更精巧的解决办法,特别是分布式和线性扩展,还有需要支持的TPS为10就可以(内部系统,分析走势使用)?

3.目前使用的是Java,大家有没有更好的语言推介,可以支持分布式计算与并行计算的,例如 Erlang(我还没有研究过), hadoop目前是否支持在线计算?


问题补充:<div class="quote_title">hill007299 写道</div><div class="quote_div">用hadoop吧,定时把数据库里的数据同步到hdfs里面,再针对具体的集合操作写mapreduce job。</div> <br />谢谢您的回复,但是我还是不能采纳,因为这个是一个实时应用,说白了就是一个页面,用户可以查询的,hadoop任务计算是可以的,但是对应实时查询恐怕就不行了,我之前也使用过hadoop,对应实时计算来说不适合的。

1个答案 按时间排序 按投票排序

0 0

用hadoop吧,定时把数据库里的数据同步到hdfs里面,再针对具体的集合操作写mapreduce job。

2012年3月14日 21:17

相关推荐

    大数据量处理的解决方案

    大数据量处理的解决方案主要聚焦在如何有效地管理和分析海量数据,以提供实时的商业洞察。Style Intelligence的敏捷商业智能平台在这一领域展现出了显著的优势。该平台通过创新的技术,如内存数据库、高速分布式存储...

    Oracle 大数据量操作性能优化

    Oracle大数据量操作性能优化是指在处理大量数据时,如何提高 Oracle 数据库的性能。该优化技术涉及到多个方面,包括分区、Direct Insert、并行和排序处理等。 分区是 Oracle 中的一种优化技术,可以将大型表分割成...

    web 大数据量展示

    综上所述,处理Web上的大数据量展示涉及前端动态加载、AJAX请求、后端数据处理、数据可视化以及性能优化等多个方面。通过这些技术的巧妙结合,我们能够创建出既高效又能提供良好用户体验的大数据展示应用。

    大数据量多线程执行分页查询

    在IT行业中,大数据量处理是常见的挑战,尤其是在数据库查询中。多线程技术与分页查询相结合,可以有效地解决这一问题,提高系统性能并优化用户体验。以下是对标题和描述中涉及知识点的详细解释: 1. **大数据量...

    C#方法高效合并多个Excel表格,适用大数据量。

    综上所述,这个项目通过C#实现了对大数据量Excel表格的高效合并,可能的关键技术包括使用EPPlus库避免Interop接口,采用Copy方法的优化策略,以及利用内存管理、批处理和并发处理等手段提升性能。这为处理大量Excel...

    itext导出大数据量pdf

    标题中的“itext导出大数据量pdf”是指使用iText这个Java库来处理大量数据并将其转换成PDF格式的文档。iText是一个流行的开源库,主要用于创建和修改PDF文档,适用于各种业务场景,如报表、发票、证书等的生成。 在...

    Java读取大数据量Excel的方法(POI)

    在Java编程中,处理大数据量的Excel文件是一项挑战,因为Excel文件可能包含成千上万行数据。Apache POI是一个流行的库,专为处理Microsoft Office文档(如Excel)而设计,它提供了API来读取、写入和修改这些文件。在...

    envi大数据量镶嵌补丁

    在IT行业中,大数据量处理是一项挑战,特别是在遥感和地理信息系统(GIS)领域。"envi大数据量镶嵌补丁"是专为解决此类问题而设计的一个工具,它由IDL(Interactive Data Language)编程语言编写,并由知名的GIS软件...

    利用easyExcel导出上万条数据,自定义策略合并单元格

    本文将深入探讨如何使用阿里云开发的开源库EasyExcel来处理大数据导出,并结合Apache POI库,以及SpringBoot框架,实现上万条数据的自定义策略合并单元格导出。我们将基于提供的技术栈——EasyExcel 2.1.7,Apache ...

    大数据量数据存储的优化方案(银行项目)

    ### 大数据量数据存储的优化方案(银行项目) #### 一、背景介绍 随着银行业务的不断发展,银行信息系统积累了大量的历史数据。这些数据对于银行来说既是宝贵的资源,也是巨大的挑战。一方面,海量数据能够帮助...

    导出Excel 支持大数据量导出

    对于大数据量导出,我们主要关注BIFF8格式,因为它对内存的需求相对较低,适合处理大量数据。 **1. 数据分块处理:** 由于一次性加载大量数据可能导致内存溢出,jxl提供了分块写入的功能。通过设置`...

    C# 使用Tcp发送大量数据

    发送大量数据时,一次性发送所有数据可能导致缓冲区溢出,因此需要将大文件或大量数据分割成较小的数据块进行分批传输。以下是一个基本的示例,展示如何分块发送数据: ```csharp using System.IO; using System...

    .net 下的AJAX大数据量处理

    以下是一些关于在.NET下利用AJAX处理大数据量的关键知识点: 1. **分页与分块传输**:处理大数据最常用的方法是分页。通过限制每次请求的数据量,可以减少网络负载和客户端内存消耗。在.NET中,可以在服务器端实现...

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

    【大数据量,海量数据处理方法总结】 大数据量的处理是当今信息技术领域的重要议题,尤其是在互联网巨头如百度、谷歌和腾讯等公司中,处理海量数据的能力是衡量技术实力的关键指标。以下是一些常用的大数据处理方法...

    多个excel导出压缩成zip 文件 数据量大导出

    在IT行业中,大数据量的处理是一项常见的挑战,尤其是在数据导出和存储方面。"多个Excel导出压缩成zip文件"的场景通常是为了解决数据量过大导致的文件管理不便、传输效率低以及存储空间占用过多等问题。下面我们将...

    mysql大数据量优化

    MySQL数据库在处理大数据量时,性能优化至关重要。以下是一些关键的优化策略和技术: 1. **连接查询与子查询优化**: - **连接查询**(JOIN):当需要从多个表中获取关联数据时,使用连接查询通常比子查询更有效率...

    lucene检索文档、检索大数据量数据

    **Lucene 检索文档、检索大数据量数据** Lucene 是一个开源的全文搜索引擎库,由Apache软件基金会开发并维护。它为开发者提供了一套高效、可扩展的工具,用于在大量数据中进行文本检索。Lucene的核心原理是基于倒排...

Global site tag (gtag.js) - Google Analytics