No ... bueno ... no necesariamente.
Siempre que tenga una convención estricta y medios de análisis y validación comunes (scripts, bibliotecas, etc.) disponibles, estará listo.
Tomemos, por ejemplo, los sistemas de gestión de paquetes y dependencias (Maven, NuGet y similares). Aunque muchos usarán archivos específicos para metadatos para almacenar la información más avanzada, la información básica a menudo es parte del nombre del archivo. Basándose en convenciones estrictas, el nombre del archivo puede contener la información más pertinente sobre el paquete: es el proveedor, su nombre, su versión, su tipo. A veces eso es todo lo que necesita ... 4 o 5 piezas cortas de información.
Si los metadatos son simples, entonces una convención de nomenclatura de archivos tiene mucho sentido y no requiere nada. Se puede fortalecer con herramientas y scripts muy simples, sin necesidad de una base de datos, sin infraestructura especializada, solo unos pocos scripts y una convención de nomenclatura.
Si nada por ahí hace lo que necesita y sus necesidades son simples, comenzaría con esto.
sus requisitos superan esta convención? extiéndalo con un archivo de metadatos adecuado. ¿Más tarde necesitas una mejor búsqueda para esto? Ya existen buenas soluciones para buscar archivos que lo lleven a donde lo necesita.
No es que no me gusten las bases de datos, sino que son realmente poderosas y útiles, pero requieren una cierta sobrecarga para comenzar. Deben instalarse, respaldarse, mantenerse, necesitará personal que, si no está completamente dedicado, deberá dedicar parte de su tiempo a esta infraestructura. También son más complejos y crípticos para los legos, pierden el desarrollador que lo configuró y su sistema se atascará a tiempo hasta que encuentre un reemplazo.
Nunca subestimes el poder de la baja tecnología con la supervisión adecuada que puede llevarte lejos.
Y cuando supere su solución de baja tecnología, habrá reunido toda la experiencia y los requisitos para implementar el sistema perfecto para sus necesidades.