我有一个 Rails 应用程序,它聚合了来自 Google API 的大量数据。我目前将 JSON 响应存储在 MongoDB 中(所以我的 Rails 应用程序同时具有 pg 和 mongo)。然而,今天,我遇到了 PostgreSQL Hstore 扩展,我决定试一试。
不幸的是,我遇到了一个问题。API 给出的 JSON 是多层次的,因此 Ruby Hash afterJSON.parse
包含哈希,其中包含新的哈希。但是,Hstore
是字符串键/值存储,它只有 1 级深。所以第一个散列中的散列就变成了字符串。
我发现真正讨厌的 hack 是eval
把哈希变成字符串:
eval("{ "foo" => "bar" }")
我不喜欢这个。关于做什么的任何提示?我应该继续使用 MongoDB 还是有更好的方法在 PG 中存储多级深度哈希?