К примеру, есть несколько десятков тысяч строк, в каждой из которых есть ячейки типа 'title', 'description', 'name', 'year' и прочие.
Есть ли смысл хранить подобное в CSV для дальнейшего использования этих данных? Обрабатываться и изменяться они не будут, только считываться некоторые колонки по ключу.
Или лучше все-же использовать БД, типа MySQL?
CSV хорош в качестве механизма транспорта данных. Например, выложить дамп БД куда-нибудь, отчет какой-то и т.д. Он компактнее JSON для табличных данных.
А хранить данные лучше в СУБД. Это хороший случай для использования SQLite.