Beruflich Dokumente
Kultur Dokumente
INFORMTICA
Alexandre Dapena Mora
Jose Luis Villanueva de Matos
Eladio Rial Nez
Temario de oposiciones de
INFORMTICA
Alexandre Dapena Mora
Jose Luis Villanueva de Matos
Eladio Rial Nez
ltima edicin 2016
Autores: Alexandre Dapena Mora, Jose Luis Villanueva de Matos y Eladio Rial Nez
Maquetacin: Educlia Editorial
Edita: Educlia Editorial
Imprime: SERVICECOM
ISBN: 978-84-16663-78-1
Depsito legal: En curso
Printed in Spain/Impreso en Espaa.
Todos los derechos reservados. No est permitida la reimpresin de ninguna parte de este libro,
ni de imgenes ni de texto, ni tampoco su reproduccin, ni utilizacin, en cualquier forma o por
cualquier medio, bien sea electrnico, mecnico o de otro modo, tanto conocida como los que
puedan inventarse, incluyendo el fotocopiado o grabacin, ni est permitido almacenarlo en un
sistema de informacin y recuperacin, sin el permiso anticipado y por escrito del editor.
Alguna de las imgenes que incluye este libro son reproducciones que se han realizado
acogindose al derecho de cita que aparece en el artculo 32 de la Ley 22/18987, del 11 de
noviembre, de la Propiedad intelectual. Educlia Editorial agradece a todas las instituciones, tanto
pblicas como privadas, citadas en estas pginas, su colaboracin y pide disculpas por la posible
omisin involuntaria de algunas de ellas.
Educlia Editorial
Avda de les Jacarandes 2 loft 327 46100 Burjassot-Valncia
Tel. 960 624 309 - 963 768 542 - 610 900 111
Email: educaliaeditorial@e-ducalia.com
www.e-ducalia.com
TEMA 43
Administracin de sistemas de bases de datos.
1. Introduccin
2. Instalacin
2.1. Creacin de la base de datos
3. Gestin de usuarios y seguridad
4. Administracin
4.1. Monitorizacin
4.2. Gestin de espacio
4.3. Copias de seguridad
4.4. Distribucin de los datos
5. Optimizacin
5.1. Optimizacin del entorno
5.2. Optimizacin de objetos de BD
5.3. Optimizacin de consultas
5.4. Herramientas particulares de algunos SGBDs
1. INTRODUCCIN
Un sistema gestor de base de datos (SGBD) es un conjunto de programas que permiten el alma-
cenamiento, modificacin y extraccin de la informacin en una base de datos, adems de propor-
cionar herramientas para explotar, gestionar y administrar las bases de datos.
La figura del administrador de la base de datos (DBA) ser la responsable de asegurar el acceso
a los datos de manera ptima, para lo cual tendr que llevar a cabo una serie de tareas:
- Eleccin del SGBD idneo e instalacin del SGBD y de las bases de datos:
o Disear la arquitectura y desplegar los sistemas gestores de bases de datos
o Crear, dar soporte y gestionar las bases de datos corporativas
- Explotacin del SGBD:
o Arrancar y parar las BDs
o Asegurar la disponibilidad de los datos
o Asegurar la integridad de la informacin
o Hacer copias de seguridad peridicas de los datos y mantenerlos a salvo de la destruccin
accidental o intencional
o Disear un plan de recuperacin para que cuando se presenten los problemas, los datos
se pueden restaurar rpidamente.
- Administracin:
o Colaborar con el administrador del SO en la gestin de los archivos de almacenamiento y
gestin del espacio en disco ocupado.
Prohibida la reproduccin total o parcial sin permiso escrito del editor Pgina 4 Tel. 963 768 542 - 960 624 309 - 610 900 111
o Establecer estndares de uso, polticas de acceso y buenas prcticas de diseo de bases
de datos.
- Gestin de usuarios y seguridad:
o Crear y mantener las cuentas de usuarios y permisos
o Establecer auditoras del sistema para detectar anomalas, intentos de violacin de la se-
guridad, accesos inadecuados, etc
- Optimizacin:
o Optimizar el SGBD, los objetos de base de datos y las consultas ms habituales.
2. INSTALACIN
El primer paso para la puesta en produccin de una base de datos es la instalacin del gestor de
bases de datos. El proceso de instalacin depender en gran medida el producto de que se trate y del
sistema operativo sobre el que se realizar la instalacin. La prctica totalidad de sistemas de bases
de datos actuales tienen una arquitectura de cliente-servidor y proveen de sus propias herramientas y
asistentes para realizar la instalacin tanto del servidor como del cliente, y establecer la conexin entre
ellos.
Los componentes bsicos de la instalacin son los siguientes:
- Motor del SGBD
- Herramientas de administracin del SGBD
- Aplicaciones de comunicacin
- Consola interactiva o herramientas de desarrollo para el acceso a las BDs
Antes de proceder a la instalacin del SGBD ser necesario tomar varias decisiones como:
- Tipo de sistema de bases de datos: actualmente existen tres tipos fundamentales de sistemas
de bases de datos: sistemas orientados a objetos (especficos para aplicaciones basadas en el
paradigma de la OO), relacionales (bases de datos SQL habituales) y bases de datos noSQL. Los
sistemas noSQL tienen como objetivo solventar uno de los problemas fundamentales de los SGBDs
relacionales: la escalabilidad. No requieren por lo general esquemas fijos, evitan las operaciones
join almacenando datos desnormalizados y estn diseadas para escalar horizontalmente. Son los
sistemas ms adecuados para almacenamiento y procesamiento de big data.
- Ubicacin de la BD: si ser una BD centralizada (con un nico nodo encargado de procesar todas
las peticiones de los usuarios) o distribuida (con varios nodos independientes, de forma que cada
uno de ellos puede funcionar de forma autnoma). A su vez, una BD centralizada puede imple-
mentarse en una sola mquina fsica o por medio de un clster de servidores, de forma que aun-
que lgicamente se vea como un solo sistema, sea posible balancear la carga entre los distintos
servidores de la red.
Prohibida la reproduccin total o parcial sin permiso escrito del editor Pgina 5 Tel. 963 768 542 - 960 624 309 - 610 900 111
- Utilizacin de la BD: hay varios parmetros que dependern del uso que se vaya a hacer de esa
base de datos: si sern bases de datos transaccionales (OLTP) o de Data warehouse (OLAP). Las
arquitecturas de ambos sistemas son completamente diferentes, por lo que hay diversos parme-
tros que ser necesario adaptar en funcin de la arquitectura utilizada: el tamao por defecto del
bloque de datos, el tamao del segmento temporal, el tipo de optimizador (existe un optimizador
especfico para la arquitectura en estrella de los entornos OLAP), el modo del optimizador (para
que priorice la minimizacin de E/S al disco o el coste de CPU), ...
- Parmetros de restriccin: destinados a aplicar lmites o cuotas para evitar la acaparacin de re-
cursos por parte de un usuario o limitar el nmero de procesos simultneos que se ejecutan sobre
la BD.
La creacin de las bases de datos y todos sus objetos asociados (esquemas, tablas, vistas, sin-
nimos, restricciones, enlaces de bases de datos, ...) pueden llevarse a cabo por medio del lenguaje
de definicin de datos (DDL), pero habitualmente los SGBDs ya proveen sus propias herramientas con
interfaz grfica para facilitar esta labor.
Prohibida la reproduccin total o parcial sin permiso escrito del editor Pgina 6 Tel. 963 768 542 - 960 624 309 - 610 900 111
compromiso entre seguridad y rendimiento. La auditora es muy til para implementar requisitos de
la LOPD (control de acceso a datos personales), ya que permite delegar en el SGBD el registro de
todos los accesos y las operaciones llevadas a cabo sobre los datos auditados.
4. Cifrado de la informacin: otra de las utilidades que ofrecen los SGBD es la posibilidad de cifrar y
descifrar automticamente la informacin almacenada (columnas e incluso tablas enteras). Este
cifrado puede realizarse a varios niveles: a nivel de autenticacin de usuario, cifrado de las comu-
nicaciones, cifrado de los ficheros fsicos donde se almacena la informacin e incluso de los bac-
kups generados. La aplicacin de algoritmos de cifrado y descifrado de datos en cada acceso a
la informacin implica una carga adicional para el sistema, por lo que no se recomienda abusar
de esta posibilidad y normalmente se reserva a datos especialmente crticos.
5. Gestin de recursos: Otra de las herramientas que proveen algunos SGBDs es la posibilidad de
gestionar los recursos del sistema: reservando recursos, limitando la disponibilidad de recursos o
impidiendo el paralelismo a grupos de usuarios determinados. Estas herramientas hacen uso del
diccionario de datos para indicar a qu grupo consumidor pertenece cada usuario y qu limita-
ciones de recursos tiene cada grupo, por lo que facilita la consulta y control de esta informacin.
4. ADMINISTRACIN
4.1. MONTORIZACIN
Una de las herramientas que suelen proporcionar los SGBDs actuales es el monitor del rendimiento
del servidor. Por medio de esta herramienta es posible consultar el uso que el sistema hace de los recur-
sos (CPU, memoria, red, disco, ...), y prevenir posibles problemas en el sistema. Algunas de las posibilida-
des que ofrece el monitor del SGBD son las siguientes:
- Deteccin de bloqueos: De forma general podramos decir que cuando un usuario comienza
una operacin de modificacin de datos sobre una tabla, sta se bloquea, y cualquier peticin
de modificacin de otro usuario quedara bloqueada en espera de la finalizacin de esta mo-
dificacin, pudiendo dar lugar a interbloqueos u otras situaciones indeseadas. Por medio de la
monitorizacin del SGBD es posible comprobar si se estn produciendo bloqueos en un momento
dado o incluso consultar si se producen habitualmente para tratar de evitarlos (algunos bloqueos
pueden evitarse particionando la tabla, dividiendo su contenido en varios ficheros, modificando
el espacio libre en los bloques de ndices o modificando parmetros del SGBD).
- Deteccin de procesos que acaparen recursos: en caso de que un proceso acapare recursos (de
disco, CPU, etc) penalizando el rendimiento general del SGBD, es posible detectar esta situacin
y en caso de que pueda comprometer el correcto funcionamiento del sistema incluso se puede
finalizar ese proceso.
- Optimizar consultas: otra de las posibilidades que ofrece el monitor del SGBD es comprobar el
consumo de recursos producido al lanzar una consulta, por lo que de cara a la optimizacin de
consultas es muy til para comprobar el impacto de una reescritura de la consulta, un cambio en
el optimizador, el impacto de la creacin de un ndice, etc.
- Auditora: la auditora de un SGBD permite registrar todas las operaciones que se lleven a cabo so-
bre un campo concreto de la base de datos, indicando el autor, la fecha, la operacin realizada,
etc. El administrador nicamente tendra que indicar qu campo es susceptible de ser auditado y
el SGBD se encargara de todo el procesamiento.
Prohibida la reproduccin total o parcial sin permiso escrito del editor Pgina 7 Tel. 963 768 542 - 960 624 309 - 610 900 111
1. Distribucin de datos: la correcta distribucin de los datos entre los ficheros que conforman la
base de datos puede incrementar considerablemente el rendimiento. Hay varias directrices que
conviene tener en cuenta para optimizar el uso de los recursos y el paralelismo:
o Dividir las tablas grandes en varios ficheros, tantos como CPUs tenga el servidor (para optimi-
zar el paralelismo), y de un tamao similar entre ellos (para evitar que unos se llenen antes
que otros).
o Separar los ficheros de datos, de ndices y temporales (de forma que mientras se escanea el
ndice se pueden ir buscando los datos en la tabla y almacenndolos en el temporal).
o En tablas particionadas, separar las particiones en diferentes ficheros, de forma que puedan
ser accedidas en paralelo cuando se consultan varias particiones
2. Gestin de almacenamiento: otra de las decisiones importantes a tomar con respecto a cmo se
realizar el almacenamiento de la BD ser la posibilidad de implementar algn sistema de control
de redundancia y tolerancia a fallos (sistemas RAID). Estos sistemas se basan en la replicacin de
la informacin en varios discos de forma que si se produce algn problema en uno de los discos
el sistema podra continuar funcionando sin problema. Existen varios niveles de RAID en base al
nmero de rplicas utilizadas y al modo en que se distribuye la informacin a travs de los discos.
Estas tcnicas son muy apropiadas para asegurar la disponibilidad de la informacin, pero su cos-
te es muy elevado, ya que implican multiplicar el espacio en disco necesario, que suele ser caro,
por lo que es necesario buscar un equilibrio entre seguridad de los datos y coste.
3. Planificar capacidad: las bases de datos son sistemas muy dinmicos en los que se insertan datos
continuamente. Deben existir por tanto una planificacin del espacio que ocupar cada base de
datos y una poltica de incremento y mantenimiento del mismo.
4. Gestionar histrico: generalmente en una base de datos los datos ms crticos y ms accedidos
son los datos ms actuales, y a medida que pasa el tiempo esos datos dejan de ser tan relevan-
tes. Estos datos histricos suponen un problema, porque incrementan el tamao de las tablas
(haciendo ms lento el acceso incluso para los datos actuales) y porque el coste del disco de alto
rendimiento en una base de datos es muy alto. Para solucionar ambos problemas lo que se suele
hacer es definir una poltica de paso a histrico, de forma que los datos con determinada antige-
dad se pasan a un disco de menor rendimiento (y por tanto ms barato), y as se evita tambin el
sobredimensionamiento innecesario de las tablas.
5. Compresin de tablas / particiones: una posibilidad que ofrecen los sistemas gestores de bases de
datos para optimizar el espacio ocupado por las tablas es comprimirlas (bien una tabla completa
o una particin de la misma). De esta manera se reduce considerablemente el tamao de las ta-
blas e incluso se incrementa el rendimiento de las consultas, aunque penaliza las modificaciones
y borrados y dificulta el mantenimiento, ya que al comprimir una tabla o particin es necesario
reconstruir todos sus ndices.
Prohibida la reproduccin total o parcial sin permiso escrito del editor Pgina 8 Tel. 963 768 542 - 960 624 309 - 610 900 111
4.4. DISTRIBUCIN DE LOS DATOS
Una de las decisiones ms importantes que el diseador de bases de datos distribuidas debe to-
mar es la distribucin de los datos en el sistema. Existen distintas soluciones posibles:
- Centralizada: Es muy similar al modelo de Cliente/Servidor en el sentido que la BDD est centra-
lizada en un lugar y los usuarios estn distribuidos. Este modelo solo tiene la ventaja de tener el
procesamiento distribuido ya que en sentido de disponibilidad y fiabilidad de los datos no se gana
nada.
- Replicadas: En una BD replicada cada nodo debe tener su copia completa de la base de da-
tos. Este esquema tiene un alto costo de almacenamiento de la informacin. Debido a que la
actualizacin de los datos debe ser realizada en todas las copias, tambin tiene un alto costo de
escritura, pero todo esto vale la pena si tenemos un sistema en el que se va a escribir pocas veces
y leer muchas, y dnde la disponibilidad y fiabilidad de los datos sea de mxima importancia.
- Particionadas: En este modelo solo habr una copia de cada elemento, pero la informacin es-
tara distribuida a travs de los nodos. En cada nodo se aloja uno o ms fragmentos disjuntos de
la base de datos. Como los fragmentos no se replican esto disminuye el costo de almacenamien-
to, pero tambin sacrifica la disponibilidad y fiabilidad de los datos. Algo que se debe tomar en
cuenta cuando se desea implementar este modelo es la granularidad de la fragmentacin. La
fragmentacin se puede realizar tambin de tres formas:
- Horizontal: Los fragmentos son subconjuntos de una tabla
- Vertical: Los fragmentos son subconjuntos de los atributos con sus valores
- Mixto: Se aplican fragmentacin horizontal y vertical.
Una ventaja significativa de este esquema es que las consultas (SQL) tambin se fragmentan
por lo que su procesamiento es en paralelo y ms eficiente, pero tambin se sacrifica en casos
que involucren varios fragmentos de la BDD.
Para que una fragmentacin sea correcta, sta debe ser completa, reconstruible y todos los
fragmentos deben ser disjuntos.
- Hbridas: Este esquema representa la combinacin del esquema de particin y replicacin. Se
particiona la relacin y a la vez los fragmentos estn selectivamente replicados a travs del siste-
ma de BDD.
5. OPTIMIZACIN
Los lenguajes de consulta basados en el lgebra relacional son no procedimentales, ya que el
usuario dice el resultado que quiere obtener, pero no especifica cmo conseguirlo. Esto presenta una
gran ventaja para el usuario, pero delega en el sistema la toma de estas decisiones, lo que limita nota-
blemente la capacidad del usuario para asegurar que los datos se recuperan de forma ptima.
Existen, sin embargo, varias tareas que se pueden llevar a cabo para ayudar al sistema a tomar
las decisiones correctas.
Prohibida la reproduccin total o parcial sin permiso escrito del editor Pgina 9 Tel. 963 768 542 - 960 624 309 - 610 900 111
5.2. OPTIMIZACIN DE OBJETOS DE BD
1. Estructura interna de las tablas: internamente, las tablas se organizan en bloques o pginas. Cuan-
do se inserta una fila en una tabla, se busca un bloque con espacio libre y se inserta ah la informa-
cin. Si no quedan bloques libres, se crea uno nuevo. Existen tres tipos de problemas relacionados
con esta estructuracin interna de las tablas:
o Migrated rows: se producen cuando hacemos una modificacin en los datos de una fila que
provoca que no quepa en el bloque donde estaba almacenada, por lo que se divide el
contenido de la fila y en el bloque actual se guarda un puntero al bloque donde se guar-
dar el resto de la fila. Puntualmente se puede solucionar compactando la tabla o movin-
dola, pero para solucionarlo definitivamente es necesario revisar el tamao del bloque y el
espacio libre reservado en cada bloque.
o Chained rows: se producen cuando es habitual que una fila ocupe ms de un bloque, por
lo que para consultar una fila completa de una tabla son necesarios dos accesos. Se solu-
ciona modificando el tamao de bloque de la tabla.
o Fragmentacin: se produce al eliminar registros de una tabla de forma masiva, lo que provo-
ca que queden huecos en los bloques que estn desperdiciando espacio. Se soluciona
compactando la tabla o movindola.
2. Fragmentacin de ndices: existen dos tipos de fragmentacin de ndices:
o Fragmentacin externa: se produce en ndices con estructura de rbol cuando las ramas
del rbol quedan desniveladas debido a la realizacin de modificaciones sobre las colum-
nas del ndice y borrados de filas.
o Fragmentacin interna se produce cuando en los bloques del ndice queda espacio infrau-
tilizado o estn mal organizados. La fragmentacin se puede solucionar reconstruyendo el
ndice, reorganizndolo (solo para la interna) o compactndolo (solo para la externa).
3. Tablas con estructura de ndice: en tablas con una o dos columnas que no vayan a tener una
gran variacin en sus datos, es posible estructurar la tabla como si fuese un ndice, de forma que
se minimiza el tiempo de acceso a los datos y se evitar tener que crear ndices adicionales.
4. Particionamiento: el particionamiento de una tabla o ndice consiste en dividir sta en varios seg-
mentos (llamados particiones), de forma que se evita procesar toda la tabla cuando se accede a
datos de un segmento concreto, y permite optimizar el acceso en paralelo a los datos de distintas
particiones.
5. Paralelizacin de las tablas: es posible paralelizar el acceso a las tablas y tambin parametrizar el
grado de paralelismo deseado para cada tabla.
Prohibida la reproduccin total o parcial sin permiso escrito del editor Pgina 10 Tel. 963 768 542 - 960 624 309 - 610 900 111
redundante,aparte de hacer que la implementacin sea ms compleja y reducir la flexibilidad,
por lo que estas redundancias deben estar controladas.
4. Monitor de consultas: el monitor de consultas permite realizar una traza de todas las operaciones
realizadas sobre el SGBDs para localizar las operaciones ms frecuentes y determinar qu consul-
tas se realizan de forma ms habitual sobre la BD, que sern las consultas sobre las que se deber
centrar la tarea de optimizacin.
5. Planes de ejecucin: el primer paso para optimizar una consulta es revisar el plan de ejecucin
de la misma para comprobar cmo se est accediendo a las tablas (en qu orden, cmo es el
acceso, qu ndices se usan...). Para mejorar los resultados de un plan de ejecucin existen varias
opciones:
o Actualizar las estadsticas: los planes de ejecucin se basan en las estadsticas de las tablas,
por lo que si stas no se actualizan frecuentemente es posible que los planes utilizados sean
incorrectos.
o Reescribir la consulta: hay varias modificaciones que se pueden realizar sobre las consultas
para que sus resultados sean mejores (sustituir un OR por un UNION, un IN por un EXISTS, ...).
Estas transformaciones tienen como fin simplificar y reducir el tamao de las tablas que inter-
vienen en la consulta antes de realizar las combinaciones (JOIN), de forma que se obtenga
el mismo resultado con menos operaciones de lectura/escritura de tuplas.
o Crear, modificar o eliminar ndices
o Modificar el agrupamiento fsico (distribucin en ficheros) y lgico (particionado) de los re-
gistros.
o Modificar los parmetros del optimizador (priorizar la E/S en lugar del coste de CPU, por
ejemplo)
6. ndices: existen dos decisiones fundamentales a la hora de crear un ndice: sobre qu columnas
crear un ndice y qu tipo de ndice crear.
- Acerca de la primera cuestin hay varias recomendaciones genricas: crear ndices en claves
primarias y forneas, no crear ndices en tablas con muy pocos datos (si la tabla cabe entera
en memoria es ms rpido un full scan que un acceso por ndice), tener cuidado con la crea-
cin de ndices en columnas con muchos nulos, evitar crear ndices sobre muchas columnas,
crear ndices en las columnas que habitualmente aparezcan en el where o incluso en el select
de las consultas, etc.
- Adems de estas recomendaciones, que se debern tener en cuenta cuando se creen inicial-
mente los ndices en las tablas, hay ocasiones en que nos puede interesar crear un ndice para
optimizar el rendimiento de la BD. En este caso, la decisin depender fundamentalmente de
las consultas que se realicen sobre la BD. Por medio de las diferentes herramientas de los SGBDs
podemos saber qu consultas son las ms ejecutadas, revisar los planes de ejecucin para
comprobar cmo se realiza el acceso a cada tabla en estas consultas, comprobar si es estn
usando los ndices correctamente, revisar si se producen bloqueos en los accesos a las tablas,
etc. En base a esta informacin podemos detectar si hay tablas de tamao medio o grande a
las que siempre se acceda de forma completa, penalizando mucho los planes de consulta o
provocando problemas de bloqueos. En estos casos puede ser conveniente crear algn ndice
en esas tablas para agilizar los accesos a estas tablas.
- Respecto al tipo de ndices a crear, depender especialmente del SGBDs utilizado, ya que
cada gestor implementa sus propios tipos de ndices. La filosofa detrs de cada tipo de ndice
particular, sin embargo, suele ser comn a todos los SGBDs:
o Implementacin del ndice: existen dos tipos de ndices por su organizacin: agrupados o
no agrupados. En los ndices agrupados, los campos sobre los que se define el ndice deter-
minan la organizacin de la tabla, ya que las filas de la tabla se guardarn ordenadas en
base al valor de las columnas indexadas. No ocupan espacio adicional, pero solo se pue-
de definir un ndice de este tipo por tabla. Los ndices no agrupados se construyen como
Prohibida la reproduccin total o parcial sin permiso escrito del editor Pgina 11 Tel. 963 768 542 - 960 624 309 - 610 900 111
una estructura aparte de la tabla con punteros a los datos de la tabla. Requieren espacio
adicional pero se pueden definir tantos ndices de este tipo por tabla como se quiera.
- Se recomienda utilizar ndices no agrupados cuando vayan a ser usados en consultas que ac-
cedan solo a parte de una tabla, consultas con JOIN o GROUP BY, consultas que devuelven
pocos datos, consultas que usen coincidencias exactas en el WHERE o consultas sobre colum-
nas que no tengan muchos valores nicos. Los ndices agrupados son ms apropiados en co-
lumnas que se actualizan con frecuencia, tablas con claves amplias o consultas con grandes
conjuntos de resultados.
o Organizacin del ndice: la estructura habitual de los ndices es en forma de rbol (ndices
B-tree), pero existen SGBDs que permiten otros tipos de ndices, como los ndices bitmap
que se implementan como vectores que contienen las columnas que toman un determina-
do valor o los ndices hash. Los ndices bitmaps son ms adecuados para entornos de Data
Warehouse ya que las modificaciones que se realizan sobre los datos de la BD son menos
habituales, y los ndices hash son muy tiles para consultas en las que se busque siempre un
valor concreto en una columna.
- Tan importante como la creacin de los ndices es la eliminacin de ndices innecesarios, ya
que los ndices que no se utilizan no solo ocupan espacio sino que tambin consumen recursos
para su mantenimiento.
Prohibida la reproduccin total o parcial sin permiso escrito del editor Pgina 12 Tel. 963 768 542 - 960 624 309 - 610 900 111