Ultimamente estoy escuchando el termino de cloud computing, o "computación desde la nube", muy a menudo, pero ¿que significa?
Empecemos desde el comienzo, para poder entender mejor.
Podríamos decir que las primeras computadoras, haya por el comienzo de la matemática, eran los humanos, que resolvían sus tareas mediante el uso de cálculos matemáticos.
Si la humanidad hubiera quedado ahi, no estaríamos donde estamos. Por suerte, apareció la tecnología, fue evolucionando, y emergieron de esta evolución diferentes "plataformas" que a su vez fueron evolucionando. El mainframe fue destronado por las minicomputadoras, que a su vez fueron reemplazados por las computadoras personales, que estan siendo reemplazadas por las laptops, que a su vez tienen como competencia a los dispositivos portatiles, o smartphones.
Cada una de las distintas arquitecturas listadas en el parrafo anterior, hace que nos acerquemos cada vez mas a una arquitectura totalmente distribuida. De esto es lo que se trata Cloud Computing.
No solo se trata de una de las palabras o frases de moda, creadas por la consultora de turno, sino que creo que detras de esas dos palabras se encuentra un cambio en la forma de pensar y desarrollar los sistemas.
¿De que estas hablando, Willis?
Cloud computing es un termino relacionado con el uso y desarrollo de aplicaciones basadas en internet. En esta forma de pensar los sistemas, cada una de las distintas capacidades que forman el desarrollo de una pieza de software se presenta como un servicio "en la nube", y una aplicación puede formarse o puede aprovechar estas capacidades en principio públicas, para poder cumplir con el fin para el que fue definida o creda.
Según encontré en internet, buscando información sobre este tema, la IEEE dice "Cloud Computing es un paradigma en el cual la información es almacenada en forma permamente en servidores ubicados en Internet, y cacheados en forma temporal en clientes que incluyen desktops, centros de entretenimientos, notebooks, handhelds, etc.". Lo que es importante ver en esta frase, es el hecho de que la información - o la capacidad utilizada - esta publicada en algun servidor de internet, sin importar demasiado donde este. Solo es importante que esta capacidad cumpla con un SLA necesario. Ahi es donde entra en juego conceptos de SaaS (Software as a Service), que busca definir la forma en que se deben cumplir los SLA para publicar capacidades como servicios en internet, pero como segundo plano, ya que como primer objetivo busca definir una nueva forma de negocios.
Volviendo al tema, cloud computing se trata de pensar a los sistemas como una composición de capacidades provistas por uno o muchos sistemas dispersos por internet, en forma de servicios (notese que digo servicios, y no web services), de forma tal que la composición de todas estas capacidades den un nuevo significado a las mismas, dando mas valor que todas las partes por separado. Asi, por ejemplo, podríamos tener una aplicación que esta compuesta por un servicio de google maps para mostrar el mapa de una determinada ciudad, otro de wheather channel, para poder mostrar como esta el clima en dicha ciudad, y porque no, fotos de picassa, dependiendo de la ciudad que se estre mostrando.
¿Capacidades?
Hay que tener en cuenta que no estamos hablando solo de capacidades software, sino que estas pueden dividirse en diferentes categorias: de infraestructura (almacenamiento, procesamiento, etc. como salesforce.com), de aplicación (como los ejemplos listados anteriormente), y la forma en que estas capacidades se presentan al mundo (aca tenemos las aplicaciones compuestas, que a su vez presentan capacidades, por ejemplo, facebook).
Conclusión
Creo que se viene una especie de nueva revolución en el desarrollo de sistemas (es mas, ya lo estamos empezando a vivir), por lo que tenemos que tener presente, a la hora de comenzar un nuevo desarrollo, todas las capacidades disponibles y utilizables que tenemos, de forma tal que podamos tomar una decisión adecuada con respecto a que funcionalidad "tercerizar" y que otra desarrollar ad-hoc.
Vendrán también discusiones, como por ejemplo las diferentes regulaciones que apareceran, asi como las preocupaciones acerca de la seguridad, como se cobrarán los servicios prestados, etc. Veremos mas adelante que pasa con esto. Por ahora, es algo a tener en cuenta.
jueves, 20 de noviembre de 2008
Suscribirse a:
Comentarios de la entrada (Atom)
0 comentarios:
Publicar un comentario