首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Netezza的OLTP性能问题

Netezza的OLTP性能问题
EN

Stack Overflow用户
提问于 2015-01-21 14:15:53
回答 2查看 487关注 0票数 1

我们最近将数据库从Oracle迁移到了Netezza。我们的数据库主要是OLAP数据库,但它的一部分是OLTP,它填充了几个表(前端应用程序)。这些实时表将与很少的历史表连接起来,并生成报告。我们对OLAP部分的性能感到满意,但是OLTP有一个主要的性能问题。在Netezza中改进OLPT的方法是什么?或者是否有任何单独维护OLTP的设计方法?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-01-21 20:51:52

我不建议在OLTP中使用Netezza,但是我们会遇到这样的情况:数据太大了,我们别无选择。在这种情况下,您可以进行一些调优以加快速度。

  1. 如果找不到distribute ondistribute on random的好列,请确保您的表具有良好的distribute on random
  2. organize添加到您的OLTP操作基于
  3. 确保您的密钥是可分发的数据类型IntegerDate

或者,您可以考虑混合设计。

  1. SQL ServerPostgres中为web应用程序执行OLTP操作吗?
  2. ETL每隔几分钟或每小时更换一次Netezza
票数 1
EN

Stack Overflow用户

发布于 2015-08-05 19:38:42

对于并行系统的性能,有两个主要的考虑因素:均匀分布的数据;以及将连接的数据的配置。第一点已经得到了解决:选择一个好的分区键,它将为您提供良好的、甚至是数据的分布。

至于我的第二点,如果要加入数据(比如更新),就必须很少或根本没有数据移动。确保这是真的将减少数据流量。确保数据配置的最佳方法是使用相同的分区键。相同的键总是散列到同一个节点;相同的节点意味着没有通信量来进行连接。例如,假设您有Cust (CNo)、Order (Ono)、Order Item (Ono、INo)和(PNo)。主键在括号中。如果将上面的数据用作分区键,则数据将不并置。但是,如果您在Cust中使用CNo,按顺序使用fk CNo,并将CNo的冗余fk按顺序项(全部作为分区键)放置,则它们将被并置。产品不能并置,但不需要配置;它通常没有那么大,在Product中放置CNo是没有意义的。

NOSQL不允许联接,因为它不能确保连接数据的配置(还有其他原因)。在NOSQL中,数据将分布在广泛的节点数组上。

两大性能杀手是品类和笛卡尔产品。确保在Netezza上连接的数据中不存在这些内容。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28069369

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档