Java亿万级的数据分析_亿万级别的表数据处理方式

最近处理的一个数据表中的数据有大概6亿左右的数据,基本上都是一些基础信息,例如姓名,性别这种.如何读取处理这些数据的思路做一个简单的总结(oracle)

评估数据表

首先,数据表结构,每个字段的含义,类型;索引,主外键一定要清楚,以便后面对于数据进行分类处理.

数据分表处理

对于这种大表的读取,不能可能直接读取,否则越往后越慢.所以最好对大表进行分片,比如5亿数据,1000万或者5000万一张表,我在实际环境中,基本都是1000万一张表.

oracle中分表的话,直接用创建表的方式进行分表.最好不要在原表上操作,可以拉一份表,原表不动.接下来对拉过来的表进行一些预处理.

1)字段是否有主键,索引,如果没有则需要创建

2)表中是否有适合分表的字段,比如说是否有递增序列号,如果没有则进行要分页.或者给表增加一个字段,然后将rownum更新进去,然后在进行分表.

3)分表的时候最好有一个主键,如果没有的话,那么给相应的列建立索引.

处理分表的异常数据

分完表后就要对表数据进行一个处理,要么请求获取另一些数据,要么将数据发送给第三方服务.那么处理过程中难免会有异常情况(空数据,重复数据)出现,对于这些数据的处理需要记录下来,可通过日志,或者写入数据表记录异常数据.

对于oracle数据分表处理,另一篇博客有介绍,在此不累赘了.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值