【问题标题】:Redshift sort by alphabet would increase performance?Redshift 按字母排序会提高性能吗?
【发布时间】:2014-09-26 05:51:06
【问题描述】:

我想知道如果我按字母对我的 Redshift 数据库进行排序,它会提高使用排序列查找的性能吗?

假设我有name 列,我创建了这个按字母排序的表。那如果我想用where子句查名字会不会更快?

实现 Redshift 数据库以查找字母值的最佳方法是什么?

请告诉我如何创建表格设置排序键以按字母排序...

谢谢

【问题讨论】:

  • +1 用于清楚地表明您使用的是 redshift 而不是 PostgreSQL。您将如何创建一个按某个键“排序”的表?那是红移扩展吗?你在做什么样的“查找”——个体值,还是大连接?
  • 我只会在一个表中查找单个值...并且希望通过按字母顺序索引表来提高性能。我只会查找字符串值
  • @CraigRinger 是的,排序键是特定于 Redshift 的(除了一个或多个列中的单个排序键之外,它不支持其他索引)。

标签: sql postgresql amazon-web-services amazon-redshift


【解决方案1】:

是的,WHERE 子句中列上的排序键通常会加快速度,请参见此处:http://docs.aws.amazon.com/redshift/latest/dg/c_best-practices-sort-key.html

如果您在单个列上有排序键,只需在列类型后指定sortkey 关键字(详细信息请参见此处:http://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_TABLE_NEW.html):

create table foo (alpha varchar(10) sortkey, bar int);

【讨论】:

    猜你喜欢
    • 2013-04-12
    • 1970-01-01
    • 2011-07-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多