dgtlmoon / changedetection.io

The best and simplest free open source web page change detection, website watcher, restock monitor and notification service. Restock Monitor, change detection. Designed for simplicity - Simply monitor which websites had a text change for free. Free Open source web page change detection, Website defacement monitoring, Price change notification
https://changedetection.io
Apache License 2.0
19.14k stars 1.04k forks source link

Refactor backend storage, store just the diffs in a DB #155

Open dgtlmoon opened 3 years ago

dgtlmoon commented 3 years ago

This could have some really nice impacts

immanuelfodor commented 3 years ago

Please don't use SQLite, instead invest a bit more into using an RDBMS over TCP/IP (like MariaDB, PostgreSQL). SQLite is a PITA when using Kubernetes with more than one node with NFS (most homelabs).

DieselTech commented 3 years ago

And on the other side of the coin, there are plenty of setups that don't have a dedicated database instance running and having to stand one up just for 1 software package isn't worth it. I have over a dozen services running in a homelab environment and have yet to need one. Most software packages do fine with SQLite and it makes it easier to back things up. Especially in a docker environment where your backups can just be a folder grab of your container datastore.

Kubernetes with more than one node with NFS (most homelabs).

I would argue "most homelabs" are single unit setups. Something like a rpi / old PC or many of the NAS units now that come with docker abilities.

immanuelfodor commented 3 years ago

I must say that all *arr and media apps (Radarr, Sonarr, Plex, Jellyfin, etc) are a pain to host in Kubernetes because all of them use SQLite. They must be fixed to a node and can only work with hostPath storage, so when a specific node goes down where their volume is pinned, the app goes with it.

Using an ORM that can work with multiple DB engines (SQLite, PG, My/MariaDB) can be a solution for both worlds :)