`
dylan0514sina.cn
  • 浏览: 94906 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

web大数据导出

    博客分类:
  • any
 
阅读更多
关于csv文件导出的开源框架很多,可以到http://sourceforge.net/search/?type_of_search=soft&words=csv去了解学习。在典型的基于java的MVC框架中,当要下载数据时需求在页面上添加链接或按钮,触发一次请求返回一个流,在响应中指定mime type类型比如
response.setContentType("application/ms-excel;charset=gbk")
。常用的web框架struts2,webwork,Spring MVC都提供了一致的方式只要你构造一个流。流行的eXtremeComponents分页工具直接向当前页的信息写入到内存中,用一个ByteArrayOutputStream实现,对于分页数据来讲一页通常都不大,内置的导出功能通常也没有问题。当需要根据条件导出所有数据时,对于下载数据很大的情况,更确切的来讲对内存很有影响,一般来讲CPU开销通常都不是问题。对于这种在web界面导出大数据(不是指现在流行的“大数据”)的需求,可以直接在数据库端用存储过程实现,这通常比较容易实现:只需要固定在某时写入到文件中,供后续下载。DB2有相应的工具集导出直接通过SQL导出数据,只需要一个命令而已,前提是要有权限去执行这种命令操作。不管是用何种处理方式:jdbc或存储过程,都不可能把数据集放在一次性放在内存中处理。常用游标作为解决实现,使用游标循环结果集的时候,非常注意循环体代码,不要搞对象封装、缓存因此不要用持久化框架;代码简洁,越少越好;循环体的代码,尽量保证少一些耗内存的不必要代码。特别不要乱用一些开源的API。JXL和POI,搞的很高深;搞数据库中的字符和系统中对应的枚举中文输出转化也是不必要的,总之代码尽量保持简洁。在本系统中开发了一个JAR包用于支持大数据导出。
    使用多线程的方式
    统一接口调用,sql统一配置
    生产者消费者模式避免内存溢出
    使用现成的web压缩技术
    避免异常处理
    日志支持
    可扩展,实现自己的输出而非WEB Response
    十分高效,经测试,数据输出速度可达 10MB/s(数据库非本机,同一内网)
    可配置JDBC连接与CPU核数比例,1是最高效的。如果CPU核数太高,比例配置低些,至少不影响同一系统中的其他的业务操作的JDBC连接请求
0
0
分享到:
评论

相关推荐

    CSV大数据分批并压缩导出

    在“csv大数据导出”这个压缩包文件中,可能包含了示例代码、教程文档或者案例研究,帮助开发者理解如何实施这种分批并压缩导出的方法。通过学习和实践,开发者可以掌握在大数据场景下,如何利用CSV格式和分批压缩...

    ABAP 常用功能eg emai send & post & 钉钉&微信发送&长文本读取&大数据导出

    5. **大数据导出**:在处理大数据时,ABAP提供多种工具,如`CL_BCS`(Business Communication Services)用于生成Excel文件,或者`CL_GUI_FRONTEND_SERVICES`类的`DOWNLOAD_FILE`方法进行文件下载。对于大规模数据,...

    web 导出EXCEL

    当数据超过这个范围时,后页的数据可能无法正常显示,这就需要我们采取特殊策略来处理大数据导出。 一种常见的解决方案是分页导出。通过在前端或者后端对数据进行分页,将大文件拆分成多个小文件,每个小文件包含一...

    thinkPHP实现数据库数据导出Excel表格

    ThinkPHP是一个广泛使用的PHP框架,它提供了丰富的功能来帮助开发者更高效地构建Web应用。在这个场景中,我们将探讨如何使用ThinkPHP来实现数据库数据的导出功能,特别是将数据转化为Excel格式。 首先,我们要了解...

    javaweb异步导出

    8. **性能优化**:对于大数据导出,可以考虑分批处理,每次导出一部分数据,然后合并成一个完整的文件。还可以利用流式处理减少内存占用,避免一次性加载所有数据。 9. **错误处理**:无论是前端还是后端,都需要对...

    JAVA导出数据到excel中大数据量的解决方法

    web项目中需要有将数据导出excel的操作需求 使用html格式导出方法,但在导出时,根据最大行数重新建立新的excel文件; 数据从数据库取出使用纯jdbc方式读数据,边读边向文件中写; 待所有数据写完,将各个小excel...

    WebAPI.ExportExcel:用于导出 Excel 的 Web API

    WebAPI.ExportExcel 是一个专为实现 Excel 导出功能的 Web API 解决方案。这个 API 主要被设计用于 web 应用程序,允许用户通过简单的 HTTP 请求从服务器获取并下载 Excel 文件。在 JavaScript 开发环境中,这样的...

    excel大数量导出理论

    在大数据导出中,它们可以用来压缩多个Excel文件,创建一个单一的ZIP档案,从而便于用户下载和存储。ZipOutputStream允许我们创建ZIP文件流,将多个流(如每个Excel文件的流)压缩到一个输出流中。而ZipInputStream...

    大数据产品开发流程规范-大数据开发步骤和流程.pdf

    4) 数据导出:借助Sqoop这样的工具,将处理后的数据导入导出到其他系统,如关系数据库或数据分析平台。 5) 数据可视化:通过定制开发Web程序或使用Kettle等可视化工具,将数据转化为易于理解的图表和报告,帮助决策...

    Easyui+SpringMVC导出Excel

    在实际项目中,可能还需要考虑性能优化,如批量处理大数据,以及安全问题,防止恶意导出大量数据。此外,还可以通过调整Excel样式,使导出的文件更符合用户需求。总之,这种组合能有效提升开发效率,同时满足用户的...

    HADOOP大数据平台系统思路流程图

    HADOOP大数据平台系统思路流程图 基于HADOOP大数据平台系统思路流程图,我们可以总结出...在HADOOP大数据平台系统中,web项目可以与HADOOP大数据平台结合,实现数据交换和数据分析,支持通过各种数据源和目标系统。

    大数据应用测试经验总结.pdf

    大数据应用测试与传统的Web系统测试有很大的差异,主要因为它涵盖了从数据采集、处理到应用展示的整个流程。测试分为Web侧和ETL侧,Web侧主要进行功能测试,而ETL测试涉及数据的提取、转换和加载。 在技术架构设计...

    extjs4导出excel

    6. **错误处理与优化**:处理可能的异常,如网络错误、数据格式错误等,并优化导出性能,比如分批导出大数据集。 在描述中提到,你对这个功能做了一些修正,可能包括修复了某些特定问题,比如浏览器兼容性、数据...

    大数据项目开发实训.pdf

    在案例中,选择了Scrapy框架,它是一个强大的Web抓取框架,适用于构建可扩展的爬虫项目。Scrapy提供了一套完整的架构,包括请求调度、网页解析、数据提取等组件。Wuyou.py文件中的Scrapy Spider类定义了爬虫的行为,...

    hue-4.2大数据监控利器

    Hue是大数据生态系统中的一款重要工具,它为用户提供了友好的Web界面,用于交互式地查询、分析和管理Hadoop集群中的数据。Hue 4.2是其一个稳定版本,对于大数据监控和管理工作来说,是一个非常实用的利器。在这个...

    大数据cdh组件

    4. **Hue**:一个Web界面,用于交互式地浏览、操作和管理CDH集群,使得非技术用户也能轻松使用Hadoop。 5. **Kafka**:一个分布式流处理平台,用于实时数据管道和流应用,支持高吞吐量的消息传递。 6. **Solr**:...

    DataX Web安装教程及使用中的常见问题

    DataX Web是一款基于DataX的数据集成工具,它提供了一个可视化的操作界面,便于用户进行数据的导入导出工作,使得数据源的配置、任务的调度、任务的监控更加直观易用。DataX本身是由阿里巴巴开源的一款数据同步工具...

    java实现csv导出千万级数据实例

    在IT行业中,处理大量数据是常见的挑战之一,尤其是在数据导出方面。本实例聚焦于“java实现csv导出千万级数据实例”,旨在提供一个高效、稳定的解决方案,避免因数据量过大而导致的性能问题,如Java中的栈溢出...

    使用C#将大数据从GridView和DataReader导出到Excel文件

    在.NET开发环境中,C#是一种常用的编程语言,用于构建各种应用程序,包括Web应用程序。当我们处理大数据时,有时需要将这些数据导出到Excel文件中,...理解和掌握这些技术,能够帮助开发者更有效地处理大数据导出任务。

Global site tag (gtag.js) - Google Analytics