Professional Documents
Culture Documents
autonoma en la Nube
[Resumen Extendido]
Divyakant Agrawal, Amr El Abbadi, Sudipto Das, y Aarn J. Elmore
Departamento de Ciencias de la
Computacin de la Universidad de
California en Santa Brbara Santa
Brbara, CA 93106, EE.UU.
{Agrawal, amr, Sudipto, aelmore} @ cs.ucsb.edu
http://www.cs.ucsb.edu/~dsl
Introduccin
Este trabajo es financiado parcialmente por subvenciones NSF III 1018637 y 1053594 del
SNC y un Premio de Relaciones NEC Labs de Amrica Universidad.
Agrawal et al.
los usuarios, tambin han dado subir a algunos desafos y complejidades, tanto desde
la perspectiva del usuario, as como del proveedor de servicios o la perspectiva del
sistema. Desde el punto de vista-del usuario, los usuarios tienen que navegar a travs
de una red de cmputo mltiple y plataformas de almace- namiento para hacer su
trabajo. Un reto para el usuario final importante es hacer un seguimiento de todas las
aplicaciones y servicios de informacin en sus / sus mltiples dispositivos y
mantenerlos sincronizados. Una solucin natural para superar esta complejidad y
simplificar la vida computacionalmente y ricos en datos de un usuario final es
impulsar la gestin y adminis- tracin de la mayora de las aplicaciones y servicios al
ncleo de la red. La justificacin es que a medida que las tecnologas de redes
maduran, desde la perspectiva de un usuario que accede a una aplicacin en su / su
dispositivo personal ser indistinguible de acceso a la aplicacin a travs del cable de
banda ancha o red inalmbrica. En resumen, la tendencia actual es la tecnologa para
alojar aplicaciones de usuario, servicios y datos en el ncleo de la red que se
denomina metafricamente como la nube.
La transformacin anterior que se ha traducido en las aplicaciones y servicios para
el usuario estn migrando de los dispositivos de los usuarios a la nube ha dado lugar a
iCal y de investigacin desafos nolgicos sin precedentes. Anteriormente, una
aplicacin o servicio de interrupcin fue tpicamente limita a un pequeo nmero de
usuarios. Ahora, cualquier perturbacin tiene consecuencias globales Making el
servicio no est disponible para una comunidad de usuarios de todo. En particular, el
reto ahora
es el desarrollo de plataformas de aplicaciones centradas en servidor que estn
disponibles para un nmero limi- prcticamente unlim- de usuarios 24 7 a travs de
Internet utilizando una gran cantidad de tecnologas basadas en la web modernos. La
experiencia adquirida en la ltima dcada de algunos de los lderes de la tecnologa
que proporcionan servicios a travs de Internet (por ejemplo, Google, Amazon, Ebay,
etc.) indican que las infraestructuras de aplicaciones en el contexto de nubes deben ser
altamente fiable, disponible y escalable. La fiabilidad es un requisito clave para
asegurar el acceso continuo a un servicio y
se define como la probabilidad de que una aplicacin o sistema dado estarn
funcionando cuando sea necesario como se mide durante un perodo determinado de
tiempo. Del mismo modo, la disponibilidad es el porcentaje de veces que un sistema
dado estar funcionando como se requiere. El requisito de escalabilidad surge debido
a las fluctuaciones de carga constante que son comunes en el contexto de los servicios
basados en la Web. De hecho se producen estas fluctuaciones de carga a diferentes
frecuencias: diaria, semanal y durante perodos ms largos. La otra fuente de
variacin de la carga se debe al crecimiento impredecible (o disminucin) en el uso.
La necesidad de un diseo escalable es asegurar que el sistema de capaci- dad se
puede aumentar mediante la adicin de recursos de hardware adicionales siempre que
est justificado por las fluctuaciones de carga. Por lo tanto, la escalabilidad tanto ha
surgido como un requisito crtico, as como un desafo fundamental en el contexto de
la nube.
En el contexto de la mayor parte de aplicaciones basadas en la nube y las
implementaciones de servicios, los datos y por lo tanto el sistema de gestin de base
de datos (DBMS) es una tecnologa integral com- ponente en la arquitectura global
del servicio. La razn de la proliferacin de DBMS, en el espacio de computacin en
la nube es debido a la DBMS xito y, en particular, Relational DBMS han tenido en el
modelado de una amplia variedad de aplicaciones. Los ingredientes clave de este
xito se debe a muchos ofrecen funciones DBMS: funcionalidad global (modelado diversos tipos de aplicacin utilizando el modelo relacional que es intuitiva y
relativamente simple), consistencia (que trata de cargas de trabajo simultneas sin
preocuparse por los datos convertirse en fuera de -sync), rendimiento (tanto de alto
rendimiento, baja latencia y ms de 25 aos de ingeniera), y la fiabilidad (garanta de
la seguridad y la persistencia de los datos en la presencia de diferentes tipos de fallas).
A pesar de este xito, durante la ltima dcada
Escalabilidad
1
+1-
N
garantizado ser colocalizarse y una transaccin slo puede filas de acceso en un grupo
de filas en particular. Una particin de base de datos es una coleccin de tales grupos
de filas. Esta estructura de esquema tambin permite la divisin dinmica eficiente y
fusin de particiones. En contraste con estos dos tipos de tablas, tablas globales son
tablas de consulta que en su mayora son de slo lectura. Desde tablas globales no se
actualizan con frecuencia, estas tablas se replican en todos los nodos. Adems de
acceder a un solo grupo de filas, una operacin en una transaccin slo puede leer una
tabla global. Figura 1 (b) muestra una representacin del esquema TPC-C [29] como
un esquema de rbol. Un esquema tal forma la base del diseo de un nmero de
sistemas tales como MS SQL Azure [4], ElasTraS [12], y la nube relacional [10]. Los
diseos MS SQL Azure y Rela- cin de la nube se basan en el modelo de
almacenamiento de nada compartido donde cada instancia DBMS en un nodo es
independiente y una capa de integracin se proporciona en la parte superior para
encaminar consultas y transacciones a un servidor de base de datos adecuada. El
diseo ElasTraS por otra parte utiliza el modelo de almacenamiento compartida
basada en sistemas de archivos de agregacin de slo distribuido, como GFS [20] o
HDFS [25]. La caracterstica deseable del diseo ElasTraS es que soporta la
elasticidad de los datos de una manera mucho ms integrada. En particular, ambos
diseos MS SQL Azure y relacional de la nube necesitan para ser ampliado mediante
mecanismos de migracin de base de datos para apoyar la elasticidad donde la
migracin de particiones de base consiste en mover los dos datos de estado de base de
datos y residentes en disco residentes en memoria. ElasTraS, por otro lado, puede
soportar la elasticidad de base de datos para la reubicacin de las particiones de base
de datos simplemente migrar el estado de la memoria de la base de datos que es
considerablemente ms simple. De hecho, bien conocido tcnicas de migracin VM
[6, 8, 27] puede ser fcilmente adoptada en el caso de ElasTraS [15].
Esta particin nivel de esquema de grandes bases de datos se divide en grnulos
ms pequeos, que luego se pueden escalar hacia fuera en un grupo de nodos.
Elastmeros Trs Nuestro llamado sistema prototipo [12, 13]: utiliza este concepto de
la fisin de datos a escala de salida los sistemas de bases de datos. ElasTraS es la
culminacin de dos grandes filosofas de diseo: sistemas tradicionales de bases de
datos relacionales (RDBMS) sistemas que permitan una ejecucin eficiente de las
cargas de trabajo OLTP y proporcionan garantas ACID para pequeas bases de datos
y las tiendas de valor-clave que estn elstica, escalable y altamente disponible que el
sistema a escala de salida. El intercambio de recursos eficaces y la consolidacin de
mltiples inquilinos en un nico servidor permite que el sistema para hacer frente de
manera eficiente con los inquilinos con pequeas necesidades de datos y de recursos,
mientras que la base de datos avanzada particionamiento y la escala de salida le
permite servir inquilinos que crecen grandes, tanto en trminos de datos, as como de
carga. ElasTraS opera en la granularidad de estos grnulos de datos llamados
particiones. Se extiende tcnicas desarrolladas para tiendas de valor-clave para escalar
a un gran nmero de particiones distribuidas en decenas a cientos de servidores. Por
otro lado, cada particin acta como una base de datos independiente; ElasTraS utiliza
tecnologa desarrollada para las bases de datos relacionales [22] para ejecutar
transacciones de manera eficiente en estas particiones. El enfoque de particin
descrito aqu puede ser considerado como particin esttica. Se han hecho esfuerzos
lti- mos para lograr particin de base de datos en tiempo de ejecucin mediante el
anlisis de los patrones de acceso de datos de consultas de los usuarios y
transacciones sobre la marcha [11].
Uno de los principales factores para el xito de la nube como una Infraestructura de TI
es su pago por uso modelo de precios y elasticidad. Para un DBMS desplegado en una
nube de pago por uso
1
0
Agrawal et al.
para almacenar la imagen de base de datos persistente. La migracin en vivo para una
nada compartida arquitectura de requiere que todos los componentes de base de datos
se migran entre nodos, incluyendo los archivos de almacenamiento fsico. Para
facilitar la presentacin, se utiliza la particin trmino para representar un grnulo
autnomo de la base de datos que se van a migrar de la elasticidad.
En una arquitectura DBMS almacenamiento compartido la imagen persistente de
la base de datos se almacena en un almacenamiento conectado a red (NAS). En la
arquitectura DBMS almacenamiento compartido, los datos persistentes de una
particin se almacenan en el NAS y no necesita la migracin. Hemos diseado Copiar
iterativo para la migracin de base de datos activa en una arquitectura de
almacenamiento compartido. Para minimizar la interrupcin del servicio y para
asegurar una baja sobrecarga de la migracin, iterativo Copia centra en la
transferencia de la estado de la memoria principal de la particin, de modo que la
particin comienza "caliente" en el nodo de destino resulta en un impacto mnimo
sobre las transacciones en el destino, lo que permite transacciones activas durante la
migracin a continuar la ejecucin al destino, y minimizar la ventana indisponibilidad
del inquilino. El estado de la memoria principal de una particin est conformada por
el estado en cach de base de datos (estado DB), y el estado de ejecucin de la
transaccin (estado de transaccin). Para la mayora de los motores de bases de datos
comunes [22], el Estado DB incluye las pginas de base de datos en cach o alguna
variante de esto. Para un bloqueo de dos fases (2PL) programador basado en [22], el
estado de la transaccin consiste en la tabla de bloqueos; para un control de divisas
Con- Optimista (OCC) [26] planificador, este estado consiste en la lectura y escritura
de conjuntos de transacciones activas y un subconjunto de las transacciones
comprometidas. Copia iterativo garantiza la secuencialidad de transacciones activas
durante la migracin y garantiza la correccin durante las fallas. Un anlisis detallado
de esta tcnica, optimizaciones, y una evaluacin detallada puede encontrarse en [15].
En la arquitectura nada comn, la imagen persistente de la base de datos tambin
se debe migrar, que es tpicamente mucho ms grande que la memoria cach de base
de datos migrada en la arquitectura de disco compartido. Como resultado, se necesita
un enfoque diferente de iterativo Copiar. Hemos diseado Zephyr, una tcnica para la
migracin en vivo en un nada comn transaccional arquitectura de base de datos [19].
Zephyr minimiza la interrupcin del servicio para el inquilino va a migrar mediante la
introduccin de una fase sincronizada que permite tanto el origen como de destino
para ejecutar simultneamente transacciones para el inquilino. Usando una
combinacin de traccin a la carta y empuje asncrono de datos, Zephyr permite al
nodo de origen para completar la ejecucin de las operaciones activas, permitiendo al
mismo tiempo el destino para ejecutar nuevas transacciones. Sincronizacin de peso
ligero entre el origen y el destino, slo durante el corto modo de funcionamiento
sincronizado, garantas secuencialidad, mientras viating observado la necesidad de
dos fases [21]. Zephyr garantiza que no habr interrupcin del servicio por otros
inquilinos, hay un sistema de tiempo de inactividad, minimiza datos transferidos entre
los nodos, garantiza una migracin segura en presencia de fallos, y se asegura el nivel
ms fuerte de aislamiento de la transaccin. Utiliza ndices basados rbol estndar y
bloquear el control de concurrencia basado, permitiendo as que sea utilizada en una
variedad de implementaciones de DBMS. Zephyr no se basa en la replicacin en la
capa de base de datos, proporcionando as una mayor flexibilidad en selec- cionar el
destino de la migracin, que podra o no tener rplica del inquilino. Sin embargo, una
considerable mejora del rendimiento es posible en presencia de la replicacin cuando
un inquilino se migra a una de las rplicas.
Comentarios finales
Referencias
1. Amdahl, G .: La validez del enfoque nico procesador para el logro de las capacidades de
computacin a gran escala. En: AFIPS Conferencia. p. 483.485 (1967)
2. Amer-Yahia, S., Markl, V., Halevy, A., Doan, A., Alonso, G., Kossmann, D., Weikum, G .:
Las bases de datos y el panel de la Web 2.0 en VLDB 2007. SIGMOD Rec. 37 (1), 49-52
(2008)
3. Baker, J., Bond, C., Corbett, J., Furman, J., Khorlin, A., Larson, J., Len, JM, Li, Y., Lloyd,
A., Yushprakh, V .: Megastore: Proporcionar Escalable, almacenamiento de alta
disponibilidad para los servicios interactivos. En: CIDR. pp. 223-234 (2011)
4. Bernstein, P.A., Cseri, I., Dani, N., Ellis, N., Kalhan, A., Kakivaya, G., Lomet, DB, manera,
R., Novik, L., Talius, T .: La adaptacin de Microsoft SQL Server para Cloud Computing.
En: ICDE (2011)
5. Bod'k, P., Goldszmidt, M., Fox, A .: Hilighter: construir automticamente firmas slidas de
comportamiento de rendimiento para sistemas de pequea y gran escala. En: SysML
(2008)
6. Bradford, R., Kotsovinos, E., Feldmann, A., Schioberg, H .: En vivo en toda la zona de
migracin de mquinas virtuales que incluyen estado persistente local. En: VEE. pp. 169179 (2007)
7. Chang, F., Dean, J., Ghemawat, S., Hsieh, WC, Wallach, DA, Burrows, M., Chandra, T.,
Fikes, A., Gruber, RE: Bigtable: Un sistema de almacenamiento distribuido de datos
estructurados. En: IESO. pp. 205-218 (2006)
8. Clark, C., Fraser, K., Mano, S., Hansen, JG, julio, E., Limpach, C., Pratt, I., Warfield, A .:
La migracin en vivo de mquinas virtuales. En: INDE. pp. 273-286 (2005)
9. Cooper, B.F., Ramakrishnan, R., Srivastava, U., Silberstein, A., Bohannon, P., Jacobsen,
HA, Puz, N., Weaver, D., Yerneni, R .: PNUTS: acogi Yahoo 's de datos que sirve de
plataforma!. Proc. VLDB Endow. 1 (2), 1277-1288 (2008)
10.Curino, C., Jones, E., Popa, R., Malviya, N., Wu, E., Madden, S., Balakrishnan, H., Dovich
Zel-, N .: Relacional Nube: Un servicio de base de datos para la nube. En: CIDR. pp. 235240 (2011)
11. Curino, C., Zhang, Y., Jones, EPC, Madden, S .: Cisma: un enfoque impulsado por la carga
de trabajo para la replicacin de bases de datos y la particin. PVLDB 3 (1), 48-57 (2010)
12.Das, S., Agarwal, S., Agrawal, D., El Abbadi, A .: ElasTraS: Una base de datos elstica,
escalable y Auto Gestin Transaccional para la nube. Tecnologa. Rep. 2010-04, CS, UCSB
(2010)
13.Das, S., Agrawal, D., El Abbadi, A .: ElasTraS: Un almacn de datos transaccional elstico
en la Nube. En: USENIX HotCloud (2009)
14.Das, S., Agrawal, D., El Abbadi, A .: G-Store: Un almacn de datos escalable para
Transaccional Multi Tecla de acceso en la Nube. En: ACM SOCC. pp. 163-174 (2010)
15.Das, S., Nishimura, S., Agrawal, D., El Abbadi, A .: La migracin de base de datos en vivo
para la elasticidad en una base de datos multiusuario para plataformas en la nube.
Tecnologa. Rep. 2010-09, CS, UCSB (2010)
16.Dean, J .: Charla en la Cumbre Facultad Google (2010)
17.Decandia, G., Hastorun, D., Jampani, M., Kakulapati, G., Lakshman, A., Pilchin, A., Sivasubramanian, S., Vosshall, P., Vogels, W .: Dynamo: alta disponibilidad, valor clave de
Amazon tienda. En: SOSP. pp. 205-220 (2007)
18.Duan, S., Thummala, V., Babu, los parmetros de configuracin de base de datos S .:
Puesta a punto con ituned. Proc. VLDB Endow. 2, 1246-1257 (agosto de 2009)
19.Elmore, A., Das, S., Agrawal, D., El Abbadi, A .: Zephyr: Migracin de base de datos en
vivo para Elasticidad Ligera en Plataformas Multitenant nube. bajo presentacin para su
revisin
20.Ghemawat, S., Gobioff, H., Leung, ST: El sistema de archivos de Google. En: SOSP. pp. 29-43 (2003)
21.Gray, J .: Notas sobre los sistemas operativos de base de datos. En: Sistemas operativos, un
curso avanzado. pp. 393-481. Springer-Verlag, Londres, Reino Unido (1978)
22.Gray, J., Reuter, A .: Procesamiento de Transacciones: Conceptos y Tcnicas. Morgan
Kaufmann Publishers Inc. (1992)
23. Hamilton, J .: Me encanta la consistencia eventual pero ... http://bit.ly/hamiltoneventual
(Abril de 2010)
24.HBase: Bigtable-likestructuredstorageforHadoopHDFS
(2010),
http://hadoop.apache.org/hbase/
25. HDFS: Un sistema de archivos distribuido que proporciona un alto rendimiento de
acceso a datos de aplicacin (2010), http://hadoop.apache.org/hdfs/
26.Kung, HT, Robinson, JT: En mtodos optimistas para el control de concurrencia. ACM Trans.
Syst Database. 6 (2), 213-226 (1981)
27.Liu, H., et al .: La migracin en vivo de mquinas virtuales basadas en rastro de todo el
sistema y la reproduccin. En: HPDC. pp. 101-110 (2009)
28.Obasanjo, D .: Cuando las bases de datos se encuentran: Consistencia vs. disponibilidad en sistemas
distribuidos.
http://bit.ly/4J0Zm (2009)
29.El Transaction Processing Performance Council: TPC-C de referencia (Versin 5.10.1)
(2009)
30.Urgaonkar, B., Rosenberg, AL, Shenoy, PJ: colocacin de aplicaciones en un clster de
servidores. Int. J. encontrado. Comput. Sci. 18 (5), 1023-1041 (2007)
31.Weikum, G., Moenkeberg, A., Hasse, C., Zabback, tecnologa de base de datos auto-tuning y
servicios de informacin P .:: del optimismo a ultranza a la ingeniera viable. En: VLDB.
pp. 20-31 (2002)
32. Weikum, G., Vossen, sistemas G .: transaccionales informacin: teora, algoritmos y la
prctica del control de concurrencia y recuperacin. Morgan Kaufmann Publishers Inc. (2001)