Ну, некоторые реляционные БД, вероятно, вполне подойдут для вашего счета.
Для начала вам следует проверить SQLite , это база данных SQL, предназначенная для встраивания.
Таким образом, вы получаете возможность использовать обычный SQL (или ORM по вашему выбору) с самого начала, и вы можете относительно безболезненно перейти на более «большую» базу данных SQL, если она вам понадобится позже.
Для адресации ваших очков:
- Подходит ли для небольших приложений? (Важно) да, особенно полезно для встроенного использования с небольшими накладными расходами
- Подходит ли для больших приложений? Насколько большое приложение оно может поддерживать? зависит от ваших конкретных потребностей, но вы всегда можете перейти на другую базу данных позже
- Приложение будет хранить данные локально, но в будущем может закончиться тем, что поделится схемой с чем-то в сети / в облаке. SQLite будет хранить данные локально, другая база данных может использоваться для сетевого хранения
- Есть ли хорошие библиотеки / ORM для его использования? по крайней мере Hibernate поддерживает это явно, другой ORM должен работать как SQL db
- Есть ли какие-нибудь интересные функции, которые могут быть неочевидны для новичка? -
- Почему вам нравится его использовать? низкие накладные расходы, быстрый, простой в настройке, но SQL dbms
- Это реляционная база данных? Или что-то другое? реляционная
- Мое приложение должно будет в какой-то момент создавать версии фрагментов "контента" никакой специальной поддержки, но обычно все равно обрабатывается внутри схемы