Исходя из моего опыта, вы всегда должны использовать базу данных, если вам не нужно фильтровать вновь созданную и еще не зафиксированную строку .
Вот другой вариант использования между База данных и памятьvs Оба
Режим базы данных позволяют запросить таблицу базы данных и убедиться, что данные, которые вы обслуживаете, актуальны для вашего пользователя.Если вы только что создали новую строку и не зафиксировали ее в базе данных, применение критериев просмотра для объекта просмотра в режиме базы данных не отобразит эту новую строку.Это режим по умолчанию.
Режим памяти позволяет запрашивать данные кэша View Object.Поэтому при выполнении запроса будет отображаться вновь созданная и не зафиксированная строка, но не будет отображаться новая созданная строка в базе данных.
Оба режима позволяют отображать вновь созданную и незафиксированную строку и отображатьлюбая вновь созданная строка в базе данных.Но обычно по какой-то причине он довольно медленный.
Подробнее можно прочитать здесь (https://docs.oracle.com/middleware/12213/adf/develop/working-programmatically-view-objects.htm#ADFFD1223)
По умолчанию объект представления выполняет свой запрос к базе данных, чтобы получитьстрок в его результирующем наборе строк. Однако вы также можете использовать объекты представления для выполнения поиска в памяти и сортировки, чтобы избежать ненужных поездок в базу данных. Этот тип операции идеально подходит для сортировки и фильтрации новых, еще неопубликованных строкпросмотр набора строк объекта, в противном случае неопубликованные строки добавляются в начало набора строк.