On Tue, 6 Nov 2018, Fred Gleason wrote:
Thus, in Rivendell, we make a strong separation: the audio store holds audio and the database holds metadata. Audio in the audio store is *immutable*; once it’s written, it can never be changed short of being *deleted*. Information in the database OTOH can be changed at any time. This separation immediately takes an entire class of hard-to-find-and-fix bugs involving the synchronization of two non-orthogonal processes off the table while greatly simplifying the conceptual model of how the overall system works: a major win in each case.
That makes perfect sense.
It also allows us to use an off-the-shelf RDBMS (MySQL/MariaDB) that has had hundreds of thousands of man-hours invested in its design and debugging instead of having to whomp up one of our own (a major savings of resources). While this does create two sets of data that each require backup, there are well-understood techniques in the IT industry for managing such situations.
What I do for several stations is maintain a second Rivendell system at the transmitter site. I run a cron job at the studio that periodically compares the CART and CUTS tables between the studio and transmitter systems; it updates the database at the transmitter with any changes made at the studio, and rsync's the corresponding audio files from the stutio to the transmitter site.
I have a second cron job running that does the same thing with logs. The transmitter site system is therefore up tyo date with the latest songs, spots, voice tracks, weather forecasts, etc. and can be put on the air with the flick of a relay if anything goes wrong at the studio.
In addition, I have the MySQL database at the studio backup up nightly by yet another cron job, and the backups kept for a week before being overwritten.
Rob -- Я там, где ребята толковые, Я там, где плакаты "Вперёд", Где песни рабочие новые Страна трудовая поёт.
_______________________________________________ Rivendell-dev mailing list Rivendell-dev@lists.rivendellaudio.org http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev