Dan in CA
I have tired to keep things a simple as possible. That’s why data is stored in json/text files rather that a db. If you only need 7 days of data, a db might be overkill.
That said, the number of records that will cover 7 days depends on the number of schedule programs, if zones run several intervals in a day and the number of active zones. Keeping things in json files makes it easy to load data into Python lists and dictionaries.
Of course it depends on the requirements of your plugin.
EDIT: One thing to keep in mind is how easy it will be for users to install and setup your plugin. That is one of the reasons I stayed away from using a DB.
Just as a matter of interest; I have some fruit trees that get watered once every 14 days. There may be other cases where schedules span more that 7 days.
I think the current log is probably not in the most efficient format. If you would find it useful to have the records hold different data or in a different order or something it is certainly possible to reconfigure it.