繁体   English   中英

在Rails中存储〜1000个字符串元素数组的首选方法是什么?

[英]What is the preferred way to store a ~1000 element array of Strings in Rails?

在我的Rails应用程序中,我将有一个包含1000个动物名称的数组。 因此,基本上是字符串。 这些名称将再也没有与之关联的数据。 我认为为它们制作动物表是过大的,因为我仅使用Array来采样动物。

同时,我的项目中包含REDIS,并且正在考虑仅执行以下操作:

redis.set("animals", ["large", "array", "of", "animals", ...].to_json)

我不确定这是否有问题,是否应该存储1000个元素数组。 我知道那里有巨大的数据集,但是有1000件事值得担心吗?

也许我应该将它们存储在.txt文件中? 每行一只动物,所以我只用lines = File.foreach("animals"); lines.sample lines = File.foreach("animals"); lines.sample

解决此问题的最佳方法是什么?

1000行对于他们自己的模型/表格来说足够了。 数据库已经使用,滥用和完善了数十年。 除非您有充分的理由怀疑性能问题,否则过度杀伤并不是真正的问题,这是不太可能的,即使那样,过早的优化也是他们所说的万恶之源。 保持代码整洁并易于扩展。 例如,在animal.rb

# return a random animal
def self.sample
  offset(rand(count)).first
end

每当您需要样本时(大概在控制器中),它就像Animal.sample一样简单。 然后,您可能稍后决定要与这些动物建立其他关联。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM