¿Cuál es la configuración recomendada para una aplicación de Big Data?

En primer lugar, Cassandra es una elección increíble personalmente.
Estoy trabajando en ello durante casi un año y recomendaría hacerlo cualquier día.
La consulta simple, los componentes internos extremadamente confiables y la configuración lista para implementación lo convierten en la primera opción NoSQL DataStore.

Cassandra vs Hadoop no es un debate.
Ambos están destinados a hacer diferentes tareas.

Cassandra es un almacén de datos NoSQL puro y Hadoop simplemente no es tan bueno para manejar escrituras frecuentes.
Lea más sobre hadoop aquí Hadoop: solo lo básico para los novatos de Big Data (SpringOne2GX 2013)

En caso de que tenga un caso de uso donde necesite hadoop con Cassandra, puede considerar Apache HBase (Almacén de datos con Hadoop integrado).
Por favor ve a través de esto:
HBase – Inicio de Apache HBase ™

PD: No sé si respondí tu pregunta adecuadamente, solo compartí lo poco que sé sobre Page.
Y yo mismo estoy trabajando en Cassandra con una aplicación basada en Spring y cassandra está basada en Java, así que no te preocupes por Java / Scala. Lo harás bien. 🙂

Su arquitectura suena bien, y no puedo sugerirle una mejor sin conocer detalles sobre sus datos, arquitectura, otros sistemas y profesionales que los operarán.

También depende de los recursos que tenga. Para el motor de análisis, recomiendo HAWQ, pero necesita un servidor maestro dedicado y segmentos que se ejecuten en sus nodos de datos, lo que lo convierte en el motor de análisis distribuido más rápido que existe, y es totalmente compatible con ANSI SQL.

Para el front-end, Cassandra puede ser una buena opción, pero Cassandra es una base de datos AP en el teorema CAP, por lo que significa que dos solicitudes idénticas ejecutadas al mismo tiempo pueden obtener resultados diferentes. Si está de acuerdo con sus requisitos, siga adelante, si no, un buen enfoque al elegir las herramientas es verificar cómo funcionará en condiciones fronterizas. Existe un amplio espectro de herramientas disponibles, y probablemente una satisfará mejor sus requisitos que las otras.

Algo que no mencionó son sus herramientas de ingestión, así que permítame sugerirle Spring Cloud Dataflow que, en mi opinión, es el nuevo estándar mundial en transmisión de datos, y su conocimiento de Java será útil.

Otra cosa que no mencionó es un motor de análisis en tiempo real, y dado que mencionó scala, spark y spark streaming son buenas opciones allí.

Y, por último, permítanme recomendar a Ambari para configurar todo esto.

Bueno, tengo sugerencias ligeramente diferentes. En lugar de Cassandra, puedes intentar ir a Spark. Es totalmente compatible con HDFS, funciona completamente en la memoria, lo que lo hace de 10 a 100 veces más rápido que los sistemas basados ​​en HDFS tradicionales. Y puede escribir código directamente en Scala / Python. Puede consultarlo fácilmente con una sintaxis muy similar a SQL, lo que facilita a los desarrolladores de bases de datos / analistas de negocios extraer datos.

Si su motor de análisis puede vivir con datos de pocas horas, puede incorporar una capa OLAP en el medio para construir el almacén de datos y los cubos relacionados para las agregaciones.