Dentro del mundo Big Data, día a día se desarrollan más herramientas, sistemas y lenguajes para lograr destacar el valor de los datos y tomar decisiones y acciones conforme a este. En relación a esto, podrás encontrar Scheduling (Governance) como una de estas alternativas, ya que su función gira en torno a esa gestión y comprensión de los macrodatos.
Adicionalmente, este proceso ha ido tomando cierta popularidad por su relación con la estructura de software Hadoop, un sistema muy reconocido en el mundo Big Data. Por este motivo, a continuación te exponemos qué es Scheduling (Governance) y cómo funciona por medio de conceptos básicos y ejemplos prácticos.
¿Qué es Scheduling (Governance)?
Scheduling (Governance) hace referencia al Gobierno y a la Planificación del uso de los recursos en las colas. En efecto, la organización de las colas se produce gracias a este tipo de administración de los recursos.
¿Qué son las colas?
Se conoce así a las organizaciones que toman las peticiones de datos a medida que se van acumulando. Por ejemplo, todas las aplicaciones que se envían a un clúster van creando, automáticamente, una cola.
Esta cola, por defecto, se llama punto default y es adonde van llegando todas las peticiones; sin embargo, esta no sabe si es más importante la que tiene de primera, tercera, cuarta o de última. De manera que lo realiza conforme al FIFO (First in, first out), es decir, a medida que van llegando las peticiones, las va procesando. No obstante, este sistema no siempre es el adecuado.
Scheduling (Governance) y las colas
A partir de ahí, Scheduling (Governance) entra a desempeñar su función de administrar los recursos por medio de algoritmos más específicos y personalizados a los datos que manejes. Este sistema te permitirá configurarlo todo para que las jobs tengan prioridades.
De hecho, a través de esta planificación podrás designar a qué cola irán determinados datos y en qué porcentaje se acumularán las peticiones en una u otra cola.
Ahora bien, una vez se utilizan las colas, hay una cola principal llamada root, el resto se pueden definir de la siguiente forma:
¿Cómo funciona Scheduling (Governance)?
En primer lugar, debes tener en cuenta que la personalización del Fair Job Scheduler generalmente implica la alteración de dos archivos.
Ahora, las opciones de todo el planificador se pueden establecer agregando propiedades de configuración en el archivo yarn-site.xml en su directorio de configuración existente.
Primero, debes entrar en el directorio donde se encuentran los ficheros de configuración:
- cd $HADOOP_CONF_DIR
En segunda instancia, con ello podrás ver los contenidos del yarn-site.xml (el fichero de configuración principal de YARN):
- cat yarn-site.xml
Como tercer paso, deberás configurar las propiedades de YARN para manejar una cola distinta a la default con los siguientes comandos:
- sed -i ‘$d’ yarn-site.xml
- sed -i ‘$a \ <property>\n <name>yarn.resourcemanager.scheduler.class</name>\n <value>org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler</value>\n </property>\n <property>\n <name>yarn.scheduler.fair.allocation.file</name>\n <value>/usr/local/hadoop/etc/hadoop/fair-scheduler.xml</value>\n </property>\n</configuration>’ yarn-site.xml
Ten en cuenta
Si te confundes o te quedas en un comando, cierra el terminal y abre otro escribiendo (reemplaza el XXXXXX por el nombre/identificador del container):
Aprende más sobre Big Data
Gracias a este post, te hemos presentado cómo se relaciona el Scheduling (Governance) en el desarrollo del sistema Hadoop. Aun así, este proceso de aprendizaje requiere mucha más práctica y reiteración, por lo que desde KeepCoding te traemos una gran oportunidad para poner a prueba tus destrezas.
Te ofrecemos nuestro Bootcamp Big Data, Inteligencia Artificial & Machine Learning, que tiene como fin convertirte en todo un experto en el manejo de los macrodatos. En su transcurso, verás todo lo relacionado con el desarrollo de herramientas, lenguajes y sistemas fundamentales dentro del universo del Big Data. En efecto, en menos de nueve meses aprenderás en profundidad cuestiones como la clasificación, exploración y visualización del estudio de datos. ¿A qué estás esperando para apuntarte?