hstore: Creciendo con postgresql

IT Igor Támara Igor Támara

Igor Támara

Senior Software Engineer
1 min read.

Cada vez que vamos a hacer aplicaciones que puedan crecer y que tengan atributos "elásticos" en tablas ya existentes tenemos la disyuntiva: ¿cómo abordaremos esta situación?

  • Horizontalmente añadimos columnas y hacemos tablas con muchos campos, o
  • Creamos una tabla vertical que crecerá impresionantemente.


hstore de postgresql ayuda a aliviar esta situación, que es básicamente un campo que permite tener un diccionario con claves y valores en cadena sobre el que se puede hacer consulta sobre los campos y las llaves.  Esta característica estaba presente desde la serie 8 de postgresql, pero si usted está todavía con postgresql 8.X está perdiendo la oportunidad de tener window functions y varias mejoras en velocidad de la base de datos, así que para instalar tal extensión en 9.X, basta con aplicar sobre la base de datos en cuestión:

[gist id = 3344545]

Una tabla en una tienda de ventas con este tipo de campo se crearía con

Para" class="redactor-autoparser-object">https://gist.github.com/334457... añadir una bicicleta como producto en esta tabla se podría aplicar algo como

A" class="redactor-autoparser-object">https://gist.github.com/334461... continuación algunas consultas de uso diario

Qué más pedir?

índices? también es posible crearlos incluso sobre los campos.  Pero hay más, por ejemplo, campos de tipo json, y justamente es lo que traerá postgresql 9.2

Más información

Para saber más de hstore, visite la documentación oficial.

Como dato que deja de ser curioso, en openstreetmap hay forma de trabajar datos con hstore y también es posible tener bases de datos en Heroku con esta extensión de postgresql


Written by Igor Támara

IT Igor Támara Igor Támara

A seasoned developer, Igor brings expertise in designing and building complex software systems. With a focus on quality and performance, they lead projects that drive innovation and deliver reliable solutions to meet user needs.

Newsletter

Subscribe to our newsletter:

Read more

Multiples Backgrounds con CSS3

Con CSS2 solo podíamos tener una imagen por cada elemento, pero ahora con CSS3 podemos tener tantas imágenes como queramos......

1 min read.

Django Mobility

Django mobility es la forma rápida y sencilla de crear vistas que permiten redirigir a los usuarios a la versión móvil de nue...

1 min read.

Build Once. Own Forever.