4.5 Automatizaciones y herramientas de soporte
4.6.5 Sistema de base de datos
Recordemos el modelo de la instalación de base de datos que introdujimos en el Ejemplo 7 para mostrar las limitaciones de la estrategia monolítica. Este sistema se encuentra caracterizado por un valor de redundancia R ∈N(R >1) y sus componentes incluyen procesadores (de dos tipos), controladores de discos (de dos tipos), y clusters de discos (seis de ellos). Denotando como unidad a cualquier tipo de procesador, tipo de controlador, o cluster de disco (i.e. hay diez unidades en total), el sistema estará operativo siempre y cuando menos de R componentes hayan fallado en cualquier unidad.
Esta base de datos markoviana fue estudiada originalemnte en [GSH+92] and
then using RESTART in e.g. [VA98]. The failure rates of processors, controllers, and disks, are respectively µP, µC, and µD. Furthermore all these components can fail with equal probability in one of two types: failures of type 1 involve a repair rate equal to 1,0, and those of type 2 have a repair rate of 0,5. Rare event analyses focus on system unreliability, e.g. γ refleja la proporción de tiempo que la base de datos no se halla operativa.
Corrimos experimentos en Mendieta sobre modelos como el que presentamos en el Apéndice A.10, el cual describe (una versión resumida de) un sistema para redundancia R = 2. La propiedad al final del apéndice consulta por la probabilidad de tener cualesquiera dos (R) componentes falladas en la misma unidad:
S( (d11f&d12f) | (d11f&d13f) |· · · | (p21f&p22f) ) .
Como el formalismo IOSA asocia una única función de densidad de probabilidad a cada reloj, la dependencia de fallas entre procesadores debe ser descartada (cf. [VA98]). Moreover, our IOSA models have repair clocks individual to each component, in contrast to the single (sequential) repairman scheme from [VA98,
VA07a].
Estudiamos sistemas con tasas de falla (µP, µC, µD) = (1/50,1/50,1/150) and redundancy values R ∈ {2,3,4,5}. Due to the long times FIG took to converge for the larger models, this experiment follows a different scheme de los que vimos hasta ahora. En lugar de solicitar que las estimaciones alcancen criterios
4.6.5 Sistema de base de datos 153
de confianza predefinidos, impusimos presupuestos temporales de ejecución, y medimos la precisión of the intervals built by each strategy at timeout. The goal is to estimate the narrowest possible interval in the available time, where the time budgets for the redundancy values R = 2,3,4,5 son 10 segundos, 2 minutos, 20 minutos, y 6 houras respectivamente.
Resaltamos que nuestros modelos son incomparables con los que fuesen estu- diados en[GSH+92,VA98,VA07a], due to the different hypotheses we use in order to
model the database with IOSA. Besides, even though the database is Markovian,
PRISM can not be utilised to approximate the results in an equivalent CTMC,
owing to the physical memory issues reported in Sección 3.6. As a workaround, to verify correctness in our estimations we compared the confidence intervals yielded by all runs, corroborating that they share a common region. Los valores medios (y desviación estándar) obtenidos con este procedimiento a partir de los estimadores (puntuales centrales) para cada redundancia son:
R : 2 3 4 5
avg{ˆγi}: 6.86e-3 5.14e-5 3.81e-7 8.06e-9 stdev{ˆγi}: 1.46e-4 2.34e-5 4.37e-7 1.49e-8 .
Las simulaciones RESTART fueron evaluadas para cinco funciones de im- portancia. No se puedo emplear al método monolítico debido a los problemas de memoria que ya discutimos. The compositional approach with summation as composition operand is denoted ac1. Since each component can be either failed or operational, its local importance function will adopt the values 1 and 0 respectively. Hence ac1 counts the number of failed components in the whole system. Notice that in spite of its simplicity, esta estrategia puede construir una estructura de importancia mucho más rica de lo que ningún intento monolítico podría.
La función composicional denotada ac2 makes a distinction based on the component type, under the hypothesis that their failure rates may be different and thus they should not be mixed up (cf. ac1). Using the exponentiation post- processing, the local importance functions of all disks are multiplied together (FD
.
=Q6,R+2
i,j=1,1Di,j), and the same is done with all controllers (FC . =Q2,R
k,`=1,1Ck,`) and all processors (FP
. = Q2,R
k,`=1,1Pk,`). La función de importancia global es la suma de estos valores: FD +FC+FP.
La funciónac3hace una distinción aún más fina, separating the product of the disks per cluster (Fi
D . =QR+2
j=1 Di,j for clusters 16i66), and of the controllers and of the processors per type (FCk =. QR
`=1Ck,` and FPk . = QR
`=1Pk,` for types 1 6k 6 2). Nuevamente, la función de importancia global es la suma de estos valores: P6 i=1FDi + P2 k=1FCk + P2 k=1FPk.
La función ac4 usa el anillo (+,∗) in what can be regarded as a further refinement in the same direction than ac2 andac3:ac2 would be the most coarse grained, mashing all components of the same type together; ac3contemplates the divisions of the system in independent units; y ac4 distingue toda configuración posible que genera una falla del sistema.
Finalmente, la función ah tiene dos facetas. Por un lado puede ser vista como la variante composicional que implementa el semianillo (m´ax,+). Por el otro lado
esta función coincide exactamente con la propuesta ad hoc de [VA07a], denotada Φ(t)=. cl−oc(t) en ese trabajo.
1e-09 1e-08 1e-07 1e-06 1e-05 1e-04 1e-03 2 3 4 5 Split 2 1e-09 1e-08 1e-07 1e-06 1e-05 1e-04 1e-03 2 3 4 5 Split 5 1e-09 1e-08 1e-07 1e-06 1e-05 1e-04 1e-03 2 3 4 5 Split 10 1e-09 1e-08 1e-07 1e-06 1e-05 1e-04 1e-03 2 3 4 5 Split 15 ac1 ac2 ac3 ac4 ah nosplit
Figura 4.8: Precisión de los intervalos del análisis estacionario de la base de datos
Para un nivel de confianza del 90 %, presentamos en la Figura 4.8 la precisión de los intervalos obtenidos para los presupuestos temporales indicados. Estos valores son el promedio del resultado de cuatro experimentos independientes corridos en Mendieta.
Las simulaciones de Monte Carlo estándar estimaron los mejores intervalos para el menor valor de redundancia, R= 2, lo cual no es sorpredente y coincide (parcialmente) con los resultados reportados en[BDM17]. Notice however that for R = 3 and although to a moderate extent, la Figura 4.8 muestra un mejor comportamiento de todas las simulaciones RESTART con respecto a nosplit, a diferencia de [BDM17].
Aún cuando estos resultados podrían ser dejados de lado as yet another example where the event is not rare enough for a really effective application of multilevel splitting (which might well be true!), puede aprenderse algo si estudiamos más a fondo la cuestión.
Para dejar de estar operativa la base de datos requiere que R components in any unit to fail, where the number of components per unit is heterogeneous. The unit with most components would be the likeliest to produce the system failure, which is the case of the disks clusters. No obstante, el tiempo de vida
4.6.5 Sistema de base de datos 155
entre componentes difiere bastante, y en promedio es tres veces más corto en controladores y procesadors que en los discos. This means that it is actually very likely to observe a non operational database debido a R controladores o procesadores fallados en la misma unidad (i.e. del mismo tipo).
Es por ello que necesitamos aumentar el valor de redundancia in order to obtain some gain from the use of multilevel splitting. Even in the rich layering offered byac1toac4, most cases of a non operational database will be caused byR failed processors or controllers of the same type. Which does not imply, however, that the compositional approach is at a loss. It merely justifies why nosplit performed better than the splitting simulations for R = 2. Higher redundancies mean a more layered structure of even the likeliest, flattest failures, lo cual habla a favor del uso de la división multinivel.
Llamamos la atención ahora a los valores de redundanciaR ∈ {4,5}, where standard Monte Carlo ceases to be a reasonable choice and one has to resort to other strategies, e.g. importance splitting. Moreover, since the monolithic approach was infeasible already for R = 4 in our studies from Sección 3.6, the compositional approach introduced in este capítulo ofrece la única alternativa automática para aplicar la división multinivel.
Notablemente, ninguna de las cinco estrategias de composición clearly outper- formed the rest in all configurations. This would suggest that, in this scenario whereflat failures caused byR processors or controllers have great likelihood, the extra importance layering granted by functions like ac4is not a defining factor. The charts also hint at a better performance ofRESTARTfor the higher splitting values, although convergence was slightly faster en casi todos los casos para el valor de división 10 que para 15.
Unas pocas configuracions generaron valores en discordia con el resto; the most striking cases from Figura 4.8 are observed when R= 5 for splitting 2 (ac4and ah) and splitting 5 (ah). Furthermore, for that redundancy and in one out of the four independent experiments run, ac4 andac1 failed to converge to an estimate for splittings 10 and 15 respectively. These peculiarities are, to our surprise, not related to the splittings-thresholds fiasco. The technical output of FIG revealed an aberration in the outcome of the individual simulations, which at some point started to sample the rare event at extremely high (or low) rates, contrarily to the immediately preceding behaviour. Suspecting a relation between these aberrations and the pseudo-random number generation algorithm, we repeated such runs using a different algorithm fed with different seeds. As expected, the aberrations were not observed again, y las salidas encajaron en el marco normal correspondiente a cada caso.
Subrayamos por último que a pesar de haber observado un desempeño bastante similar entre todas la funciones de importancia, ambasac4yah(la segunda mirada como el semianillo (m´ax,+)) no fueron diseñadas específicamente para la base de datos, sino que pueden ser derivadas de la expresión DNF del evento raro como describimos en la Subsección 4.3.3. Esta es una muy buena razón para preferir a estas funciones por sobre las otras tres.
4.6.6.
Tuberías de petróleo
Considérese un sistema k-consecutivos-de-entre-n: F (C(k, n: F) por sus siglas en inglés). El mismo consiste en una secuencia de n componentes ordenados secuencialmente, de manera tal que el sistema completo falla si k o más compo- nentes consecutivos fallan. Para tener una imagen mental más realista y terrenal pensemos en un oleoducto donde hay n bombas de presión equidistantes. Cada bomba puede transportar petróleo, a lo sumo, por una distancia igual a la que separa a k de estas bombas. Entonces cuando k > 1 el sistema tiene cierta resistencia a las fallas, y puede permanecer operativo siempre y cuando haya menos de k bombas falladas consecutivas, independientemente por lo demás del número total de bombas falladas.
Los sistemas C(k, n: F) have been studied as early as 1980 [Kon80]. Several generalisations exist to the original setting; we are interested in the non-Markovian and repairable systems analysed in e.g. [XLL07,VA10]. Those works assume the existence of a repairman which can take one failed component at a time and leave it “as good as new”, after a log-normal distributed repair time has elapsed[XLL07]. In particular [VA10] consider also the existence of non-Markovian failure times (namely, sampled from the Rayleigh—or Weibull—distribution) and measure the steady-state unavailability of the system. Notice the probability density function used in [VA10] para la distribución Rayleigh es fβ(t)
.
=βte−t2β2, cuya media es
qπ
2β.
Para correr experimentos en Mendieta, usamos modelos IOSA como el que mostramos en el Apéndice A.11, que representa un oleoducto del tipo C(3,20 : F), i.e. donde hay un total de n = 20 bombas de presión, y k = 3 bombas rotas con- secutivas causan una falla general del sistema. En ese ejemplo la indisponibilidad estacionaria del sistema puede consultarse con la propiedad:
S( (broken1>0&broken2>0&broken3>0) |
(broken2>0&broken3>0&broken4>0) | ..
.
(broken18>0&broken19>0&broken20>0) ).
Por desgracia la dependencia de Markov de (k −1)-pasos en las fuentes (ver [LZ00] y también [XLL07,VA10]) no puede modelarse en IOSA, puesto que requeriría la asociación de más de una distribución a los relojes involucrados†. We also highlight that in order to model the repairman, an extension of the basic IOSA theory and model syntax presented in Sección 4.4 y subsección 4.5.2 was employed, which allows certain use of instantaneous (or untimed) actions§. That,
plus the possibility to define and operate with arrays of variables, es actualmente soportado por la versión 1.1 de la herramienta FIG.
†Hay varias extensiones al formalismo en consideración; ésta es una de ellas.