I am having a question about the architecture I am working with.
we have a backend restful service, a data layer(which is implemented by python eve and also a restful service), and the database. The data (access) layer itself is a independent restful api.
In our backend service application, we have a customized python eve repository which make calls to to data (access) layer and then data layer will query whatever asked by the call from database.
The reason to have it separate, one is that we want to isolate data logic(query logic) from our business logic(backend service).
The cost is obvious, another layer, another round of I/O for every query.
Can anyone with experience of architecture tell me is this separate data access layer a good practice or not and why?