Gestor de Base de Datos
Integrantes: Ing Sistemas y Telemática - V Ciclo "B"
- Denilson Flores Ramirez
- Yon Leles Sanchez Morales
- Rosa Esther Chavez Fernandez
GESTOR DE BASE DE DATOS
GESTOR DE BASE DE DATOS
Definición
Un gestor de base de datos o sistema de
gestión de base de datos (SGBD o DBMS) es un software que permite introducir,
organizar y recuperar la información
de las bases de datos; en definitiva,
administrarlas. Existen distintos tipos de gestores de bases de datos:
relacional, jerárquico, red. El modelo relacional es el utilizado por casi
todos los gestores de bases de datos para PC. El modelo relacional (SGBDR) es
un software que almacena los datos en forma de tablas.
Componentes
Los principales componentes de un
gestor de base de datos son:
- Control de autorización. Este módulo comprueba que el usuario tiene los permisos necesarios para llevar a cabo la operación que solicita.
- Procesador de comandos. Una vez que el sistema ha comprobado los permisos del usuario, se pasa el control al procesador de comandos.
- Control de la integridad. Cuando una operación cambia los datos de la base de datos, este módulo debe comprobar que la operación a realizar satisface todas las restricciones de integridad necesarias.
- Optimizador de consultas. Este módulo determina la estrategia óptima para la ejecución de las consultas.
- Gestor de transacciones. Este módulo realiza el procesamiento de las transacciones.
- Planificador (Schedule). Este módulo es el responsable de asegurar que las operaciones que se realizan concurrentemente sobre la base de datos tienen lugar sin conflictos.
- Gestor de recuperación. Este módulo garantiza que la base de datos permanece en un estado consistente en caso de que se produzca algún fallo.
- Gestor de buffers. Este módulo es el responsable de transferir los datos entre memoria principal y los dispositivos de almacenamiento secundario. A este módulo también se le denomina gestor de datos.
Lenguajes de Modelación
Toda base de datos soportada por un SGBD
debe tener unos esquemas modelados adecuadamente. Coincidiendo con la evolución
histórica de las bases de datos, estas han utilizado distintos modelos. Los
SGBD esperan un modelo determinado para poder acceder de forma simple a la base
de datos.
Estos modelos son:
·
Jerárquicos
·
En
red
·
Relacionales
·
Relacionada
a objetos
Jerárquicos: Un modelo de datos jerárquico es un
modelo de datos en el cual los datos son organizados en una estructura parecida
a un árbol. La estructura permite a la información que se repite y usa relaciones
padre/Hijo: cada padre puede tener muchos hijos, pero cada hijo sólo tiene un
padre. Todos los atributos de un registro específico son catalogados bajo un
tipo de entidad.
En una base de datos, un tipo de entidad
es el equivalente de una tabla; cada registro individual es representado como
una fila y un atributo como una columna. Los tipos de entidad son relacionados
el uno con el otro usando 1: Trazar un mapa de n, también conocido como
relación de uno a varios. El ejemplo más aprobado de base de datos jerárquica
modela es un IMS diseñado por la IBM.
En
red: Una base de datos
de red es una base de datos conformada por una colección o set de registros,
los cuales están conectados entre sí por medio de enlaces en una red. El
registro es similar al de una entidad como las empleadas en el modelo
relacional.
Un registro es una colección o conjunto
de campos (atributos), donde cada uno de ellos contiene solamente un único
valor almacenado.
El enlace es exclusivamente la
asociación entre dos registros, así que podemos verla como una relación
estrictamente binaria.
Una estructura de base de datos de red,
llamada algunas veces estructura de plex, abarca más que la estructura de
árbol: un nodo hijo en la estructura red puede tener más de un nodo padre. En
otras palabras, la restricción de que en un árbol jerárquico cada hijo puede
tener sólo un padre, se hace menos severa.
Así, la estructura de árbol se puede
considerar como un caso especial de la estructura de red.
Relacional: El modelo relacional, para el modelado
y la gestión de bases de datos, es un modelo de datos basado en la lógica de
predicados y en la teoría de conjuntos.
Tras ser postuladas sus bases en 1970
por Edgar Frank Codd, de los laboratorios IBM en San José (California), no
tardó en consolidarse como un nuevo paradigma en los modelos de base de datos.
Su idea fundamental es el uso de
relaciones. Estas relaciones podrían considerarse en forma lógica como
conjuntos de datos llamados tuplas. Pese a que esta es la teoría de las bases
de datos relacionales creadas por Codd, la mayoría de las veces se conceptualiza
de una manera más fácil de imaginar, pensando en cada relación como si fuese
una tabla que está compuesta por registros (cada fila de la tabla sería un
registro o "tupla") y columnas (también llamadas "campos").
Es el modelo más utilizado en la actualidad
para modelar problemas reales y administrar datos dinámicamente.
Orientada
a Objetos: En una base
de datos orientada a objetos, la información se representa mediante objetos
como los presentes en la programación orientada a objetos. Cuando se integra
las características de una base de datos con las de un lenguaje de programación
orientado a objetos, el resultado es un sistema gestor de base de datos
orientada a objetos (ODBMS, object database management system). Un ODBMS hace
que los objetos de la base de datos aparezcan como objetos de un lenguaje de
programación en uno o más lenguajes de programación a los que dé soporte. Un
ODBMS extiende los lenguajes con datos persistentes de forma transparente,
control de concurrencia, recuperación de datos, consultas asociativas y otras
capacidades.
Las bases de datos orientadas a objetos
se diseñan para trabajar bien en conjunción con lenguajes de programación
orientados a objetos como Java, C#, Visual Basic.NET y C++. Los ODBMS usan
exactamente el mismo modelo que estos lenguajes de programación.
Los ODBMS son una buena elección para
aquellos sistemas que necesitan un buen rendimiento en la manipulación de tipos
de dato complejos.
Los ODBMS proporcionan los costes de
desarrollo más bajos y el mejor rendimiento cuando se usan objetos gracias a
que almacenan objetos en disco y tienen una integración transparente con el
programa escrito en un lenguaje de programación orientado a objetos, al
almacenar exactamente el modelo de objeto usado a nivel aplicativo, lo que
reduce los costes de desarrollo y mantenimiento.
Sistema Gestor de base de
Datos (PostgreSQL, MySQL, Microsoft SQL Server, Informix, Oracle, etc.)
PostgreSQL: Es un sistema de gestión de bases de
datos relacional orientado a objetos y libre, publicado bajo la licencia
PostgreSQL, similar a la BSD o la MIT.
Como muchos otros proyectos de código
abierto, el desarrollo de PostgreSQL no es manejado por una empresa o persona,
sino que es dirigido por una comunidad de desarrolladores que trabajan de forma
desinteresada, altruista, libre o apoyada por organizaciones comerciales. Dicha
comunidad es denominada el PGDG (PostgreSQL Global Development Group).
PostgreSQL no tiene un gestor de
defectos, haciendo muy difícil conocer el estado de sus defectos.
MySQL: Es un sistema de gestión de bases de
datos relacional desarrollado bajo licencia dual: Licencia pública
general/Licencia comercial por Oracle Corporation y está considerada como la
base datos de código abierto más popular del mundo,12 y una de las más
populares en general junto a Oracle y Microsoft SQL Server, sobre todo para
entornos de desarrollo web.
MySQL fue inicialmente desarrollado por
MySQL AB (empresa fundada por David Axmark, Allan Larsson y Michael Widenius).
MySQL AB fue adquirida por Sun Microsystems en 2008, y ésta a su vez fue
comprada por Oracle Corporation en 2010, la cual ya era dueña desde 2005 de
Innobase Oy, empresa finlandesa desarrolladora del motor InnoDB para MySQL.
Al contrario de proyectos como Apache,
donde el software es desarrollado por una comunidad pública y los derechos de
autor del código están en poder del autor individual, MySQL es patrocinado por
una empresa privada, que posee el copyright de la mayor parte del código. Esto
es lo que posibilita el esquema de doble licenciamiento anteriormente
mencionado. La base de datos se distribuye en varias versiones, una Community,
distribuida bajo la Licencia pública general de GNU, versión 2, y varias
versiones Enterprise, para aquellas empresas que quieran incorporarlo en
productos privativos. Las versiones Enterprise incluyen productos o servicios
adicionales tales como herramientas de monitorización y asistencia técnica oficial.
En 2009 se creó un fork denominado MariaDB por algunos desarrolladores
(incluido algunos desarrolladores originales de MySQL) descontentos con el
modelo de desarrollo y el hecho de que una misma empresa controle a la vez los
productos MySQL y Oracle Database.
Microsoft
SQL Server: Es un
sistema de manejo de bases de datos del modelo relacional, desarrollado por la
empresa Microsoft.
El lenguaje de desarrollo utilizado (por
línea de comandos o mediante la interfaz gráfica de Management Studio) es
Transact-SQL (TSQL), una implementación del estándar ANSI del lenguaje SQL,
utilizado para manipular y recuperar datos (DML), crear tablas y definir
relaciones entre ellas (DDL).
Dentro de los competidores más
destacados de SQL Server están: Oracle, MariaDB, MySQL, PostgreSQL. SQL Server
ha estado tradicionalmente disponible solo para sistemas operativos Windows de
Microsoft, pero desde 2017 también está disponible para Linux y Docker
containers.
Informix: Es una familia de productos RDBMS de
IBM, adquirida en 2001 a una compañía (también llamada Informix o Informix
Software) cuyos orígenes se remontan a 1980.
El DBMS Informix fue concebido y
diseñado por Roger Sippl a finales de los años 1970. La compañía Informix fue
fundada en 1980, salió a bolsa en 1986 y durante parte de los años 1990 fue el
segundo sistema de bases de datos más popular después de Oracle. Sin embargo,
su éxito no duró mucho y para el año 2000 una serie de tropiezos en su gestión
había debilitado seriamente a la compañía desde el punto de vista financiero.
En 2001 IBM, impulsada por una
sugerencia de Wal-Mart (el mayor cliente de Informix) compró Informix. IBM
tenía planes a largo plazo tanto para Informix como para DB2, compartiendo
ambas bases de datos tecnología de la otra. A principios de 2005, IBM lanzó la
versión 10 del Informix Dynamic Server (IDS).
Oracle
Database: Es un sistema
de gestión de base de datos de tipo objeto-relacional (ORDBMS, por el acrónimo
en inglés de Object-Relational Data Base Management System), desarrollado por
Oracle Corporation.
Su dominio en el mercado de servidores
empresariales había sido casi total hasta que recientemente tiene la
competencia del Microsoft SQL Server y de la oferta de otros RDBMS con licencia
libre como PostgreSQL, MySQL o Firebird.
Adicional
Resumen
Definición
El modelo relacional es un software que almacena los datos en forma de tablas.
Los principales componentes de un gestor de base de datos son
Este módulo comprueba que el usuario tiene los permisos necesarios para llevar a cabo la operación que solicita. Una vez que el sistema ha comprobado los permisos del usuario, se pasa el control al procesador de comandos. Cuando una operación cambia los datos de la base de datos, este módulo debe comprobar que la operación a realizar satisface todas las restricciones de integridad necesarias. Este módulo es el responsable de transferir los datos entre memoria principal y los dispositivos de almacenamiento secundario.
Lenguajes de Modelación
Toda base de datos soportada por un SGBD debe tener unos esquemas modelados adecuadamente. Los SGBD esperan un modelo determinado para poder acceder de forma simple a la base de datos.
Jerárquicos
El ejemplo más aprobado de base de datos jerárquica modela es un IMS diseñado por la IBM. En otras palabras, la restricción de que en un árbol jerárquico cada hijo puede tener sólo un padre, se hace menos severa. Así, la estructura de árbol se puede considerar como un caso especial de la estructura de red. Estas relaciones podrían considerarse en forma lógica como conjuntos de datos llamados tuplas.
Pese a que esta es la teoría de las bases de datos relacionales creadas por Codd, la mayoría de las veces se conceptualiza de una manera más fácil de imaginar, pensando en cada relación como si fuese una tabla que está compuesta por registros y columnas .Es el modelo más utilizado en la actualidad para modelar problemas reales y administrar datos dinámicamente. Cuando se integra las características de una base de datos con las de un lenguaje de programación orientado a objetos, el resultado es un sistema gestor de base de datos orientada a objetos . Las bases de datos orientadas a objetos se diseñan para trabajar bien en conjunción con lenguajes de programación orientados a objetos como Java, C#, Visual Basic.
Los ODBMS proporcionan los costes de desarrollo más bajos y el mejor rendimiento cuando se usan objetos gracias a que almacenan objetos en disco y tienen una integración transparente con el programa escrito en un lenguaje de programación orientado a objetos, al almacenar exactamente el modelo de objeto usado a nivel aplicativo, lo que reduce los costes de desarrollo y mantenimiento.
Sistema Gestor de base de Datos
Como muchos otros proyectos de código abierto, el desarrollo de PostgreSQL no es manejado por una empresa o persona, sino que es dirigido por una comunidad de desarrolladores que trabajan de forma desinteresada, altruista, libre o apoyada por organizaciones comerciales. PostgreSQL no tiene un gestor de defectos, haciendo muy difícil conocer el estado de sus defectos. MySQL fue inicialmente desarrollado por MySQL AB . Al contrario de proyectos como Apache, donde el software es desarrollado por una comunidad pública y los derechos de autor del código están en poder del autor individual, MySQL es patrocinado por una empresa privada, que posee el copyright de la mayor parte del código.
En 2009 se creó un fork denominado MariaDB por algunos desarrolladores descontentos con el modelo de desarrollo y el hecho de que una misma empresa controle a la vez los productos MySQL y Oracle Database. El lenguaje de desarrollo utilizado es Transact-SQL , una implementación del estándar ANSI del lenguaje SQL, utilizado para manipular y recuperar datos , crear tablas y definir relaciones entre ellas . El DBMS Informix fue concebido y diseñado por Roger Sippl a finales de los años 1970. Sin embargo, su éxito no duró mucho y para el año 2000 una serie de tropiezos en su gestión había debilitado seriamente a la compañía desde el punto de vista financiero.
En 2001 IBM, impulsada por una sugerencia de Wal-Mart compró Informix.
El modelo relacional es un software que almacena los datos en forma de tablas.
Los principales componentes de un gestor de base de datos son
Este módulo comprueba que el usuario tiene los permisos necesarios para llevar a cabo la operación que solicita. Una vez que el sistema ha comprobado los permisos del usuario, se pasa el control al procesador de comandos. Cuando una operación cambia los datos de la base de datos, este módulo debe comprobar que la operación a realizar satisface todas las restricciones de integridad necesarias. Este módulo es el responsable de transferir los datos entre memoria principal y los dispositivos de almacenamiento secundario.
Lenguajes de Modelación
Toda base de datos soportada por un SGBD debe tener unos esquemas modelados adecuadamente. Los SGBD esperan un modelo determinado para poder acceder de forma simple a la base de datos.
Jerárquicos
El ejemplo más aprobado de base de datos jerárquica modela es un IMS diseñado por la IBM. En otras palabras, la restricción de que en un árbol jerárquico cada hijo puede tener sólo un padre, se hace menos severa. Así, la estructura de árbol se puede considerar como un caso especial de la estructura de red. Estas relaciones podrían considerarse en forma lógica como conjuntos de datos llamados tuplas.
Pese a que esta es la teoría de las bases de datos relacionales creadas por Codd, la mayoría de las veces se conceptualiza de una manera más fácil de imaginar, pensando en cada relación como si fuese una tabla que está compuesta por registros y columnas .Es el modelo más utilizado en la actualidad para modelar problemas reales y administrar datos dinámicamente. Cuando se integra las características de una base de datos con las de un lenguaje de programación orientado a objetos, el resultado es un sistema gestor de base de datos orientada a objetos . Las bases de datos orientadas a objetos se diseñan para trabajar bien en conjunción con lenguajes de programación orientados a objetos como Java, C#, Visual Basic.
Los ODBMS proporcionan los costes de desarrollo más bajos y el mejor rendimiento cuando se usan objetos gracias a que almacenan objetos en disco y tienen una integración transparente con el programa escrito en un lenguaje de programación orientado a objetos, al almacenar exactamente el modelo de objeto usado a nivel aplicativo, lo que reduce los costes de desarrollo y mantenimiento.
Sistema Gestor de base de Datos
Como muchos otros proyectos de código abierto, el desarrollo de PostgreSQL no es manejado por una empresa o persona, sino que es dirigido por una comunidad de desarrolladores que trabajan de forma desinteresada, altruista, libre o apoyada por organizaciones comerciales. PostgreSQL no tiene un gestor de defectos, haciendo muy difícil conocer el estado de sus defectos. MySQL fue inicialmente desarrollado por MySQL AB . Al contrario de proyectos como Apache, donde el software es desarrollado por una comunidad pública y los derechos de autor del código están en poder del autor individual, MySQL es patrocinado por una empresa privada, que posee el copyright de la mayor parte del código.
En 2009 se creó un fork denominado MariaDB por algunos desarrolladores descontentos con el modelo de desarrollo y el hecho de que una misma empresa controle a la vez los productos MySQL y Oracle Database. El lenguaje de desarrollo utilizado es Transact-SQL , una implementación del estándar ANSI del lenguaje SQL, utilizado para manipular y recuperar datos , crear tablas y definir relaciones entre ellas . El DBMS Informix fue concebido y diseñado por Roger Sippl a finales de los años 1970. Sin embargo, su éxito no duró mucho y para el año 2000 una serie de tropiezos en su gestión había debilitado seriamente a la compañía desde el punto de vista financiero.
En 2001 IBM, impulsada por una sugerencia de Wal-Mart compró Informix.
Summary
Definition
The relational model is a software that stores the information in the shape of tables.
The principal components of a manager of database are
This module verifies that the user has the necessary permissions to carry out the operation that it(he,she) requests. As soon as the system has verified the permissions of the user, there passes the control for the processor of commands. When an operation changes the information of the database, this module must verify that the operation to realizing satisfies all the necessary restrictions of integrity. This module is the person in charge of transferring the information between(among) principal memory(report) and the devices of secondary storage.
Languages of Modeling
Any database supported by a SGBD must have a few schemes shaped adequately. The SGBD wait a model determined to be able to accede of simple form to the database.
Hierarchic
The most approved example of hierarchic database shapes is an IMS designed by the IBM. In other words, the restriction of which in a hierarchic tree every son can have only a father, becomes less severe. This way, the structure of tree can be considered to be a special case of the structure of network(net). These relations might consider in logical form as sets of information so called tuplas.
In spite of that this one is the theory of the relational databases created by Codd, the majority of the times is conceptualized in a way easier to imagine, thinking about every relation as if it was a table that the model is composed by records and columns .Es most used at present to shape royal(real) problems and to administer information dynamically. When one integrates(repays) the characteristics of a database with those of a language of programming orientated to objects, the result is a managing system of database orientated to objects. The databases orientated to objects are designed to be employed well at conjunction with languages of programming orientated to objects as Java, C *, Visual Basic.
The ODBMS provide the lowest costs of development and the best performance(yield) when objects are used due to the fact that they store objects on disc and have a transparent integration with the program written in a language of programming orientated to objects, when stores exactly the model of object used to applicative level, which reduces the costs of development and maintenance.
Managing system of database
As many other projects of opened code, PostgreSQL's development is not handled by a company or person, but it(he) is directed by a developers' community that they work of form which is disinterested, altruistic, free or supported by commercial organizations. PostgreSQL does not have a manager of faults, doing very difficultly to know the condition(state) of his(her,your) faults. MySQL was initially developed by MySQL AB. Unlike projects as Apache, where the software is developed by a public community and the copyright of.
The relational model is a software that stores the information in the shape of tables.
The principal components of a manager of database are
This module verifies that the user has the necessary permissions to carry out the operation that it(he,she) requests. As soon as the system has verified the permissions of the user, there passes the control for the processor of commands. When an operation changes the information of the database, this module must verify that the operation to realizing satisfies all the necessary restrictions of integrity. This module is the person in charge of transferring the information between(among) principal memory(report) and the devices of secondary storage.
Languages of Modeling
Any database supported by a SGBD must have a few schemes shaped adequately. The SGBD wait a model determined to be able to accede of simple form to the database.
Hierarchic
The most approved example of hierarchic database shapes is an IMS designed by the IBM. In other words, the restriction of which in a hierarchic tree every son can have only a father, becomes less severe. This way, the structure of tree can be considered to be a special case of the structure of network(net). These relations might consider in logical form as sets of information so called tuplas.
In spite of that this one is the theory of the relational databases created by Codd, the majority of the times is conceptualized in a way easier to imagine, thinking about every relation as if it was a table that the model is composed by records and columns .Es most used at present to shape royal(real) problems and to administer information dynamically. When one integrates(repays) the characteristics of a database with those of a language of programming orientated to objects, the result is a managing system of database orientated to objects. The databases orientated to objects are designed to be employed well at conjunction with languages of programming orientated to objects as Java, C *, Visual Basic.
The ODBMS provide the lowest costs of development and the best performance(yield) when objects are used due to the fact that they store objects on disc and have a transparent integration with the program written in a language of programming orientated to objects, when stores exactly the model of object used to applicative level, which reduces the costs of development and maintenance.
Managing system of database
As many other projects of opened code, PostgreSQL's development is not handled by a company or person, but it(he) is directed by a developers' community that they work of form which is disinterested, altruistic, free or supported by commercial organizations. PostgreSQL does not have a manager of faults, doing very difficultly to know the condition(state) of his(her,your) faults. MySQL was initially developed by MySQL AB. Unlike projects as Apache, where the software is developed by a public community and the copyright of.
Recomendaciones
·
Por
muy bien que realices el planteamiento inicial de la base de datos, con el paso
del tiempo, seguramente tengas tablas en desuso. ¡Elíminalas! Tener tablas en
desuso es muy parecido a guardar cosas que no usas en un cajón. Cuando vas a
buscar algo porque lo necesitas urgentemente y vas al “cajón de las cosas
olvidadas”… ¡Tardas mucho más en encontrarlo! Sucede lo mismo en las bases de datos,
los sistemas tienes que rastrear todas las tablas y elementos hasta encontrar
la respuesta a la consulta.
·
Optimiza
los índices. Tener una buena relación de índices entre tablas es básico para
las búsquedas relacionales funcionen correctamente. Agrega índices a las tablas
y, sobre ellas, utiliza las sentencias de consulta (SELECT, WHERE…). También
resulta recomendable acostumbrarse a verificar periódicamente el registro de
consultas (o “queries”) lentas para identificar aquellas que deben ser optimizadas.
·
No
mantengas consultas abiertas en tu código y realiza las querys justas. Así,
evitamos saturar la memoria de la máquina. Como sucede en cualquier sistema
informático, un proceso abierto afecta al rendimiento del hardware. Eliminando
esas consultas inútiles, liberarás recursos para que se empleen en las
consultas útiles que necesitamos.
·
En
general, no almacenes imágenes en la base de datos. Sólo referencias a la ruta
en la que se encuentran y metadatos para identificarlas. No nos engañemos, las
bases de datos crecen y crecen y las imágenes siguen aumentando en tamaño a su
propio ritmo.
·
Conclusiones
A través del desarrollo de las prácticas
en laboratorio he conocido las ventajas de las bases de datos que se superponen
a los sistemas de archivos del pasado, como sabemos todo evoluciona es así como
el modelo relacional que implementa SQL, nos da una excelente herramienta en la
administración, seguridad y fiabilidad de los datos.
Por lo tanto se sabe que conocer el
proceso interno, la estructura he implementación de base de datos nos muestra
la importancia que realizan en el mundo laboral, y como cada ente que las
utiliza es dependiente de ellas.
Apreciación del Equipo
Principalmente vemos la necesidad de
conocer cada día mas el entorno de las bases de datos. Aprender de manera
didáctica y autodidactica con mayor dedicación.
Es necesario conocer que la
implementación del código debe estar bien estructurado para evitar algunas
redundancias innecesarias.
Conocer las especificaciones que nos
presenta cuando estructuramos las tablas de cada base de datos, realizando
nuestro trabajo mas practico y sencillo.
Glosario de Términos
SGBD: Sistema de Gestión de Base de
Datos.
IBM: Es una reconocida empresa
multinacional estadounidense de tecnología y consultoría con sede en Armonk,
Nueva York. IBM fabrica y comercializa hardware y software para computadoras, y
ofrece servicios de infraestructura, alojamiento de Internet, y consultoría en
una amplia gama de áreas relacionadas con la informática, desde computadoras
centrales hasta nanotecnología.
RDM Mobile: es un nuevo diseño de base
de datos imbuida para una red de ordenadores móviles. La estructura jerárquica
es usada hoy en día para almacenar información geográfica principalmente.
IMS: Es un gestor de bases de datos
jerárquicas y un gestor transaccional con alta capacidad de proceso. IBM diseñó
elIMS con Rockwell y Caterpillar en 1966 debido al Programa Apolo.
Bibliografía o Linkografía
Presentación Power Point
Vídeo











Comentarios
Publicar un comentario