TEMA 9. OPTIMIZACIÓN DEL RENDIMIENTO DE UNA BBDD

Tamaño: px
Comenzar la demostración a partir de la página:

Download "TEMA 9. OPTIMIZACIÓN DEL RENDIMIENTO DE UNA BBDD"

Transcripción

1 1 TEMA 9. OPTIMIZACIÓN DEL RENDIMIENTO DE UNA BBDD 1. Introducción 2. Mejorar el modelo de datos y la estructura de las tablas 3. Mejorar las consultas 3.1. La caché de consultas 3.2. Análisis 3.3. Planificación 3.4. Ejecución 4. Mejorar la configuración del servidor MySQL 1. Introducción Tanto el número de usuarios simultáneos como la cantidad de información a gestionar tienen un impacto importante en el rendimiento del servidor de base de datos. Por este motivo no es raro que, con el uso, el rendimiento de una aplicación decaiga. El problema no es que MySQL no pueda gestionar eficazmente un gran número de usuarios concurrentes ni grandes bases de datos. El problema está en que las aplicaciones no fueron inicialmente diseñadas para la carga que han de soportar tras varios años de funcionamiento y, sólo entonces, aparecen los problemas de un diseño inicial poco ambicioso o poco previsor. Una de las tareas principales del Administrador de la BBDD, una vez finalizadas las tareas de implantación del SGBD y una vez que éste se encuentra en fase de explotación, es realizar el seguimiento del servidor y del SGBD, para comprobar su correcto funcionamiento. MySQL puede gestionar, de forma eficaz, un gran número de usuarios concurrentes y grandes bases de datos. Pero es necesario conocer las características que influyen en el rendimiento de nuestro servidor. Aunque no es posible ni recomendable

2 2 monitorizar la BD constantemente, es preciso hacerlo regularmente y de la forma más automatizada posible. Los SGBD cuentan con herramientas que ayudan en la tarea de monitorizar el sistema. La herramienta más conveniente será la menos intrusiva, es decir, la que menos interfiera en el sistema y nos pueda proporcionar la medida más fiable del objeto de nuestra observación. Conviene recordar que todas las herramientas que sean de tipo gráfico consumirán más recursos del sistema y de la base de datos. No debemos olvidar que observar conlleva un consumo de recursos, luego si pretendemos controlar el rendimiento no es lógico hacerlo en un momento en el que la BD está realizando consultas pesadas. Podemos mejorar el rendimiento del sistema mediante los siguientes métodos: Mejorar el modelo de datos y la estructura de las tablas. Mejorar las consultas. Mejorar la configuración del servidor MySQL 2. Mejorar el modelo de datos y la estructura de las tablas Las características, número y relaciones de las tablas de nuestra base de datos influyen sustancialmente en el rendimiento de esta. El modelo de datos es además difícilmente modificable una vez desarrollada la aplicación y puesta en producción. No podremos entonces realizar cambios de importancia en el diseño de nuestras tablas porque esto nos obligaría no solo a complejos procesos de migración de datos, sino también a modificar el código de nuestra aplicación. Incluso es posible que sobre el mismo modelo de datos hayamos desarrollado nuevas aplicaciones que también deberían ser cambiadas. Por lo tanto, debemos diseñar cuidadosamente el modelo de datos, teniendo en cuenta que los errores que cometamos nos acompañarnos en el futuro y limitarán el rendimiento de nuestra aplicación. Para optimizar el modelo de datos debemos trabajar sobre dos aspectos: la elección de los motores de almacenamiento y la normalización. Debemos tener en cuenta que MySQL permite el uso de varios motores de almacenamiento en una misma base de datos. Incluso es posible combinar motores de almacenamiento distintos en una misma transacción SQL y en una misma consulta. Así que no tenemos que restringirnos al uso de uno sólo de ellos en nuestro modelo de datos. Debemos elegir la combinación más adecuada eligiendo un motor de almacenamiento para cada una de las tablas de nuestro modelo. Para elegir el motor de almacenamiento más adecuado debemos tener en cuenta las consultas que ejecutaremos sobre él.

3 3 El motor MyISAM es el más adecuado cuando la velocidad de respuesta es el factor crítico. Así mismo, serán la mejor opción cuando tengamos que realizar búsquedas textuales o consultas que deban conocer rápidamente el número total de registros de la tabla. Sin embargo, el motor InnoDB será la elección correcta cuando requiramos soporte para transacciones o integridad referencial. El resto de motores se utilizan en circunstancias especiales. Pero es preciso conocerlos ya que pueden mejorar notablemente el rendimiento de nuestra base de datos. El segundo factor de optimización del modelo de datos es la normalización. La normalización es una técnica de diseño de modelos de datos relacionales que estructura paso a paso las tablas para reducir el riesgo de inconsistencias. Existe la creencia de que un modelo de datos es mejor cuanto mayor sea su nivel de normalización. Así, un modelo en tercera forma normal (3FN) sería mejor que otro en segunda forma normal (2FN). Nada más lejos de la realidad. La calidad de un modelo de datos no depende exclusivamente de su forma normal, sino de su capacidad para responder a las consultas que tendremos que realizar sobre él. El proceso de normalización del modelo de datos elimina las dependencias funcionales entre atributos. Pero, al mismo tiempo, complica el diseño de las consultas y pierde rendimiento. Pongamos un ejemplo. Supongamos un modelo de datos que recoge información de proyectos y jefes de proyecto asignados a los mismos en la siguiente tabla: Proyecto nombre varchar (100) jefe_proyecto varchar (100) telefono varchar (15) Como puede verse, existe un atributo secundario (teléfono) que no depende de la clave (nombre) sino de otro atributo secundario (jefe_proyecto). El modelo de datos está por lo tanto, en segunda forma normal. Si lo pasáramos a tercera forma normal, tendríamos que crear dos tablas, una que recogiera los nombres y los jefes de proyecto y otra que recogiera los jefes de proyecto con su teléfono. Dependiendo de las consultas que se vayan a ejecutar en la base de datos, esta decisión tendría un alto coste en relación al rendimiento de la base de datos. Así, si se realizan con frecuencia consultas en las que aparezcan estos tres campos (nombre, jefe_proyecto y teléfono) es mucho más óptimo diseñar el modelo de datos en 2FN que en 3FN.

4 4 Obviamente esto también depende del volumen de datos de la BBDD. No es lo mismo ejecutar esta consulta en una BBDD recién creada, en la que aún no existen muchos datos, que realizarla cuando la BBDD lleva largo tiempo en explotación y, por tanto, tendrá muchos datos. Respecto a la estructura de las tablas, es necesario tener en cuenta lo siguiente: Las tablas desordenadas provocan una búsqueda secuencial lenta. No obstante, una tabla ordenada tiene los siguientes inconvenientes: - Ordenar una tabla desordenada es costoso. - El constante acceso de escritura desordena de nuevo los registros de la tabla. - La inserción y eliminación ordenada de registros es costosa en términos de rendimiento. - Cuando ordenamos por una columna desordenamos el resto de columnas. El rendimiento mejora si los registros de la tabla tienen longitud fija (sin campos de tipo VARCHAR, TEXT o BLOB). Si cada campo (columna) tiene una longitud fija entonces cada registro (línea) también tendrá una longitud fija y obtenemos las siguientes ventajas: - Disminuye la fragmentación: los registros borrados son substituidos por registros de la misma longitud. - Aumenta la velocidad: los registros son accedidos por "número de registro" en lugar de "desplazamiento dentro del fichero". - Disminuye el consumo de memoria: el índice es más pequeño. Podemos desfragmentar tablas para ganar espacio y velocidad con el siguiente comando: OPTIMIZE TABLE tabla. Las consultas por columnas que pueden contener valores NULL son más lentas. 3. Mejorar las consultas Las consultas a la base de datos son el típico punto de degradación de una aplicación tras varios meses o años de funcionamiento. Salvo que nuestra aplicación realice operaciones masivas de inserción de registros, debemos preocuparnos sólo de las operaciones de SELECT. Es en este tipo de operaciones donde notaremos como, poco a poco, se va degradando nuestra aplicación. La degradación de una consulta que, inicialmente funcionaba bien, se produce por dos motivos. En primer lugar, porque crece el número de registros de nuestra base de datos. Lo habitual es que, al poner la aplicación en marcha tengamos pocos registros (clientes, pedidos, expedientes...) y que, según transcurre el tiempo, las tablas tengan cada vez más registros. El segundo motivo de degradación es el incremento del número de usuarios, la concurrencia. Al desarrollar la aplicación posiblemente las consultas se probaron con un único usuario. Incluso tras la puesta en marcha suele haber un periodo de aceptación en

5 5 el que los usuarios van incorporándose poco a poco a la aplicación, usándola cada día un poco más. Esta combinación de mayor cantidad de datos y mayor concurrencia puede poner en evidencia un diseño poco profesional de las consultas. Naturalmente nuestras consultas estarán embebidas en una aplicación, no es habitual que los usuarios lancen consultas SQL directamente a la base de datos. Así que los primeros síntomas de que algo empieza a fallar serán esporádicos. Al principio sólo observaremos que algunas búsquedas van más lentas y fácilmente podremos achacarlo a otras causas. Pero la degradación de las consultas, aunque lenta, es progresiva. Por ello es conveniente, ante la primera sospecha, tratar de poner solución. Lo primero es detectar el problema, saber qué está pasando ya que puede que en un principio nada nos haga sospechar de la base de datos. Iniciaremos nuestra operación de búsqueda descartando factores... la red, el servidor web, el sistema operativo... hasta llegar a la base de datos. Cómo medida rápida, podemos utilizar el comando SHOW PROCESSLIST que nos permite visualizar a tiempo real las consultas SQL que se están ejecutando en el servidor. Este comando nos muestra el estado de la consulta, la base de datos, el comando que está ejecutando, el usuario, el host y el tiempo de ejecución, siendo este último de los puntos más importantes para el fin que nos ocupa. Tener en cuenta que para ver el contenido completo de la consulta SQL que se está ejecutando necesitaremos utilizar SHOW FULL PROCESSLIST en lugar del comando anterior. Para diseñar una estrategia de optimización más elaborada necesitamos utilizar otras herramientas. Una medida quizás un poco agresiva y que no debería ser ejecutada en servidores de producción es activar el log general (General Query Log) que registrará todas las consultas SQL que se ejecuten en el servidor. Para activarlo debemos especificar la ruta del log mediante la variable global general_log_file, tal y cómo vimos en temas anteriores. Para activarlo utilizaremos la variable general_log que tendrá el valor ON para activado y OFF en caso que queramos desactivarlo. Una estrategia más eficiente para determinar si la base de datos es el cuello de botella es el log específico de consultas lentas (Slow Query Log). Nos bastará con activar este log durante unos días y analizarlo. Para ello, tendremos que modificar el fichero de configuración my.conf, de MySQL de la siguiente manera: log_slow_queries = /var/log/mysql/mysql-slow.log long_query_time = 2 log-queries-not-using-indexes Con la primera directiva estamos indicando en qué fichero se guardará el log. Con la segunda directiva establecemos el tiempo (en segundos). En este caso, cualquier

6 6 consulta que tarde más de 2 segundos en ejecutarse se considerará lenta y será registrada en el log. Y la tercera directiva hará que también se registren en el log las consultas que no utilicen ningún índice para su resolución. Revisando este log, tras varias horas o días de recogida de información, podremos identificar las consultas lentas de nuestra aplicación. Hay que tener en cuenta que el hecho de que una consulta esté registrada una vez en el log sólo significa que esa vez se ejecutó lentamente. Puede ser que en esa ocasión ocurriera algo en el servidor (un proceso de copia de seguridad, un cliente lento...). Debemos concentrarnos en las consultas que más se repitan y peores tiempos tengan. Podemos comprobar qué consultas coinciden con los procesos que los usuarios consideran lentos y, ahora sí, centrarnos en mejorarlas... de una en una. Para poder mejorar el rendimiento de una consulta debemos conocer antes cómo las resuelve MySQL. Es lo que se conoce como proceso de consulta. Cuando MySQL recibe una consulta, procede de la siguiente forma: En primer lugar, busca la consulta en la caché. Si hay suerte, ya tendrá los resultados guardados de una consulta anterior y no tendrá que resolverla. En segundo lugar, si no ha podido utilizar la caché, analiza la consulta, comprueba su sintaxis e identifica su tipo; es la fase de parseo. Con la información obtenida del análisis, llega al siguiente paso, la planificación. Este es el punto crítico y del que dependerá el tiempo de resolución. El planificador de MySQL decide cual será el proceso para resolver la consulta, qué parte se resolverá primero, qué índices se utilizarán y cómo se obtendrán los datos. Por último, en la fase de ejecución solo resta ejecutar el plan trazado y entregar los resultados al cliente. Veamos este proceso paso a paso. 3.1 La caché de consultas MySQL registra las consultas de tipo SELECT y su resultado. Como lo normal es que se acceda a la base de datos a través de una aplicación, las consultas repetidas son muy frecuentes (listas de poblaciones, de códigos, de nombres...). Si MySQL recibe una consulta que tiene en la caché, simplemente entrega al cliente el mismo conjunto de resultados que produjo en su ejecución anterior. Naturalmente, las consultas de modificación de datos (INSERT, DELETE, UPDATE...)

7 7 invalidan las consultas afectadas de la caché y provocan la eliminación de estas de la caché. Podemos utilizar la caché para mejorar el rendimiento de nuestra base de datos. La variable mysql_cache_type (en my.cnf) establece el tipo de caché que utilizará MySQL. Un valor a 1 hará que todas las consultas de tipo SELECT sean cacheadas, salvo que expresamente indiquen lo contrario mediante el modificador SQL_NO_CACHE en la sentencia SELECT. Un valor de query_cache_type igual a 2 hará lo contrario. Las consultas no serán cacheadas salvo que expresamente lo soliciten con SQL_CACHE. De esta forma podremos controlar y mejorar la calidad de la caché, haciendo que las consultas repetidas sean cacheadas y evitando que las consultas que no se repiten (buscadores, datos de un cliente...) consuman espacio de almacenamiento. El tamaño de la cache se establece en la variable query_cache_size. Y el límite de almacenamiento por consulta en la variable query_cache_limit. La estrategia concreta de uso de estas variables dependerá de las características del servidor y de la aplicación. 3.2 Análisis En el proceso de análisis ( parseo ), MySQL determina el tipo de consulta, las tablas relacionadas, las características de la cláusula WHERE... pero todo esto apenas tiene incidencia en el rendimiento. Lo único que puedes tener en cuenta es, que cuanto más largas sean las consultas, más tiempo de análisis necesitarán. 3.3 Planificación El planificador es el punto crítico en la resolución de una consulta. Del plan de ejecución que elabore dependerá que la consulta tarde unas pocas décimas de segundo o varios minutos. Pero el trabajo del Planificador no es fácil, para entenderlo debemos tener en cuenta dos factores: El planificador trabaja para cualquier consulta. No es viable programar un planificador específico para nuestra aplicación, así que nos tenemos que conformar con el planificador de MySQL. Este está optimizado para cualquier aplicación. Y, aunque acumula los años de experiencia de los programadores de MySQL y utiliza estadísticas de ejecución para decidir cuál será el mejor plan, no siempre acertará. En segundo lugar, el planificador no tiene tiempo de encontrar la solución óptima. Sería absurdo que utilizara tres segundos en planificar una consulta que, en el peor de los casos, sólo requerirá dos segundos para resolverse. El planificador debe encontrar el mejor plan posible, en el menor tiempo posible.

8 8 Por eso necesitamos conocer cómo trabaja, qué decisiones toma y, sobre todo, como influir en sus decisiones cuando nos convenga. Centrándonos en lo importante, el planificador debe decidir dos aspectos principales en el plan de ejecución: qué índice se va a utilizar para resolver la consulta y en qué orden se realizarán los joins de las tablas. Para elegir el índice que se utilizará en la consulta, el Planificador de MySQL busca los índices aplicables, consulta sus estadísticas y elige el índice que, en su opinión, implique consultar un menor número de registros. Resulta evidente la importancia que adquieren las estadísticas de los índices que almacena MySQL. Si no están actualizadas, el planificador puede elegir utilizar un índice que, según sus estadísticas, devolverá 10 resultados y encontrarse con que realmente devuelve Para evitar la degradación de rendimiento resulta vital analizar y optimizar las tablas periódicamente, sobre todo si el número de registros varía frecuentemente. Para ello debemos utilizar los comandos ANALYZE TABLE y OPTIMIZE TABLE. Esto hará que el Planificador tenga estadísticas actualizadas al elegir el índice. También es necesario tener cuidado con los procedimientos almacenados. Existe la creencia de que los procedimientos almacenados son más rápidos porque su plan de ejecución ya está compilado... Pero probablemente este plan se compiló durante el desarrollo de la aplicación, con tablas pobladas con escasos datos de pruebas e incluso sin alguno de los índices que pudieron crearse posteriormente. Es decir, si no tenemos cuidado, los procedimientos almacenados se estarán ejecutando con planes anticuados. Y entonces pueden llegar a ser mucho más lentos que una consulta cuyo plan de ejecución se compile con información actualizada. Joins. El otro punto crítico del Planificador es decidir el orden en que se harán los Aquí influye algo más que la actualización de los índices. Si imaginamos una consulta con 7 tablas y un índice por tabla (algo no muy infrecuente), vemos que MySQL tiene que analizar más de combinaciones posibles para el orden en el que efectuará los joins (exactamente 7! = 5040). De hecho, puede tardar varios segundos en encontrar un plan de ejecución para una consulta que se ejecutará en décimas de segundo. En estas situaciones, lo mejor es utilizar STRAIGHT JOIN para indicarle a MySQL el orden en el que queremos que haga el Join de las tablas y ahorrándole así el trabajo. Para conocer la forma en la que MySQL ejecutará una sentencia determinada tenemos la sentencia EXPLAIN que nos mostrará el plan de ejecución que MySQL ha

9 9 compilado para una consulta. EXPLAIN es extremadamente útil para conocer la configuración de índices en las tablas, los índices que podrían ser configurados para mejorar su rendimiento, el número de filas que se revisan, el tipo de query, etc. Dependiendo de la complejidad de la consulta necesitaremos tiempo y paciencia para interpretar el plan de ejecución de MySQL y decidir si es el más adecuado. Mediante EXPLAIN podremos detectar planes de ejecución poco eficientes que hagan lentas nuestras consultas. Para influir en el plan de ejecución tenemos varias acciones posibles: Crear índices: La primera opción para mejorar el rendimiento de una consulta es la creación de índices. Siempre podemos evitar que MySQL tenga que escanear toda una tabla comparando el valor de una columna si definimos el índice adecuado sobre ella. Pero cuidado porque la creación de índices también tiene inconvenientes. Los índices penalizan las consultas de inserción y modificación. En muchas aplicaciones esto no será un problema, y será rentable crear índices que mejoren las consultas de SELECT a costa de ralentizar los INSERT y UPDATE. Pero en algunas aplicaciones con entradas masivas y simultáneas de datos, esto puede ser un problema. Usar Correctamente los Índices: En ocasiones, puede que el índice adecuado ya exista, pero que MySQL decida no utilizarlo. Ya hemos dicho que el planificador no es perfecto, no tiene tiempo de serlo si quiere resolver la consulta en un tiempo prudente. Así que, en ocasiones, veremos que el plan de ejecución no utiliza el índice adecuado. Podemos proponer a MySQL una lista de índices a considerar, descartando otros, con el modificador USE INDEX. También podemos obligarle a utilizar un índice concreto con FORCE INDEX, e incluso podemos indicarle que ignore una lista de índices con IGNORE INDEX. Pero normalmente los problemas con los índices no son achacables al planificador: o bien no se han actualizado las estadísticas o bien no se utilizan correctamente los índices. Ya hemos insistido en la importancia de actualizar las estadísticas con ANALIZE TABLE y OPTIMIZE TABLE. 3.4 Ejecución Durante la ejecución MySQL ejecuta el plan trazado, por lo que apenas tiene relevancia en el rendimiento de la consulta, salvo que la consulta esté devolviendo grandes conjuntos de resultados. Al resolver una consulta, MySQL bloqueará la tabla contra escrituras para garantizar la integridad de los datos. Esto puede ser un problema si el resultado es grande y el cliente es lento en procesarlo (conexión lenta, máquina de pequeña capacidad...). En estos casos la tabla quedará bloqueada impidiendo el acceso de escritura a otros usuarios. Podemos solucionarlo indicando a MySQL que almacene el resultado en una tabla temporal utilizando SQL_BUFFER_RESULT y liberar así la tabla. Además, si ya sabemos que el resultado de una consulta va a ser grande, podemos

10 10 avisar al planificador con la opción SQL_BIG_RESULT. De esta forma, podrá tomar decisiones más agresivas y buscar un plan de ejecución mejor. A modo de conclusión, si como vimos en el apartado anterior, el diseño del modelo de datos es crítico para el rendimiento futuro de nuestra aplicación, la optimización de consultas es la técnica que necesitamos dominar para optimizar el rendimiento actual. Cuando el rendimiento de nuestra aplicación se degrada, y detectamos que se debe a la lentitud de algunas consultas, no será fácil optimizar el modelo de datos, pero sí podremos optimizar las consultas. Si la consulta está bien diseñada, las estadísticas están actualizadas y se utilizan los índices correctos; apenas habrá nada que hacer. Las mejoras serán de un 10-30%. Pero si alguna de estas cosas falla, podremos mejorar el rendimiento radicalmente. La diferencia entre una consulta que debe escanear registros y luego ordenarlos frente a la misma consulta debidamente optimizada para evitar el escaneo y obtener directamente la ordenación del índice utilizado puede de ser de hasta tres órdenes de magnitud o incluso superior. Y eso, en una aplicación lenta, traza la diferencia entre la desesperación de los usuarios y su satisfacción. Además de las opciones anteriores, existen diferentes herramientas de software cómo MySQL Query Analyzer o MySQLTUNER que monitorizan las consultas SQL del servidor y detectan el origen de los problemas. No obstante, con lo visto hasta ahora y unos conocimientos adecuados de administración de base de datos puede ser suficiente para solucionar cualquier problema que se presente. 4. Mejorar la configuración del servidor MySQL Son muchas las estrategias que podemos seguir para optimizar el rendimiento en el servidor. La documentación oficial de MySQL recomienda algunas cómo la utilización de un SO Solaris o Linux con kernel mayor o igual al 2.4 para aprovechar al máximo las múltiples CPU del servidor o deshabilitar la partición de swap si se dispone de suficiente RAM. También podemos mejorar la entrada/salida del disco utilizando un disco dedicado para almacenar las bases de datos de MySQL e incluso distribuir los datos en diferentes discos con el fin de mejorar las búsquedas. Otra mejora para la entrada/salida es almacenar los logs en un disco diferente del que se utiliza para los datos. Además, existen varias variables en MySQL que nos permiten optimizar su rendimiento: key_buffer_size: tamaño del buffer usado para los bloques de índices.

11 11 table_open_cache: número máximo de tablas abiertas para todos los threads. Dependerá del valor dado a max_connections. max_connections: define el número de conexiones a MySQL simultáneas. Por defecto 151 (150 más la consola local). Si se alcanza este límite aparecerá el error de "Unable to connect to database: Too many connections" y claramente será necesario aumentar éste valor. wait_timeout: define el número de segundos de timeout para una conexión no interactiva. De esta forma, se evitará tener procesos en estado "sleep" en mysql que no se cierren y que por tanto pongan en peligro el valor "max_connections" tmp_table_size / max_heap_table_size: MySQL usará el menor valor de entre "tmp_table_size" y "max_heap_table_size" para determinar el límite que puede ocupar una tabla temporal en memoria. Si una tabla temporal en memoria excede este límite, MySQL cogerá la tabla y la meterá en disco como una tabla MyISAM. Otra posibilidad muy interesante de cara a mejorar el rendimiento de nuestro SGBD es la de montar un entorno en el que se tienen varios servidores, cada uno con una réplica de las bases de datos. De esta manera, el servidor con el rol de máster es el único que permite lecturas y escrituras, mientras que el resto de servidores, con el rol de slaves, únicamente permiten lecturas, y se encargan de actualizar sus datos con las modificaciones que reciben del master. Está claro que este tipo de entornos mejora el rendimiento de cualquier aplicación, al repartir la carga de trabajo de la base de datos entre varios servidores. Además, se puede usar un balanceador de carga para los slaves, de manera que podamos incluir más slaves según lo necesitemos. EJERCICIOS 1. Explica los factores que inciden en el rendimiento del servidor tras varios años de funcionamiento. 2. Es capaz MySQL de gestionar grandes bases de datos con una alta concurrencia? 3. Cuál es la herramienta más conveniente para monitorizar el sistema? 4. Son convenientes las herramientas gráficas de monitorización? 5. Cuáles son los 3 métodos que nos ayudan a mejorar el rendimiento del sistema? 6. Es posible modificar el modelo de datos una vez puesto el sistema en producción? 7. Sobre qué dos aspectos podemos trabajar para optimizar el modelo de datos? 8. En qué casos es conveniente utilizar el motor de datos MyISAM? 9. En qué casos es conveniente utilizar el motor de datos InnoDB? 10. En qué casos se utilizan otros motores de datos? 11. Hablando en términos de rendimiento es un modelo de datos mejor cuándo está normalizado? Ilústralo con un ejemplo. 12. Es mejor ordenar una tabla de cara a mejorar el rendimiento en una BD? 13. Es mejor utilizar tipos de variables fijas o dinámicas de cara a mejorar el rendimiento de una BD? Explica por qué.

12 Qué comando podemos utilizar para desfragmentar tablas? 15. Es conveniente forzar a las columnas de una tabla a que no contengan valores NULL de cara a mejorar el rendimiento de la BD? 16. En qué tipo de operaciones se va degradando poco a poco la aplicación? 17. Cómo se empiezan a manifestar los fallos en el rendimiento de una BD? Es repentino? 18. Para qué utilizamos el comando SHOW PROCESSLIST? 19. Podemos activar el Log General para detectar problemas de rendimiento en una BD? 20. Cómo se activaría el Log General de errores? 21. Podemos activar el Slow Query Log para analizar el rendimiento de la BD? Cómo lo activaríamos? 22. Si una consulta está registrada una sola vez en el Slow Query Log significa eso que es la responsable de la ralentización del sistema? 23. Indica resumidamente cómo es el proceso de consulta en MySQL 24. Qué proceso conocemos con el nombre de parseo? 25. Cómo procede MySQL al recibir una consulta que tiene en su caché? 26. Cómo afectan las consultas de modificación de datos a la caché de MySQL? 27. Indica las variables que conozcas que modifiquen aspectos de la caché de MySQL. Explica cada una de ellas. 28. Son convenientes las consultas largas de cara a mejorar el rendimiento de la BD? 29. Existe un planificador para cada aplicación? 30. Tarda mucho tiempo el planificador en encontrar la solución más óptima? 31. Sobre qué dos aspectos principales tiene que decidir el planificador? 32. Son importantes las estadísticas de los índices que almacena MySQL? 33. Para qué utilizamos los comandos ANALYZE TABLE y OPTIMIZE TABLE? 34. Son más rápidos los procedimientos almacenados? 35. Para qué utilizamos el comando EXPLAIN? 36. De qué manera podemos influir en el plan de ejecución de una consulta? 37. La fase de ejecución de una consulta tiene relevancia en el rendimiento de la BD? En qué casos? 38. Nombra algunas herramientas de software que permiten optimizar las consultas en MysQL. 39. Qué estrategias recomienda la documentación oficial de MySQL para mejorar el rendimiento del servidor? 40. Cómo podemos mejorar la entrada/salida del disco en el servidor? 41. Qué variables MySQL permiten mejorar el rendimiento del servidor? Explica cada una de ellas. 42. Es conveniente montar un entorno con varios servidores de cara a mejorar el rendimiento de la BD? Por qué? Qué permitiría el servidor con rol de máster y los servidores con roles de slaves?

Adaptación al NPGC. Introducción. NPGC.doc. Qué cambios hay en el NPGC? Telf.: 93.410.92.92 Fax.: 93.419.86.49 e-mail:atcliente@websie.

Adaptación al NPGC. Introducción. NPGC.doc. Qué cambios hay en el NPGC? Telf.: 93.410.92.92 Fax.: 93.419.86.49 e-mail:atcliente@websie. Adaptación al NPGC Introducción Nexus 620, ya recoge el Nuevo Plan General Contable, que entrará en vigor el 1 de Enero de 2008. Este documento mostrará que debemos hacer a partir de esa fecha, según nuestra

Más detalles

Seminario de Informática

Seminario de Informática Unidad II: Operaciones Básicas de Sistemas Operativos sobre base Windows 11. Herramientas del Sistema INTRODUCCION Este apunte está basado en Windows XP por ser el que estamos utilizando en el gabinete

Más detalles

Optimizar base de datos WordPress

Optimizar base de datos WordPress Optimizar base de datos WordPress Cardenal Gardoki, 1 48008 BILBAO (Vizcaya) Teléfono: 902 012 199 www.hostalia.com WordPress se ha convertido en uno de los CMS más utilizados en todo el mundo. Su robustez,

Más detalles

Hostaliawhitepapers. Las ventajas de los Servidores dedicados. www.hostalia.com. Cardenal Gardoki, 1 48008 BILBAO (Vizcaya) Teléfono: 902 012 199

Hostaliawhitepapers. Las ventajas de los Servidores dedicados. www.hostalia.com. Cardenal Gardoki, 1 48008 BILBAO (Vizcaya) Teléfono: 902 012 199 Las ventajas de los Servidores dedicados Cardenal Gardoki, 1 48008 BILBAO (Vizcaya) Teléfono: 902 012 199 www.hostalia.com A la hora de poner en marcha una aplicación web debemos contratar un servicio

Más detalles

MANUAL COPIAS DE SEGURIDAD

MANUAL COPIAS DE SEGURIDAD MANUAL COPIAS DE SEGURIDAD Índice de contenido Ventajas del nuevo sistema de copia de seguridad...2 Actualización de la configuración...2 Pantalla de configuración...3 Configuración de las rutas...4 Carpeta

Más detalles

El objetivo principal del presente curso es proporcionar a sus alumnos los conocimientos y las herramientas básicas para la gestión de proyectos.

El objetivo principal del presente curso es proporcionar a sus alumnos los conocimientos y las herramientas básicas para la gestión de proyectos. Gestión de proyectos Duración: 45 horas Objetivos: El objetivo principal del presente curso es proporcionar a sus alumnos los conocimientos y las herramientas básicas para la gestión de proyectos. Contenidos:

Más detalles

Gestión de proyectos

Gestión de proyectos Gestión de proyectos Horas: 45 El objetivo principal del presente curso es proporcionar a sus alumnos los conocimientos y las herramientas básicas para la gestión de proyectos. Gestión de proyectos El

Más detalles

Base de datos en Excel

Base de datos en Excel Base de datos en Excel Una base datos es un conjunto de información que ha sido organizado bajo un mismo contexto y se encuentra almacenada y lista para ser utilizada en cualquier momento. Las bases de

Más detalles

MANUAL DE AYUDA TAREA PROGRAMADA COPIAS DE SEGURIDAD

MANUAL DE AYUDA TAREA PROGRAMADA COPIAS DE SEGURIDAD MANUAL DE AYUDA TAREA PROGRAMADA COPIAS DE SEGURIDAD Fecha última revisión: Diciembre 2010 Tareas Programadas TAREAS PROGRAMADAS... 3 LAS TAREAS PROGRAMADAS EN GOTELGEST.NET... 4 A) DAR DE ALTA UN USUARIO...

Más detalles

Transacciones y bloqueos en SQL-Server

Transacciones y bloqueos en SQL-Server Transacciones y bloqueos en SQL-Server (Información para el uso desde Axapta) Introducción En este documento vamos a intentar explicar cuatro conceptos básicos acerca de las transacciones y los bloqueos

Más detalles

Guía de uso del Cloud Datacenter de acens

Guía de uso del Cloud Datacenter de acens guíasdeuso Guía de uso del Cloud Datacenter de Calle San Rafael, 14 28108 Alcobendas (Madrid) 902 90 10 20 www..com Introducción Un Data Center o centro de datos físico es un espacio utilizado para alojar

Más detalles

Funcionalidades Software PROYECTOS GotelGest.Net Software para la gestión de Proyectos GotelGest.Net

Funcionalidades Software PROYECTOS GotelGest.Net Software para la gestión de Proyectos GotelGest.Net 2012 Funcionalidades Software PROYECTOS GotelGest.Net Software para la gestión de Proyectos GotelGest.Net Servinet Sistemas y Comunicación S.L. www.softwaregestionproyectos.com Última Revisión: Febrero

Más detalles

Toda base de datos relacional se basa en dos objetos

Toda base de datos relacional se basa en dos objetos 1. INTRODUCCIÓN Toda base de datos relacional se basa en dos objetos fundamentales: las tablas y las relaciones. Sin embargo, en SQL Server, una base de datos puede contener otros objetos también importantes.

Más detalles

LAS SUBCONSULTAS SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

LAS SUBCONSULTAS SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE LAS SUBCONSULTAS SQL SERVER 2005 Manual de Referencia para usuarios Salomón Ccance CCANCE WEBSITE LAS SUBCONSULTAS Una subconsulta es una consulta que aparece dentro de otra consulta o subconsultas, en

Más detalles

HERRAMIENTAS DE ACCESS ACCESS 2010. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

HERRAMIENTAS DE ACCESS ACCESS 2010. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE HERRAMIENTAS DE ACCESS ACCESS 2010 Manual de Referencia para usuarios Salomón Ccance CCANCE WEBSITE HERRAMIENTAS DE ACCESS En esta unidad veremos algunas de las herramientas incorporadas de Access que

Más detalles

GUÍA TÉCNICA PARA LA DEFINICIÓN DE COMPROMISOS DE CALIDAD Y SUS INDICADORES

GUÍA TÉCNICA PARA LA DEFINICIÓN DE COMPROMISOS DE CALIDAD Y SUS INDICADORES GUÍA TÉCNICA PARA LA DEFINICIÓN DE COMPROMISOS DE CALIDAD Y SUS INDICADORES Tema: Cartas de Servicios Primera versión: 2008 Datos de contacto: Evaluación y Calidad. Gobierno de Navarra. evaluacionycalidad@navarra.es

Más detalles

COMANDOS DE SQL, OPERADORES, CLAUSULAS Y CONSULTAS SIMPLES DE SELECCIÓN

COMANDOS DE SQL, OPERADORES, CLAUSULAS Y CONSULTAS SIMPLES DE SELECCIÓN COMANDOS DE SQL, OPERADORES, CLAUSULAS Y CONSULTAS SIMPLES DE SELECCIÓN Tipos de datos SQL admite una variada gama de tipos de datos para el tratamiento de la información contenida en las tablas, los tipos

Más detalles

Gestión de Retales WhitePaper Noviembre de 2009

Gestión de Retales WhitePaper Noviembre de 2009 Gestión de Retales WhitePaper Noviembre de 2009 Contenidos 1. Introducción 3 2. Almacén de retales 4 3. Propiedades de los materiales 6 4. Alta de retales 8 5. Utilización de retales en un lote de producción

Más detalles

CASO PRÁCTICO. ANÁLISIS DE DATOS EN TABLAS DINÁMICAS

CASO PRÁCTICO. ANÁLISIS DE DATOS EN TABLAS DINÁMICAS CASO PRÁCTICO. ANÁLISIS DE DATOS EN TABLAS DINÁMICAS Nuestra empresa es una pequeña editorial que maneja habitualmente su lista de ventas en una hoja de cálculo y desea poder realizar un análisis de sus

Más detalles

Entendiendo y Optimizando MySQL

Entendiendo y Optimizando MySQL Grupo de Usuarios de Linux Universidad Carlos III de Madrid. 10 de Noviembre de 2010 Indice Arquitectura 1 Arquitectura 2 3 4 5 Arquitectura Sistema de Gestión de Bases de Datos. GPL. Escrito en C y C++.

Más detalles

Guía para el tratamiento en Allegro de recibos para centros no pertenecientes a la Generalitat Valenciana.

Guía para el tratamiento en Allegro de recibos para centros no pertenecientes a la Generalitat Valenciana. Guía para el tratamiento en Allegro de recibos para centros no pertenecientes a la Generalitat Valenciana. Esta guía muestra como proceder en la configuración y posterior uso de la aplicación Allegro en

Más detalles

Selección de los puntos de montaje

Selección de los puntos de montaje PARTICIONES PARA LINUX Selección de los puntos de montaje Tanto para aquellos que vayan a instalar ahora, como para quienes quieran cambiar el tamaño de una partición o formatear este apunte (resumen de

Más detalles

Base de datos relacional

Base de datos relacional Base de datos relacional Una base de datos relacional es una base de datos que cumple con el modelo relacional, el cual es el modelo más utilizado en la actualidad para modelar problemas reales y administrar

Más detalles

Base de datos en la Enseñanza. Open Office

Base de datos en la Enseñanza. Open Office 1 Ministerio de Educación Base de datos en la Enseñanza. Open Office Módulo 1: Introducción Instituto de Tecnologías Educativas 2011 Introducción Pero qué es una base de datos? Simplificando mucho, podemos

Más detalles

1. DML. Las subconsultas

1. DML. Las subconsultas 1.1 Introducción 1. DML. Las subconsultas Una subconsulta es una consulta que aparece dentro de otra consulta o subconsulta en la lista de selección, en la cláusula WHERE o HAVING, originalmente no se

Más detalles

Trabajos de Ampliación. Bases de datos NoSQL.

Trabajos de Ampliación. Bases de datos NoSQL. BASES DE DATOS NoSql Son bases de datos pensadas para aplicaciones que hagan un uso intensivo de la misma. Estas bases de datos permiten una mayor flexibilidad y facilidad a la hora de introducir los datos

Más detalles

Este es un ejemplo muy sencillo, un esquema de empleados que trabajan en proyectos, en una relación muchos a muchos.

Este es un ejemplo muy sencillo, un esquema de empleados que trabajan en proyectos, en una relación muchos a muchos. 28/04/2012 La teoría de la normalización va perdiendo peso con el paso de los años como herramienta de diseño de bases de datos relacionales en favor de modelos de datos más ricos en su representación,

Más detalles

Formas de llevar a cabo un backup de una base de datos MySQL

Formas de llevar a cabo un backup de una base de datos MySQL Formas de llevar a cabo un backup de una base de datos MySQL Calle San Rafael, 14 28108 Alcobendas (Madrid) 902 90 10 20 www..com Introducción Muchas aplicaciones web hacen uso de bases de datos donde

Más detalles

Para optimizar este proceso lo dividiremos en etapas y deberemos tener bien claro el objetivo que debemos alcanzar en cada una de ellas:

Para optimizar este proceso lo dividiremos en etapas y deberemos tener bien claro el objetivo que debemos alcanzar en cada una de ellas: ETAPAS DEL PROCESO DE SELECCIÓN DE PERSONAL EN LAS EMPRESAS FAMILIARES En la actualidad muchas empresas familiares han evolucionado intentando aplicar técnicas adecuadas para el proceso de Selección de

Más detalles

GENERACIÓN DE TRANSFERENCIAS

GENERACIÓN DE TRANSFERENCIAS GENERACIÓN DE TRANSFERENCIAS 1 INFORMACIÓN BÁSICA La aplicación de generación de ficheros de transferencias permite generar fácilmente órdenes para que la Caja efectúe transferencias, creando una base

Más detalles

La Tecnología líder en Simulación

La Tecnología líder en Simulación La Tecnología líder en Simulación El software de simulación Arena, es un "seguro de vida" para las empresa: le ayuda a predecir el impacto en las organizaciones de nuevas ideas, estrategias y políticas

Más detalles

Resumen. Funcionamiento. Advertencia

Resumen. Funcionamiento. Advertencia Resumen Módulo: Librería: IMPEXP.DLL Acoplable a: FactuCont 5, versiones monopuesto y red Descripción: Permite exportar datos de documentos, clientes, proveedores y artículos en un solo fichero para poder

Más detalles

WINDOWS 2008 7: COPIAS DE SEGURIDAD

WINDOWS 2008 7: COPIAS DE SEGURIDAD 1.- INTRODUCCION: WINDOWS 2008 7: COPIAS DE SEGURIDAD Las copias de seguridad son un elemento fundamental para que el trabajo que realizamos se pueda proteger de aquellos problemas o desastres que pueden

Más detalles

Oficina Online. Manual del administrador

Oficina Online. Manual del administrador Oficina Online Manual del administrador 2/31 ÍNDICE El administrador 3 Consola de Administración 3 Administración 6 Usuarios 6 Ordenar listado de usuarios 6 Cambio de clave del Administrador Principal

Más detalles

- Bases de Datos - - Diseño Físico - Luis D. García

- Bases de Datos - - Diseño Físico - Luis D. García - Diseño Físico - Luis D. García Abril de 2006 Introducción El diseño de una base de datos está compuesto por tres etapas, el Diseño Conceptual, en el cual se descubren la semántica de los datos, definiendo

Más detalles

T12 Vistas y tablas temporales

T12 Vistas y tablas temporales 1 de 9 17/05/2013 14:01 Lecciones SQL > T12 Vistas y tablas temporales En esta sesión vamos a mostrar dos tipos de objetos de uso habitual en cualquier SGBD: las vistas y las tablas temporales. Mientras

Más detalles

Backup & Recovery Oracle 9i. Las copias físicas offline, conocidas como Backups en frío, se realizan cuando la Base de Datos está parada.

Backup & Recovery Oracle 9i. Las copias físicas offline, conocidas como Backups en frío, se realizan cuando la Base de Datos está parada. Copias de Seguridad Físicas OFFLINE Las copias físicas offline, conocidas como Backups en frío, se realizan cuando la Base de Datos está parada. Como ya se ha comentado anteriormente, una copia en frío

Más detalles

QUÉ ES UN SERVIDOR Y CUÁLES SON LOS PRINCIPALES TIPOS DE SERVIDORES? (PROXY, DNS, WEB, FTP, SMTP, ETC.) (DV00408A)

QUÉ ES UN SERVIDOR Y CUÁLES SON LOS PRINCIPALES TIPOS DE SERVIDORES? (PROXY, DNS, WEB, FTP, SMTP, ETC.) (DV00408A) APRENDERAPROGRAMAR.COM QUÉ ES UN SERVIDOR Y CUÁLES SON LOS PRINCIPALES TIPOS DE SERVIDORES? (PROXY, DNS, WEB, FTP, SMTP, ETC.) (DV00408A) Sección: Divulgación Categoría: Herramientas Informáticas Fecha

Más detalles

Capítulo IV. Manejo de Problemas

Capítulo IV. Manejo de Problemas Manejo de Problemas Manejo de problemas Tabla de contenido 1.- En qué consiste el manejo de problemas?...57 1.1.- Ventajas...58 1.2.- Barreras...59 2.- Actividades...59 2.1.- Control de problemas...60

Más detalles

Utilidades de la base de datos

Utilidades de la base de datos Utilidades de la base de datos Desde esta opcion del menú de Access, podemos realizar las siguientes operaciones: Convertir Base de datos Compactar y reparar base de datos Administrador de tablas vinculadas

Más detalles

GENERACIÓN DE ANTICIPOS DE CRÉDITO

GENERACIÓN DE ANTICIPOS DE CRÉDITO GENERACIÓN DE ANTICIPOS DE CRÉDITO 1 INFORMACIÓN BÁSICA La aplicación de generación de ficheros de anticipos de crédito permite generar fácilmente órdenes para que la Caja anticipe el cobro de créditos

Más detalles

Una vez que tengamos el padrón de un determinado tributo con todos sus datos actualizados, podemos generar los recibos de ese padrón.

Una vez que tengamos el padrón de un determinado tributo con todos sus datos actualizados, podemos generar los recibos de ese padrón. 11. RECIBOS. Desde esta opción de Menú vamos a completar el proceso de gestión de los diferentes tributos, generando recibos, informes de situación, impresiones, etc. 11.1. GENERACIÓN DE RECIBOS. Una vez

Más detalles

COPIAS DE SEGURIDAD AUTOMÁTICAS DE DIRECCIONES CALLEÇPAÑA

COPIAS DE SEGURIDAD AUTOMÁTICAS DE DIRECCIONES CALLEÇPAÑA COPIAS DE SEGURIDAD AUTOMÁTICAS DE DIRECCIONES CALLEÇPAÑA Autor: Carlos Javier Martín González. Licenciado en Física Teórica por la Universidad Autónoma de Madrid. Analista programador y funcional. Desarrollador

Más detalles

Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente

Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente En este capítulo definimos los requisitos del modelo para un sistema centrado en la mejora de la calidad del código fuente.

Más detalles

Análisis de los datos

Análisis de los datos Universidad Complutense de Madrid CURSOS DE FORMACIÓN EN INFORMÁTICA Análisis de los datos Hojas de cálculo Tema 6 Análisis de los datos Una de las capacidades más interesantes de Excel es la actualización

Más detalles

6.1. Conoce la papelera

6.1. Conoce la papelera Unidad 6. La papelera de Reciclaje 6.1. Conoce la papelera La papelera no es más que un espacio en el disco duro reservado para almacenar la información que eliminamos, evitando que esta información aparezca,

Más detalles

K2BIM Plan de Investigación - Comparación de herramientas para la parametrización asistida de ERP Versión 1.2

K2BIM Plan de Investigación - Comparación de herramientas para la parametrización asistida de ERP Versión 1.2 K2BIM Plan de Investigación - Comparación de herramientas para la parametrización asistida de ERP Versión 1.2 Historia de revisiones Fecha VersiónDescripción Autor 08/10/2009 1.0 Creación del documento.

Más detalles

Un comité de la organización ANSI (American National Standards Institute) aborda la problemática del almacenamiento de datos para su procesamiento en

Un comité de la organización ANSI (American National Standards Institute) aborda la problemática del almacenamiento de datos para su procesamiento en 15/05/2012 1 Un comité de la organización ANSI (American National Standards Institute) aborda la problemática del almacenamiento de datos para su procesamiento en aplicaciones informáticas en 1975. 2 Como

Más detalles

Guía Rápida de Inicio

Guía Rápida de Inicio Guía Rápida de Inicio 1. Acerca de esta Guía Esta guía le ayudará a instalar y dar los primeros pasos con BitDefender Security for SharePoint. Para disponer de instrucciones detalladas, por favor, diríjase

Más detalles

Instalar y configurar W3 Total Cache

Instalar y configurar W3 Total Cache Instalar y configurar W3 Total Cache en WordPress Cardenal Gardoki, 1 48008 BILBAO (Vizcaya) Teléfono: 902 012 199 www.hostalia.com La velocidad de carga de una web influye mucho a la hora de mejorar el

Más detalles

TUTORIAL PARA REDIMENSIONAR FOTOS

TUTORIAL PARA REDIMENSIONAR FOTOS TUTORIAL PARA REDIMENSIONAR FOTOS Es extremadamente importante cuidar las imágenes con las que trabajamos en nuestro sitio Web y no subir fotografías a cualquier tamaño. Esto puede ralentizar considerablemente

Más detalles

En términos generales, un foro es un espacio de debate donde pueden expresarse ideas o comentarios sobre uno o varios temas.

En términos generales, un foro es un espacio de debate donde pueden expresarse ideas o comentarios sobre uno o varios temas. 1 de 18 Inicio Qué es un foro En términos generales, un foro es un espacio de debate donde pueden expresarse ideas o comentarios sobre uno o varios temas. En el campus virtual, el foro es una herramienta

Más detalles

TEMA 3: EN QUÉ CONSISTE?

TEMA 3: EN QUÉ CONSISTE? Módulo 7 Sesión 3 5/16 TEMA 3: EN QUÉ CONSISTE? La metodología seguida para aplicar correctamente la técnica de RGT se basa en cuatro fases (Figura 1). En la primera de ellas, se seleccionan los elementos

Más detalles

Motores de Búsqueda Web Tarea Tema 2

Motores de Búsqueda Web Tarea Tema 2 Motores de Búsqueda Web Tarea Tema 2 71454586A Motores de Búsqueda Web Máster en Lenguajes y Sistemas Informáticos - Tecnologías del Lenguaje en la Web UNED 30/01/2011 Tarea Tema 2 Enunciado del ejercicio

Más detalles

LABORATORIO 10. ADMINISTRACIÓN DE COPIAS DE SEGURIDAD EN SQL SERVER

LABORATORIO 10. ADMINISTRACIÓN DE COPIAS DE SEGURIDAD EN SQL SERVER LABORATORIO 10. ADMINISTRACIÓN DE COPIAS DE SEGURIDAD EN SQL SERVER GUÍA DE LABORATORIO Nº 1O Actividad de Proyecto No. 12: ESTABLECER PLANES DE RESGUARDO, RESTAURACION Y CONTINGENCIA. Estructura de contenidos.

Más detalles

Cómo creo las bandejas del Registro de Entrada /Salida y de Gestión de Expedientes?

Cómo creo las bandejas del Registro de Entrada /Salida y de Gestión de Expedientes? Preguntas frecuentes Cómo creo las bandejas del Registro de Entrada /Salida y de Gestión de Expedientes? Atención! Esta opción es de configuración y solamente la prodrá realizar el administrador de la

Más detalles

MANUAL DE AYUDA MODULO TALLAS Y COLORES

MANUAL DE AYUDA MODULO TALLAS Y COLORES MANUAL DE AYUDA MODULO TALLAS Y COLORES Fecha última revisión: Enero 2010 Índice TALLAS Y COLORES... 3 1. Introducción... 3 CONFIGURACIÓN PARÁMETROS TC (Tallas y Colores)... 3 2. Módulos Visibles... 3

Más detalles

Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas.

Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas. El primer paso en el diseño de una base de datos es la producción del esquema conceptual. Normalmente, se construyen varios esquemas conceptuales, cada uno para representar las distintas visiones que los

Más detalles

5. Composer: Publicar sus páginas en la web

5. Composer: Publicar sus páginas en la web 5. Composer: Publicar sus páginas en la web Si nuestras páginas existen únicamente en el disco duro local, sólo nosotros podremos navegar por ellas, pero nadie más podrá hacerlo. Composer nos permite publicarlas

Más detalles

Autor: Microsoft Licencia: Cita Fuente: Ayuda de Windows

Autor: Microsoft Licencia: Cita Fuente: Ayuda de Windows Qué es Recuperación? Recuperación del Panel de control proporciona varias opciones que pueden ayudarle a recuperar el equipo de un error grave. Nota Antes de usar Recuperación, puede probar primero uno

Más detalles

ÍNDICE DISEÑO DE CONTADORES SÍNCRONOS JESÚS PIZARRO PELÁEZ

ÍNDICE DISEÑO DE CONTADORES SÍNCRONOS JESÚS PIZARRO PELÁEZ ELECTRÓNICA DIGITAL DISEÑO DE CONTADORES SÍNCRONOS JESÚS PIZARRO PELÁEZ IES TRINIDAD ARROYO DPTO. DE ELECTRÓNICA ÍNDICE ÍNDICE... 1 1. LIMITACIONES DE LOS CONTADORES ASÍNCRONOS... 2 2. CONTADORES SÍNCRONOS...

Más detalles

COMPROBACIONES BÁSICAS PARA EL USO DE FIRMA EN EL RTC

COMPROBACIONES BÁSICAS PARA EL USO DE FIRMA EN EL RTC TITULO: COMPROBACIONES BÁSICAS PARA EL USO DE FIRMA EN EL RTC RESUMEN: La idea de este documento es mostrar una serie de acciones y ayudas básicas para intentar determinar y solucionar problemas en la

Más detalles

Unidad 3. NORMALIZACIÓN.

Unidad 3. NORMALIZACIÓN. Unidad 3. NORMALIZACIÓN. PRACTICA " Definición y Concepto de Normalización " 1. El alumno deberá conseguir información de 3 fuentes bibliográficas distintas, el concepto de Definición. 2. No olvidar hacer

Más detalles

MANUAL DEL PROGRAMA DE ASESORAMIENTO (Asesores) Navegador y limpiar caché/cookies...2 Acceso al programa de Asesoramiento... 7

MANUAL DEL PROGRAMA DE ASESORAMIENTO (Asesores) Navegador y limpiar caché/cookies...2 Acceso al programa de Asesoramiento... 7 MANUAL DEL PROGRAMA DE ASESORAMIENTO (Asesores) Índice Pasos previos a la visualización del programa: Navegador y limpiar caché/cookies...2 Acceso al programa de Asesoramiento... 7 Conceptos e información

Más detalles

Cierre y Apertura de ejercicio. Gestión - Contabilidad

Cierre y Apertura de ejercicio. Gestión - Contabilidad Cierre y Apertura de ejercicio. Gestión - Contabilidad Cliente : Cooperativa Madrileña de Ferreteros, soc. coop. Referencia : I-3-PC-02 / 000041 Asunto : Cierre y apertura de ejercicio. Gestión Contabilidad

Más detalles

ADT CONSULTING S.L. http://www.adtconsulting.es PROYECTO DE DIFUSIÓN DE BUENAS PRÁCTICAS

ADT CONSULTING S.L. http://www.adtconsulting.es PROYECTO DE DIFUSIÓN DE BUENAS PRÁCTICAS ADT CONSULTING S.L. http://www.adtconsulting.es PROYECTO DE DIFUSIÓN DE BUENAS PRÁCTICAS ESTUDIO SOBRE EL POSICIONAMIENTO EN BUSCADORES DE PÁGINAS WEB Y LA RELEVANCIA DE LA ACTUALIZACIÓN DE CONTENIDOS

Más detalles

Recuperador datos externos

Recuperador datos externos Recuperador datos externos La opción Recuperar Datos Externos en la opción de Conectividad de la barra de herramientas de Senior, permite realizar importaciones masivas de datos desde ficheros externos..

Más detalles

En cualquier caso, tampoco es demasiado importante el significado de la "B", si es que lo tiene, lo interesante realmente es el algoritmo.

En cualquier caso, tampoco es demasiado importante el significado de la B, si es que lo tiene, lo interesante realmente es el algoritmo. Arboles-B Características Los árboles-b son árboles de búsqueda. La "B" probablemente se debe a que el algoritmo fue desarrollado por "Rudolf Bayer" y "Eduard M. McCreight", que trabajan para la empresa

Más detalles

Internet Information Server

Internet Information Server Internet Information Server Internet Information Server (IIS) es el servidor de páginas web avanzado de la plataforma Windows. Se distribuye gratuitamente junto con las versiones de Windows basadas en

Más detalles

El cuadro de mando contiene indicadores e informes que deben actualizarse a partir de la información de su sistema informático.

El cuadro de mando contiene indicadores e informes que deben actualizarse a partir de la información de su sistema informático. Barcelona: +34 93155688 www.irisview.com info@irisview.com IRIs View Carga de la información desde Access y Excel El cuadro de mando contiene indicadores e informes que deben actualizarse a partir de la

Más detalles

INSTALACIÓN DE ORACLE 8i (8.1.7) SOBRE NT

INSTALACIÓN DE ORACLE 8i (8.1.7) SOBRE NT INSTALACIÓN DE ORACLE 8i (8.1.7) SOBRE NT Versión 1. Mayo de 2001 Luis Vinuesa Martínez. Departamento de Informática Universidad de Oviedo vinuesa@correo.uniovi.es www.di.uniovi.es/~vinuesa ÍNDICE. Introducción...

Más detalles

No se requiere que los discos sean del mismo tamaño ya que el objetivo es solamente adjuntar discos.

No se requiere que los discos sean del mismo tamaño ya que el objetivo es solamente adjuntar discos. RAIDS MODO LINEAL Es un tipo de raid que muestra lógicamente un disco pero se compone de 2 o más discos. Solamente llena el disco 0 y cuando este está lleno sigue con el disco 1 y así sucesivamente. Este

Más detalles

Sistema de Facturación de Ventas WhitePaper Enero de 2007

Sistema de Facturación de Ventas WhitePaper Enero de 2007 Sistema de Facturación de Ventas WhitePaper Enero de 2007 Ronda Guglielmo Marconi, 9 Parque Tecnológico 46980 Paterna Valencia Spain T +34 96 338 99 66 ventas@preference.es Please Recycle PrefSuite Document

Más detalles

QUERCUS PRESUPUESTOS MANUAL DEL USO

QUERCUS PRESUPUESTOS MANUAL DEL USO QUERCUS PRESUPUESTOS MANUAL DEL USO 2 Tabla de Contenido 1 Introducción 1 1.1 General 1 1.1.1 Que es Quercus Presupuestos? 1 1.1.2 Interfaz 1 1.1.3 Árbol de Navegación 2 1.1.4 Estructura de Datos de un

Más detalles

MANUAL SINCRONIZADOR LEKOMMERCE FACTUSOL

MANUAL SINCRONIZADOR LEKOMMERCE FACTUSOL MANUAL SINCRONIZADOR LEKOMMERCE FACTUSOL www.tiendaonlinegratis.es Página 1 Bienvenido! Bienvenido, y gracias por confiar en nosotros para convertir tu empresa de Factusol en una completa y eficiente tienda

Más detalles

COMO CONFIGURAR UNA MAQUINA VIRTUAL EN VIRTUALBOX PARA ELASTIX

COMO CONFIGURAR UNA MAQUINA VIRTUAL EN VIRTUALBOX PARA ELASTIX COMO CONFIGURAR UNA MAQUINA VIRTUAL EN VIRTUALBOX PARA ELASTIX En este manual se presenta el proceso de configuración de una Maquina Virtual en VirtualBox, que será utilizada para instalar un Servidor

Más detalles

ESCUELA SUPERIOR DE INFORMATICA Prácticas de Estadística UNA SESIÓN EN SPSS

ESCUELA SUPERIOR DE INFORMATICA Prácticas de Estadística UNA SESIÓN EN SPSS UNA SESIÓN EN SPSS INTRODUCCIÓN. SPSS (Statistical Product and Service Solutions) es un paquete estadístico orientado, en principio, al ámbito de aplicación de las Ciencias sociales, es uno de las herramientas

Más detalles

Ingeniería del Software I Clase de Testing Funcional 2do. Cuatrimestre de 2007

Ingeniería del Software I Clase de Testing Funcional 2do. Cuatrimestre de 2007 Enunciado Se desea efectuar el testing funcional de un programa que ejecuta transferencias entre cuentas bancarias. El programa recibe como parámetros la cuenta de origen, la de cuenta de destino y el

Más detalles

Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros

Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros La sentencia INSERT permite agregar nuevas filas de datos a las tablas existentes. Está sentencia

Más detalles

Con esta nueva versión, si un artículo que está incluido dentro de un Paquete de Ventas tiene precio 0,00, significará gratis.

Con esta nueva versión, si un artículo que está incluido dentro de un Paquete de Ventas tiene precio 0,00, significará gratis. NOVEDADES Y MEJORAS Continuando con nuestra política de mejora, innovación y desarrollo, le presentamos la nueva versión 9.50 de datahotel que se enriquece con nuevas funcionalidades que aportan soluciones

Más detalles

Mesa de Ayuda Interna

Mesa de Ayuda Interna Mesa de Ayuda Interna Bizagi Suite Mesa de Ayuda Interna 1 Tabla de Contenido Mesa de Ayuda Interna... 3 Elementos del proceso... 5 Apertura del Caso... 5 Inicio... 5 Abrir Caso... 5 Habilitar Cierre del

Más detalles

Capitulo V Administración de memoria

Capitulo V Administración de memoria Capitulo V Administración de memoria Introducción. Una de las tareas más importantes y complejas de un sistema operativo es la gestión de memoria. La gestión de memoria implica tratar la memoria principal

Más detalles

CONSULTAS CON SQL. 3. Hacer clic sobre el botón Nuevo de la ventana de la base de datos. Aparecerá el siguiente cuadro de diálogo.

CONSULTAS CON SQL. 3. Hacer clic sobre el botón Nuevo de la ventana de la base de datos. Aparecerá el siguiente cuadro de diálogo. CONSULTAS CON SQL 1. Qué es SQL? Debido a la diversidad de lenguajes y de bases de datos existentes, la manera de comunicar entre unos y otras sería realmente complicada a gestionar de no ser por la existencia

Más detalles

GESTIÓN DOCUMENTAL PARA EL SISTEMA DE CALIDAD

GESTIÓN DOCUMENTAL PARA EL SISTEMA DE CALIDAD GESTIÓN DOCUMENTAL PARA EL SISTEMA DE CALIDAD Manual de usuario 1 - ÍNDICE 1 - ÍNDICE... 2 2 - INTRODUCCIÓN... 3 3 - SELECCIÓN CARPETA TRABAJO... 4 3.1 CÓMO CAMBIAR DE EMPRESA O DE CARPETA DE TRABAJO?...

Más detalles

Curso de PHP con MySQL Gratis

Curso de PHP con MySQL Gratis Curso de PHP con MySQL Gratis Introducción Este mini curso o mini tutorial de PHP le ayudará a realizar cualquier sistema para que pueda insertar uno o varios registros a una base de datos con MySQL, este

Más detalles

Cuándo y qué virtualizar? Cuándo y qué virtualizar? 1

Cuándo y qué virtualizar? Cuándo y qué virtualizar? 1 Cuándo y qué virtualizar? Cuándo y qué virtualizar? 1 Por qué surge la virtualización? En proyectos de infraestructuras informáticas muchos responsables de IT se sienten más confortables con diseños basados

Más detalles

MANUAL DE AYUDA HERRAMIENTA DE APROVISIONAMIENTO

MANUAL DE AYUDA HERRAMIENTA DE APROVISIONAMIENTO MANUAL DE AYUDA HERRAMIENTA DE APROVISIONAMIENTO Fecha última revisión: Junio 2011 INDICE DE CONTENIDOS HERRAMIENTA DE APROVISIONAMIENTO... 3 1. QUÉ ES LA HERRAMIENTA DE APROVISIONAMIENTO... 3 HERRAMIENTA

Más detalles

El control de la tesorería consiste en gestionar desde la aplicación los cobros y pagos generados a partir de las facturas de venta y de compra.

El control de la tesorería consiste en gestionar desde la aplicación los cobros y pagos generados a partir de las facturas de venta y de compra. Gestión de la tesorería y del riesgo El control de la tesorería consiste en gestionar desde la aplicación los cobros y pagos generados a partir de las facturas de venta y de compra. En este manual nos

Más detalles

Internet aula abierta

Internet aula abierta MINISTERIO DE EDUCACIÓN Y CIENCIA SECRETARÍA GENERAL DE EDUCACIÓN Y FORMACIÓN PROFESIONAL DIRECCIÓN GENERAL DE EDUCACIÓN, FORMACIÓN PROFESIONAL E INNOVACIÓN EDUCATIVA CENTRO NACIONAL DE INFORMACIÓN Y COMUNICACIÓN

Más detalles

Aviso Legal El presente libro electrónico se distribuye bajo Attribution-NonCommercial- NoDerivs 3.0 Unported

Aviso Legal El presente libro electrónico se distribuye bajo Attribution-NonCommercial- NoDerivs 3.0 Unported PROGRAMACIÓN ORIENTADA A OBJETOS APLICADA A BASES DE DATOS Por LAURA NOUSSAN LETTRY BrowserSQL MySQL Workbench en Linux (Abril 2015, Mendoza) Aviso Legal El presente libro electrónico se distribuye bajo

Más detalles

LA LOGÍSTICA COMO FUENTE DE VENTAJAS COMPETITIVAS

LA LOGÍSTICA COMO FUENTE DE VENTAJAS COMPETITIVAS LA LOGÍSTICA COMO FUENTE DE VENTAJAS COMPETITIVAS Los clientes compran un servicio basandose en el valor que reciben en comparacion con el coste en el que incurren. Por, lo tanto, el objetivo a largo plazo

Más detalles

Manual de usuario de Parda Programa de Almacenamiento y Recuperación de Datos Automático

Manual de usuario de Parda Programa de Almacenamiento y Recuperación de Datos Automático Programa de Almacenamiento y Recuperación de Datos Automático CONSEJERÍA DE EDUCACIÓN Dirección General de Participación e Innovación Educativa Centro de Gestión Avanzado de Centros TIC Fecha: 20/04/10

Más detalles

Sistemas de Gestión de Calidad. Control documental

Sistemas de Gestión de Calidad. Control documental 4 Sistemas de Gestión de Calidad. Control documental ÍNDICE: 4.1 Requisitos Generales 4.2 Requisitos de la documentación 4.2.1 Generalidades 4.2.2 Manual de la Calidad 4.2.3 Control de los documentos 4.2.4

Más detalles

Hacer clic sobre la figura, para extraer todos los registros o presionar la tecla F2.

Hacer clic sobre la figura, para extraer todos los registros o presionar la tecla F2. b) Adicionar grados Para llevar a cabo esta operación el usuario deberá realizar los siguientes pasos: Recuperar la información, para realizar esta operación el usuario puede hacerla de las siguientes

Más detalles

CONCEPTOS DE LA FUERZA

CONCEPTOS DE LA FUERZA CONCEPTOS DE LA FUERZA PAPEL DE LA FUERZA EN EL RENDIMIENTO DEPORTIVO La mejora de la fuerza es un factor importante en todas las actividades deportivas, y en algunos casos determinantes (en el arbitraje

Más detalles

IS23 Mantenimiento de Instalaciones Informáticas Práctica 6. Acceso remoto a ordenadores tipo PC

IS23 Mantenimiento de Instalaciones Informáticas Práctica 6. Acceso remoto a ordenadores tipo PC IS23 Mantenimiento de Instalaciones Informáticas Práctica 6. Acceso remoto a ordenadores tipo PC 1 Objetivos Ingeniería Técnica Informática de Sistemas Curso 2003/2004 En la presente sesión se pretende

Más detalles

Servicio de Email Marketing

Servicio de Email Marketing Servicio de Email Marketing Cuando hablamos de Email marketing, es un envío Masivo de correos con permisos realizado por herramientas tecnológicas de correo electrónico, mediante el cual su anuncio estará

Más detalles

Prototipo de un sistema. interactivo de soporte y ayuda a los compradores de un centro. comercial de equipamiento del hogar

Prototipo de un sistema. interactivo de soporte y ayuda a los compradores de un centro. comercial de equipamiento del hogar Prototipo de un sistema interactivo de soporte y ayuda a los compradores de un centro comercial de equipamiento del hogar Chema Lizano Lacasa. Miguel Ancho Morlans. IPO1-5 INDICE 1.- Descripción general....3

Más detalles

Programa diseñado y creado por 2014 - Art-Tronic Promotora Audiovisual, S.L.

Programa diseñado y creado por 2014 - Art-Tronic Promotora Audiovisual, S.L. Manual de Usuario Programa diseñado y creado por Contenido 1. Acceso al programa... 3 2. Opciones del programa... 3 3. Inicio... 4 4. Empresa... 4 4.2. Impuestos... 5 4.3. Series de facturación... 5 4.4.

Más detalles