Red de conocimiento informático - Conocimiento del nombre de dominio - ¿Cómo maneja la plataforma de contenedores de microservicios el almacenamiento de big data?

¿Cómo maneja la plataforma de contenedores de microservicios el almacenamiento de big data?

En general, el proceso de la plataforma de big data desde la implementación de la plataforma hasta el análisis de datos se puede dividir en los siguientes pasos:

1. Instalación del sistema Linux

La versión de código abierto del sistema Redhat es. Generalmente se utiliza --CentOS como plataforma subyacente. Para proporcionar una base de hardware estable, realice RAID para el disco duro y monte nodos de almacenamiento de datos; las configuraciones deben realizarse de acuerdo con la situación real. Por ejemplo, puede optar por implementar RAID2 para el nodo de nombre HDFS para mejorar su estabilidad y colocar el almacenamiento de datos y el sistema operativo en diferentes discos duros para garantizar el funcionamiento normal del sistema operativo.

2. Instalación de componentes/plataforma informática distribuida

Actualmente, la mayoría de los sistemas distribuidos nacionales y extranjeros utilizan la serie Hadoop de sistemas de código abierto. El núcleo de Hadoop es el sistema de archivos distribuido HDFS. En base a esto, los componentes de uso común incluyen Yarn, Zookeeper, Hive, Hbase, Sqoop, Impala, ElasticSearch, Spark, etc.

La primera es la ventaja de utilizar componentes de código abierto: 1) Hay muchos usuarios y las respuestas a muchos errores se pueden encontrar en línea (esta suele ser la parte del desarrollo que consume más tiempo). 2) Los componentes de código abierto son generalmente gratuitos y relativamente fáciles de aprender y mantener. 3) Los componentes de código abierto generalmente se actualizan constantemente y para proporcionar los servicios de actualización necesarios también se requieren operaciones de actualización manual. 4) Dado que el código es de código abierto, puede modificarlo libremente si se producen errores. Si surgen errores, el código fuente se puede modificar y mantener libremente.

A continuación, hablaremos brevemente de las funciones de cada componente. Los administradores de recursos de clústeres distribuidos generalmente usan Yarn, cuyo nombre completo es "Otro negociador de recursos". Los repositorios de datos distribuidos más comunes son Hive, que puede usar consultas SQL, pero es un poco menos eficiente, y Hbase, que puede leer filas casi en tiempo real. La importación y exportación de bases de datos externas requiere el uso de Sqoop. Sqoop importa datos de bases de datos tradicionales como Oracle y MySQL a Hive o Hbase. Tanto Yarn como Hbase requieren su soporte. Puede implementar consultas SQL eficientes. ElasticSearch es un motor de búsqueda distribuido. Para el análisis, el más popular actualmente es Spark "Ignore otros aquí, como MapReduce y Flink básicos". Además del núcleo, Spark también tiene bibliotecas como ML lib, Spark Streaming, Spark QL y GraphX, que pueden satisfacer casi todas las necesidades comunes de análisis de datos.

Vale la pena mencionar que cómo combinar orgánicamente los componentes anteriores para completar una determinada tarea no es una tarea sencilla y puede llevar mucho tiempo.

3. Importación de datos

La herramienta de importación de datos mencionada anteriormente es Sqoop, que se puede utilizar para importar datos desde archivos o bases de datos tradicionales a plataformas distribuidas. Hive. o se puede importar a datos Hbase."

4. Análisis de datos

El análisis de datos generalmente incluye dos etapas: preprocesamiento de datos y análisis de modelado de datos.

El preprocesamiento de datos sirve para preparar el análisis de modelado posterior. La tarea principal es extraer las características disponibles de datos masivos y crear tablas grandes y amplias. Este proceso puede utilizar Hive SQL, Spark QL e Impala.

El análisis de modelado de datos es el modelado de características/datos extraídos mediante preprocesamiento para obtener los resultados deseados. Como se mencionó anteriormente, esto se hace mejor usando Spark. Los algoritmos de aprendizaje automático de uso común (como Bayes simple, regresión logística, árboles de decisión, redes neuronales, TFIDF, filtrado colaborativo, etc.) se han incluido en la biblioteca ML, lo que los hace más convenientes para llamar.

5. Visualización de resultados y API de salida

La visualización generalmente muestra el tipo de resultado o parte de los datos originales. Generalmente hay dos situaciones: visualización familiar de filas y visualización de búsqueda de columnas.

Aquí, para mostrar según la plataforma de big data, debe usar ElasticSearch y Hbase. Hbase proporciona búsquedas rápidas de filas en "milisegundos". ElasticSearch puede implementar índices de columnas y proporcionar búsquedas rápidas de columnas.

Principales problemas en la construcción de plataformas:

1. Estabilidad Estabilidad

Teóricamente, la estabilidad es la mayor ventaja de un sistema distribuido, porque puede Se utilizan varias máquinas. para completar la copia de seguridad de datos y la operación del programa para garantizar la estabilidad del sistema. Pero precisamente porque la plataforma de big data se implementa en varias máquinas, la configuración incorrecta también se convertirá en el mayor problema. Uno de los problemas encontrados fue que Hbase a menudo se bloqueaba, principalmente debido a la mala calidad de los discos duros adquiridos. La corrupción del disco duro a veces puede causar problemas de sincronización de Hbase, lo que provoca que el servicio Hbase se detenga. Debido a la mala calidad del disco duro, el servicio se detenía de vez en cuando, consumiendo mucho tiempo. Conclusión En comparación con las supercomputadoras, las plataformas de big data son ciertamente baratas, pero la configuración aún debe ser mayor que la de las computadoras domésticas.

2. Escalabilidad Escalabilidad

Cómo expandir rápidamente nuevas máquinas basadas en la plataforma de big data existente es un tema clave para las aplicaciones en la computación en la nube y otros campos. En las aplicaciones 2B reales, a veces es necesario agregar o eliminar máquinas para satisfacer nuevas demandas. Cómo expandir rápidamente la plataforma manteniendo las funciones originales es un problema común en las aplicaciones prácticas.

Lo anterior es el resumen del autor de su práctica de proyecto. Todo el proceso de construcción de la plataforma requiere mucho tiempo y mano de obra y no puede ser completado por una o dos personas. Hará falta mucho tiempo para que un equipo pequeño realmente haga esto.

En la actualidad, existen muchas empresas nacionales y extranjeras que brindan servicios de construcción de plataformas de big data. Las famosas extranjeras incluyen Cloudera, Hortonworks, MapR, etc. También hay empresas nacionales como Huawei, Millward Data y Starlink. También hay empresas que brindan servicios de construcción de plataformas de big data, como datos de celebridades, etc. Además, algunas empresas como Millward Data también ofrecen soluciones integradas para empresas de big data de nivel básico o empresas sin capacidades de análisis de big data, buscar la cooperación con estas empresas es la mejor manera de resolver problemas.

Para algunas empresas que son pequeñas o que actualmente tienen poca acumulación de datos, creo que no es necesario construir este sistema, basta con alquilar temporalmente AWS y Alibaba Cloud. Para las empresas con grandes cantidades de datos pero necesidades de análisis de datos relativamente simples, pueden comprar directamente software o servicios como Tableau, Splunk, HP Vertica o IBM DB2.

-