首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >列数据库优化与关系数据库优化有什么不同?

列数据库优化与关系数据库优化有什么不同?
EN

Stack Overflow用户
提问于 2017-07-31 20:47:01
回答 3查看 2K关注 0票数 5

我有以下数据库结构,存储在关系数据库中:

  • 两个事实表,每行约8 000万行
  • 具有30万至50万行的三维表。
  • 两个事实表都有3个外键,用于连接维度表。
  • 一个安全表还包含3个外键,用于连接到维度表。

一个开发人员正在使用我的数据创建一个应用程序,该应用程序使用了一个柱状数据库。他们一直存在性能问题,当我建议为他们的表添加索引/键时,他们说索引列数据库并不能提高性能。因此,他们要求我将事实表与维度表结合起来。

这似乎与我所知道的数据库管理的基本原则相矛盾。列数据库不能使用索引来提高性能,这是真的吗?应该采取哪些步骤来优化柱状的性能?

我正在寻找高级别的信息,但是为了完整起见,关系数据库是,而柱状数据库是SAP。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-10-19 12:11:31

在高层次上,关系数据库和列数据库之间的区别在于数据的存储方式。关系数据库的存储记录按行,列按列。

例如:记录:

代码语言:javascript
运行
复制
Name          ID number        zip code
smith         4444             98210
jones         1234             10125

RDBMS按记录存储这是块:smith, 4444, 98210jones, 1234, 10125,柱状DB按列存储这一点:smith, jones4444, 123498210, 10125

您可以创建索引。HANA有独特的,BTREE,CPBTREE指数。在关系数据库管理系统中,BTree是一个二进制搜索树索引,CPBTREE是压缩前缀B+树索引。

但是,在创建希望修复的索引之前,评估性能问题是很重要的。查看日志,分析DB并找出导致性能缓慢的原因。“开发人员正在使用我的数据创建一个使用柱状数据库的应用程序”可能是问题的症结所在。在每种数据库类型中存储和检索数据的方式完全不同。RDBMS更适合于事务性数据。因此,如果这个应用程序利用了柱状数据库,那么它更适合高效地搜索大量数据中的特定数据--因为只需要加载受影响的列,而不是整个记录。

由于不同的DB结构,此应用程序可能无法正确运行。

票数 4
EN

Stack Overflow用户

发布于 2017-10-17 13:40:11

我不太熟悉SAP,但通常Columnstore数据库没有传统关系意义上的索引。相反,每一列都像一个单独的索引。

这种类型的DB通常可以很好地用于分析性查询,因为它们通常读取大量数据。例如,任何事实表,其中一个维度的Foreign传统上会有很多重复的值(假设维度的行要比事实表小得多)。

如果将行插入到按此列排序的事实表中,则可能会在表中实现出色的压缩级别,因此读取表所需的磁盘I/O要少得多。

ie: col_fk_to_dim =1,1,1,1,2,2,2,3,3,3,3,3,3,3,3,4,5,5,5,5,5,5,5.

可压缩为1x5,2x3,3x6,4x1,5x5,.

此外,如果系统分布在几个节点上,则需要考虑分发密钥,以确保每个节点都具有要处理的数据的类似共享。

如果您有性能问题,我首先要检查的是针对这些表启动的查询。接下来,检查它们要连接的列,看看事实表是否按排序顺序由这些列填充。

在那里,您可以进一步排除故障。

票数 0
EN

Stack Overflow用户

发布于 2017-10-19 09:53:31

关于索引在SAP中没有提供更好性能的选项的一般说法是不正确的。有明显的情况,当一个索引可以改善数据访问的数量级。

与通常的数据库性能一样,需要更多的信息,而不仅仅是“有问题”才能找到性能缓慢的原因。SAP提供了一些特定的开发工具(使用Star的分析视图和计算视图)来支持事实维模型查询。如果已经使用了这些方法,那么下一步将检查执行计划中的慢速查询。

如果这不会导致提高性能的方法,那么使用PlanViz执行跟踪将是下一个最佳选择。这允许查看查询执行的哪一部分实际需要多长时间。

这就是最高级别的陈述能带你到这里的程度。除此之外,还需要查看所提到的信息和查询。

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

https://stackoverflow.com/questions/45425014

复制
相关文章

相似问题

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