¿Qué puede hacer Java por un científico de datos que Python / R no puede?

Hadoop está escrito en Java. Eso significa que puedes:

  • Escribir trabajos de MapReduce de vainilla. Si desea saber por qué la gente generalmente ya no hace eso, puede consultar este Tutorial de MapReduce. Es una pesadilla repetitiva de Java. Hoy tenemos Spark, que es mucho mejor en la mayoría de los casos y tiene API para Python y R. Incluso si aún insiste en usar MapReduce, puede escribir trabajos en Python con la biblioteca mrjob.
  • Modificar el código fuente de Hadoop. Pero, ¿por qué querrías hacer eso a menos que seas un colaborador del proyecto Hadoop?

Aparte de eso, no veo muchos usos para Java como científico de datos. Claro, Spark tiene una API Java, pero también tiene API para Python y R.

Personalmente, no me molestaría en aprender Java a menos que lo necesite específicamente para algo, lo cual es poco probable para un científico de datos en estos días.

2 cosas

  • El ecosistema de Hadoop: Core Hadoop está escrito en Java y varias herramientas de Big Data están escritas en lenguajes Java o JVM (Spark, Kafka, Mesos, etc.). El desarrollo siempre es más fácil en el lenguaje nativo que en los envoltorios desarrollados por la comunidad.
  • Velocidad: no es común en la mayoría de los trabajos de ciencia de datos, pero si trabaja en tecnología publicitaria, por ejemplo, licitación programática o finanzas, como el comercio algorítmico, debe usar Java o C ++ para mantenerse al día con la velocidad de los eventos. Los lenguajes de script como Python o R no lo cortarán.

Bueno, necesitará un conocimiento de Java si tiene la intención de hacer algunas manipulaciones basadas en proyectos en Hadoop (ya que Java es su idioma nativo). Entonces, todavía se supone que Java ayuda a acelerar algunos procesos algorítmicos. Esas son las dos cosas que conozco y supongo que es por eso que Java se está quedando obsoleta rápidamente entre los científicos de datos, ya que Python / R llenaría fácilmente el resto de los espacios.

Se usó para darnos una plataforma de almacenamiento y computación distribuida bastante popular y escalable en uso hoy en día: Hadoop .

Como mucha gente ha dicho, Hadoop está escrito en Java y, por lo tanto, podría ayudar a un científico de datos a aprender Java.

Eso es cierto, pero quiero hablar sobre Java desde una perspectiva de modelado. Por lo general, una vez que realiza el análisis del problema en cuestión, debe pensar en implementar el algoritmo en producción. Eso se puede hacer usando python para conjuntos de datos lo suficientemente pequeños, pero cuando desee implementar soluciones / modelos más robustos y escalables en la producción que puedan hablar / integrarse con las otras aplicaciones existentes, es mejor usar lenguajes Java o JVM como Scala, maravilloso, etc.

No es que sea un gran fanático de Java ni nada, pero la mayor parte del framework Hadoop está escrito en Java. Si quieres hackearlo, probablemente necesites saber algo de Java.

More Interesting

¿Vale la pena organizar un concurso de dinero de Kaggle?

Cómo ingresar a la genómica o la biología computacional como científico de datos

¿Qué es una explicación intuitiva de una regresión multivariada?

¿Cuál es la diferencia entre Data Warehousing y Big Data Analytics?

¿Cómo se compara el programa inmersivo de ciencia de datos de la Asamblea General con los cursos de ciencia de datos, inteligencia artificial y aprendizaje automático / aprendizaje profundo de los MOOC?

¿Es cierto que la mayoría de los científicos de datos tienen al menos un título de maestría o doctorado?

¿Será un buen paso cambiar de carrera de pruebas de software a científico de datos con R, Tableau y sobresalir después de 9 años de experiencia?

¿Cómo hizo el experto en aprendizaje automático Michael Jordan, de UC Berkeley, la transición de una licenciatura en psicología a las matemáticas y la informática, y qué motivó estas transiciones?

¿Cuál es el alcance futuro de la ciencia de datos con Python en India?

¿Debo ser un experto en el lenguaje Python para aprender ciencia de datos?

¿Cuáles son las características de big data?

En análisis en línea, ¿cómo se prueban 'miles de puntos de datos'?

¿Qué es la ciencia de datos? ¿Cuál es el alcance? ¿El análisis de datos y el análisis comercial son lo mismo? ¿Necesitamos estudiar programación?

¿El análisis exploratorio de datos no es necesario para el aprendizaje profundo?

Cómo avanzar mi habilidad R al siguiente nivel