Professional Documents
Culture Documents
Bases de datos:
Lnea de tiempo:
La antigedad:
1884:
Este ao se dio origen a la maquina automtica de perforacin de tarjetas
inventada por Herman Hollerith (29 de febrero de 1860 17 de noviembre de
1929) la cual fue utilizada para el censo de los Estado Unidos mejorando el
proceso de terminacin de siete aos a solo dos aos y medio
1950:
La creacin de las cintas magnticas sus principios se la atribuyen al ingls
Oberlin Smith, con este mecanismo se empez a automatizar la informacin
referente a nmina.
En este lapso de tiempo el origen de las cintas magnticas, las cuales sirvieron
para suplir las necesidades de informacin de las nuevas industrias. Por medio
de este mecanismo se empez a automatizar la informacin de las nminas,
como por ejemplo el aumento de salario. Consista en leer una cinta o ms y
pasar los datos a otra, y tambin se podan pasar desde las tarjetas perforadas.
Simulando un sistema de Backup, que consiste en hacer una copia de
seguridad o copia de respaldo, para guardar en un medio extrable la
informacin importante. La nueva cinta a la que se transfiere la informacin
pasa a ser una cinta maestra. Estas cintas solo se podan leer secuencial y
ordenadamente.
1960:
base de datos informatizada se inici en la dcada de 1960, cuando el uso de
las computadoras se convirti en una opcin ms rentable para las
organizaciones privadas. Haba dos modelos de base de datos ms populares
en esta dcada: un modelo de red llamado CODASYL y un modelo jerrquico
llamado IMS. Un sistema de base de datos que demostr ser un xito comercial
fue el sistema SABRE que fue utilizado por IBM para ayudar a American
Airlines, la gestin de sus datos de reservas.
El uso de los discos en ese momento fue un adelanto muy efectivo, ya que por
medio de este soporte se poda consultar la informacin directamente, esto
ayudo a ahorrar tiempo. No era necesario saber exactamente donde estaban
los datos en los discos, ya que en milisegundos era recuperable la informacin.
A diferencia de las cintas magnticas, ya no era necesaria la secuencialidad, y
este tipo de soporte empieza a ser ambiguo.
Los discos dieron inicio a las Bases de Datos, de red y jerrquicas, pues los
programadores con su habilidad de manipulacin de estructuras junto con las
ventajas de los discos era posible guardar estructuras de datos como listas y
rboles.
1970:
Edgar Frank Codd (23 de agosto de 1923 18 de abril de 2003), en un artculo
"Un modelo relacional de datos para grandes bancos de datos compartidos" ("A
Relational Model of Data for Large Shared Data Banks") en 1970, defini el
modelo relacional y public una serie de reglas para la evaluacin de
administradores de sistemas de datos relacionales y as nacieron las bases de
datos relacionales.
1976:
Un modelo de base de datos nueva llamada Entidad-Relacin, o ER. Este
modelo ha permitido a los diseadores centrarse en la aplicacin de los datos,
en lugar de estructura de la tabla lgica.
1980:
Lenguaje de consulta estructurado o SQL, se convirti en el lenguaje de
consulta estndar.
Los sistemas de bases de datos relacionales se convirtieron en un xito
comercial como el rpido aumento de las ventas de ordenadores de estmulo al
mercado de bases de datos, y esto provoc un importante descenso en la
popularidad de las redes y los modelos jerrquicos de bases de datos. DB2 se
convirti en el producto insignia de la base de datos de IBM, y la introduccin
de la PC de IBM como resultado en los establecimientos de muchas empresas
de bases de datos nuevas y el desarrollo de productos como Paradox, 5000
RBASE, RIM, Dbase III y IV, OS / 2 de base de datos, y Watcom SQL. Tambin se
da inicio a las bases de datos orientadas a objetos.
1990:
Despus de una sacudida industria de base de datos, la mayora de las
empresas supervivientes vende productos complejos de bases de datos a
precios elevados. Alrededor de este tiempo, las nuevas herramientas de cliente
para el desarrollo de aplicaciones fueron liberadas, y stos incluyen el
desarrollador de Oracle, PowerBuilder, Visual Basic, etc. Una serie de
herramientas para la productividad personal, como ODBC y Excel / Access,
tambin se desarrollaron.
la llegada de la Internet condujo a un crecimiento exponencial de la industria
de la base de datos. Media de usuarios de escritorio comenz a utilizar
sistemas cliente-servidor de base de datos para acceder a los sistemas
informticos.
El boom de esta dcada fue la aparicin de la WWW Word Wide Web ya que
por ste medio se facilitaba la consulta de las bases de datos. Actualmente
tienen una amplia capacidad de almacenamiento de informacin, tambin una
de las ventajas es el servicio de siete das a la semana las veinticuatro horas
del da, sin interrupciones a menos que haya planificaciones de mantenimiento
de las plataformas o el software.
Siglo XXI
Desventajas:
Desventajas:
La congestin del trfico ha sido siempre un problema en el paradigma
de C/S. Cuando una gran cantidad de clientes envan peticiones
simultneas al mismo servidor, puede ser que cause muchos problemas
para ste (a mayor nmero de clientes, ms problemas para el servidor).
Al contrario, en las redes P2P como cada nodo en la red hace tambin de
servidor, cuanto ms nodos hay, mejor es el ancho de banda que se
tiene.
El paradigma de C/S clsico no tiene la robustez de una red P2P. Cuando
un servidor est cado, las peticiones de los clientes no pueden ser
satisfechas. En la mayor parte de redes P2P, los recursos estn
generalmente distribuidos en varios nodos de la red. Aunque algunos
salgan o abandonen la descarga; otros pueden todava acabar de
descargar consiguiendo datos del resto de los nodos en la red.
El software y el hardware de un servidor son generalmente muy
determinantes. Un hardware regular de un ordenador personal puede no
poder servir a cierta cantidad de clientes. Normalmente se necesita
software y hardware especfico, sobre todo en el lado del servidor, para
satisfacer el trabajo. Por supuesto, esto aumentar el coste.
El cliente no dispone de los recursos que puedan existir en el servidor.
Por ejemplo, si la aplicacin es una Web, no podemos escribir en el disco
duro del cliente o imprimir directamente sobre las impresoras sin sacar
antes la ventana previa de impresin de los navegadores.
Sistemas distribuidos:
Un sistema distribuido se define como una coleccin de computadoras
separadas fsicamente y conectadas entre s por una red de comunicaciones;
cada mquina posee sus componentes de hardware y software que el
programador percibe como un solo sistema (no necesita saber qu cosas estn
en qu mquinas). El programador accede a los componentes de software
(objetos) remotos, de la misma manera en que accedera a componentes
locales, en un grupo de computadoras que usan un middleware entre los que
destacan (RPC) y SOAP para conseguir un objetivo.
Los sistemas distribuidos deben ser muy confiables, ya que si un componente
del sistema se descompone otro componente debe ser capaz de reemplazarlo.
Esto se denomina tolerancia a fallos.
El tamao de un sistema distribuido puede ser muy variado, ya sean decenas
de hosts (red de rea local), centenas de hosts (red de rea metropolitana), o
miles, o millones de hosts (Internet); esto se denomina escalabilidad.
Caractersticas:
Para cada uno de los usuarios debe ser similar al trabajo en el Sistema
Centralizado.
Seguridad interna en el sistema distribuido.
Se ejecuta en mltiples computadoras.
Tiene varias copias del mismo sistema operativo o de diferentes
sistemas operativos que proveen los mismos servicios.
Entorno de trabajo cmodo.
Dependiente de redes (LAN, MAN, WAN, etc.).
Compatibilidad entre los dispositivos conectados.
Transparencia (el uso de mltiples procesadores y el acceso remoto debe
ser invisible).2
Interaccin entre los equipos.
Diseo de software compatible con varios usuarios y sistemas
operativos.
Ventajas:
Desventajas:
El principal problema es el software, es el diseo, implantacin y uso del
software distribuido, pues presenta numerosos inconvenientes. Los principales
interrogantes son los siguientes:
Sistema en nube:
Conocida tambin como servicios en la nube, informtica en la nube, nube de
cmputo o nube de conceptos (del ingls cloud computing), es un paradigma
que permite ofrecer servicios de computacin a travs de una red, que
usualmente es Internet.
En este tipo de computacin todo lo que puede ofrecer un sistema informtico
se ofrece como servicio,2 de modo que los usuarios puedan acceder a los
servicios disponibles "en la nube de Internet" sin conocimientos (o, al menos
sin ser expertos) en la gestin de los recursos que usan. Segn el IEEE
Computer Society, es un paradigma en el que la informacin se almacena de
manera permanente en servidores de Internet y se enva a cachs La
computacin en la nube son servidores desde Internet encargados de atender
las peticiones en cualquier momento. Se puede tener acceso a su informacin
o servicio, mediante una conexin a internet desde cualquier dispositivo mvil
o fijo ubicado en cualquier lugar. Sirven a sus usuarios desde varios
proveedores de alojamiento repartidos frecuentemente por todo el mundo. Esta
medida reduce los costos, garantiza un mejor tiempo de actividad y que los
sitios web sean invulnerables a los delincuentes informticos, a los gobiernos
locales y a sus redadas policiales pertenecientes.
Caractersticas:
Agilidad: Capacidad de mejora para ofrecer recursos tecnolgicos al
usuario por parte del proveedor.
Costo: los proveedores de computacin en la nube afirman que los
costos se reducen. Un modelo de prestacin pblica en la nube convierte
los gastos de capital en gastos de funcionamiento. Ello reduce barreras
de entrada, ya que la infraestructura se proporciona tpicamente por una
tercera parte y no tiene que ser adquirida por una sola vez o tareas
informticas intensivas infrecuentes.
Escalabilidad y elasticidad: aprovisionamiento de recursos sobre una
base de autoservicio en casi en tiempo real, sin que los usuarios
necesiten cargas de alta duracin.
Independencia entre el dispositivo y la ubicacin: permite a los usuarios
acceder a los sistemas utilizando un navegador web,
independientemente de su ubicacin o del dispositivo que utilice (por
ejemplo, PC, telfono mvil).
La tecnologa de virtualizacin permite compartir servidores y
dispositivos de almacenamiento y una mayor utilizacin. Las
aplicaciones pueden ser fcilmente migradas de un servidor fsico a otro.
Rendimiento: Los sistemas en la nube controlan y optimizan el uso de los
recursos de manera automtica, dicha caracterstica permite un
seguimiento, control y notificacin del mismo. Esta capacidad aporta
transparencia tanto para el consumidor o el proveedor de servicio.
Seguridad: puede mejorar debido a la centralizacin de los datos. La
seguridad es a menudo tan buena o mejor que otros sistemas
tradicionales, en parte porque los proveedores son capaces de dedicar
recursos a la solucin de los problemas de seguridad que muchos
clientes no pueden permitirse el lujo de abordar. El usuario de la nube es
responsable de la seguridad a nivel de aplicacin. El proveedor de la
nube es responsable de la seguridad fsica.5
Mantenimiento: en el caso de las aplicaciones de computacin en la
nube, es ms sencillo, ya que no necesitan ser instalados en el
ordenador de cada usuario y se puede acceder desde diferentes lugares.
Ventajas:
ndices:
Un ndice es una estructura de disco asociada con una tabla o una vista que
acelera la recuperacin de filas de la tabla o de la vista. Un ndice contiene
claves generadas a partir de una o varias columnas de la tabla o la vista.
Dichas claves estn almacenadas en una estructura (rbol b) que permite que
SQL Server busque de forma rpida y eficiente la fila o filas asociadas a los
valores de cada clave.
Una tabla o una vista puede contener los siguientes tipos de ndices:
Agrupado
Los ndices agrupados ordenan y almacenan las filas de los datos de la tabla o
vista de acuerdo con los valores de la clave del ndice. Son columnas incluidas
en la definicin del ndice. Slo puede haber un ndice clster por cada tabla,
porque las filas de datos slo pueden estar ordenadas de una forma.
La nica ocasin en la que las filas de datos de una tabla estn ordenadas es
cuando la tabla contiene un ndice clster. Cuando una tabla tiene un ndice
clster, la tabla se denomina tabla agrupada. Si una tabla no tiene un ndice
clster, sus filas de datos estn almacenadas en una estructura sin ordenar
denominada montn.
No agrupado
Los ndices no agrupados tienen una estructura separada de las filas de datos.
Un ndice no agrupado contiene los valores de clave de ndice no agrupado y
cada entrada de valor de clave tiene un puntero a la fila de datos que contiene
el valor clave.
El puntero de una fila de ndice no agrupado hacia una fila de datos se
denomina localizador de fila. La estructura del localizador de filas depende de
si las pginas de datos estn almacenadas en un montn o en una tabla
agrupada. Si estn en un montn, el localizador de filas es un puntero hacia la
fila. Si estn en una tabla agrupada, el localizador de fila es la clave de ndice
agrupada.
Puede agregar columnas sin clave al nivel hoja de un ndice no agrupado con el
fin de eludir los lmites existentes para las claves de ndice, 900 bytes y
columnas de 16 claves, as como para ejecutar consultas indizadas y
totalmente cubiertas. Para obtener ms informacin, vea ndice con columnas
incluidas.
Para obtener ms informacin acerca de la arquitectura de ndices, vea
Arquitectura de estructuras de tablas y datos de ndices.
Tanto los ndices agrupados como los no agrupados pueden ser nicos. Esto
significa que dos filas no pueden tener el mismo valor para la clave de ndice.
De lo contrario, el ndice no es nico y varias filas pueden compartir el mismo
valor de clave. Para obtener ms informacin, vea Directrices para disear
ndices nicos.
Los ndices se mantienen automticamente para una tabla o vista cuando se
modifican los datos de la tabla.
ndices y restricciones
Los ndices se crean automticamente cuando las restricciones PRIMARY KEY y
UNIQUE se definen en las columnas de tabla. Por ejemplo, cuando cree una
tabla e identifique una determinada columna como la clave primaria, Motor de
base de datos crea automticamente una restriccin PRIMARY KEY y un ndice
en esa columna. Para obtener ms informacin, vea Crear ndices (motor de
base de datos).
Cmo utiliza los ndices el optimizador de consultas
Los ndices bien diseados pueden reducir las operaciones de E/S de disco y
consumen menos recursos del sistema, con lo que mejoran el rendimiento de la
consulta. Los ndices pueden ser tiles para diversas consultas que contienen
instrucciones SELECT, UPDATE, DELETE o MERGE. Fjese en la consulta SELECT
Title, HireDate FROM HumanResources.Employee WHERE EmployeeID = 250 en
la base de datos AdventureWorks2008R2. Cuando se ejecuta la consulta, el
optimizador de consultas evala cada mtodo disponible para recuperar datos
y selecciona el mtodo ms eficiente. El mtodo puede ser un recorrido de la
tabla o puede ser recorrer uno o ms ndices si existen.
Al realizar un recorrido de la tabla, el optimizador de consultas leer todas las
filas de la tabla y extraer las filas que cumplen con los criterios de la consulta.
Un recorrido de la tabla genera muchas operaciones de E/S de disco y puede
consumir recursos. No obstante, puede ser el mtodo ms eficaz si, por
ejemplo, el conjunto de resultados de la consulta es un porcentaje elevado de
filas de la tabla.
Cuando el optimizador de consultas utiliza un ndice, busca en las columnas de
clave de ndice, busca la ubicacin de almacenamiento de las filas que necesita
la consulta y extrae las filas coincidentes de esa ubicacin. Generalmente, la
bsqueda del ndice es mucho ms rpida que la bsqueda de la tabla porque,
a diferencia de la tabla, un ndice frecuentemente contiene muy pocas
columnas por fila y las filas estn ordenadas.
El optimizador de consultas normalmente selecciona el mtodo ms eficaz
cuando ejecuta consultas. No obstante, si no hay ndices disponibles, el
optimizador de consultas debe utilizar un recorrido de la tabla. Su tarea
consiste en disear y crear los ndices ms apropiados para su entorno de
forma que el optimizador de consultas disponga de una seleccin de ndices
eficaces entre los que elegir. SQL Server proporciona el Asistente para la
optimizacin de motor de base de datos como ayuda en el anlisis del entorno
de la base de datos y en la seleccin de los ndices adecuados.
Sistemas distribuidos.
Sistemas centralizados.
Arquitectura, Cliente / Servidor.
Base de datos Orientados a Objetos.
Tipos de almacenamiento:
Almacenamiento convencional
El almacenamiento convencional es el ms extendido en casi todos los sectores
industriales y se caracteriza por la escasa utilizacin de mecanismos, el empleo
de equipos de tecnologa comn y la mayor utilizacin de mano de obra.
Almacenamiento automtico
Su concepcin es similar a la de los almacenamientos de alta densidad ya que
se utilizan equipos especficos que circulan por pasillos estrechos y se
almacena a gran altura. La diferencia se basa en que, en este caso, la
ubicacin y desubicacin la realiza un sistema de gestin informtico en
sustitucin de la mano de obra.