Tengo una maestría en Business Analytics, aprendí SQL, R y machine learning, pero no Hadoop o Spark. ¿Los necesito para conseguir un trabajo como analista de datos?

No, no los necesitas para conseguir un trabajo.

¿No tener tales habilidades reducirá sus posibilidades de conseguir algunos trabajos? Si.

Aprender Hadoop no es necesario. Aprender qué herramientas se utilizan en Hadoop es una buena idea. Spark está muy de moda en este momento. La mayor parte del bombo es real. Aprender a distribuir computación para modelos complejos es valioso.

Python se está volviendo muy popular rápidamente para hacer análisis de datos complejos. Tiene tantos kits de herramientas como scipy, matplotlib y su propia implementación del proyecto R solo por nombrar algunos. Además, es una gran herramienta de utilidad. Tiene la mejor manera de interactuar programáticamente con AWS en mi opinión, así como herramientas muy livianas para cualquier otra base de datos importante. Puede que hoy no se requiera que los analistas modernos tengan estas habilidades, pero eso, en mi opinión, cambiará en un futuro cercano.

Dado que su pregunta es muy específica, es decir, si puede obtener un trabajo, la respuesta es: solo necesita aprenderla si es una ventaja para un determinado trabajo. En otras palabras, las compañías usan diferentes tecnologías y diferentes soluciones, por lo que para una compañía que usa mucho SAS, el conocimiento de Hadoop no será valioso. Pero para una empresa que usa Hadoop, lo será. Hay dos formas de hacerlo. Puede decidir, basándose en la heurística y la intuición, si desea aprenderlos (eso incluye las intuiciones de otras personas, como las personas en Quora), o puede analizar las ofertas de trabajo para puestos que le interesan para ver si estas tecnologías a menudo se solicitan. De cualquier manera, está bien, ya que conocer una tecnología menos popular aún puede ponerlo en una posición ventajosa.

A2A.

Mi respuesta general a prácticamente todas las preguntas sobre “¿Debo aprender una tecnología?” no es. Debes aprender a resolver problemas. La pieza de tecnología vendrá una vez que haya descubierto cuál es su problema y cómo debe resolverlo.

Las tecnologías cambian constantemente. Y están cambiando más rápido que nunca. Cada empresa usa una pila diferente. Concéntrese menos en aprender tecnología, enfóquese más en resolver problemas. Un perón que “conoce a Spark” es inútil para casi cualquier compañía. Una persona que puede resolver un problema comercial y tiene las habilidades tecnológicas para aplicar una solución es extremadamente valiosa.

Hay muchos trabajos relacionados con conjuntos de datos que pueden caber en la memoria de una sola máquina, por lo que R, SQL y Machine Learning son más que suficientes. Incluso en el mundo de Big Data, a menudo puede reducir el tamaño de su conjunto de datos primero y luego modelar en una sola máquina. Hadoop y Spark son compatibles con la sintaxis tipo SQL (a través de Hive y SparkSQL respectivamente) para que pueda usar sus habilidades existentes para eso.

Recomendaría aprender los conceptos básicos de Hadoop y Spark, sin embargo, aprender a usarlos especialmente en términos de Python o Java no es necesario.

Hay una interfaz R para Spark, sin embargo, ni siquiera es un ciudadano de segunda clase en términos de idiomas, por lo que no lo usaría para nada demasiado serio. Entonces, si realmente quieres aprender Spark, también deberías aprender Python. En lugar de Java, recomendaría Scala, sin embargo, ambos tienen una curva de aprendizaje más pronunciada que Python.

¿Qué trabajo estás solicitando? ¿Ese trabajo dice específicamente que necesitas saber Hadoop o Spark o Storm? ¿Puede hacer todo lo que ellos necesitan que haga mejor que todos los demás, y comprender el argumento comercial y el uso comercial para el análisis? ¿Crees que puedes resolver los problemas que tiene el empleador? ¿Tienes la mentalidad correcta o el conocimiento matemático requerido? Si puede hacer todo el trabajo sin conocer Hadoop o Spark o Python o Java (aunque una búsqueda rápida en Google para “integración r hadoop” sugiere que puede hacer las cosas de esa manera). Más importante que todo lo que es, ¿puedes elegir el algoritmo correcto para hacer el trabajo? ¿Puedes hacer el trabajo?