
Google ha desarrollado un gran número de tecnologías, algunas de ellas le han permitido llegar hacia donde está y desde ahí expandirse, hasta que algunos temamos que el monopolio en el que se ha convertido acabe en algo mucho peor…
En este caso toca loar las virtudes de estas tecnologías:
o Pagerank: calcula la importancia de una página Web. Este proceso de cálculo no es conocido y se basa en diversos factores, aunque fundamentalmente se basa en que una página web es más importante que otras páginas que enlazan con ella, y cuantos más links externos tiene hacia ella. Más detalles del algoritmo aquí.
Algunos malpensados creemos que además se aplican reglas comerciales, conocéis el caso de eBay?…antes de que los problemas eBay-Google eBay salía en la primera página siempre, luego no…este mismo blog es un ejemplo, os aseguro que desde que “criticamos” a Google nuestra relevancia ha bajado (de verdad).
o Google File System: GFS es un sistema de ficheros distribuidos escalable capaz de soporte Gigabytes y aplicaciones intensivas en datos. Soporta tolerancia a fallos y alto rendimiento corriendo sobre Hardware muy barato. Detalles aquí.
o BigTable: Google lo utiliza como almacenamiento de datos una estructura llamada Bigtable.Bigtable no es una base de datos relacional, si no un mapa de datos distribuido, persistente y multidimensional. En Bigtable se pueden almacenar cadenas en un índice (clave de la fila + clave de la columna + timestamp).
o Bigtable se basa en el GFS y se almacena en una estructura de datos inmutables llamada SSTable. Más información aquí.
o Memcache: Googleofrece en la Google App Engine memcache como un mecanismo de almacenamiento en caché. Memcache es un memoria distribuida de alto rendimiento pensado principalmente para un acceso rápido a los resultados en caché de consultas de almacén de datos. Pensándolo bien tampoco es para tanto :).
o MapReduce: MapReduce es un modelo de programación pensado para resolver los problemas de tratamientos de grandes tamaños de datos. El modelo de programación se basa en la definición de un map y una función reduce. Podéis leer más aquí.
La función map procesa pares clave/valor que generan un conjunto diferente intermediario de clave/valor.
La función reducecombina todos los valores intermedios asociados con la clave intermedia.
Creo que este modelo de programación tendrá bastante importancia en el futuro inmediato, Java tiene una implementación de este modelo en Apache
. Espero poder escribir pronto algunas líneas sobre Hadoop.
Se podrían añadir algunas tecnologías más, como
,
o
, pero creo que ninguna de ellas ha sido novedosa, y que se han aprovechado de la situación de Google, o creéis que Chrome hubiera acaparado tanta cuota si en lugar de Google lo hubiera desarrollo Opera Software ;).

Deja un comentario