Cloud-Nanny necesitaba encontrar una arquitectura que permitiera comprobar cientos de miles de solicitudes web y decidir si permitirlas o bloquearlas sin un impacto notable en la experiencia de navegación del usuario final. Se fijó como objetivo un tiempo de procesamiento de no más de 40 microsegundos para buscar un sitio en su base de datos y tomar una decisión.
Martijn Rooks, director general de Cloud-Nanny, comenta: “IBM Db2® on Cloud era una solución ideal para comprobar rápidamente las solicitudes con nuestra base de datos de sitios incluidos en la lista negra y blanca; es muy rápido para realizar este tipo de consultas y, como plataforma basada en la nube, se puede escalar fácilmente. Lo mejor de todo es que IBM lo proporciona como servicio gestionado, lo que significa que podemos centrarnos en desarrollar nuestra solución, en lugar de dedicar tiempo a tareas de administración de bases de datos de bajo nivel".
Buscar sitios en una base de datos es bastante simple, pero ¿qué sucede si un niño está intentando acceder a un sitio que aún no está en la base de datos? Ahí es donde entra en marcha la parte inteligente de la solución. Con una gran colección de sitios web, Cloud-Nanny entrenó un modelo adaptado a sus necesidades, utilizando algoritmos de aprendizaje automático que se ejecutan en IBM® Analytics for Apache Spark. La potencia del clúster Spark se utiliza para crear el clasificador de sitios web, que puede clasificar el contenido en tiempo real y categorizarlo, por ejemplo, como un sitio de juegos, un sitio de videos o un sitio que contiene material para adultos.
A continuación, la solución compara los resultados con el perfil existente de la familia para comprobar si la categoría particular del sitio aparece como correcta o está prohibida para el dispositivo o el usuario que realiza la solicitud. Si el algoritmo de categorización está muy seguro de que el sitio pertenece a una categoría permitida o prohibida, la solicitud se permite o se bloquea. Por otro lado, si está menos seguro sobre la clasificación, puede alertar a los padres y pedirles que tomen una decisión. Los resultados de esta decisión parental se retroalimentan al modelo, ayudándole a aprender y mejorar con el tiempo.
"La parte inteligente de la solución es que se basa en la idea de que la seguridad en Internet no es una cuestión de blanco o negro: hay muchas zonas grises, y cada padre tendrá una opinión diferente sobre lo que es o no aceptable para cada uno de sus hijos", dice Martijn Rooks. Además, es probable que esos puntos de vista cambien con el tiempo: sitios que no son apropiados para un niño de 10 años pueden serlo para uno de 14. El aprendizaje automático con Spark es tan potente, porque significa que nuestra solución puede adaptarse y evolucionar junto con las necesidades de la familia".
Cloud-Nanny pudo llevar la solución desde la prueba de concepto inicial hasta un servicio listo para la producción en solo 14 meses. La compañía atribuye este rápido ciclo de desarrollo a su decisión de construir la solución en IBM® Bluemix.
"Cuando diseñamos la prueba de concepto inicial para el producto Cloud-Nanny, usamos otro proveedor de alojamiento", dice Martijn Rooks. “Nos llevó dos meses instalar y configurar la infraestructura, antes de que pudiéramos siquiera comenzar el trabajo de desarrollo real. Con IBM® Cloud, pudimos ponernos en marcha casi de inmediato. Una vez que haya aprendido cómo funciona la plataforma y lo fácil que es reunir diferentes servicios, puede crear una aplicación básica en un par de días".
"Diseñar un producto y llevarlo al mercado en 14 meses de principio a fin es algo que habría sido casi inpensable durante unos años, y con un proyecto tan avanzado, utilizando tecnologías de vanguardia como Spark, es especialmente impresionante. En total, estimamos que poner en marcha un proyecto con Bluemix es al menos un 50 por ciento más rápido que con un entorno de desarrollo de software más tradicional”.