É uma extensão quer permite a criação e utilização de colunas "key=>value" no postgreSQL.É perfeito para objetos que precisam de muitos dados variaveis, como um Produto(por exemplo), que pode ter atributos(dados=data) como cor, tamanho, numero de páginas(se for um livro,revista,etc), tamanho, peso, e centenas de outros atributos.
Um valor hstore é parecido com um hashtable serializado. A grande vantagem é que podemos fazer queries usando esses valores/keys!
No rails, podemos usar hstore
como um hash. Uma vez guardado você pode consultar as chaves e valores!
Se você já usou alguma vez uma coluna serializada como hash, hstore
se comporta parecido com isso. A principal diferença é perfomance, já que hstore
está armazenando os pares e valores nativamente no Postgres , as consultas(queries) são executadas muito mais rápidas.
O Rails 4 suporta o tipo de coluna hstore
, até então precisavamos usar uma gem