[No estoy seguro cuando dice que los “datos de resultados” se almacenan en MySQL, ¿es eso DESPUÉS de que ha pasado por hadoop? Suena como es]
Mis mayores preocupaciones con su arquitectura son las siguientes
1) Hadoop: Hadoop es excelente para analizar cantidades MASIVAS de datos en paralelo, pero está muy orientado a lotes (se enfoca en horas, no minutos) y especialmente con los datos de votación, querrá ver las tendencias lo antes posible.
- ¿Se está automatizando la creación de código de software ahora en los Estados Unidos?
- ¿Qué tipo de herramienta de depuración se puede implementar para que un depurador de software se vuelva eficiente en cuanto al tiempo para depurar un problema?
- ¿Qué es el código de calidad y cómo se ve?
- Lenguajes de programación: ¿Cuáles son las diferencias entre Rust y Swift?
- ¿Cuáles son las recomendaciones de cursos de secundaria para una eventual especialización de CS?
Sugeriría usar algo como la tormenta de Twitter en su lugar
Tormenta, computación distribuida y tolerante a fallas en tiempo real
Twitter lo usa para calcular tendencias y otras cosas “en tiempo real”.
Probablemente necesitará algún sistema de colas con él: Kafka está recibiendo mucha prensa y se usa bastante con Storm
Kafka y Storm: procesamiento de eventos en tiempo real
y
Infraestructura a escala: Apache Kafka, Twitter Storm & Elastic Search (ARC303) | AWS re: Invent 2013
2) No se habla de ningún plan de almacenamiento en caché fuera del clúster de base de datos.
Planearía implementar algún tipo de caché más cerca del nivel medio (por ejemplo, memcache), por lo que todas las lecturas de datos SIEMPRE están en contra del caché (usando MySQL o lo que sea en caso de un corte de energía, tipo de DR). Si solo se trata de datos de resultados, y no de datos sin procesar, probablemente no sean tan grandes varios cientos de distritos por candidatos por distrito. Otros numeros. . . .
3) Su arquitectura general parece muy genial y sexy (por ejemplo, Akka, Angular.js). Si ya tienes experiencia con ellos genial. De lo contrario, es posible que desee pensar de manera más simple (por ahora) hasta que su arquitectura de fondo esté lista para la carga.
¡La mejor de las suertes! ¡Me encantaría saber cómo funciona! 🙂