0

我们有一个巨大的表,现在有 1.44 亿行可用,并且每天增加 100 万行。

我想在 Oracle 11G 服务器上创建一个分区表,但我不知道这些技术。所以我有两个问题:

  1. 是否可以从没有 PK 的表创建分区表?
  2. 您对创建像大记录这样的分区表有什么建议?
4

2 回答 2

1
  1. 是的,但请记住,分区键必须是 PK 的一部分

  2. 避免全局索引

  3. 选择正确的分区键 - 为将来的某种维护做好准备(切断最旧或不必要的分区,将它们放在单独的表空间中......等)

有太多的事情要考虑。

于 2012-06-29T15:56:22.920 回答
1

“表上有几个非唯一索引。但是,性能真的很糟糕!只是简单的计数功能在 5 分钟后返回结果。”

分区不一定是性能增强器。分区键将允许某些查询从分区修剪中受益,即那些在 WHERE 子句中驱动分区键的查询。如果 WHERE 子句违反分区键的粒度,其他查询可能会执行得更差,

很难给出具体的建议,因为你发布的细节太模糊了。但这里有一些其他可能的加快大表查询速度的方法:

  • 索引压缩
  • 并行查询
  • 更好的,可能是复合的,索引。
于 2013-01-20T13:51:51.050 回答