Skip site navigation (1) Skip section navigation (2)

Re: numeric vs real

From: Alvaro Herrera <alvherre(at)dcc(dot)uchile(dot)cl>
To: Julio Rivero <jcrmlima(at)gmail(dot)com>
Cc: mmiranda(at)americatel(dot)com(dot)sv, systemguards(at)gmail(dot)com,pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: numeric vs real
Date: 2005-04-27 23:59:08
Message-ID: 20050427235908.GA969@dcc.uchile.cl (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
On Wed, Apr 27, 2005 at 06:04:29PM -0500, Julio Rivero wrote:

Hola,

>  Hola, la lentitud es considerable al utilizar este tipo de variable 
> Numeric???

La verdad, no lo se; tendrias que medirlo.  Supongo que depende de la
operacion y el tamaƱo del numeric.

En todo caso, como ya comente antes, los tipos integer, bigint, float,
etc, son mapeados a registros de la arquitectura; el procesador puede
operar con ellos en forma nativa.  Por lo tanto lo que las operaciones
tardan se mide en ciclos de procesador.

NUMERIC usa una representacion en base 10000, lo que significa que caben
unos cuantos digitos de base 10 por cada "digito numeric", y para operar
hay que iterar en cada digito numeric.  Por lo tanto para hacer una
operacion se necesita hacer multiples accesos a memoria, cada uno de los
cuales es ordenes de magnitud mas lento que unos pocos ciclos de
procesador.  Por lo mismo, yo esperaria que las operaciones sean
significativamente mas lentas.

Supongo que esta claro que si no necesitas realmente usar NUMERIC, es
mejor que te quedes con uno de los tipos primarios; pero cuando si lo
necesitas, realmente no tienes alternativa.

-- 
Alvaro Herrera (<alvherre[(at)]dcc(dot)uchile(dot)cl>)
"Si un desconocido se acerca y te regala un CD de Ubuntu ...
                                     Eso es ...  Eau de Tux"

In response to

pgsql-es-ayuda by date

Next:From: Alvaro HerreraDate: 2005-04-28 03:25:52
Subject: Re: Ayuda con Check
Previous:From: mmirandaDate: 2005-04-27 23:30:49
Subject: RE: numeric vs real

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group