From: | Olivier Gautherot <ogautherot(at)gautherot(dot)net> |
---|---|
To: | Silvio Bravo Cadó <bravocado(at)gmail(dot)com> |
Cc: | postgre sql <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: Update concurrente |
Date: | 2019-12-05 18:45:41 |
Message-ID: | CAJ7S9TXjfJ2reH1QdHVxndDFNaxNxj+wZ9rDZsJ9FhBy++_txg@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
No parece ser un desafío exagerado. Las direcciones que te sugeriría son:
1. Ejecutar un EXPLAIN sobre el UPDATE
2. Validar el dimensionamiento del servidor (CPUs, memoria) y la
configuración del motor
3. Evaluar la ideonidad de SSD (aunque sospecho que no sea la primera
prioridad)
El jue., 5 de diciembre de 2019 18:56, Silvio Bravo Cadó <
bravocado(at)gmail(dot)com> escribió:
> Hola Oliver,
>
> Gracias por contestar, aquí algunos datos de las tablas que te comento:
>
> *1. Cuántas filas tiene la tabla A?*
>>
> A tiene: 16M de registros , B tiene 300K
>
>> *2. Sólo para validar: tienes una llave primaria sobre el campo id?*
>>
> No. la referencia entre A y B es lógica.
>
>> *3. Cuántas columnas y cuántos índices tiene la tabla real?A*
>>
> A tiene: 26 columnas y 10 indices, B tiene 20 columnas y 1 indice
> el del primary key y un check constraint
>
>> *4. Cuántos usuarios concurrentes puedes tener?*
>>
> En picos altos como 1k por minuto intentando comprar 1 producto,
> su intento de compra hace que la tabla A y B tengan actividad.
>
>>
>> *Como idea loca, podrías simular varios productos (digamos 4) que se
>> reparten el stock completo y cada vez que llega un pedido se resta del
>> stock de uno al azar? *
>>
> Realicé carga de 1k en 1 minuto diviendo en 3 productos y los
> picos bajaron muy poco de 58 a 48 segundos.
>
>>
>> Olivier
>>
>>
>>
>
> --
>
>
>
> *Ing. Silvio Bravo Cadó*
> Mobile & Web Software Architect
>
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2019-12-05 19:07:20 | Re: Update concurrente |
Previous Message | Silvio Bravo Cadó | 2019-12-05 17:56:09 | Re: Update concurrente |