求方案,关于5000万数据量以上的相关思路和数据库设计.

dengkeyu 2011-05-29 09:57:38
以前没玩过这么大的数据量,最多玩过sql2000,10万左右的数据量....

现在有一个Web网站项目大概如下,并且准备用sql2005数据库:

1、一个数据库,有5个表左右,其中一个表,大概有6个字段,但是这个表的数据量会在5000万以上,如果在这个表内搜索内容并读取出来的话,岂不是很慢?

2、这个数据都是平等性的,也就是说不存在时间和常用的差异,不像那些大型超市的POS系统,可以把数据按月来划分,不常用的数据单独分开。


请问我该怎样来设计这个数据库?我希望是这个表达到100万数据量后重新建表,但是这样下去,这个表越来越多,那前台搜索读取数据库的时候这个sql 该怎么写?性能速度怎样?

不知道我表达清楚了没?说得不够专业请见谅。请专家给点思路和建议.
...全文
304 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Q315054403 2011-05-30
  • 打赏
  • 举报
回复
充分理解数据将如何被使用是关键
pumaadamsjack 2011-05-30
  • 打赏
  • 举报
回复
5000W,6个字段,不多,放心SQL完全没问题。

以下几个处理建议。

首先服务器合理的硬件部署,将多块盘独立分开,如果你的数据要求高可用性,那你要考虑好备份策略。
每个盘都是RAID0,也就是不用RAID。

然后数据库使用多文件,把数据文件分摊到各个磁盘上,这样读取数据是并行的效果。

合理的给出个字段的类型。如果定长尽量使用char

根据你数据库增量的情况合理的设置一个填充因子。
haitao 2011-05-30
  • 打赏
  • 举报
回复
大表不可怕(只要不是like '%x%'这样的查法)
可怕是因为它的增长或更新方式

没有月份等分区特性,也可以利用一个计算字段,取它的(id mod 100),这样就能分100个区了
这个方法我第一次使用时,没得到他人的经验意见,不过使用了接近一年,记录快6000万条后,基本没什么慢的感觉
claro 2011-05-30
  • 打赏
  • 举报
回复
从存储设计这块讲,

存储设计越复杂,管理难度越大。

分表设计的逻辑可以拆分到不同文件组,从而基于不同的物理存储而得到更好的并发读写。

对于数据平等性而无法直接使用分区,可能要从表结构下手,比如添加主键唯一索引等,前台的部分也要做相应的调整会比较复杂。

X1656732236 2011-05-30
  • 打赏
  • 举报
回复
1亿SQL也没有问题。第一建立索引,第二在大表上建立表分区。
本人的表每天数据达到30万条。(注:是数据库服务器是单独的)
流氓兔 2011-05-30
  • 打赏
  • 举报
回复
dengkeyu 2011-05-29
  • 打赏
  • 举报
回复
可能暂时没有5000万数据量,但是我得按1000万数据量来设计..希望各位高人继续解答.
qgqch2008 2011-05-29
  • 打赏
  • 举报
回复
1、一个数据库,有5个表左右,其中一个表,大概有6个字段,但是这个表的数据量会在5000万以上,如果在这个表内搜索内容并读取出来的话,岂不是很慢?--此表分个区吧
q107770540 2011-05-29
  • 打赏
  • 举报
回复
添加索引 提高查询速度

34,593

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧