Apache Ignite (también conocido como Ignite In-Memory Data Fabric) es una Plataforma Java en memoria, distribuida y de alto rendimiento para procesar grandes volúmenes de datos en tiempo real y de forma muy sencilla (sintaxis SQL).
Si tuviera que definirlo con dos palabras lo definiría así:
Ignite=Hazelcast+Siddhi CEP
Aunque aún es un proyecto en incubación ofrece un conjunto de características muy interesantes, como puede verse en la imagen:
De hecho esto permite ver Ignite como un conjunto de componentes integrados para procesamiento en memoria de grandes volúmenes de datos (CEP, consultas SQL, computación, Grid, integración con Hadoop,…)
- Advanced Clustering Los nodos Ignite se autodescubren lo que permite redimensionar dinámicamente este. Incluso pueden conectar entre redes teniendo nodos locales y nodos remotos.
- Data Grid (JCache) Soporta escalabilidad horizontal. Los datos pueden ser locales, replicados y particionados. Permite consultar estos datos siguiendo sintaxis SQL (incluso JOINS distribuidas). Además se le puede atacar vía driver JDBC (jdbc:ignite://<hostname>:<port>/<cache_name>)
- Streaming & CEP Ignite Streaming soporta procesamiento en streaming (hasta millones de eventos por segundo)
- Compute Grid soporta computación distribuida permitiendo paralelizar tareas
- Service Grid permite desplegar servicios creados por el usuario en el cluster
- Ignite File System IGFS es un sistema de ficheros en memoria que permite trabajar como si tuviéramos ficheros y directorios.
- Distributed Data Structures soporta Set y Queues distribuidas
- Distributed Messaging soporta comunicación entre nodos basadas en Tópicos que pueden agruparse en rupos.
- Distributed Events Permite recibir notificaciones sobre eventos que suceden en el cluster
- Hadoop Accelerator ofrece componentes para integrar con Hadoop
Este ejemplo típico de Contar palabras nos da una idea de la potencia de Ignite:



Deja un comentario