summaryrefslogtreecommitdiff
path: root/extra/sqlite/README
diff options
context:
space:
mode:
authorPiotr Szarmanski2023-08-04 18:37:51 +0200
committerPiotr Szarmanski2023-08-04 18:37:51 +0200
commit6b3457b35cbcea4e28d3482263a36ae6db39fc8f (patch)
tree2fb28e1d2a8969ad5f5a62f4c62fb1ca3e9a8449 /extra/sqlite/README
parent4bbfb31292e049cd6a09301968bd21271afaacc9 (diff)
Extra sqlite3 backend
Diffstat (limited to 'extra/sqlite/README')
-rw-r--r--extra/sqlite/README14
1 files changed, 14 insertions, 0 deletions
diff --git a/extra/sqlite/README b/extra/sqlite/README
new file mode 100644
index 0000000..a8092fd
--- /dev/null
+++ b/extra/sqlite/README
@@ -0,0 +1,14 @@
+This is an SQLITE3 backend for ERIS, implementing
+https://eris.codeberg.page/eer/sqlite.xml
+
+Due to the foreign dependency and the fact that it may not be suitable for major
+usage, it is not included in the main repo. I don't recommend using this backend for writing for two reasons:
+
+1. Since sqlite is a relational database, not a hash-table, fetching each
+reference takes O(logn) time (with indices). This might hurt compared to a
+hash-table O(1) in cases where there's millions of blocks.
+
+2. Unless your filesystem sucks at handling lots of small files, there is little
+benefit over the simple file-based backend. This might be a major motivation for
+using this backend in FAT32 (65536 max files in a directory ~ max 2GB of ERIS
+data) or NTFS (lots of small files kill it).