Для начала вы определитесь, что и в каком объеме будет хранить база данных (хотя бы примерно)? Какие требования у вас к БД, к ее производительности, к ее возможностям, наличию возможности удаленного доступа и т.п.?
Если вам там нравится JSON - посмотрите в сторону NoSQL баз данных. Например, MongoDB. Схема хранения данных схожая, гибкости больше и это СУБД, отсюда всякие ништяки типа отдельного доступа к БД из других приложений, встроенные средства работы с данными, сортировкой, индексами и много чем еще, типа архитектурно заложенные средства безопасности, транзакций и т.п. и т.д. и др. В очень грубом приближении можно сказать, что это MySQL (нет конечно же), но подход к хранению и обработке данных совсем другой.
Есть также несколько реализаций встраиваемых БД, которые не требуют установки на сервер отдельного программного слоя в виде СУБД и работают на уровне самого приложения (неважно, сайт в том числе). На разных языках программирования есть и универсальные и уникальные реализации. Например, NeDB для node.js, LiteDB для .NET, LevelDB, PouchDB и т.п.
Если у вас будет немного данных, всю базу можно и хранить в файлах, как вы описываете INI или JSON. Разве что выбор INI не то, чтобы неудачный, просто почти в любом веб-ориентированном языке программирования есть уже средства по работе с JSON. В том числе и реализации встроенных баз данных на базе JSON. Успешных реализаций встроенных баз данных из INI я не встречал еще... Тем более, что в конечном итоге вам наверняка придется обмениваться данными между сервером и клиентом и для этого обычно используют именно JSON.
Хранение большого количества мелких файлов (в вашем понимании INI) - может стать в определенный момент проблемой на уровне операций с диском, также все сильно зависит от файловой системы и ее настроек на сервере. 50 тыс это дофига на самом деле. Я встречал проблемы с более 30к файлов в одной папке, решить это потом "на горячую" будет проблематично, а главное что не всегда будет очевидна проблема.