Vous êtes sur la page 1sur 6

Bases de Datos en las nubes. HBASE.

Si ests planeando crear una aplicacin que potencialmente deba escalar a millones de usuarios, o simplemente quieres crear una aplicacin que te permita escalar a pequea escala sin invertir en costosos servidores, debes contemplar la base de datos HBase del proyecto Hadoop de la Fundacin Apache (los mismos del popular Servidor Web Apache). HBase es una base de datos abierta que implementa el concepto de BigTable, que si recuerdan es la tecnologa que permite que Google escale toda su infraestructura a centenares de miles de servidores de bajo costo de una manera homognea, sin las restricciones de una base de datos relacional (como MySQL, Oracle o MS SQL Server). Ms especficamente, HBase es una base de datos distribuida que permite escalar casi linealmente con simplemente agregar ms servidores al sistema. Para esto HBase puede utilizar opcionalmente una tecnologa llamada HDFS (HadoopDistributed File System) que bsicamente es el anlogo del GFS (Google File System), que no es ms que un fichero de archivos distribuidos. Con esta arquitectura es posible lograr no solo altos niveles de rendimiento, sino que adems altos niveles de redundancia en datos, ya que a cierto nivel los datos estn distribuidos de manera redundante similar a como los datos son distribuidos en un sistema de discos duros con tecnologa RAID 5 por ejemplo (aunque esta funcionalidad tengo que aun verificarla personalmente, pero sepan que es parte al menos del concepto original). Algo importante a notar aqu es que si algo hemos aprendido del Internet, y en particular de Aplicaciones Web, es que en muchos casos la demanda de usuarios es impredecible, en donde una pequea empresa con una gran idea puede de la noche a la maana recibir millones de visitas, y para eso mejor estar preparado que perder esas visitas, y es ah en donde se le ver la importancia a HBase. Sin embargo, HBase no es solo una base de datos altamente escalable, sino que adems es un nuevo paradigma que por fin quizs deje atrs las bases de datos relacionales en muchos casos tpicos.

Fusion Tables, Google trae la Base de Datos a la Nube del Internet.


No hace poco les habl de HBase, un nuevo tipo de base de datos que implementa los mismos conceptos bsicos que Google utiliza en sus cientos de miles de servidores para crear aplicaciones que escalan masivamente a millones de usuarios. Hoy les hoy a hablar de una tecnologa un poco relacionada y que Google recientemente hizo pblico en forma preliminar y experimental llamada Fusion Tables, que no es nada mas ni nada menos que una sper potente herramienta para trabajar con grandes volmenes de datos multidimensionales, en donde los datos los subes a la nube de Internet de Google, y despus los manejas en tiempo real a tu antojo. Para el que tenga varios aos lidiando con bases de datos avanzadas, en particular en entornos empresariales altamente demandantes en volumen de datos y sofisticados mtodos de minar esos datos, esto es posible que les suene familiar, y la razn es que esta tecnologa, as de inocente como se ve, est orientada a agarrar la yugular de una basecita de datos que todos conocemos como Oracle. Efectivamente, lo que Fusion Tables hace es permitirte subir grandes cantidades de datos en formato tabulado (es decir, estructurado en filas y columnas), y despus que los subes te ofrece una multitud de herramientas para que manipules y despliegues esos datos. Otro cualidad potente de Fusion Tables es que puedes compartir los datos con quien desees, e incluso permitir que otras personas manipulen los datos en tiempo real a la misma vez que tu. Incluso puedes compartir solo parte de los datos o de los resultados que generas, y si lo deseas lo puedes hacer todo pblico para que cualquiera tenga acceso a lo que haces. En todo momento, Fusion Tables incluso permite ingresar comentarios para que varias personas debatan los datos que ven en ese momento y llegar ms rpido a conclusiones. Y como si fuera poco, los resultados que obtienes de tus datos los puedes ingresar en cualquier otra pgina web, para que estos sean actualizado en tiempo real, de manera similar a como uno obtiene un poco de cdigo HTML de YouTube para uno poder insertar los videos en cualquier pgina web.

Pero recuerden, que en todo momento los datos tuyos estn en la nube de servidores de Google, lo que significa que puedes tener acceso a ellos desde cualquier navegador web desde cualquier parte del mundo sin instalar absolutamente nada. Incluso Google te da la libertad de poder volver a sacar tus datos de la nube de Google y descargarlos de vuelta (junto con los resultados) a tu PC local, si eso hace que duermas mejor por las noches. Lo revolucionario de todo esto, no es solo esta funcionalidad que Google te ofrece, sino el hecho de que todo reside en la nube, un concepto que cambia en 180 grados el concepto que uno tiene a la hora de analizar grandes volmenes de datos, en donde las primeras preguntas que surgen son (1) cul base de datos elijo?, (2) cunto cuesta?, (3) cuanto tiempo nos tomar instalar y crear la base de datos, y (4) cunto tiempo nos tomar simular todo esto? Ahora Google simplemente hace que ponderemos una sola pregunta: Cmo entiendo mejor mis datos?, obviando por completo los detalles tcnicos y yendo directamente al punto importante: En ser productivo y obtener respuestas. Por ahora Google lo que desea es retroalimentacin de los usuarios de Fusion Tables, pues por ahora es solo un experimento en sus Google Labs, y por tanto existen ciertas restricciones (por ejemplo, el monto mximo por juego de datos es de 100MB, y la cantidad de datos mximo por usuario es de 250MB). Este es un excelente momento para unirte al proyecto, pues en esta etapa tienes mas influencia sobre hacia donde Google llevar este proyecto, ya que por ahora es un proyecto bastante desconocido, inclusive entre la comunidad de diseadores de bases de datos.

Como Crear la Nube.


Muchas veces nuestra empresa necesita alguna solucin de software y est pensando en adoptar algo en la nube de forma que sea accesible independientemente de si estamos en ese momento en la empresa o no. Pero existen ciertos prejuicios que pueden llevar a desistir en el intento de adoptar este tipo de soluciones. Las empresas se resisten a dejar los datos importantes fuera de sus instalaciones, por eso hoy vamos a comentar cuales son las alternativas para construir nuestra propia nube. Muchas empresas tienen un espacio web contratado con el objeto de alojar su pgina web. Este espacio muchas veces es ms que suficiente para la pgina y se podra aprovechar para instalar algn software que permita el trabajo en la nube y sea interesante para la empresa trasladarlo a la nube, qu tal el CRM? Claro que no podremos instalar cualquier tipo de

software sino que debemos optar por soluciones basadas en Apache, MySQL y PHP pensadas directamente para operar en la nube. Muchas soluciones de cdigo libre se basan en este tipo de solucin con lo cual casi cualquier tipo de software es posible encontrarlo bajo este modelo y cada da son ms los desarrollos que utilizan esta frmula. En la nube no nos sirve cualquier software para instalar, sino que debemos buscar un programa que se gestione desde el navegador web, admita la creacin de usuarios para poder gestionarlo con un mnimo de seguridad y a ser posible admita la opcin de trabajar de forma colaborativa. Ya se que muchos de vosotros estis pensando que igualmente el espacio web que se contrata es limitado y si instalamos una aplicacin nos puede llevar a exceder el trfico de datos contratado con lo cual la opcin de tener un buen precio se nos va de las manos. Tenemos otra opcin que es crear nuestro propio servidor web, para lo cual tendremos que tener una serie de servicios extra si no los tenemos ya contratados, tanto a nivel de redes como de software instalado en el servidor. A nivel de redes lo fundamental es tener una buena velocidad de subida. El problema con el que nos encontramos aqu es que el principal operador del pas ofrece una pauprrima velocidad de subida de 320 kb tericos, con lo cual habra que buscar otras soluciones, del tipo SDSL, con igual ancho de banda de subida que de bajada. Hay soluciones que puede complementar correctamente a nuestra ADSL y no son demasiado costosas, con lo cual configurado la salida con las dos lneas podemos tener una velocidad de subida medianamente decente. La otra cuestin importante a nivel de redes es pedir una direccin IP fija, para que se establezcan correctamente las comunicaciones, aunque esta opcin no es del todo imprescindible si que es muy recomendable para no tener problemas. Esto no resulta muy caro, ya que cuestan unos 10 o 12 euros ms al mes, pero todo poco a poco va sumando. Hay que hacer un balance entre lo que nos ahorramos del espacio web contratado para alojar la pgina corporativa y el incremento de costes para montar nuestro servidor. Por ltimo a nivel de software debemos tener instalados en el servidor y administrar los servicios de Apache, MySQL o cualquier otra base de datos similar que nos demande el software que llevaremos a la nube y PHP. Estos programas son gratuitos pero tienen unos gastos de administracin que no podemos desdear. Por otro lado est la cuestin del tiempo que estamos dedicando a estos menesteres y que sustraemos a la administracin de nuestro negocio.

La parte positiva de montar nuestro propio servidor web para alojar tanto nuestra pgina corporativa como nuestras aplicaciones en la nube la tenemos en el espacio prcticamente ilimitado para nuestros archivos y el control sobre los mismos siempre en nuestras instalaciones. En la parte negativa tendremos que resultar un poco ms caro si tenemos que optar por aumentar el ancho de banda de subida y una IP fija, as como el tiempo que perderemos en administrar los servicios del servidor. Es cuestin de echar cuentas y ver que opcin puede ser la mejor para nuestra empresa siempre teniendo muy claras las necesidades de la misma. Y vosotros, os habis planteado la posibilidad de tener vuestra propia nube?

Universidad de Managua.

El ms alto nivel.
Trabajo de Ingeniera de Software II. Bases de Datos en las nubes.

Docente. Ing. Pablo Sevilla.

Turno. Sabatino.

Aula. # 9.

Alumno. Jorge Zapata Moraga.

Sbado, 04 de junio de 2011.

Vous aimerez peut-être aussi