PARASITOSIS INTESTINAL en Pediatría, Enfermería y Familiar II
Exposicion
1. FACEBOOK
EQUIPO 5
De los santos Aguilar Adriana
Moreno Barragán Carlos Alberto
Ortega Torres Bárbara Sofía
Rivera Gutiérrez Reyna de los Ángeles
2. facebook
Facebook es un sitio web de redes sociales creado por Mark Zuckerberg y fundado junto a Eduardo
Saverin, Chris Hughes y Dustin Moskovitz. Originalmente era un sitio para estudiantes de la
Universidad de Harvard.
Función y servicio que ofrece
Grupos
Paginas
El Muro
Aplicativos entre ellos los Juegos.
DNS
3. SERVIDOR WEB
LAS CIFRAS DE FACEBOOK, ¿CUÁN GRANDE ES?
• Facebook tiene más de 500 millones de usuarios activos.
• Facebook actualmente es la página web más visitada a nivel mundial, con sus 690 mil millones
de páginas vistas (pageviews) por mes.
• Facebook actualmente abarca el 9.5% de todo el tráfico de Internet, superando por poco a
Google.
• Cada día hay 100 millones de nuevas fotos subidas por los usuarios.
• La infraestructura de Facebook debe ser capaz de soportar servicios de plataforma para más
de 1 millón de páginas web, y 550.000 aplicaciones que usan la plataforma Facebook Connect.
DATOS DE LOS SERVIDORES DE FACEBOOK
Facebook opera con por lo menos 9 Centros de Datos (granjas con miles de servidores) en ambas
costas de Estados Unidos, todos alquilados, y esta en proceso de construir su primer Centro de Datos
propio en Oregon. Si bien el 70% de los usuarios de Facebook son de países extranjeros, ninguno de
los Centros de Datos de la compañía se encuentra fuera de Estados Unidos.
Cada Centro de Datos alberga a miles de servidores.
Facebook alquila el espacio de los Centros de Datos por venta al por mayor de terceras partes. Estos
proveedores de infraestructura y terrenos, construyen los Centros de Datos (incluyendo un suelo
elevado especial, los sistemas de energía y de enfriamiento) y luego alquilan todo exclusivamente a
Facebook. En el modelo de esta venta al por mayor, una vez que Facebookpide un nuevo Data Center,
lo obtiene en 5 meses, lo cual es una ventaja contra los 12 meses que se va a requerir en construir su
nuevo Centro de Datos en Oregon. Esto le ha permitido a Facebook escalar bien sus recursos para su
creciente mercado.
En Enero del 2010 Facebook anunció sus planes de construir su propio Data Center, un gigante edificio
en Prineville, Oregon.
Facebook actualmente alquila 6 Centros de Datos en Silicon Valley, ubicados en Santa Clara y en San
Jose, y al menos 1 en San Francisco. La empresa también alquila por lo menos 3 Centros de Datos
en Ashburn, Virginia.
En cada Centro de Datos donde funciona Facebook, generalmente se consume de 2.25 megawatts y
6 megawatts de energía.
SERVIDORES DE FACEBOOK EN PRINEVILLE, OREGON
Estos son dos renders en 3D de lo que será el Centro de Datos de Facebook en Oregon:
¿CUÁNTOS SERVIDORES TIENE FACEBOOK?
4. En Junio del 2010 se supo que Facebook funcionaba con 60.000 servidores en total, distribuidos en
todos sus Data Centers, una creciente cifra comparada con los 30.000 que usaba en el 2009 o los
10.000 del 2008.
Esta gráfica muestra el crecimiento de la cantidad de servidores que ha experimentado Facebook..
¿QUÉ PROGRAMAS USA FACEBOOK?
Facebook fue desarrollado con software de código abierto. El sitio esta escrito primordialmente en PHP
y sus bases de datos estan en MySQL. Para acelerar el sitio, el equipo de ingenieros de Facebook
desarrolló un programa llamado HipHop, que se encarga de transformar el código PHP sen C++
ganando así sus beneficios de rendimiento.
¿CUÁNTO GASTA FACEBOOK EN SUS SERVIDORES?
Se especula que en el 2010 Facebook ha gastado en el alquiler de servidores alrededor de $50
millones de dólares al año, y en el 2009 gastó $20 millones.
Estos $50 millones al año incluyen solo los gastos de sus alquileres, el nuevo edificio en construcción
de Prineville les costará entre $180 a $215 millones de dólares.
¿CUÁNTA GENTE SE NECESITA PARA CADA CENTRO DE DATOS?
Como es lo normal en muchas granjas de servidores de enorme tamaño, la infraestructura de los
Centros de Datos de Facebook es altamente automática y se la opera con muy poco personal,
usualmente no más de 20 a 50 personas por sitio.
Con esto Facebook tiene como 1 ingeniero por cada millón de usuarios, aunque las últimas mejoras
en la tecnología elevaron la comparación a 1 ingeniero por cada 1,2 millones de usuarios.
Facebook se creó un 4 de febrero, quiero ofrecerles una lista en la que enumero siete de las
tecnologías de que sostienen su plataforma de software.
5. SISTEMA OPERATIVO
1. Linux
Aquí sería más preciso decir que se trata del ecosistema Linux, en particular de LAMP:
Linux, el sistema operativo que administrar los recursos de cada servidor en Facebook,
Apache, el servidor de páginas web,
MySQL, el manejador de bases de datos, el que almacena de forma estructurada los datos de
los usuarios,
Y PHP, el lenguaje de programación que automatiza la creación de páginas web.
Facebook no sería posible sin Linux.
2. Cassandra
Y, ¿qué es lo que hace? Además de Facebook, sitios como Reddit y Twitter también usan Cassandra
para almacenar los datos de los usuarios de forma estructurada y distribuida. Se dice que Cassandra
pertenece a una segunda generación de bases de datos, a un paradigma llamado NoSQL. Facebook
hizo público el código de Cassandra al tiempo que lo entregó a la comunidad Apache en el 2008.
Facebook no podría escalar sin Cassandra.
3. Hive
Este es un proyecto auspiciado por la Fundación Apache. Entre sus varias funcionalidades destaca
una fundamental para Facebook: el análisis de grandes conjuntos de datos sobre los cuales es posible
inquirir, buscar información en ellos.
Facebook no podría ofrecer su servicio de búsqueda sin Hive.
4. Thrift
Podría decirse que Thrift es un kit de herramientas, uno especializado en lainteroperabilidad de
lenguajes de programación. A través de Thrift Facebook ha combinado el uso de lenguajes tan distintos
entre sí como C++, Java, Python, PHP, Ruby, Haskell, y más, a lo largo de todos sus equipos de
desarrollo.
Facebook no podría crear servicios de software a la velocidad que requiere sin la ayuda de Thrift.
5. Scribe
Lo que hace Scribe es muy sencillo: es un sistema de distribución y registrode mensajes en los
servidores, tolerante a fallas y capaz de funcionar sobre una gran cantidad de equipos.
Facebook gestiona con mayor facilidad sus miles de servidores gracias a Scribe.
6. HipHop for PHP
6. Este es uno de mis favoritos. La parte visible de Facebook está escrita en su mayoría con lenguaje
PHP, por lo que su desempeño es crítico para todo el sistema. Siendo un lenguaje interpretado tiene
limitaciones de desempeño que los lenguajes compilados no tienen. HipHop for PHP es un
transformador de código PHP en código C++, por lo que el resultado es un software de igual
funcionalidad, pero optimizado para un alto desempeño. De hecho, Facebook afirma que gracias a
HipHop for PHP usa hasta 50% menos CPU que antes.
Facebook sería más lento sin la ayuda de HipHop para PHP.
7. Tornado
Este es otro kit de herramientas de software, en este caso especializado en losservicios web
escalables --es decir, los que crecen sin afectar el desempeño o las funciones del sistema--. En
particular, es capaz de gestionar miles de conexiones web de forma simultánea y veloz. Está escrito
en el lenguaje Python y su diseño está basado en el que tiene FriendFeed.
S.G.B.D
RocksDB está diseñado para cargas de trabajo embebido, aunque el equipo ha dicho que puede
usarse para una base de datos cliente/servidor. RocksDB está construido sobre LevelDB para ser
escalable y correr en servidores que tengan muchos núcleos. Está diseñado para almacenar los datos
de manera eficiente además.El proyecto RocksDB empezó en Facebook como un experimento para
desarrollar una base de datos eficiente que use almacenamiento flash para las cargas en el servidor.
Es una biblioteca en C++ que puede ser usada para guardar llaves y valores en donde dichos
elementos pueden tener un tamaño arbitrario de bytes. RocksDB puede afinarse para correr en datos
que estén en memoria pura, en memoria flash, discos duros o HDFS. Soporta varios algoritmos de
compresión y tiene buenas herramientas para apoyo en producción y depuración.
El equipo de Facebook empezó por medir los parámetros de LevelDB, pero no cumplió con las
necesidades de las cargas de trabajo de Facebook. De acuerdo al equipo de RocksDB: “Los resultados
del benchmark fueron en un principio asombrosos, pero nos dimos cuenta pronto que estos resultados
eran para bases de datos que eran más pequeñas que el tamaño de la RAM en la máquina de prueba,
en donde toda la base de datos cabía en una página del caché del sistema operativo usado. Cuando
medimos el desempeño con una base de datos cinco veces más grande en la memoria principal, los
resultados fueron lamentables”.
El equipo entonces desarrolló RocksDB e hizo las pruebas correspondientes, mostrando que su
sistema sobrepasa las posibilidades de LevelDB. El equipo indica: “Hallamos que el proceso de
compactación en un solo hilo de ejecución de LevelDB era insuficiente para las cargas del servidor.
Notamos frecuentemente problemas al escribir en LevelDB haciendo que el 99% de la latencia fuese
muy grande. Encontramos que mapear un archivo en el caché del sistema operativo introduce cuellos
de botella en el desempeño para las lectuuras. No pudimos hacer que levelDb consumiese todas las
entradas y salidas ofrecidas por el almacenamiento Flash”.
El benchmark y sus resultados se reportan en GitHub. El código fuente también está en ese sitio. El
ingeniero de Faceboook, Dhruba Borthakur dio una plática introductoria sonbre RocksDB en la
conferencia Data @ SACLE 2013 y se puede tener acceso a su plática (en pdf).
7. Los usos sugeridos para RocksDB son aplicaciones con acceso a bases de datos de baja latencia,
tales como aplicaciones que detecten spam o que necesiten rápido acceso a conjuntos grandes de
datos. RocksDB puede ser usado en aplicaciones que consultan datos de Hadoop en tiempo real.
Navegador
Marc Andreessen, fundador de Netscape Navigator, ha vuelto al panorama de Internet para formar
parte de un proyecto (en fase de desarrollo) denominado Rockmelt, que podría resultar un navegador
para Facebook, el cual incluirá su propio acortador de direcciones para navegar por Internet, al mismo
tiempo que se mantiene disponible las funciones de la red social más popular del momento.
Entre el equipo que integran el proyecto del navegador para Facebook, aparecen nombres como Joe
Hewitt (desarrollador de la aplicación de Facebook para iPhone), Blake Ross (desarrollador de Firefox)
y parte del equipo de trabajadores de la empresa propietaria de Facebook.
Andreessen personalmente no ha invertido en el desarrollo de Facebook, pero sí es el cuarto miembro
de la Junta Directiva de la red social. Como veis, los cabecillas del proyecto del navegador para
Facebook son expertos veteranos de Internet, por lo que sí Rockmelt se convierte en lo que sus
propietarios quieren que sea, podremos estar ante una nueva y potente competencia hacia Internet
Explorer y Firefox.