Сначала используйте T ext :: CSV_XS для анализа файла CSV.
Во-вторых, какую базу данных использовать и как ее структурировать, зависит от того, какие поиски будут выполняться.
Если вы выполняете простое сопоставление ключевых слов, хранилище значений ключей будет очень быстрым. Что-то вроде Беркли БД будет хорошо.
Если у вас есть более сложные потребности, вы можете рассмотреть базу данных SQL, такую как MySQL, PostgreSQL, Oracle, SyBase и т. Д. Настройка и проектирование базы данных SQL - это отдельная область исследований. Однако я дам несколько советов и рекомендую вам очень тщательно подумать о том, какие индексы можно применять к вашим полям, чтобы максимизировать скорость запроса.