Tarea Académica N° 2
Ciclo: 2010-2
Sección: Todas
En la presente Tarea Académica usted no se le pide implementar un motor de base de datos, pero
sí que pueda administrar una tabla de base de datos, en particular la administración de una tabla
de base de datos.
Se le pide administrar una tabla base de datos con los siguientes campos:
Para poder crear esta tabla se debe utilizar un archivo plano con un separador “|” entre las
columnas. Además de poder administrar la tabla se debe ejecutar las siguientes funciones
Se debe poder hacer consultas de los campos de la tabla. La información debe mostrarse en un
lista según la extensión del tipo de campo.
Select [campo1, campo2, etc] from MiTabla where [campo1] like [valor1]
Esta funcionalidad solo debe aplicar para el tipo String. Se debe validar a través de subcadenas
como '%San Borja%' dentro de algún campo. También se debe validar UPPER Y DOWNCASE, es
decir, si se toma en cuenta que en la búsqueda el texto como tal o si se ignora si esta en
mayúsculas o minúsculas (es como convertir todo el texto a mayúscula y validar con %SAN
BORJA%')
Para poder optimizar estas operaciones se le solicita que usted realice Índices. Los índices son
estructuras que permiten mejorar el tiempo de las consultas a través de “saltos”. Para esto se les
pide que implementen un esquema de árbol para poder almacenar la información de los mismos.
Deberán elegir el tipo de árbol más adecuado según el escenario y lo implementarán para guardar
los índices de todos los campos de tipo String con criterio “(ordenante)”.
Además, para realizar la verificación de que el árbol se ha creado de forma correcta, se deberá
poder exportar el árbol a un archivo txt.
La forma de exportarlo seguirá el siguiente formato:
[ORDENANTE]
[NIVEL]DATO
Por ejemplo:
DNI
[0]70006031 70006031
[1]60005012
[2]20015285 60005012 99800012
[3]19999999
[3]25555555 20015285 60022153 … …
[2]60022153
[1]99800012 19999999 25555555
[2+…
*2+…
Por último deberán poder mostrar la eficiencia de sus algoritmos tiempo / comparaciones.
CONSIDERACIONES
La aplicación debe ser realizada con lenguaje C++, C# o java, en el IDE que vean conveniente. La
realización de la tarea académica es personal o en grupos de dos personas. La evaluación será
realizada inicialmente sobre la parte VISUAL durante una EXPOSICIÓN, es decir, debe funcionar
completamente la aplicación, en caso que no funcione completamente, queda a criterio del
profesor el puntaje que corresponda según el nivel de avance. Se deben utilizar archivos de texto
tanto para la información como para los índices. El archivo con la información inicial de la tabla
será proporcionado por los profesores del curso en base a lo indicado en la descripción, con un
separador de “|” entre cada campo del registro y cada registro en una línea de texto distinta.
CALIFICACIÓN
Usted deberá implementar todas las funcionalidades expuestas anteriormente para poder obtener
la nota máxima de 20.
Mucha suerte!!!