oracle大数据处理方式

在 Oracle 中利用 `ORA_HASH` 高效处理大规模数据:并行分片的最佳实践20241008 oracle 阅读详情

关于数据库大数据处理的方案,有很多不错的Blog,提出很多的解决方案,所以呢自己也想整理一下关于这方面的内容,如果只是把别人整理的总结Copy到这就没什么意思了,甚至在面试的时候会经常被问到怎么样来处理大数据和高并发的解决方案,再说了网上也有很多重复的内容,把一篇文章Copy来Copy去的!来点个人见解吧!


现在的做的Java WEB项目有几个算得上是大数据的,很少的,基本上整个数据库加起来也就几十万条的数据量,像那些数据量相当大的网站或是系统基本上都是有很多服务器或是配置很高的服务器来支持的,最近做了一个项目数据量在千万级别,数据库表空间实际用到的也就3GB左右,这种数据量算不上是什么大数据,但是在开发的过程自己花了不少的功夫,根据自己的经验分享一下关于这种大数据处理的方案,这只是个人经验!

第一、首先解决SQL的问题

首先不考虑使用什么其它的第三方的,就单纯的SQL,写出查询效率高的SQL语句,一个数据库报表,可以使用不同的关键字和不同的SQL来实现,写出不同的SQL比较一下,哪一种查询效率高、哪一种查询效率快,这种是最直接的!

第二、建立分区表或是历史数据表

对于数据量特别大的表建立分区表或是历史数据表,比如像订单表、交易流水录表等等,这个可能根据数据量的大小来定,比如我在做上一个项目的时候,一天的交易流水最多也就不到1万条,按照这种数据量的增加,按一年建立一张分区表,一年下来差不多一张表的数据量也就在300万左右。或者是再加上一个查询历史交易的功能,还或者是限定查询的时间,比如只能查询一个月或是一个季度内的数据,许多大网站都是这么干的!

第三、通过建立定时任务或是跑批做出统计数据,即建立数据统计表

以前,在项目里增加定时任务,比如在夜里1点左右通过定时任务对当天的交易做出统计并将数据单独存储在一张表,统计的数据如当天消费有多少笔,消费的总金额是多少,当天退货有多少笔和当天退货的总金额是多少;做出月统计表、季度统计表、年统计表;这样的话,一张表的数据量也就相当的少了,这其实就是静态数据!同时这种方式也会解决所谓高并发带来的服务器压力和访问慢的问题!

但是这种方式会有问题,问题不在于统计的数据,而是在于定时任务,曾经因为定时任务也的过多、执行的过多导致对事个系统的影响,那时不得不重启服务器;所以有一个很好的方式就是将定时任务独立出来,写一个jar包,然后在Linux上写一个定时执行jar包的SHELL脚本,把这个jar包部署到Linux服务器上就可以;而且使用Linux SHELL写一个定时任务是很简单的,不过我觉得这种方式相对来说比较好一点,不过呢一定要做好日志的处理;我做的方式就是在jar包里通过Log4j日志跟踪,同时又建立一张跑批的历史表来记录是否跑批成功,如果跑批失败,我又在jar写了一个邮件处理功能,即会像指定的邮箱里发送邮件通知!

第四、建立静态的HTML页面

可以使用这种方式,比如像按年度统计的这种数据基本上来说就是不会变的,然后把年度数据直接写在HTML中,直接访问HTML静态页面,也就是按年做每一年数据的静态页面,做出每一年每一个季度甚至是每一个月的静态数据,而且这种方式会减轻服务器和数据库很大的压力。

只不过这种方式是手动建立静态页面,其实也可以通过一些模板技术来像FreeMarker和Velocity建立静态页面;

不过,在我的项目中我没有采用这种方式来处理,原因肯定是有的:1、统计表的数据量很小,而且这些数据都已经是处理好的,直接的一个简单查询就可以完成,没有必要再去建立一个静态页面;2、不想采用两种方式做一样的事情,就是很多历史数据我是需要作对比的,比如同比,即今年的某一月份和去年同时期的消费对比,今年的营业总额和去或是前年的总额的对比;3、系统的访问量也不是很大就几十个,没必要那么做。综合一下,没有采用种方式!

第五、不要过于依赖于JavaWEB框架

像这种大数据量,不要过于依赖于,甚至可以说不要使用Struts、Hibernate、Spring MVC、Spring、IBatis等JavaWEB框架,真的,我觉得使用这些框架也真不比使用纯的JDBC强到哪去,除非你有很好的例子来证明这些框架在处理大数据来说一个很好的工具,之前,我在上家公司做的外包项目,使用使用Spring MVC、Spring、Hibernate,区区50万条的数据量,系统运营起来就有那么点吃力了,压力测试就更是个问题了!

当然在这个项目中没有使用SSH框架,是使用我们公司一个牛人写的一个简单易懂的框架!

除了以上这五种方式外,还有其它很多细节上的,简单的再说几个:1、可以建立表的索引字段、但不能建立太多的索引,太多的话就没什么效果了;2、不使用Oracle的Sequence方式建立主键;3、主键使用CHAR类型比使用VARCHAR2类型查询效率要高等等。

Bingdata优网助帮汇聚多平台采集的海量数据,通过大数据技术的分析及预测能力为企业提供智能化的数据分析、运营优化、投放决策、精准营销、竞品分析等整合营销服务。

北京优网助帮信息技术有限公司(简称优网助帮)是以大数据为基础,并智能应用于整合营销的大数据公司,隶属于亨通集团。Bingdata是其旗下品牌。优网助帮团队主要来自阿里、腾讯、百度、金山、搜狐及移动、电信、联通、华为、爱立信等著名企业的技术大咖,兼有互联网与通信运营商两种基因,为大数据的算法分析提供强大的技术支撑。

 

Oracle数据库关于大数据的处理 从网上查询关于数据库大数据处理的方案,有很多不错的Blog,提出很多的解决方案,所以呢自己也想整理一下关于这方面的内容,如果只是把别人整理的总结Copy到这就没什么意思了,再说了网上也有很多重复的内容,把一篇文章Copy来Copy去的!来点个人见解吧! 现在的做的Java WEB项目有几个算得上是大数据的,很少的,基本上事个数据库加起来也就几十万条的数据量,像那些数据量相当大的网站或是系统基本上 阅读详情

相关推荐

Orace技术网开发人员日——云计算和大数据参加笔记

1、Oracle EnterpriseManager 12C Oracle最新的数据库管理工具,应用于私有云的管理,其主要功能在于能够整合现有的系统应用,已达到资源的优化以及统一管理的目的,具有“规划——设置——构建——测试——部署——监视——管理——计量和计费——优化”的生命循环周期。12C可自动扫描现有各台服务器的硬件配置,各个应用系统的数据库版本等资产,并根据扫描后的数据进行分析,

积跬步,至千里 1256

Oracle中如何更新一张大表记录

SQL语句是一种方便的语言,同样也是一种“迷惑性”的语言。这个主要体现在它的集合操作特性上。无论数据表数据量是1条,还是1亿条,更新的语句都是完全相同。但是,实际执行结果(或者能否出现结果)却是有很大的差异...

ciqu9915的博客 658

浅谈大数据与智能电厂

浅谈大数据与智能电厂 ——2015\6\12 前段时间,IBM刚刚宣布了一项新技术HyRef,用于能源电力行业,该技术结合大数据分析和天气建模,旨在提高可再生能源的可靠性;钢铁集团济钢公司也后脚使用IBM的Con

如锡如璧 6574

Oracle 大表数据删除/清理方法小结

costdown遇到了大量数据清理的需求,整理下基本思路及方法。

Hehuyi_In的博客 9868

ORACLE中对大数据量表的处理方法

大数据量表的处理方法对新手很有帮助,希望大家踊跃下载

【黑马点评优化】2-Canel实现多级缓存(Redis+Caffeine)同步

【黑马点评优化】2-Canel实现多级缓存(Redis+Caffeine)同步

m0_52031708的博客 3848

oracle 大数据常见优化 &分页查询

oracle 大数据常见优化 &分页查询

weixin_41071497的博客 2245

【win10+RAGFlow+Ollama】搭建本地大模型助手(教程+源码)

在当今科技飞速发展的时代,人工智能(AI)已经成为各行各业不可或缺的一部分。特别是在文档处理和数据分析领域,AI的应用更是无处不在。今天,我要向大家介绍一个开源的AI框架引擎——RAGflow。它能够在深度文档理解方面执行检索增强生成(Retrieval-Augmented Generation,简称RAG),并且被认为是目前最优秀的RAG框架之一。本文将详细探讨RAGflow的创新功能、技术特点以及如何在实际应用中发挥其最大潜力。

Yooao的博客 9618

oracle中大字段处理deepseek

oracle什么版本中有的。

Ike__的博客 399

【WebApi + Sqlserver】 使用C#编写WebApi并打开sqlserver数据库进行访问,代码适用于简单练习,真实开发需自行完善

【WebApi + Sqlserver】 使用C#编写WebApi并打开sqlserver数据库进行访问,代码适用于简单练习,真实开发需自行完善

2302_78387246的博客 3592

vscode远程连接deepin出错:过程试图写入的管道不存在的解决方法

背景:昨天我用vscode使用ssh远程开发还处于正常状态,今天刚打开电脑,并启动deepin,再次使用vscode重新连接就出现异常。意思就是22号默认端口连接被拒绝,所以要先确定ssh是否连接。3.重新进入vscode里面,重新连接,如图成功连接。,查看port后面的端口号是不是22号。1.检查sshd是否启动。

qq_43573047的博客 2946

Oracle11G_逻辑备份

备份分类:物理备份(数据库文件、日志文件、控制文件等备份)、逻辑备份(对数据库逻辑组件,如表、视图、存储过程等备份);物理备份更加复杂;故障分类:1 语句故障,由oracle服务器端程序自动处理 2. 用户进程故障:由服务器端进程PMON关闭与之对应的服务端进程,用户不需要参与 3 实例故障:重启服务器 4. 介质故障:需要用户端处理导出命令:exp,将数据库对象定义及数据备份到一个二进制文件...

weixin_34007291的博客 192

深度学习模型设计的方法和技巧

设计神经网络模型是一个迭代的过程,需要不断试验和调整各个组成部分,以达到最佳性能。同时,遵循良好的工程实践,如模块化设计、版本控制、文档记录等,也是成功的关键。

xw555666的博客 4027

oracle sql server语法,oracle与sqlserver的十大语法的区别

--DBMS 数据库管理系统--1.数据类型不同。--sql server 的数据类型:int,smallint,char,varchar,nchar,nvarchar,ntext,datetime,smalldatetime,money,decima,--float,bit……--oracle 的数据类型:number(p,s),varchar2,Date,LOB--注意:insert into...

weixin_42365586的博客 245

PCL Trimmed ICP实现点云精配准【2025最新版】

博客长期更新,本文最新更新时间为:2025年6月25日。抄袭狗记得来抄最新代码哦,抄都抄成错的,不够丢人钱。

点云侠的博客 37万+

【人工智能】AI驱动值班巡检Agent(Hermes)

传统运维值班巡检场景中,存在四大核心痛点:本项目基于 Agent+Skills+浏览器自动化 架构,构建了具备自我进化能力的AI值班员,核心逻辑流如下:

奶爸的编程之路,也就一周冷个三天 178

大数据可能是一场骗局

编者按:本文作者冯大辉,丁香园CTO,雷锋网特约撰稿人,想要联系的读者可以在微波@Fenng。 几乎每天都能看到有人在谈论大数据,让人好生厌烦。什么是大数据(Big Data) ? 简单一点可以理解为超出传统数据管理工具处理能力的大规模、复杂的数据集合(1)。判断是否数据大数据的范畴,要从三个维度来衡量:数据量(Volume)、处理速度( Velocity)以及数据种类(Variet...

轻轻草原 1046

反光柱定位算法实战03:VEnus代码解析和纯反光柱定位中的可改进方向

本文深入解析了开源框架VEnus的反光柱定位与建图实现流程,包括强度提取、聚类、数据关联、位姿优化等核心模块。同时指出其三大局限:匹配质量脆弱性、单一传感器依赖和地图扩展逻辑缺失,并提出改进方向:融合里程计/IMU数据、引入图优化后端、建立动态地图维护机制。该分析为基于反光柱的定位系统优化提供了实用参考,有助于提升工业场景下的定位鲁棒性和精确性。

Studying…… 520

oracle、mysql 建表语句转为hive的建表语句的区别

oracle、mysql 建表语句转为hive的建表语句的区别 1、hql需要在表名前加上层级名称. ;建表语句区分一:表名称 create table student -- oracle sql create table ods.student -- hive sql 2、数据数据类型对应关系;建表语句区分二:字段数据类型对应关系 oracle/mysql hive varchar(XX) string number(16) decimal(16,0) DATE string 3、注

qq_43528451的博客 833

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

JDBC: 批量处理提高SQL处理速度

当需要成批插入或者更新记录时。可以采用Java的批量更新机制,这一机制允许多条语句一次性提交给数据库批量处理。通常情况下比单独提交处理更有效率 JDBC的批量处理语句包括下面两个方法: addBatch(String):添加需要批量处理的SQL语句或是参数; executeBatch();执行批量处理语句; 通常我们会遇到两种批量执行SQL语句的情况: 多条SQL语句的批量处理;

NotPerfect-EOF 1636

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Oracle LOB 字段导出慢的处理方式

• 说明:增加 DB_FILE_MULTIBLOCK_READ_COUNT 参数的值,可以提高多块读取的效率,减少 I/O 次数。• 说明:将 LOB 数据文件分配到不同的文件系统、控制器和物理设备上,可以均衡 I/O 负载,减少 I/O 瓶颈。• 说明:增加 PGA_AGGREGATE_TARGET 参数的值,可以提高内存的缓存能力,减少 I/O 操作。– 查找大于 100MB 的 LOB 段。• 说明:尽量减少返回的 LOB 字段数量,只选择需要的列,可以减少 I/O 操作次数,提高导出速度。

m0_47457931的博客 1167

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

关于oracle大数据量表添加字段问题

向oracle中添加字段遇见的问题 问题: 在工作中有一个情况需要向一个数据量很大的表中新加两个字段,而在整理出当前字段的插入sql时,添加了默认值为0. alter table user_info modify id_card number(20) defalut '0'; 现象: 因为这个表存在着大量的的数据,甚至是过亿。所以在执行这条sql的时候非常耗时,而且在执行这个sql的时候将会把这个表锁住,从无法执行其他操作。甚至可能导致数据库卡死。 alter table user_info modif

ainaoi的博客 5516

大数据时代让oracle跑的更快

大数据时代的来临不仅使得Hadoop、MangoDB等新技术横行,也对传统数据库如oracle产生了巨大的影响。为了应对海量的数据,oracle可以从以下几方面进行优化。 一.架构: 这里主要是使用集群技术,进行横向扩展,将一台数据库的负载分散到多台,从而提高数据库性能。 二.分区: 当表中的数据量不断增大,查询数据的速度就会变慢,应用程序的性能就会下降,这时就应该考虑对表进行分区。表进行

zsh2050的专栏 1852
上一篇: 数据的本质是什么?
下一篇: 大数据VS小数据:9种数据类型及利用方法
bingdata123
博客等级 码龄9年 187粉丝 12原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值