Какие размеры данных можно хранить в базе данных?
Дело не в размере данных, а в их структуре.
Если хранить данные в виде json, то запросы действительно начнут тупить очень быстро.
Если создать нормальную структуру и записывать каждый элемент данных в свою ячейку,  а json использовать только в исключительных случаях, для заведомо неструктурируемой информации, то даже при объемах в сто раз больше всё будет летать.
Все зависит от того как именно идет работа с базой данных, есть ли поиск по содержимому или база данных используется исключительно как найти json по такому то имени/идентификатору? Просто поиск данных по первичному ключу в базах данных очень быстрый.

Формально поиск данных внутри текстовых полей с json реализован в mysql, индексы строятся, все работает, но запись а точнее обновление индексов будет заметно медленной, и это считается говнокодом...

Проблемы начинаются когда ты хочешь записать данные в базу!

Если сравнивать обслуживание - например полное восстановление базы данных из архивной копии, то работа с файлами на порядок (даже два, есть опыт, это действительно так) быстрее чем запись тех же самых данных в базу данных, даже если отключить все индексы на время восстановления. С другой стороны, когда у тебя миллиарды записей, файловая система тоже становится проблемой, особенно когда сами файлы мелкие.. накладные расходы на файловую систему становятся заметными.

Плюс с файлами можно что то сколхозить.

Поэтому - прежде чем задавать этот вопрос, нужно понимать характер работы с этим данными, не только чтение но и запись.