Métodos de procesamiento de datos
Qué es big data: Big data se refiere a una colección de datos que no se pueden capturar, administrar y procesar dentro de un cierto rango de tiempo utilizando herramientas de software convencionales. Requiere nuevos modelos de procesamiento para tener capacidades más sólidas. Activos de información diversificados y de alto crecimiento para la toma de decisiones, el descubrimiento de conocimientos y las capacidades de optimización de procesos.
Las características de 5V del big data: volumen, velocidad, variedad, valor y veracidad. Puedes encontrarlas todas en Baidu.
Proceso de procesamiento de big data:
1. Es la recopilación de datos y la construcción de un almacén de datos. La recopilación de datos significa enterrar los datos a través del front-end, el registro de la interfaz llamando al flujo de datos y el rastreo de la base de datos. , cliente, cargué los datos yo mismo y guardé los datos de información básica en varias dimensiones. Sentí que algunos de los datos eran inútiles (al principio, solo pensé en las funciones y algunos datos no se recopilaron. Más tarde, me regañaron). por el jefe).
2. Limpieza/preprocesamiento de datos: simplemente procese los datos recibidos, como convertir IP en dirección, filtrar datos sucios, etc.
3. Una vez que tenga los datos, puede procesarlos. Hay muchas formas de procesar los datos, que generalmente se dividen en procesamiento fuera de línea y procesamiento en tiempo real, lo que significa procesamiento regular todos los días. Los más utilizados incluyen maxComputer de Alibaba, MapReduce y el procesamiento fuera de línea utilizan principalmente Storm, Spark y Hadoop. A través de algunos marcos de procesamiento de datos, los datos se pueden calcular en varios KPI. Acerca de las funciones. Lo principal es construir varias dimensiones de datos. Los datos básicos deben ser completos y reutilizables, de modo que varios KPI se puedan mostrar en cualquier combinación en una etapa posterior.
4. Presentación de datos. Es inútil hacer que los datos se visualicen para lograr MVP, pero no es adecuado ajustarlo en el tiempo. Para el desarrollo ágil de Scrum, la presentación de datos está bien. Utilice datav, Shence, etc. Si la interfaz es buena, puede ignorarla y dibujar la página usted mismo.
Recopilación de datos:
1. La recopilación de datos por lotes significa ir a la base de datos regularmente todos los días para capturar instantáneas de los datos. El maxComputer que utilizamos se puede configurar para realizar una copia de seguridad de una instantánea de la base de datos. una vez al día según las necesidades. Cómo realizar copias de seguridad, cómo configurar fuentes de datos y cómo configurar errores están documentados en maxComputer. Para utilizar maxComputer, debe registrarse en los servicios de Alibaba Cloud. 2. La interfaz en tiempo real solicita la recopilación de datos. Puede utilizar logHub, dataHub y tecnología de procesamiento de datos de flujo. DataHub tiene las características de alta disponibilidad, baja latencia, alta escalabilidad y alto rendimiento.
Alto rendimiento: admite escritura de datos de hasta nivel T por día en un solo tema (Tema), y cada fragmento (Fragmento) admite hasta 80 millones de escritura a nivel de registro por día.
Tiempo real: a través de DataHub, puede recopilar datos generados de varias maneras en tiempo real y procesarlos en tiempo real.
Idea de diseño: primero escriba un SDK para llamar a todos. Los servicios de backend de la empresa registran el estado de la llamada de la interfaz, abren un grupo de subprocesos y almacenan continuamente los datos registrados en dataHub y logHub. La premisa es configurar la estructura de la tabla de dataHub para recibir datos.
3. puntos, estos deben configurarse de acuerdo con las necesidades comerciales y también se transmiten al almacén de datos a través de la transmisión de datos, como se muestra en el segundo paso anterior.
Procesamiento de datos:
Una vez completada la recopilación de datos, los datos se pueden procesar, que se pueden dividir en procesamiento por lotes fuera de línea y procesamiento en tiempo real.
1. Procesamiento por lotes sin conexión maxComputer, que es un servicio de procesamiento de big data proporcionado por Alibaba, es una solución de almacenamiento de datos de nivel TB/PB rápida y totalmente administrada. Escriba scripts de procesamiento de datos y establezca tiempo de ejecución. condiciones de ejecución de tareas, puede generar los datos que necesita todos los días de acuerdo con sus requisitos
2. Procesamiento en tiempo real: usando tormenta/chispa, actualmente solo tormenta, hay muchos conceptos básicos de strom on Internet, permítanme hablar sobre el proceso general aquí. Primero, configure la fuente de datos para leer mientras se inicia la tormenta, la fuente de datos se leerá continuamente.
Pico, utilizado para leer datos. Tupla: La unidad básica de entrega de un mensaje, entendido como un grupo de mensajes, es una Tupla. Stream, utilizado para transmitir flujos, es una colección de tuplas. Bolt: un componente que acepta datos y luego realiza el procesamiento, donde los usuarios pueden realizar las operaciones que deseen. Puede escribir lógica de negocios en él. Storm no guardará los resultados. Debe escribir su propio código para guardarlos y combinarlos para formar una topología. Stream fluye los datos a través de la fuente de datos, los procesa a través del código Bolt escrito por él mismo y luego los guarda en cualquier lugar. Hay tutoriales en Internet sobre cómo instalar e implementar Storm y cómo configurarlos. la fuente de datos, por lo que no entraré en detalles aquí.
Visualización de datos: después de hacer todo lo anterior, finalmente puedo mostrarlos de manera intuitiva. Dado que la tecnología de front-end no es buena, tomé prestada la plataforma de visualización de terceros datav que admite dos modos de lectura de datos. El primero es directo. Lea la base de datos y descubra los datos que calculó a través de SQL. Debe configurar la fuente de datos después de leer los datos, formatearlos de acuerdo con el formato dado y mostrarlos. @jiaoready @jiaoready Capítulo 1 El segundo formulario usa interfaces. Puede configurarlo directamente como api en el área de datos, completar la dirección de la interfaz y no entraré en detalles aquí.