Try
Delta Lake Connectors:
This is a path to use dataframe ( with data stored in something like parquet ).
This allows to store / maintain data in a simple and portable data store.
You can keep it on local machine, or push to cloud.
Access using above or any other technology, capable of understanding parquet.
In its simplest direct application DSR/DSW provides for
.filter
and other expressive methods, good for business and pleasure to code.
And you won't have to struggle with nested maps and such, which will be dead - end regardless, once number of books is larger than, say, 500, or you need to produce monthly report from bot activities, whichever comes first :)