He escrito dos motores de bases de datos “desde cero” y he trabajado en otro. Aquí hay algunos pensamientos:
- Los carteles que mencionan que esto no es algo que haces a la ligera tienen razón. Los motores de bases de datos, particularmente los motores relacionales, son muy complejos e involucran numerosas áreas de la informática. También implican simplemente una gran cantidad de código, ya que hacen muchas cosas; incluso un motor de base de datos relacional “pequeño” tendrá un mínimo de 75-100K líneas de código C.
- Dicho esto, creo que hay cosas interesantes que hacer en db world que nadie realmente ha hecho un buen trabajo resolviendo todavía, por lo que no quiero desanimar a nadie que quiera intentar codificar a los administradores de datos para que lo hagan. No estaría de más echar un vistazo a cosas como SQLite y PostgreSQL y algunos de los otros proyectos de código abierto como MongoDB, etc., para ver qué implica.
- También tendrá que sentirse muy cómodo haciendo pruebas y depuración a gran escala, ya que los núcleos del motor db tienen todo tipo de lugares para errores divertidos 🙂
Aquí hay algunos enlaces aleatorios de Quora que pueden ser buenos para echar un vistazo:
¿Hay bases de datos de código abierto disponibles en el mercado para desarrollar software?
¿Cuál es la historia de las bases de datos relacionales?
- Vi el episodio 4,5,6 de Star Wars. ¿Puedo ver el séptimo episodio o debería ver 1,2,3 episodios?
- El arranque automático de mi bicicleta (Yamaha R15) no funciona. ¿Cuál podría ser el problema?
- Fui hierba hace 15 días y solo recibí 4 golpes. ¿Estaría limpio para una prueba de orina ahora?
- Si dejara caer un martillo de lado, ¿la parte más pesada del martillo golpearía el suelo primero?
- Soy un estudiante de medicina. Ahora estoy aprendiendo habilidades de laboratorio. Pero lo encuentro aburrido y estoy deprimido por los resultados insatisfactorios. ¿Qué tengo que hacer?
La respuesta de Greg Kemnitz a ¿En qué idioma se crea una base de datos? ¿Cómo se crea una base de datos?
¿Qué es un administrador de almacenamiento?
Ahora soy un desarrollador de Java. Quiero aprender a desarrollar una base de datos. ¿Cuáles son algunas sugerencias sobre qué libros de teoría de DB y qué pequeño código de fuente abierta leer?
¡Buena suerte!