Мне нравится принятый ответ. В идеале, иметь полностью слой, посвященный хранилищам, звучит правильно.
Но я думаю, что в традиционном трехуровневом приложении (например, «Данные-> Бизнес-> Пользовательский интерфейс») я бы вставил хранилища в слой данных. Причина, по которой я бы поместил их в Уровень данных, заключается в том, что они имеют дело исключительно с доступом к данным. Причина, по которой я НЕ поместил бы их в бизнес-уровень, заключается в том, что они НЕ должны иметь никакой бизнес-логики.