Mejor respuesta
Primero, permítanme aclarar algo de terminología. Un sistema de administración de bases de datos es un software diseñado para organizar y administrar datos de manera que se puedan almacenar fácilmente a largo plazo, buscar (consultar), recuperar y modificar. Una base de datos es una instancia de este almacenamiento. Entonces, por analogía, un sistema de administración de bases de datos es como el concepto de catálogo de tarjetas de la biblioteca, y una base de datos es como un gabinete particular que contiene tarjetas en una biblioteca en particular. Sin embargo, me referiré al concepto general como «bases de datos», como hace la mayoría de las personas en una conversación.
Ser capaz de almacenar y recuperar datos suena bastante genérico, y es cierto. Eso es exactamente lo que las bases de datos son. Son una solución generalizada para adaptarse a las necesidades que surgen comúnmente en las aplicaciones de software. La característica clave de una base de datos es que organiza los datos de alguna manera que está destinada a ser utilizada por una aplicación / empresa. No es solo una colección de archivos, también es una forma de organizarlos dentro del contexto de alguna aplicación. Este tipo de necesidad surge todo el tiempo en el software, especialmente en las aplicaciones de Internet que requieren almacenamiento persistente y acceso en línea. Por ejemplo, si crea un servicio de correo electrónico, debe poder almacenar correos electrónicos de forma permanente y permitir que los usuarios los recuperen. Necesita poder buscar y ordenar los correos electrónicos. Debe poder distinguir fácilmente qué correos electrónicos pertenecen a qué usuario, y así sucesivamente. Una base de datos es ideal para esto.
Prácticamente todo software necesita almacenar y acceder a datos, pero los ingenieros de software no siempre eligen usar una base de datos. Entonces, si no siempre son necesarios, ¿qué ¿Para qué sirven y cómo saben cuándo usar uno?
Bueno, de nuevo, intentaré usar una analogía, aunque no será perfecta. Imagina que estás escribiendo un artículo de investigación corto de dos páginas para la escuela. Solo necesita leer un par de capítulos de un libro de texto sobre un tema con el que ya está familiarizado. En este caso, puede leer los capítulos y luego comenzar a escribir el artículo de inmediato. Tal vez vuelva a consultar el libro de texto según sea necesario . Tal vez escriba algunas notas en un esquema. Lo que sea, no es gran cosa.
Ahora suponga que tiene que escribir una tesis minuciosamente investigada que tendrá 50 páginas. Necesitará investigar utilizando una docena de libros de texto y citar referencias. Ahora, definitivamente necesitará organizarse. Probablemente querrás ser más organizado y diligente con la forma en que escribes notas, cómo usas los marcadores en los libros de texto y cómo perfilas tu trabajo.
En el primer escenario, ser super- organizado puede ser un poco exagerado y puede ralentizarlo. En el segundo escenario, si no estuviera tan organizado, nunca podría hacer el trabajo correctamente. En algún lugar entre esos dos escenarios está la diferencia entre cuándo una aplicación debería usar una base de datos y cuándo probablemente podría hacer algo más liviano. Depende del escenario y las necesidades del producto / servicio.
En este punto, es natural preguntar qué » ¿Cuál es la diferencia entre una base de datos y un sistema de archivos? Ambos se utilizan para almacenar, organizar y recuperar datos, ¿verdad?
Un sistema de archivos (como el sistema que almacena y presenta archivos en su computadora) muchas de las mismas cosas para las que está diseñada una base de datos. Almacena datos a largo plazo. Te permite buscar los datos. Puede recuperar los datos y los datos nuevos, modificar los datos existentes y eliminar datos.
La diferencia clave es que un sistema de archivos no está diseñado para organizar los datos para una aplicación o propósito comercial específico. No comprende mucho sobre la estructura de los datos, aparte de lo que necesita para poder almacenar y recuperar archivos. Los archivos no están necesariamente relacionados entre sí. No necesariamente dependen unos de otros ni tienen un significado particular entre sí. En el sistema de archivos de su computadora, tiene MP3, y tal vez documentos escolares que haya escrito, archivos guardados de videojuegos, correos electrónicos, e imágenes de tu cámara. Un sistema de archivos le ayuda a organizar estos archivos y usarlos con diferentes aplicaciones, pero no existe un entendimiento central para vincularlos. Por lo tanto, algunas preguntas pueden tener sentido sobre el sistema de archivos, como «¿Dónde está mi MP3 favorito?» «¿Qué archivo es el más grande?» «¿Qué archivo es el más nuevo?» «¿Dónde están todas mis fotos del año pasado?» Sin embargo, hay otras preguntas que «no tienen sentido para un sistema de archivos como» ¿Es este MP3 más valioso que este .doc de Word? «
Una base de datos, por otro lado, está destinada a almacenar datos que todo, al menos de alguna manera, se relaciona con algún propósito común. Por lo tanto, las bases de datos son buenas para organizar la información de una manera que facilita la respuesta a preguntas como «¿Quién es mi cliente más valioso?» «¿Qué producto es el más popular? «» ¿Quiénes son todos los proveedores y quiénes son todos los clientes que dependen de que el producto A esté disponible? «, Etc.
Entonces, para usar una analogía una vez más, un sistema de archivos podría ser como su archivador en hogar.Lo usa para almacenar sus documentos fiscales, los registros de mantenimiento de su automóvil, las boletas de calificaciones de sus hijos, los recibos que desea conservar, las facturas, etc. Mantiene sus cosas organizadas para que sepa cómo encontrarlas, pero no todo lo que hay allí está necesariamente relacionado con cualquier otra cosa que haya allí.
Una base de datos es más como, por ejemplo, un montón de archivadores en una oficina de contabilidad que solo contienen facturas. . Como si todas las cuentas por cobrar están contra una pared y todas las cuentas por pagar en la otra. Pueden estar ordenados por fecha, o tal vez alfabéticamente por pagador o beneficiario. Puede haber algunos archivos de índice en la parte delantera que le indiquen en qué gabinete buscar archivos asociados con pagadores que tienen un nombre determinado y tal vez otro índice por número de teléfono, u otro índice que enumere todas las facturas por valor de más de $ 200k o alguna cosa. Todos los archivos están relacionados con el negocio y están organizados de una manera que es más útil para el propósito del negocio.
Respuesta
La pregunta fue: ¿Cómo entiende «Base de datos»?
Una base de datos es un conjunto de elementos de información almacenados de forma estructurada en (en su mayoría) medios legibles por computadora con rutas de acceso bien definidas a los datos. Tenga en cuenta que los elementos de información en sí mismos no necesitan estar estructurados.
Por lo tanto, para dar algunos ejemplos:
- un conjunto de archivos almacenados en una computadora junto con el software para acceder a la información es una base de datos.
- un conjunto de películas almacenadas en una computadora junto con un índice de películas y algún software para encontrarlas y acceder a ellas es una base de datos.
- un conjunto de datos de medición en tiempo real que fluyen hacia la computadora y se almacenan en algún lugar es una base de datos.
- una base de datos puede tener su propio DBMS (RDBMS, HDBMS, etc.) o puede basarse en archivos planos también.