千万级对数据库操作的总结
2010-03-12 21:12
239 查看
在处理千百万数据时在各个数据库都差不多,不同的数据库当然有点差别,在大容量数据的时候硬件首先得保证,提高IO的
能力。
在硬件保证的前提下,就用到数据库优化,在建立数据库的时候首先得设计好,比如:分表分区,一个表分开存在若干表或
不同的服务器。采用mod取模来分表,初期考虑采用mod(4)分成4张表,根据取模的结果0,1,2,3分成4张表,随着业务发展的
带来数据量的膨胀,访问压力加大,需要对表作进一步拆分,因为取模带来的特殊性以及拆表尽量不做数据迁移的原则,我
建议通过倍数来扩展,采用mod(8)来扩展表,接下来考虑使用mod(16)来拆分,
在数据库建立好时候,发现很慢的时候,还可以建一个簇索引再建几个非簇索引以减少数据表的热点。
还要注意查询的语句,不要用*号,尽量不要关联表,有子查询的时候第一次select 要降到最低。
建立常用库和历史库
MYSQL 少于百W级
MSSQL master数据库优化 百万级
ORCLAl 千万级
能力。
在硬件保证的前提下,就用到数据库优化,在建立数据库的时候首先得设计好,比如:分表分区,一个表分开存在若干表或
不同的服务器。采用mod取模来分表,初期考虑采用mod(4)分成4张表,根据取模的结果0,1,2,3分成4张表,随着业务发展的
带来数据量的膨胀,访问压力加大,需要对表作进一步拆分,因为取模带来的特殊性以及拆表尽量不做数据迁移的原则,我
建议通过倍数来扩展,采用mod(8)来扩展表,接下来考虑使用mod(16)来拆分,
在数据库建立好时候,发现很慢的时候,还可以建一个簇索引再建几个非簇索引以减少数据表的热点。
还要注意查询的语句,不要用*号,尽量不要关联表,有子查询的时候第一次select 要降到最低。
建立常用库和历史库
MYSQL 少于百W级
MSSQL master数据库优化 百万级
ORCLAl 千万级
相关文章推荐
- hibernate操作数据库总结
- Laravel框架数据库CURD操作、连贯操作总结
- C#操作数据库总结(vs2005+sql2005)
- JAVA操作数据库总结之组件篇-Hibernate
- Zend Framework 第九节数据库操作学习总结
- 【总结】CI框架 操作 mysql 数据库
- 利用数据库日志恢复数据到时间点的操作(总结)
- Codeigniter操作数据库表的优化写法总结
- asp 数据库操作总结
- QSQLITE 数据库操作总结
- Eclipse连接到My sql数据库的操作总结/配置数据库驱动
- Eclipse连接到My sql数据库的操作总结/配置数据库驱动
- Laravel框架数据库CURD操作、连贯操作总结
- ADO.net操作数据库总结
- Linux C语言编程-Linux数据库操作--Linux上C语言操作SQLServer---知识点总结+实例
- Hibernate操作数据库的方式总结
- JavaScript操作数据库总结
- 原始的jdbc连接数据库以及操作(小总结)
- servlet小总结3----同一用户的不同页面的共享数据的四种方法,及Servlet中操作数据库时等
- 学习总结十九:Hbase数据库shell操作