Write performance with gfs2 filesystem
Applications which either write to a single file from multiple nodes or which insert/remove lots of files from a single directory will be slow. This is the single most frequently asked question regarding GFS/GFS2 performance and often occurs in relation to email/imap spool directories. The answer in each case is to break up the single large spool into separate directories, and to try to keep each set of files “local” to one node, as far as possible.
Likewise, don’t try to mmap() a file and use it as distributed shared memory: it will work, but it will be so slow that it makes no sense to do so.
Source here.
Se cumplen 7 años, se cumplen los objetivos
Este fin de año 2009 cumplo 7 años trabajando en el Centro de Enseñanzas Virtuales de la UGR, y parece que con el fin de la primera década del siglo XXI se han cumplido varios de mis propósitos desde que empecé en todo esto.
1. El centro ya no depende de la anterior plataforma comercial WebCT, que le costaba a la Universidad de forma proporcional al número de alumnos matriculados en asignaturas virtuales (una auténtica barbaridad, cercana a los 30.000 euros anuales en los últimos años de uso, y creciendo), además de la imposibilidad absoluta de modificación y adaptación a las necesidades cambiantes de la UGR. Nuestros esfuerzos en ese sentido, primero con ILIAS, y finalmente con Moodle acabaron por evitar ese gasto y ampliar la capacidad de innovación, y pasamos a utilizar ésta última, una de las plataformas de código abierto más utilizada en el mundo entero.
2. La Universidad por fin se involucró en la creación una plataforma OpenCourseWare al estilo de la que inició el MIT, bajo la coordinación de Universia, y si bien esta plataforma tiene un año escaso de vida, confío en que sea un modelo que tome relevancia en los próximos años.
3. El sistema sobre el que funciona nuestra plataforma de teleformación es desde este mes de Diciembre un Cluster de alta disponibilidad y escalable, montado con varios nodos Red Hat Advanced Server, más otros nodos de base de datos y streaming, utilizando hardware HP. Algún día espero tener algo de ganas y tiempo para explicar en este blog uno de los proyectos más excitantes y que sin duda espero que sirvan para que el uso de la teleformación en la UGR pueda crecer de acuerdo a sus necesidades en el futuro.
4. El sistema de matriculación de nuestra vertiente más universitaria (las asignaturas regladas semipresenciales) se ha automatizado mediante un sistema de web services, con ayuda del CSIRC, dando lugar a la creación de PRADO (Plataforma de Recursos de Apoyo a la Docencia), un mecanismo de autenticación y autorización desde la oficina virtual de la UGR, evitando así que los usuarios tengan que recordar varias contraseñas para su acceso identificado en la UGR y su acceso a la plataforma de teleformación. Otro de los proyectos más bonitos en los que he participado en estos años.
5. El Campus Andaluz Virtual se involucró por fin en un proyecto de federación de identidades, algo que sin duda creo que puede ser pionero a nivel nacional, y de lo que ya hablé aquí y en la lista de la oficina de software libre. Alguno pensaba entonces que eso no podría llevarse a cabo en el entorno universitario, pero se equivocaba, ya que estamos cerca de poder verlo en producción. La tarea finalmente la está llevando a cabo YACO Sistemas S.L., empresa que algunos conocéis desde dentro, y otros desde fuera, y que está llevando a cabo una labor (desde mi punto de vista) encomiable, dada la gran diversidad de sistemas que existen en las universidades andaluzas. Podéis informaros más en la web del proyecto CONFIA (el video es bastante explicativo
.
Evidentemente hay muchas otras cosas que se han llevado a cabo en esos 7 años, pero considero estos 5 puntos como los más representativos de esta etapa. Esperemos a ver qué nos depara la siguiente década
Felices fiestas a todos.
Próximo destino: Thessaloniki, Grecia
Después de un mes de agosto de descanso (Excursión por el Sulayr, Tarifa, Lagos, Algarve, Carrapateira y Lisboa), me sumerjo de nuevo en la presentación de JABBAH, que tendrá lugar el día 20 de septiembre en Tesalónica, dentro del ICKEPS, que a su vez está dentro del ICAPS 2009.
Compartir experiencias con otros 6 equipos en esta competición es cuando menos prometedor, y ante todo, lo importante es participar, y aprender lo que pueda de todo lo que por allí vea. Es la primera vez que asisto al ICAPS, el congreso más relevante en el área de “Planning/Scheduling”, y espero que no sea la última
.
2010 está ya a la vuelta de la esquina, ánimo.
Código Deontológico
Hace un par de meses, una compañera de trabajo me contó que sentía que un administrador de sistemas había violado su privacidad, mirando su directorio de datos a raíz de un problema técnico que tuvo. Este sysadmin, ni corto ni perezoso, observó sus datos y le aconsejó lo que podía hacer para solucionar su problema, deduciendo de sus datos que ella era personal laboral de tipo, llamémosle T, dentro del escalafón profesional universitario. La chica no podía creer lo que le había pasado, y le montó un pollo al sysadmin, razonable por otra parte, y a continuación cargó contra los informáticos:
Como consecuencia de aquello, me preguntó que si es que los informáticos no teníamos un código deontológico o qué. Yo le contesté que más bien “o qué” (¡opá!, ¡yo viasé un corral!), porque yo en mi vida había escuchado que lo tuviésemos, y no tuve más remedio que recurrir a aquello de “hombre, … yo creo que es una cuestión ética que cada uno debería respetar”… pero evidentemente, hay mil situaciones que pueden no ser tan obvias como aquella.
Pues bien, hoy he recibido por primera vez la revista de ALI (debido a mi reciente colegiación en el CPIIA), y he visto que en su última asamblea han aprobado un código deontólogico, compuesto de 142 artículos. Unos principios generales de práctica profesional, que quieren englobar dentro de un marco definitivo establecido con ayuda de los Consejos/Colegios Profesionales.
Y a tí, ¿te parece bien tener un código deontológico consensuado o ya tienes el tuyo propio?
JABBAH
Nunca pensé que se me ocurriría un nombre tan friki, pero así es… este será el nombre del software que estoy desarrollando para mi tesis:
JABBAH has nothing to do with JABBA el Hutt (who, BTW, also needed the android C3Po as translator), but…
JABBAH is a Java Application Framework for the translation Between BPM And HTN-PDDL
Es lo que tiene que a un servidor le llamen R2D2 …
Para colmo, JABBAH es también una estrella de la constelación de Scorpio… ¿sabéis qué signo del zodiaco soy? Exacto
Actualización: ¿Qué es esto de BPM y HTN-PDDL?
1. BPM son las siglas de Business Process Management. Modelar un proceso es el primer paso en el ciclo de vida de BPM. El modelado nos ayuda a definir el prceso, sus dependencias y detalles. La idea de modelar, es poder después ejecutar dicho modelo, incluyendo las interacciones con otros sistemas. También implica la monitorización y gestión, así como el análisis del modelo para poder mejorar sus deficiencias rediseñandolo. Con mis palabras diría que BPM es la versión “moderna” de UML. Mucho más moderna, y sobre todo mucho más intuitiva. Orientada a procesos, no a desarrollo software específicamente. Los modelos de procesos BPM se suelen serializar como un fichero XML (XPDL, BPMN) ¿Acaso no os gustaría poder dibujar el típico diagrama de flujo de un proceso de negocio y que realmente dicho diagrama sirviese como base real para llevar a cabo el desarrollo después? Pues entonces empezad a estudiar BPM

2. HTN-PDDL. PDDL son las siglas para Planning Domain Definition Language.
Componentes de un problema de planificación en PDDL:
• Objetos: Cosas en el mundo que nos interesan.
• Predicados: Propiedades de los objetos en los que estamos interesados (pueden ser TRUE or FALSE)
• Estado inicial: El estado del mundo en el que comenzamos.
• Especificación de objetivos: Cosas que queremos que sean verdad.
• Aciones/Operadores: Métodos para cambiar el estado del mundo.
Un buen ejemplo de PDDL puedes verlo en 15 transparencias aquí. Otro gran ejemplo de lo que se quiere expresar, es el tradicional mundo de bloques (aquí).

Estado inicial

Estado final
HTN (Hierarchical Task Network) es una extensión de PDDL donde además, las acciones se expresan siempre como una descomposición de tareas más complejas, de forma jerárquica. También puedes hacerte una idea más clara aquí.
La ejecución de un “programa” escrito en PDDL es un plan de actuación, que puede venir dado por ejemplo como un diagrama de gantt.
Entonces… la idea es, teniendo un modelo BPM ¿cómo puedo representar dicho modelo como un problema de planificación con HTN-PDDL para obtener un plan de actuación previo a la ejecución de dicho proceso? Esto tiene sentido sobre todo en procesos con participación humana, donde puede interesar tener un plan previo a la ejecución (ej: extinción de incendios, emergencias, cualquier proceso que implique interdepencias entre personas que deben realizar tareas concretas). Evidentemente, lo más dificil del problema es representar y transformar la información temporal.
PLATAFORMA GRAN PARQUE DEL MILENIO EN RENFE
Visita su blog para más información.
Envía un mail a parquemilenio@gmail.com y apoya el manifiesto de la PLATAFORMA POR EL GRAN PARQUE CENTRAL DEL MILENIO EN RENFE y ZONAS ALEDAÑAS
“Apoyo con mi firma la ejecución de un GRAN PARQUE CENTRAL en la zona de los terrenos de RENFE y espacios aledaños. Me manifiesto a favor de respetar la vega de Granada, crecer en zonas verdes, generar potencial económico y turístico, mejorar la calidad ambiental, integrar la intermodalidad Metro-AVE-Cercanías, crear vías verdes hacia la vega y la zona de recreo del pantano del Cubillas, situar un tranvía histórico turístico entre Avenida de Andaluces-El Fargue y el Sacromonte por la carretera de la Abadía. Quiero que la zona se convierta en un gran Pulmón Verde y quede libre de edificaciones. Deseo que Granada avance hacia la sostenibilidad social, económica y ambiental, legando a las generaciones futuras un espacio verde que forme parte de nuestra memoria colectiva.”
My next challenge?
Well, my next challenge is being the next ICKEPS workshop 2009, that will be done the next 20th September, in Greece.
The International Competition on Knowledge Engineering for Planning and Scheduling has been running since 2005 as a biannual event promoting the development and importance of the use of knowledge engineering methods and techniques within P & S.
This year ICKEPS will focus on a specific aspect of knowledge engineering technology: tools, translators and techniques that when input with a model described in an application-area-specific language, output solver-ready domain models. For example, they would like to encourage application developers in Web Services, Workflow, Business Modelling, E-Learning, Games, Narrative Generation etc to utilise planning technology.
This is exactly what I worked out last year. At the moment I’m developing a Java framework that will carry on a translation process from XPDL (BPM language) to PDDL (planning language). Let’s see what happen. I don’t imagine I can win the contest at this early phase of development, but just meeting with some other people that look into similar problems will be worthy and exciting.
Results extracted from this development will be the final chapter for my PhD Thesis, hopefully presented next Spring 2010.
And … that’s it! I’m sorry I can’t go to the Gran Canaria Desktop Summit this summer, and I’m sorry for being so “lost” these days. Have a good time there





