有一个关于数据库百万级的问题问一下

2019 年 3 月 11 日
 13192262269
要将废卡,坏卡进行回收(要在海量(百万级)数据里进行查询,然后导出卡信息(过十万级)给制卡商,让制卡商制卡)

有没有老哥,给个好的思路方案,如何高性能实现上面要求?

公司项目说明:
1.一个手机卡资源管理系统,java 语言为主,使用 oracle 数据库
2.oracle 采用分级存储
5536 次点击
所在节点    程序员
46 条回复
13192262269
2019 年 3 月 11 日
有没有老哥,给个好的思路?愁死我了
dangyuluo
2019 年 3 月 11 日
你也不说数据库结构,有没有健可以利用,或者是根据什么进行查询。给不出建议。
dangyuluo
2019 年 3 月 11 日
健 => 键
ilyh
2019 年 3 月 11 日
百万怎么也称不上海量... 随便什么数据库都能 hold 住吧...
kxjhlele
2019 年 3 月 11 日
百万随便查询一下就出来了吧,数据量也不大
ysweics
2019 年 3 月 11 日
要相信 oracle 的能力
13192262269
2019 年 3 月 11 日
@kxjhlele #5
@ilyh #4
应该过千万了
@dangyuluo #2 根据某字段值去查,两张表 AB,每张表数据百万级,如:在 A 表查出一个值,将这个值放到 B 表查内容, 查出的内容将达到十百万级
6ufq0VLZn0DDkL80
2019 年 3 月 11 日
原来百万级就是海量了

起码定义下你说的高性能是多高吧
hellojinjie
2019 年 3 月 11 日
你要说明你的查询要在多少时间内完成啊?
如果只要在十秒内完成的话,不是很简单的事情嘛?
13192262269
2019 年 3 月 11 日
@cholerae #8 部门要求是,秒查出来想要的几十万信息,我想问一下,如何做到 ,菜鸟一枚请教一下
13192262269
2019 年 3 月 11 日
@hellojinjie #9 十秒内可以接受
thesharjah
2019 年 3 月 11 日
直接写 sql 查就行了 10s,扫个全表够了
jingxyy
2019 年 3 月 11 日
千万级只要索引建得合理也是妥妥的,用在 oltp 业务上都没啥问题,更合况你这听起来更像是 olap 业务,如果确实是 olap (比如制卡商一天查一次,不需要实时),那就更容易了,每天在旧表跑一遍过滤出结果放新表里,让查询请求查新表。

这个数据对于商业数据库来说真不算什么,你要不先用直接的思路试试,看看能不能达到要求,如果不能把问题说一下(比如用了 10 秒,你希望 1 秒以内,或者机器查不出来内存爆了之类的),具体的操作说一下(比如表的 schema,查询使用的 sql )大家才好帮你研究瓶颈在哪以及解决方案。
13192262269
2019 年 3 月 11 日
@thesharjah #12 @jingxyy #13 我这边扫到 67 万就出现了 out of memory 已经设置最大内存
jingxyy
2019 年 3 月 11 日
方便直接上代码么 关键字段脱个敏啥的 你现在说的完全没法定位问题= =
blless
2019 年 3 月 11 日
几十 W 数据是带宽跟 IO 问题了吧…
JamesR
2019 年 3 月 11 日
才区区百万级,搞笑,不行把数据导入到性能好的本机台式电脑上再处理。
no1xsyzy
2019 年 3 月 11 日
百万级不是 Excel 都能处理?
1762628386
2019 年 3 月 11 日
没啥问题 不加索引都没问题
daozhihun
2019 年 3 月 11 日
百万级直接关系数据库加索引就行了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/543272

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX