Sí, puedes aprender Hadoop sin conocimientos básicos de programación. Depende de su perfil que elija como Hadoop Developer & Hadoop Admin y también de la tecnología que elija para Big Data Analytics en el ecosistema de Hadoop.
Si tiene buenos conocimientos de programación, puede escribir tareas de MapReduce en Java y Python. Si está bien con las consultas de SQL, puede analizar los datos utilizando Hive & Spark SQL. Como alternativa para Hadoop Admin, debes ser bueno con tus comandos de Linux.
Le recomendaría que primero entienda Big Data y los desafíos asociados con Big Data. Entonces, puedes entender cómo Hadoop surgió como una solución a esos problemas de Big Data.
Entonces debe comprender cómo funciona la arquitectura de Hadoop con respecto a HDFS, YARN y MapReduce. Después de esto, debe instalar Hadoop en su sistema para que pueda comenzar a trabajar con Hadoop. Esto le ayudará a comprender los aspectos prácticos en detalle.
- ¿Cuáles son algunas formas divertidas de aprender a dibujar?
- ¿Cuál es la mejor fuente gratuita para aprender la unidad en Linux?
- ¿Qué debo aprender primero para mejorar mis conocimientos de programación?
- ¿Cuáles son los mejores sitios para aprender lenguajes de programación?
- ¿Qué idiomas se recomiendan para que los maestros aprendan?
Más adelante, realice una inmersión profunda en el ecosistema Hadoop y aprenda varias herramientas dentro del ecosistema Hadoop con sus funcionalidades. Por lo tanto, aprenderá cómo crear una solución personalizada de acuerdo con sus requisitos.
¿Qué es Big Data?
Big Data es un término usado para una colección de conjuntos de datos que son grandes y complejos, que es difícil de almacenar y procesar utilizando las herramientas de administración de bases de datos disponibles o las aplicaciones tradicionales de procesamiento de datos. El desafío incluye capturar, curar, almacenar, buscar, compartir, transferir, analizar y visualizar estos datos.
Se caracteriza por 5 V’s.
VOLUMEN: El volumen se refiere a la ‘cantidad de datos’, que crece día a día a un ritmo muy rápido.
VELOCIDAD: la velocidad se define como el ritmo en el que las diferentes fuentes generan los datos todos los días. Este flujo de datos es masivo y continuo.
VARIEDAD: Como hay muchas fuentes que contribuyen a Big Data, el tipo de datos que generan es diferente. Puede ser estructurado, semiestructurado o no estructurado.
VALOR: Es bueno tener acceso a big data, pero a menos que podamos convertirlo en valor, es inútil. Encuentre ideas en los datos y saque provecho de ellos.
VERACIDAD: Veracidad se refiere a los datos en duda o incertidumbre de los datos disponibles debido a la inconsistencia y falta de datos de los datos.
¿Qué es Hadoop y su arquitectura?
Los componentes principales de HDFS son NameNode y DataNode .
NombreNodo
Es el demonio maestro que mantiene.
y gestiona los DataNodes (nodos esclavos). Registra los metadatos de todos los archivos almacenados en el clúster, por ejemplo, la ubicación de los bloques almacenados, el tamaño de los archivos, los permisos, la jerarquía, etc. Registra todos y cada uno de los cambios que se producen en los metadatos del sistema de archivos.
Por ejemplo, si un archivo se elimina en HDFS, el NameNode lo grabará inmediatamente en el EditLog. Regularmente recibe un informe de Heartbeat y de bloque de todos los DataNodes en el clúster para asegurar que los DataNodes estén activos. Mantiene un registro de todos los bloques en HDFS y en qué nodos se almacenan estos bloques.
DataNode
Estos son demonios esclavos que se ejecutan en cada máquina esclava. Los datos reales se almacenan en DataNodes. Son responsables de atender las solicitudes de lectura y escritura de los clientes. También son responsables de crear bloques, eliminar bloques y replicarlos de acuerdo con las decisiones tomadas por NameNode.
Para el procesamiento, utilizamos YARN (Yet Another Resource Negotiator). Los componentes de YARN son ResourceManager y NodeManager .
Administrador de recursos
Es un componente de nivel de clúster (uno para cada clúster) y se ejecuta en la máquina maestra. Administra los recursos y programa las aplicaciones que se ejecutan sobre YARN.
NodeManager
Es un componente de nivel de nodo (uno en cada nodo) y se ejecuta en cada máquina esclava. Es responsable de administrar los contenedores y monitorear la utilización de los recursos en cada contenedor. También realiza un seguimiento del estado del nodo y la gestión de registro. Se comunica continuamente con ResourceManager para mantenerse actualizado.
Puede realizar un procesamiento paralelo en HDFS utilizando MapReduce.
Mapa reducido
Es el componente central del procesamiento en un ecosistema de Hadoop, ya que proporciona la lógica de procesamiento. En otras palabras, MapReduce es un marco de software que ayuda a escribir aplicaciones que procesan grandes conjuntos de datos utilizando algoritmos distribuidos y paralelos dentro del entorno de Hadoop. En un programa MapReduce, Map () y Reduce () son dos funciones. La función Mapa realiza acciones como filtrado, agrupación y clasificación. Mientras que la función Reducir agrega y resume el resultado producido por la función de mapa. El resultado generado por la función Mapa es un par de valores clave (K, V) que actúa como entrada para la función Reducir.
Puede pasar por este video para comprender Hadoop y su arquitectura en detalle.
Instale Hadoop Single Node y Multi Node Cluster
Luego puede ir a través de este blog de Hadoop Ecosystem para aprender Hadoop Ecosystem en detalle.
También puede ver este video tutorial de Hadoop Ecosystem.
Chispa
Apache Spark es un marco para el análisis de datos en tiempo real en un entorno informático distribuido. El Spark está escrito en Scala y fue desarrollado originalmente en la Universidad de California, Berkeley. Ejecuta cálculos en memoria para aumentar la velocidad del procesamiento de datos a través de Map-Reduce. Es 100 veces más rápido que Hadoop para el procesamiento de datos a gran escala mediante la explotación de cálculos en memoria y otras optimizaciones. Por lo tanto, requiere un alto poder de procesamiento que Map-Reduce.
Como puede ver, Spark viene con bibliotecas de alto nivel, que incluyen soporte para R, SQL, Python, Scala, Java, etc. Estas bibliotecas estándar aumentan las integraciones sin problemas en el flujo de trabajo complejo. Sobre esto, también permite que varios conjuntos de servicios se integren con él como MLlib, GraphX, SQL + Data Frames, Streaming Services, etc. para aumentar sus capacidades.
También puede ver este video de preguntas de la entrevista de Hadoop para tener una idea de las preguntas formuladas en una entrevista de Hadoop.
Edureka proporciona una buena lista de videos Tutorial de Hadoop. Le recomendaría que lea esta lista de reproducción de videos del tutorial de Hadoop , así como la serie de blogs del Tutorial de Hadoop . También puede ver el tutorial de Spark en la lista de reproducción del video y la serie de blogs de Spark . Su aprendizaje debe estar alineado con la certificación Hadoop .