Tengo un gran conjunto de cadenas que estoy usando para la investigación del procesamiento del lenguaje natural, y me gustaría una buena manera de almacenarlo en Python.Formas de almacenar y acceder a listas grandes (~ 10 GB) en Python?
Podría usar pickle, pero cargar la lista completa en la memoria sería una imposibilidad (creo), ya que tiene unos 10 GB de tamaño y no tengo tanta memoria principal. Actualmente tengo la lista almacenada con la biblioteca de estantería ... La estantería está indexada por cadenas, "0", "1", ..., "n", que es un poco torpe.
¿Existen mejores formas de almacenar dicho objeto en un solo archivo, y aún tener acceso aleatorio (ish) a él?
Puede ser que la mejor opción sea dividirlo en varias listas.
Gracias!
Supongo que una base de datos es más adecuada para este tipo de tareas. Creo que daré una oportunidad: D –
Acaba de ser transferido a SQLite3. ¡El procesamiento es mucho más rápido y ocupa aproximadamente un tercio del espacio en disco de una estantería! –
¡Ja! Más rápido _y_ más pequeño. Me encanta SQLite3. : D – sarnold