之前用 mysql 数据库,数据分析涉及多表 join 时,性能很慢。
于是用了 python 的 pandas 。
但是,最近发现,直接用 oracle 数据库,各种开窗函数、存储过程随便写,完全不担心性能问题,速度吊着 mysql 和 python 锤,直接起飞了。
更离谱的是,我在同样配置的两台机器上,按照默认参数安装了 mysql 、oracle (都没有做任何优化),同样的表结构和索引(用 Navicat 直接迁移的),一千万条的数据做多表 join ,sql 一模一样,mysql 半天还没出结果,oracle 只要 30 秒。。。。
1
iyiluo 2023-12-01 17:38:12 +08:00
mysql 8 有 hash join 了,试试新版。oracle 收费这么贵,性能确实好
|
2
whitehack 2023-12-01 17:41:57 +08:00 3
建议再搞个 postgresql 相同条件测试一下.让这个帖子更有价值
|
3
Rorysky 2023-12-01 17:44:37 +08:00
最近刚在 weibo 看到了 oracle 数据库由几千万行代码,每次新增功能或 bug 修复都是惊心动魄的帖子
|
4
tomorrow092 2023-12-01 17:48:30 +08:00
在我 酱香 面前就是个弟弟
|
5
iminto 2023-12-01 18:26:16 +08:00 via Android
十几年前的时候,我负责某省级运营商的一块业务,需要定期做统计报表,数据量千万级,新业务用的 mysql 。
最快的做法就是把数据从 mysql 导出,再导入 oracle ,在 oracle 里统计完导出结果 |
6
enchilada2020 2023-12-01 18:41:31 +08:00 via Android
@iminto 离谱。。。。
|
7
enchilada2020 2023-12-01 18:42:40 +08:00 via Android
@iminto 啊 看错了 还以为处理完还要再导回去🤣
|
8
adoal 2023-12-01 18:55:54 +08:00 2
MySQL 就是主打单表傻快迎合互联网。正经业务系统里的复杂查询需求,正经 RDBMS ,不论是 Oracle ,还是 MS SQL Server ,还是 PG ,还是 DB2 ,都可以的。当然,正经 RDBMS 里确实 Oracle 优化经验更老道。
|
9
june4 2023-12-01 19:27:13 +08:00 1
没有任何信息不好评价,起码发下查询计划对比
|