Foros del Web » Programación para mayores de 30 ;) » C/C++ »

[SOLUCIONADO] Arboles Binarios, B B+ etc - Creacion de un SGBD

Estas en el tema de Arboles Binarios, B B+ etc - Creacion de un SGBD en el foro de C/C++ en Foros del Web. Hola a todos, tengo una serie de dudas acerca de los arboles, ya sean binarios de busqueda, B,B*,B+ etc... He estudiado acerca de estas estructuras ...
  #1 (permalink)  
Antiguo 23/01/2015, 11:56
 
Fecha de Ingreso: febrero-2014
Mensajes: 107
Antigüedad: 10 años, 9 meses
Puntos: 0
Pregunta Arboles Binarios, B B+ etc - Creacion de un SGBD

Hola a todos, tengo una serie de dudas acerca de los arboles, ya sean binarios de busqueda, B,B*,B+ etc...

He estudiado acerca de estas estructuras de datos y se que sirven para la creacion de bases de datos, sistemas operativos, entre otras cosas; mi pregunta es, teniendo un algoritmo por ejemplo del arbol binario, lo podria usar para crear un gestor de bases de datos desde cero o se usa para la creacion de la base de datos como tal.

Si alguien sabe por favor me explique y tambien me pueda asesorar sobre como puedo crear algo pequeño a modo de prueba con estos algoritmos en C++.
  #2 (permalink)  
Antiguo 26/01/2015, 02:46
 
Fecha de Ingreso: octubre-2014
Ubicación: Madrid
Mensajes: 1.212
Antigüedad: 10 años, 2 meses
Puntos: 204
Respuesta: Arboles Binarios, B B+ etc - Creacion de un SGBD

Los árboles binarios no son sino una forma de crear listas ordenadas de elementos. El uso que le des después a dicha lista es cosa tuya.

Una ventaja de un árbol frente a una lista simple es que, al estar la información ordenda, es mucho más rápido acceder a un registro concreto... una desventaja es que, ante actualizaciones del árbol, hay que hacer postprocesos para que éste siga estando ordenado, lo que consume tiempo de ejecución.

Dado que un árbol binario no deja de ser, en términos prácticos, una lista, perfectamente puedes implementar un motor de bases de datos usando listas no ordenadas en vez de árboles binarios.... usar árboles no es algo imprescindible.

Por cierto, ¿a qué te refieres con crear una base de datos? una base de datos no es más que uno o varios ficheros que almacenan información de una forma determinada... simplemente eso. Esos archivos no tienen código, únicamente datos. Eso sí, para gestionar esos archivos hace falta un gestor de bases de datos, que es donde se encuentra el código con el que quieres trastear.

Mi consejo, dado que parece que no tienes demasiada soltura con el tema, es que antes de intentar hacer un motor de bases de datos, tarea que tiene muchísimo curro, es que hagas prácticas más sencillas con árboles binarios... por ejemplo haz una aplicación que permita crear un árbol binario a partir de datos introducidos por la consola, que permita editar y quitar sus elementos... después añade la opción de almacenar ese árbol en un archivo... cosas así.

Esa práctica te va a proporcionar mucha más riqueza y conocimientos que pegarte con un motor de bases de datos, en serio.

Un saludo.
  #3 (permalink)  
Antiguo 26/01/2015, 11:31
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 9 meses
Puntos: 1360
Respuesta: Arboles Binarios, B B+ etc - Creacion de un SGBD

Definitivamente crear un motor de base de datos desde 0 es mucho trabajo.

Puedes ver por ejemplo el código de sqlite, a pesar de no ser un motor de base de datos ligero es bastante extenso el proyecto.

Etiquetas: algoritmos, bases-de-datos-general, bd, estructuras, gestor
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:37.