Я не думаю, что вы должны спрашивать, какой путь "лучший", но какой будет лучшим для ВАС.
Когда вы говорите, что не можете иметь базу данных, я предполагаю, что вы имеете в виду, что приложение должно быть автономным, но может использовать файл локальной базы данных?Если это так, и вы считаете, что потребуются большие объемы хранилища данных, то вы можете обнаружить, что хотите использовать один из нескольких компактных продуктов для локальных баз данных.Например, SQLite и InnoDB приходят на ум.
Если вы собираетесь хранить только небольшие объемы данных, вам лучше подойдет XML или простой двоичный файл, так как это уменьшит объем вашего приложения и приведет к удалениюзависимость от стороннего продукта.Мы иногда (и я очень редко подчеркиваю!) По-прежнему используем классический INI-файл, потому что он хорошо поддерживается в коде и приводит к чрезвычайно компактному коду.
Что касается эффективности и результативности, то все сводится к тому, как выпринять решение о реализации вашего доступа к данным.Разумеется, тип используемой вами базы данных оказывает влияние, но вы также должны поддерживать то, что вы реализуете, поэтому стоит посмотреть, как API-интерфейс базы данных определен и задокументирован, есть ли у него активное сообщество для поддержки,и т.д., и выберите тот, с которым вам удобнее всего работать.