西西河

主题:【原创】无责任推测12306网站遇到的麻烦 -- 代码ABC

共:💬135 🌺246 新:
全看分页树展 · 主题 跟帖
家园 后台好象是ORACLE?

数据量很大的话传统的数据库如DB2、ORACLE之类的肯定力不从心,用NETEZZA之类的数据库比较好。

首先最笨的方法是,每个车次只存一条数据记录,然后关联另一张节点表(存放经停站点用)。这样查询余票的时候需要联合这两张表(还可能有计算)并汇总已有订票记录表。这种存放方式的特点在于数据冗余少。但是查询开销极大,因为需要访问一个庞大的订票数据表(每天2000万的增长)。如果哪个坚持数据库范式的DBA这么干,那么一定就悲剧鸟。

每天2000万增长其实还好,可以将日期设为PARTITION KEY进行分割,相当于把数据量固定在2000万。估计主要瓶颈还是你后面说的,不同起止点的组合查询,

全看分页树展 · 主题 跟帖


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河