Qué SGBD (Sistema de Gestor de BD) y tecnologías utilizan: Facebook, Twitter, YouTube, Google, Ube
1. Curso: base de datos
Alumno: Riveros de la cruz Antony
Código: 1415210172
Profesor: Malca vicente Eddi christian
2. Que es un SGBD?
Un Sistema Gestor de Bases de Datos (SGBD) o DBMA (DataBase
Management System) es una colección de programas cuyo objetivo es servir de
interfaz entre la base de datos, el usuario y las aplicaciones. Se compone de un
lenguaje de definición de datos, de un lenguaje de manipulación de datos y de un
lenguaje de consulta. Un SGBD permiten definir los datos a distintos niveles de
abstracción y manipular dichos datos, garantizando la seguridad e integridad de los
mismos.
3. Ejemplos de SGBD.
Algunos ejemplos de SGBD son Oracle, DB2, PostgreSQL, MySQL, MS SQL Server,
etc.
Un SGBD debe permitir:
• Definir una base de datos: especificar tipos, estructuras y restricciones de datos.
• Construir la base de datos: guardar los datos en algún medio controlado por el
mismo SGBD
• Manipular la base de datos: realizar consultas, actualizarla, generar informes.
4. Que tecnologías utilizan ?
Ellos utilizan MySQL, bases de datos relacionados con open source, para manejar sus datos con
números masivos y extraordinarios en cantidad de transacciones y usuarios.
Veamos los números de de las base de datos de MySQL de Twitter:
Más de 140 millones de usuarios activos
4629 tweets por segundo (llegan a 25,000 en horas pico)
3 millones de registros generados por día
400 millones de tweets por día, replicados 4 veces.
5. Veamos los números de las bases de datos MySQL de Facebook
Mas de 950 millones de usuarios activos
Registros leídos por segundo: 450 millones (en hora pico)
Queries por segundo: 13 millones (en hora pico)
Tiempo de respuesta de consultas: 4ms para leer, 5ms para escribir
Registros modificados por segundo: 3.5 millones (en hora pico)
6. En lo que respecta a los datos de gran demanda, como los del buscador, Google emplea un
sistema tipo Big Data, NoSQL llamado BigTable.
Que SGBD usa GOOGLE .
BigTable almacena cualquier información como una cadena de caracteres ordenados en 3
dimensiones: filas, columnas y timestamp. No es un sistema de base de datos relacional sino
más bien un mapa multidimensional distribuido. La BigTable está diseñada para escalar en el
rango de los petabytes a través de cientos o miles de máquinas y hace muy sencillo agregar
más servidores al sistema e inmediatamente empezar a utilizar los nuevos recursos sin
necesidad de reconfigurar.
7. Servidores web
•NetScalar es usado para balancear la carga y la cache del contenido estático.
•Apache funciona con mod_fast_cgi.
•Las peticiones son encaminadas para ser tratadas con Python por un servidor de aplicaciones.
•El servidor habla con varias bases de datos y otras fuentes de información para recoger toda la
información y generar la página HTML.
•Pueden aumentar el nivel de escalabilidad web añadiendo más máquinas.
•La parte de Python habitualmente NO es el cuello de botella, pasa la mayor parte de su tiempo
bloqueado en los "RPCs".
•Python permite un desarrollo rápido, flexible y "deployment". Esto resulta critico para seguir
siendo competitivos.
8. •Normalmente los tiempos de carga de las páginas son inferiores a 100ms.
•Se usa psyco, un compilador dinámico python⇒C junto a JIT para enfocar la
optimización de los bucles internos.
•Para actividades con un consumo de CPU intensivo como cifrar, se usan
extensiones en C.
•Algo de HTML cacheado y previamente generado para renderizar bloques.
•Se usa poco cache en la base de datos.
•Los objetos formados en Python son cacheados.
•Parte de los datos son calculados y enviados a cada aplicación para entonces ser
cacheados en su memoria local. Esto es una estrategia poco habitual. La cache
más rápida está en tu servidor de aplicaciones y no le lleva mucho tiempo enviar
datos precalculados a todos los servidores. Sólo hace falta un agente que vigile
los cambios, precalculos y envíos.