SQLite utilizando lector/escritor esclusas de la totalidad del archivo de las Base de Datos. Esto significa que si cualquier proceso es la lectura de cualquier parte de la base de datos, todos los demás procesos se impide a la escritura de cualquier otra parte de la base de datos.
Del mismo modo, si un proceso es cualquier escrito a la base de datos, todos los demás procesos se impide que la lectura de cualquier otra parte de la base de datos. Cada aplicación de Base de Datos hace su trabajo y pasa rápidamente, y no de bloqueo dura más de algunas decenas de milisegundos.
Sin embargo, hay algunas aplicaciones que requieren una mayor concurrencia, y las aplicaciones pueden necesidad de buscar una solución diferente.
Uso No apropiado con Alto Concurrencia
lunes, 10 de diciembre de 2007
Publicado por
Daniel Maldonado
en
18:39
Etiquetas: Usos No apropiados
Uso No apropiado con Datos muy Grandes
Cuando se inicia una operación de SQLite (lo que sucede automáticamente antes de cualquier operación de escritura que no está dentro de una explícita BEGIN ... COMMIT) el motor tiene que asignar un mapa de bits de páginas sucias en el archivo de disco para ayudarle a manejar su revertir la revista. SQLite necesidades de 256 bytes de RAM para cada 1MiB de base de datos (asumiendo un 1024 bytes tamaño de página: menos memoria se utiliza con mayor tamaño de la página, por supuesto).
Para bases de datos más pequeñas, la cantidad de memoria necesaria no es un problema, pero cuando la base de datos comenzó a desarrollarse en el multi-gigabyte gama, el tamaño del mapa de bits puede conseguir bastante grande. Si tiene que almacenar y modificar más de algunas decenas de GB de datos, usted debería considerar la posibilidad de utilizar otro Motor de Base de Datos.
Publicado por
Daniel Maldonado
en
18:31
Etiquetas: Usos No apropiados
Uso No apropiado en Sitios web de Alto Volúmen
viernes, 7 de diciembre de 2007
SQLite normalmente funciona bien como el de Base de Datos a un sitio web. Pero si este Sitio Web es tan ocupados que están pensando en su división de componentes fuera de la Base de Datos en una máquina separada, entonces usted debería considerar el uso de un Motor de Base de Datos de tipo cliente/servidor en lugar del Motor de Base de Datos de SQLite.
Publicado por
Daniel Maldonado
en
6:29
Etiquetas: Usos No apropiados
Usos no Apropiados para usar SQLite - Aplicaciones Cliente/Servidor
miércoles, 5 de diciembre de 2007
Seguramente si tienes muchos programas clientes que acceden a una Base de Datos común en una Red, usted debería considerar el uso de un Motor de Base de Datos Cliente/Servidor en lugar de SQLite.
SQLite trabajará a través de una red de archivos, pero debido a la latencia asociado con la mayoría de sistemas de archivos de red, el rendimiento no será grande. Asimismo, el bloqueo de archivos lógica de muchos sistemas de ficheros de red contiene errores de aplicación (en ambos Unix y ventanas). Si el bloqueo de ficheros no funciona como debería, podría ser posible que dos o más programas cliente para modificar la misma parte de la misma base de datos al mismo tiempo, la corrupción en la base de datos resultante. Debido a que este problema se debe a fallos en el sistema de ficheros subyacente aplicación, no hay nada SQLite puede hacer para evitarlo.
Una buena regla general es que usted debe evitar el uso de SQLite en situaciones en las que la misma Base de Datos será accesible al mismo tiempo de muchas computadoras a través de una red de archivos.
Publicado por
Daniel Maldonado
en
19:59
Etiquetas: Usos No apropiados