balin998 2011-08-09 12:55
浏览 678
已采纳

关于超大数据量的,应该怎么设计表结构,我就随便想想。。问问

类似于移动电话、或者是工行存蓄这样超级庞大的数据量流水,一般都会怎么设计表结构的呢。
是每年建一个表啊,还是按省市建表啊。还是每省+每年建立表啊,还是用oracle11带的分区啊,
list+range,按省先list,然后再按照年再分区啊,我是不懂,好奇,想知道,大概怎么设计比较合理点,
以前的orale或者sysbase、informix之类的数据库应该是没有什么分区的概念的吧,会怎么设计的呢。
如果是分表的话,那跨域跨年查询是不是很麻烦啊?啊啊啊啊啊啊。。。。
不要凭想象啊。光想我也会一点,有没有哪位大仙有实际经验的给解惑解惑。。

另外再问一个,如果是建立分区表的话,但是所有的分区都使用同一个数据库空间?
会不会达不到分区的效果,我试验了下,好像是这样,分区了,用的一个表空间,好像速度没什么提升。??

  • 写回答

2条回答 默认 最新

  • iteye_8576 2011-08-10 10:02
    关注

    你的问题需要考虑很多因素,说几点个人看法:
    1.基础表的数据量大,查询的时候尽量避免原表扫描,可以考虑使用中间表或者物化视图,比如你要查询每年表中的用户数,可以把每一月统计的结果放在中间表,然后累加,
    思想就是把大的查询拆分为若干小的查询。
    2.在夜间执行一些job,生成中间表的数据,方便第2天查询。
    3.如果表中数据特别多,可以考虑水平切分表,比如表中有2000w条记录,则拆分成两个结构一样的表,每一个标存在1000w条数据。
    4.索引的选择。在设计表的时候就要考虑是否需要索引,不要等数据量多了再考虑。
    5.还有表分区需要考虑~~~~

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥100 求数学坐标画圆以及直线的算法
  • ¥35 平滑拟合曲线该如何生成
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 自己瞎改改,结果现在又运行不了了
  • ¥15 链式存储应该如何解决