Pregunta

Quiero experimentar / jugar con las bases de datos no relacionales, que sería mejor si la solución era:

  • portátil, lo que significa que no requiere una instalación. Lo ideal sería simplemente copiar y pegar el directorio a algún lugar podría hacer que funcione. No me importa si se requiere la edición de algunos archivos de configuración o ejecutar una herramienta de configuración para el primer uso.
  • accesible desde pitón
  • funciona tanto en Windows como en Linux

¿Qué se puede recomendar para mí?

En esencia, me gustaría ser capaz de instalar este sistema en un servidor Linux compartida en la que tengo pequeños privilegios del usuario.

¿Fue útil?

Solución

Te recomiendo que considere BerkelyDB con el conocimiento de los problemas de licencia.

Me estoy muy cansado de la gente que recomienda BerkleyDB sin calificación - sólo se puede distribuir sistemas BDB bajo GPL o alguna cuota de licencia visible para el público desconoce y no de Oracle.

Por "local" de jugar en los que no está en uso por las partes externas, es probablemente una buena idea. Sólo ten en cuenta que no es una licencia esperando a morder.

Este es también un recordatorio de que es una buena idea cuando pidiendo recomendaciones tecnológicas para decir si o no GPL es aceptable.

mi propia se sugirieron pregunta sobre una base de datos de la API C portátil, mientras que una variedad de otros productos, ninguno de los integrados tienen enlaces Python.

Otros consejos

Metakit es una no relacional base de datos integrada interesante que soporta Python.

La instalación requiere sólo copiar una sola biblioteca compartida y el archivo .py. Funciona en Windows, Linux y Mac y es de código abierto (MIT licencia).

Si estás acostumbrado a pensar en una base de datos relacional tiene que ser enorme y pesado como PostgreSQL o MySQL, a continuación, se le gratamente sorprendido por SQLite.

Es relacional, muy pequeño, utiliza un solo archivo, tiene enlaces Python, no requiere privilegios adicionales, y funciona en Linux, Windows y muchas otras plataformas.

¿Ha mirado CouchDB ? Es no relacional, los datos pueden ser migrado con relativa facilidad y tiene una API Python en forma de couchdb-pitón . Tiene algunas dependencias bastante inusuales en forma de Spidermonkey y Erlang aunque

En cuanto a las soluciones de Python, no sé qué tan avanzado PyDBLite ha llegado pero podría ser, sin embargo, vale la pena mirar.

BerkeleyDB: (parece que hay una unión a Python API: http: // www .jcea.es / programacion / pybsddb.htm )

¿Has mirado en Zope Object Database ?

Además, SQLAlchemy o capa ORM de Django hace que la gestión del esquema sobre SQLite casi transparente.


Editar

http: // www .sqlalchemy.org / docs / 05 / ormtutorial.html # define-y-crear-una-mesa para ver cómo crear tablas SQL y la forma en que se asignan a los objetos de Python.

Mientras que su pregunta es vaga, sus comentarios parecen indicar que es posible que desee definir el pitón objetos primer lugar, obtener aquellos a trabajar, a continuación, asignar a los objetos del esquema de relación a través de SQLAlchemy.

Si sólo está yendo y viniendo de Python es posible pensar en el uso de salmuera serializar los objetos. No va a funcionar si usted está mirando para utilizar otras herramientas para acceder a los mismos datos, por supuesto. Está construido en Python, por lo que no debería tener ningún problema privilegiados, pero no es una verdadera base de datos por lo que no puede satisfacer las necesidades de su experimento.

La adición de una referencia a TinyDB aquí desde esta página se muestra en la parte superior de muchas búsquedas. Es una base de datos no relacionales portátil en Python. Almacena predice pitón en un archivo JSON local y hace que estén disponibles para operaciones de bases de datos similares a MongoDB. También tiene una extensión al puerto a las órdenes del mongodb, con la diferencia de que en lugar de trabajar en otro servidor del sistema que va a estar operando en un archivo JSON local.

Y a diferencia de la respuesta actualmente elegido, es bajo una licencia abierta MIT permisiva.

Enlaces:

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top