[pyar] Me recomiendan un diccionario?

Ezequiel Brizuela [aka EHB or qlixed] qlixed en gmail.com
Jue Feb 27 22:07:24 ART 2014


Totalmente... arma paquetes de datos y mantenel9s en diaco. Despues, si las
consultas no son muy dispersas respecto a los rows q seleccione anda
levantando la data a memoria mmapeando el archivo.

Si son varias las consultas a hacer, podrias hacer (para arrancar) una
cache lru en memoria, xon eso las primeras consultas serian lentas... pero
en base al cache hit ratio se van a ir acelerando.
 El feb 27, 2014 7:39 PM, "Gustavo Campanelli" <gedece en gmail.com> escribió:

>
>
>
> 2014-02-27 19:34 GMT-03:00 Daniel Moisset <dmoisset en machinalis.com>:
>
>> sin repeticiones. como dije, es algo que tiene la semantica basica de un
>> dict() en python.
>>
>>
>> 2014-02-27 19:32 GMT-03:00 Gustavo Campanelli <gedece en gmail.com>:
>>
>>
>>>
>>>
>>> 2014-02-27 17:46 GMT-03:00 Daniel Moisset <dmoisset en machinalis.com>:
>>>
>>>> Hola,
>>>>    ando necesitando algo que, por un ratito me guarde varias
>>>> asignaciones clave valor y despues poder consultarlo por clave, para
>>>> obtener el valor asociado.
>>>>
>>>> O sea, necesito un dict().
>>>>
>>>> Mi problema es que:
>>>>  - tengo que guardar >40 millones de asociaciones, donde cadena+valor
>>>> son en promedio 50 bytes de utf8
>>>>  - tengo que hacer ~20 millones de consultas
>>>>
>>>> Con lo cual un dict() me anda en una maquina con de 64-bits con buena
>>>> RAM, y prefiría que los requerimientos sean un poco mas modestos
>>>>
>>>> Mi patron de uso es bien simplon. Primero genero todos los datos y los
>>>> cargo, despues hago todas las consultas, despues tiro el "diccionario" a la
>>>> basura (no me interesa persistirlo ni nada).
>>>>
>>>> Se me ocurren infinitas (muchas) formas de hacerlo. Puedo usar un
>>>> sqlite, un mongo, una berkeleydb, y muchas mas. La pregunta es:
>>>>
>>>> ¿que usarian ustedes que tenga una buena combinación de performance y
>>>> simpleza? [dentro del use-case que mencioné]
>>>>
>>>> Gracias,
>>>>     D.
>>>>
>>>>
>>>> _______________________________________________
>>>> pyar mailing list pyar en python.org.ar
>>>> http://listas.python.org.ar/listinfo/pyar
>>>>
>>>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>>>
>>>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>>> Argentina - http://www.usla.org.ar
>>>>
>>>
>>>
>>> Te hago una consulta más, porque una segunda lectura del problema me
>>> hizo pensar. Hablas de asociaciones. ¿Eso sería tipo A:B C:D E:F, etc, etc,
>>> sin repeticiones, o sería del tipo A:B A:C E:F B:F, etc, etc? Porque son
>>> casos muy distintos y ambos son asociaciones de dos valores.
>>>
>>> Gedece
>>>
>>> _______________________________________________
>>> pyar mailing list pyar en python.org.ar
>>> http://listas.python.org.ar/listinfo/pyar
>>>
>>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>>
>>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>> Argentina - http://www.usla.org.ar
>>>
>>
>>
>> _______________________________________________
>> pyar mailing list pyar en python.org.ar
>> http://listas.python.org.ar/listinfo/pyar
>>
>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>
>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>> Argentina - http://www.usla.org.ar
>>
>
>
> Segunda consulta ¿Podes generar datos en varios grupos separados o hay que
> generarlos todos de un saque por alguna razón distinta a "Comodidad"?
>
> Gedece
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20140227/968cb2b1/attachment.html>


More information about the pyar mailing list