Red de conocimiento informático - Material del sitio web - ¿Qué lenguaje se necesita para el aprendizaje de big data?

¿Qué lenguaje se necesita para el aprendizaje de big data?

1. Java es el lenguaje necesario para big data.

Se puede decir que Java es el lenguaje de programación más básico para big data. Según mi experiencia a lo largo de los años, tengo. Entra en contacto con una gran parte de Big Data. Todos los desarrolladores fueron transferidos del desarrollo web Java (por supuesto, esto no es absoluto. Incluso he visto desarrolladores de productos transferidos al desarrollo de Big Data, lo cual es totalmente contrario).

En primer lugar, debido a que la esencia de big data no es más que el cálculo, la consulta y el almacenamiento de datos masivos, el desarrollo en segundo plano puede entrar fácilmente en contacto con escenarios de aplicación de acceso a grandes datos.

El segundo es el lenguaje Java. Es una ventaja natural, porque muchos componentes de big data se desarrollan en Java, como HDFS, Yarn, Hbase, MR, Zookeeper, etc. En el entorno de producción, primero debe aprender Java y luego leer el código fuente.

Hablando de masticar el código fuente, por cierto, definitivamente será difícil al principio. Debes tener un conocimiento profundo de los componentes en sí y del lenguaje de desarrollo. Espere hasta pasar esta etapa. Cuando se acostumbre a mirar el código fuente para resolver problemas, encontrará que el código fuente es realmente delicioso.

Scala y Java son muy similares. Ambos son lenguajes que se ejecutan en JVM y pueden llamarse entre sí sin problemas durante el proceso de desarrollo. La mayor parte de la influencia de Scala en el campo de big data proviene de las estrellas de la comunidad, Spark y Kafka. Todos deberían saber estas dos cosas (las presentaré en múltiples dimensiones en artículos más adelante). el campo. Popularidad en este campo.

Python y Shell

Shell no debería necesitar demasiada introducción. Se usa con mucha frecuencia y es una habilidad general imprescindible para los programadores. Python se usa más comúnmente en el campo de la minería de datos y en la escritura de algunos scripts diarios complejos que son difíciles de implementar en el shell.

2. Computación distribuida,

¿Qué es la computación distribuida? La computación distribuida estudia cómo dividir un problema que requiere una gran potencia informática en muchas partes pequeñas, luego asigna estas partes a muchos servidores para su procesamiento y finalmente combina estos resultados de cálculo para obtener el resultado final.

Por ejemplo, es como si el líder del equipo dividiera un proyecto grande, pidiera a cada miembro del equipo que desarrollara una parte y finalmente fusionara el código de todos para completar el proyecto grande. Suena simple, pero quienes realmente han participado en el desarrollo de grandes proyectos deben saber que hay mucho en juego.

Las herramientas actualmente populares para la informática distribuida incluyen:

Herramientas sin conexión Spark, MapReduce, etc.

Herramientas en tiempo real Spark Streaming, Storm, Flink, etc.

Más adelante hablaremos sobre las diferencias entre estas cosas y sus respectivos escenarios de aplicación.

3. Almacenamiento distribuido

Los sistemas de almacenamiento en red tradicionales utilizan servidores de almacenamiento centralizados para almacenar todos los datos. Las capacidades de IO de un único servidor de almacenamiento son limitadas, lo que se convierte en un cuello de botella en el rendimiento del sistema. la confiabilidad y seguridad del servidor no pueden satisfacer las necesidades, especialmente para aplicaciones de almacenamiento a gran escala.

Un sistema de almacenamiento distribuido almacena datos de forma dispersa en múltiples dispositivos independientes. Adopta una estructura de sistema escalable, utiliza múltiples servidores de almacenamiento para compartir la carga de almacenamiento y utiliza servidores de ubicación para localizar la información de almacenamiento. No solo mejora la confiabilidad, disponibilidad y eficiencia de acceso del sistema, sino que también es fácil de expandir.