Est-ce que SQLite verrouille le fichier de firebase database sur les lectures?

J’étudie SQLite en tant que moteur de stockage et je suis curieux de savoir si SQLite verrouille le fichier de firebase database en lecture.

Je suis préoccupé par les performances de lecture car mon projet prévu aura peu d’écrit, mais beaucoup de lectures. Si la firebase database se verrouille, existe-t-il des mesures pouvant être sockets (telles que la mise en cache de la mémoire) pour atténuer ce problème?

De sa page Wikipedia :

Plusieurs processus ou threads informatiques peuvent accéder à la même firebase database sans problème. Plusieurs access en lecture peuvent être satisfaits en parallèle.

Plus précisément, de sa FAQ :

Plusieurs processus peuvent avoir la même firebase database ouverte en même temps. Plusieurs processus peuvent faire un SELECT en même temps. Cependant, un seul processus peut apporter des modifications à la firebase database à tout moment.

Cependant, une seule écriture dans la firebase database verrouille la firebase database pendant une courte période, de sorte que rien ne peut y accéder (pas même la lecture). Les détails peuvent être trouvés dans le locking de fichier et la concurrence dans SQLite version 3 . La lecture de la firebase database ne pose aucun problème, à moins que quelqu’un veuille écrire immédiatement dans la firebase database. Dans ce cas, le DB est verrouillé exclusivement pour le temps nécessaire à l’exécution de cette transaction et le délocking est effectué ultérieurement. Cependant, les détails sont rares sur ce que fait exactement les opérations de lecture sur le datapase au moment d’un verrou PENDING ou EXCLUSIVE. SQLITE_BUSY qu’ils retournent SQLITE_BUSY ou bloquent jusqu’à ce qu’ils puissent lire. Dans le premier cas, il ne devrait pas être trop difficile de réessayer, surtout si vous attendez peu d’écritures.

Vous pouvez éviter les verrous lors de la lecture si vous définissez le mode journal de firebase database sur Write-Ahead Logging (voir: http://www.sqlite.org/wal.html ).