26 de Julio - Datos y bases de datos

 Estructuras de datos

Las estructuras de datos son una parte crítica del desarrollo de software y uno de los temas más comunes para las preguntas en las entrevistas de trabajo de los desarrolladores. La buena noticia es que son formatos especializados básicamente para organizar y almacenar data. Esto nos lleva a la pregunta, ¿de qué tipo de operaciones estamos hablando? Acceder, insertar, eliminar, buscar y clasificar los datos son algunas de las operaciones básicas que se pueden realizar utilizando estructuras de datos. No todas las estructuras de datos pueden realizar estas operaciones de manera eficiente, eso es lo que llevó al desarrollo de diferentes estructuras de datos.

Son una forma de organizar los datos en la computadora, de tal manera que nos permita realizar unas operaciones con ellas de forma muy eficiente. Es decir, igual que un array introducimos un dato y eso es prácticamente inmediato, no siempre lo es, según qué estructuras de datos y qué operaciones.

¿Por qué es importante conocerlas?

Cuando inicias en el mundo de la programación las estructuras de datos son fundamentales. Conocer sobre listas, árboles y grafos te permitirá organizar mejor la información y crear código más eficiente. Además, es clave para mejorar tus habilidades técnicas.

Arrays

Los Arrays son una estructura que almacena los datos un elemento al lado del otro. En la mayoría de los lenguajes de programación esta estructura de datos es de tamaño fijo y no puede guardar datos de diferentes tipos, es decir no puedo guardar valores numéricos y booleanos al mismo tiempo, aunque claramente hay excepciones, por ejemplo: JavaScript. Es recomendable usar Arrays cuando el acceso a estos datos se realiza de manera aleatoria, en caso contrario es recomendable usar las listas.

Tipos de estructuras de datos

Al hablar de estructuras de datos debemos pensar en primera instancia en cómo los datos se representan en la memoria, ¿se trata de estructuras contiguas o enlazadas?, al partir de esta pregunta podemos darnos la idea correcta sobre la base de nuestra estructura y cómo es que los datos se van a almacenar.

  • Las estructuras contiguamente asignadas están compuestas de bloques de memoria únicos, e incluyen a los Arrays, matrices.
  • Las estructuras enlazadas están compuestas de distintos fragmentos de memoria unidos por pointers o punteros, e incluyen a las listas, arboles, y grafos.
  • Los contenedores son estructuras que permiten almacenar y recuperar datos en un orden determinado sin importar su contenido, en esta se incluyen los stacks.

Bases de datos: Relacionales

Una base de datos relacional (RDB) es un conjunto colectivo de varios conjuntos de datos organizados por tablas, registros y columnas. Las RDB establecen una relación bien definida entre tablas de base de datos. Las tablas comunican y comparten información, lo que facilita el informe, la organización y la búsqueda de datos. Las RDB usan lenguaje de consulta estructurado (SQL), que es una aplicación de usuario estándar que proporciona una interfaz de programación fácil para la interacción de la base de datos. La RDB se derivan del concepto funcional matemático de esquematización de conjuntos de datos. Edgar F. Codd la desarrolló.

Bases de datos: No relacionales

Una base de datos no relacional es una base de datos que no incorpora el modelo clave/la tabla que fomentan los sistemas de gestión de bases de datos relacionales (RDBMS). Estos tipos de bases de datos requieren técnicas y procesos de manipulación diseñados para proporcionar soluciones para problemas de Big Data que enfrentan las grandes compañías. La base de datos no relacional emergente más popular se denomina NoSQL (no solo SQL).

Comentarios

Entradas populares de este blog

29 de Julio - Red continuación