Rails:使用字符串ID列检索数据的最有效方法

时间:2015-03-02 00:04:31

标签: ruby-on-rails postgresql api activerecord

我有一个表(Tests),它有一个字符串列(external_id)。类似于以下内容 -

class CreateTest < ActiveRecord::Migration
  def change
    create_table :tests do |t|
      t.string :name
      t.string :description
      t.string :external_id

      t.timestamps
    end
  end
end

我经常使用external_id列检索数据。像这样的东西 -

@test = Test.where(:external_id => params[:test_id]).first

随着数据的增长,我担心这是否会影响性能。

以下是有关external_id列的更多信息。

  1. 该列中的数据如下所示:ext-test-1bl-testa2-test等。
  2. 此列中字符串的长度可变,但始终小于100个字符左右。
  3. 此列可以是nullable
  4. 以下是我的问题 -

    1. 根据此列提取数据的最佳方法是什么?
    2. 我可以进行任何性能改进吗? (比如索引等。)
    3. 我使用postgres作为我的后端。我可以进行任何与postgres相关的增强功能以​​提高性能吗?
    4. 任何建议都将受到高度赞赏。

0 个答案:

没有答案