Veritas Online

Extensión del Ejercicio Profesional

Modelaje de un Sistema de Costos ¿Alguien sabe cuánto cuesta una nube?

Modelaje de un Sistema de Costos ¿Alguien sabe cuánto cuesta una nube?
febrero 22
13:25 2017

Introducción

¿Qué es la nube?

De acuerdo, no se trata de una nube de esas que almacenan agua, pero sí de una nube que almacena información. Cuando se habla de inventarios físicos, el cálculo de costos de almacenamiento se hace de una manera relativamente sencilla. No obstante, si se trata de inventarios de información, ¿cómo podemos saber cuánto cuesta almacenar y procesar los datos en servidores? No es una pregunta sencilla de responder. Para comenzar, habría que definir a qué se refiere exactamente el almacenamiento de datos, cómo se lleva a cabo y para qué se almacenan. Lo que es más, ¿qué es la nube y cómo funciona? Si se pueden obtener respuestas satisfactorias a dichas preguntas, será posible llevar a cabo un esbozo de un modelo que permita calcular los costos de almacenar y procesar grandes cantidades de datos.

Para empezar, hay que definir la nube. La nube no es otra cosa, sino un conjunto de servidores virtuales instalados en servidores físicos con el propósito de almacenar y procesar datos (Marazzi, 2016)1. Como en cualquier proceso del cual se quiera conocer su costo, es menester entender el funcionamiento y los pasos que se llevan a cabo desde el inicio hasta el final del proceso para comprender cuál es el objeto de costo y cómo costearlo, porque hasta ahora, se ha estado haciendo incorrectamente.

En concreto

Se partirá de un ejemplo ficticio, pero concreto para explicar mejor las cosas.

Supóngase la existencia de una gran empresa de consultoría de nombre ServiFin, misma que se dedica a aconsejar a sus clientes con respecto a las mejores opciones de préstamo que ofrecen diversos bancos. Como es de esperarse, esta empresa tiene que almacenar y generar muchísima información: desde los datos personales de los clientes hasta los datos históricos de los bancos, pasando por el historial de compras de sus clientes, la capacidad de pago de los mismos, su cumplimiento o incumplimiento con respecto a los créditos, a qué se dedican y por qué requieren de un determinado servicio bancario.

Para almacenar esta información, la empresa cuenta con dos opciones nada más: comprar servidores propios o contratar los servicios de una empresa que tomará por nombre NuBe Inc, que acaba de implementar un nuevo modelo de costos. Tras analizar un poco, ServiFin se da cuenta de que el mantenimiento de los equipos que tendría que comprar y el pago de salarios extra y del espacio de almacenamiento es mayor que lo que le cuesta contratar a NuBe. Por ende, decide ir con esta empresa y aceptar el trato. No obstante, los directores de ServiFin no acaban de comprender por completo por qué es que NuBe puede ofrecer sus servicios a tan bajo costo.

NuBe le ha indicado a los directivos de ServiFin que necesitan saber exactamente qué se va a hacer con estos datos para poder darles un precio. Tras una breve reunión entre los representantes de ambas empresas, NuBe pone manos a la obra. A pesar de que ServiFin requiere no únicamente del almacenamiento de los datos, sino también de su análisis y procesamiento, no será necesario instalar una nueva máquina virtual especializada que permita realizar lo requerido por el cliente.

Antes de seguir con el caso, se explicará qué es una máquina virtual exactamente.

Imagínese un zoológico que tiene un único corral disponible. A los dueños les acaba de llegar un cargamento con un zorro, un conejo y un león. Por obvias razones, no se puede poner a los tres animales juntos. Ante esto, la primera decisión que toman los dueños del zoológico es la de ampliar el corral, pero pronto se percatan de que es demasiado costoso. Luego, piensan en dividirlo, pero se dan cuenta de que la división que pongan ahorita no servirá para un futuro: los conejos quizá se reproduzcan muy rápido y pronto necesiten más espacio, pero mientras eso sucede, el león podría querer un espacio más grande para correr, o el zorro un lugar en el que pueda hacer madrigueras. Además, supóngase que los animales son muy celosos y no soportan siquiera ver que otro de ellos está ocupando el que podría ser su espacio. Es un problema verdaderamente complejo, tanto que los dueños del zoológico están a punto de rendirse.

Sin embargo, poco antes, a uno de los ingenieros que labora en ese lugar se le ocurre un plan: dividir el corral sin que los animales se den cuenta. Se le ocurre poner pantallas móviles que proyecten el otro lado del corral como si este estuviera completamente vacío. De esta manera, todos los animales pensarán que se encuentran solos. Además, dado que las pantallas son móviles, pueden recorrerse de acuerdo a la necesidad de cada animal.

Esto es el equivalente a lo que sucede entre una computadora común y corriente y una computadora que tiene instalado un hipervisor. Un hipervisor es un sistema que se instala directamente en el servidor y que hace que los sistemas que se instalan sobre el primero crean que el servidor es todo para ellos (UMass OS, 2014)2. Es decir, en una computadora normal, como una laptop de casa, se instala un sistema operativo que monopoliza la capacidad de la computadora sin usarla completamente y que impide que esa capacidad sea aprovechada por otro sistema.

En otras palabras, lo que hace el hipervisor es crear una simulación de la computadora, haciéndole creer al sistema operativo que se ha instalado sobre el servidor y que lo está controlando todo, cuando en realidad está instalado sobre el hipervisor. De esta manera, un segundo sistema operativo puede ser instalado además del original, “sin que ninguno de los dos se dé cuenta”. Una de las características del hipervisor es que, gracias a que monopoliza la capacidad total de la computadora, es capaz de asignar “parte” de la capacidad de éste a cada sistema operativo según lo requiera. (UMass OS, 2014)3

Teóricamente, no existe un límite del número de máquinas virtuales que puedan ser instaladas. Prácticamente, el límite es la capacidad del servidor físico. Esto es, de nada sirve instalar mil máquinas virtuales si el servidor tiene capacidad de procesamiento nada más para ochocientas. Otro punto importante es que dado que las máquinas virtuales están instaladas sobre el hipervisor y no sobre el servidor, éstas pueden ser trasladadas de servidor en servidor sin afectar su funcionamiento.

En el ejemplo del corral, es como si en vez de un corral, hubiese tres, cada uno con un león, un zorro y un conejo, y los animales pudieran ser trasladados de corral en corral sin que se percataran.

Descripción de la problemática contable

Contablemente hablando, el proceso por medio del cual se lleva a cabo el procesamiento y el almacenamiento de datos es un grave problema, puesto que, para empezar, NuBe no puede cobrarle a ServiFin por el espacio que sus datos ocuparán en el servidor X, puesto que bien pueden ser mudados al Y para incrementar la eficiencia. Lo que es más, aun asumiendo que todos los servidores sean idénticos, habrá ocasiones en que los datos compartan una mayor o una menor cantidad de espacio con otras máquinas virtuales que trabajan con datos distintos.

En segundo lugar, véase que el almacenamiento de los datos no depende de la cantidad de espacio físico que ocupen, sino de cómo usen el espacio y con quién lo compartan, puesto que si los datos de ServiFin, aunque fuesen pocos (que no es el caso) estuvieran consumiendo mucha capacidad del servidor a través de su máquina virtual, los datos de otra empresa no podrían ser almacenados ahí sino que tendrían que mudarse a un servidor distinto o, en caso de que sí se almacenaran en el mismo, no estarían usando la capacidad de la máquina.

Finalmente, nótese que para calcular lo que se le cobrará a ServiFin no se puede obtener un simple promedio de la capacidad que será usada en cierto tiempo, puesto que hay ocasiones en las que, si los datos no comparten servidor, éstos tendrán que cargar con los costos de toda la máquina física, mientras que si lo comparten, no tendrán que hacerlo. Si el análisis se llevara a niveles muy profundos, podría abordarse como un problema de costo marginal. Esto es, ¿cuánto costaría, dadas unas ciertas condiciones, agregar un dato más para que éste tenga que ser procesado? No obstante y como se mostrará en esta segunda parte del ensayo, este análisis puede simplificarse bastante.

A lo largo del tiempo, se han tomado dos acercamientos principales para el cálculo de estos costos: GB/Ram (Gigabyte por RAM) e IOPS (Input/Output Operations per Second). Desde hace un tiempo, “la métrica de $/GB ha sido el estándar de facto en la comparación de precios de un producto” (Evans, 2011)4. Este primero consiste en el simple cálculo de cuántos GB se ocupan de acuerdo con la capacidad total del servidor; es decir, se trata de un acercamiento muy simple. El segundo tiene una relación más o menos directa con el costeo ABC, puesto que se basa en identificar actividades; concretamente la de operaciones por segundo, y a ésta se le asigna un costo y, con base en esto, se predice lo que costará almacenar los datos (Evans, 2011)5. Por ello es muy importante que ServiFin le indique a NuBe exactamente lo que quiere, para que los ingenieros puedan hacer un cálculo de cuántas operaciones por segundo llevarán a cabo los servidores con los datos de ServiFin.

En realidad, estos dos acercamientos tienen el mismo error: no se toma en cuenta que un servidor tiene una capacidad de almacenamiento y una capacidad de procesamiento y que, para un caso concreto, ambas estarán controladas por el hipervisor. Esto es, puede ser que por un lado exista un trillón de datos que no requiere operaciones, y por el otro exista un grupo de algunos cientos de miles que requiera estar en constante análisis y movimiento. Esto lleva a plantear una pregunta clave: ¿cuándo usar el costeo de GB/Ram y cuándo el IOPS? Es decir, ¿a partir de cuántos datos se debería de usar uno u otro?

En este punto es importante hacer una diferencia entre dos tipos de almacenamiento: los de las empresas como ServiFin, que están dispuestas a compartir servidores y los de las que no. Esta diferencia es importante porque “…si almacenas datos en la nube pública o privada se afectará la cantidad a pagar” (Tanguay, 2015)6

Propuesta de solución: estableciendo el modelo

La propuesta y tesis central de este ensayo es que los dos acercamientos mencionados previamente para el cálculo de los costos deben usarse conjuntamente para lograr una estimación más exacta con respecto al almacenamiento de datos y que el uso de uno u otro no depende de la cantidad de datos. Tómese en cuenta también que el costo debe calcularse en un tiempo t, puesto que el hipervisor regula la capacidad según las necesidades de procesamiento y almacenamiento de los datos, mismas que cambian con el paso del tiempo.

Ya que se ha establecido lo anterior, es momento de plantear el modelo concretamente. El costo en un periodo “p” será la integral (o la sumatoria en el caso discreto) de los costos en los periodos  . Ahora bien, estos costos pueden dividirse en dos: el costo de almacenamiento (medido en GB/Ram) y el costo de procesamiento (medido en IOPS). El costo de almacenamiento será aquél que se incurra cuando no

se esté realizando ninguna actividad con los datos, mientras que el de procesamiento será aquél generado cuando sí se esté llevando a cabo una actividad. De esta manera, la fórmula para el caso continuo queda:

Donde:

  • CP=costo de procesamiento=hactividad, z(t, # datos

Con:  zt= capacidad de procesamiento de la máquina virtual en tCapacidad total de procesamiento del servidor

Obsérvese que todas las fórmulas dependen de una u otra forma del tiempo en el que se estén almacenando los datos. Específicamente, se puede establecer que

CA= (CAmv=gt,#datos)/CAsCCAs

Donde:

  • CAmv=capacidad de almacenamiento la máquina virtual
  • CAs=capacidad de almacenamiento del servidor
  • CCAs=costos de almacenamiento del servidor luz, energía, mantenimiento, etc.

Y que

CP= (CPmv=w(actividad,t,#datos))/CPsCCPs

Donde:

  • CPmv=capacidad de procesamiento de la máquina virtual
  • CPs=capacidad de procesamiento del servidor

Ahora bien, una vez establecidas las fórmulas básicas, falta determinar algo de vital importancia: ¿cuáles son los causales de los costos de procesamiento del servidor y cuáles los de los costos de almacenamiento?

Para comenzar, obsérvese que NuBe no puede cobrarle a ServiFin la instalación de servidores ni del hipervisor, pues es parte de la inversión inicial requerida para montar una empresa como NuBe. Con la máquina virtual podría suceder una cosa distinta. En algunos casos, NuBe podría usar una máquina virtual ya desarrollada y duplicarla en uno de los servidores. En otros, en cambio, tendría que desarrollar una nueva que permita realizar las funciones que el cliente requiera. Para simplificar las cosas, seguiremos el ejemplo del primer caso.

Para proseguir, es necesario establecer una diferencia entre los costos variables y los costos fijos para los servidores. Para ello, partiremos de las siguientes suposiciones:

Los servidores siempre están prendidos

  1. Los servidores poseen la tecnología DBS (del inglés Demand Based Switching) o una similar “…en la que el voltaje aplicado y la velocidad del reloj para un microprocesador operan con lo mínimo necesario para permitir el rendimiento óptimo de las operaciones requeridas” (Rouse, 2005)7.

Existencia de una relación lineal entre la energía usada por el procesador y la capacidad a la que éste está operando. Esto es, para no llevar a cabo un análisis muy técnico, se partirá de la idea de que todas las partes del servidor consumirán más energía cuando el procesador está trabajando. Si bien esto no es necesariamente cierto, no es algo tan alejado de la realidad (Intel, 2009)8.

c) Existencia de una relación lineal entre los sistemas de enfriamiento y la capacidad a la que está trabajando el servidor. Es decir, mientras más trabaje, más energía se requiere para los sistemas de enfriamiento

d) Relación lineal entre el mantenimiento necesitado por los servidores y las horas de uso.

Partiendo de las suposiciones anteriores, dividiremos los costos en variables y fijos de la siguiente manera:

a) Variables: los costos variables más importantes pueden reducirse a dos: (a) electricidad usada durante el procesamiento, que no el almacenamiento, de los datos, (b) mantenimiento necesario de los procesadores (esto depende de cuánto uso se les esté dando.

b) Fijos: electricidad necesaria para mantener las funciones básicas del servidor en todo momento, es decir, las funciones de enfriamiento y almacenamiento, básicamente; la renta y los salarios no variables.

Esta división simplifica sobremanera cuáles serán los costos de almacenamiento y cuáles los de procesamiento. Los costos de almacenamiento será la razón entre los costos fijos y la capacidad de almacenamiento que la máquina virtual está usando del servidor. Los de procesamiento serán los variables. En efecto, obsérvese que el no realizar ninguna actividad con los datos es equivalente a tenerlos almacenados en los servidores sin que éstos consuman más energía que la asignada por la máquina virtual. (Recuérdese que se habla en un tiempo t específico).

Por su parte, los costos variables se incurren al momento de poner a funcionar los procesadores para llevar a cabo el análisis de datos, y obedecen a las fórmulas propuestas anteriormente. El costo de la electricidad y el mantenimiento dependerán de la frecuencia y magnitud con que la máquina virtual decida trabajar, sujeta a las condiciones que se le presenten.

Conclusiones

Este modelo que se describió a lo largo del texto es el implementado por NuBe, y toma en cuenta la diferencia básica entre los costos de procesamiento y almacenamiento de datos y, por ende, es mucho más exacto que el que utilizaba anteriormente. A lo largo del presente trabajo, se ha mostrado que establecer esta separación entre ambos tipos de costos permite, entre otras cosas

a)Incorporar la flexibilidad en los tiempos de procesamiento y almacenamiento de datos

b) Identificar que ambos tipos de costo dependen del tiempo, de la máquina virtual y del espacio que ésta comparte en el servidor con otras máquinas virtuales

c) Realizar un cálculo de costos más adecuado, puesto que el modelo parte del entendimiento de los procesos que llevan a cabo los servidores para almacenar y procesar los datos.

No obstante, los directores de NuBe también se han percatado de que el modelo por sí solo no es infalible y de que su efectividad depende de una serie de medidas que incluyen la certeza de la medición de la capacidad del servidor que está usando la máquina virtual y el tiempo que está usando esta capacidad, entre otras cosas. Tomando esto en cuenta, con la idea de hacer más sencillo el cálculo de los costos, NuBe determinó que lo mejor era establecer patrones de tiempo para el procesamiento de datos y, de esta manera, no tener que estar midiendo constantemente la capacidad usada.

En resumen, las ventajas del presente modelo con respecto a los que se usan generalmente (GB/RAM e IOPS) son claras, así como también lo son los pasos para su correcta implementación. Para comenzar, se tiene que establecer formalmente la capacidad de almacenamiento y de procesamiento de los servidores. Segundo: se tiene que distinguir claramente entre los dos tipos de costos: los de almacenamiento y los de procesamiento. Tercero: basándose en esta segregación, se deben de identificar perfectamente los costos fijos de los variables. Por último, a través de una adecuada medición que tome en cuenta la flexibilidad en el tiempo, se ha de llevar a cabo el cálculo de costos usando la fórmula desarrollada en el presente ensayo.

Por las razones explicadas anteriormente, este modelo se presenta como una alternativa viable y adecuada a las que actualmente se utilizan, para responder a la pregunta: ¿cuánto cuesta una nube?

Referencias

  • Barrera, Alejandra. Comunicación personal. 20 de septiembre de 2016.
  • Evans, Chris. $/GB vs $/IOPS and How to Compare Enterprise Storage Pricing. com Febrero, 2015. Recuperado de: http://www.computerweekly.com/feature/GB-vs-IOPS-and-how-to-compare-enterprise-storage-pricing [Consulta: 3 de octubre de 2016]
  • The Problem of Power Consumption in Servers. InfoQ. 2009. Recuperado de: https://www.infoq.com/articles/power-consumption-servers [Consulta: 3 de octubre de 2016]
  • Marazzi, Alex. ¿Qué es la nube, para qué sirve y cuáles son los servicios que tenés que conocer? Conexión Brando. 2016 Recuperado de: http://www.conexionbrando.com/1389864-que-es-la-nube-para-que-sirve-y-cuales-son-los-servicios-que-tenes-que-conocer [Consulta: 3 de octubre de 2016]
  • Palian, Joe. How the cost of Cloud Computing is Calculated. Recuperado de: https://www.expedient.com/blog/how-the-cost-of-cloud-computing-is-calculated/ [Consulta: 3 de octubre de 2016]

Rouse, Margaret. Hardware Virtualization. SearchVMWare. Octubre, 2015. Recuperado de:

  • http://searchvmware.techtarget.com/definition/hardware-virtualization [Cosulta: 3 de octubre de 2016]
  • Rouse, Margaret. Demand-based switching. Septiembre, 2005. Recuperado de: http://searchenterpriselinux.techtarget.com/definition/demand-based-switching [Consulta: 16 de octubre de 2016]
  • Tanguay, Maude. The Real Truth About the Hidden Costs of Cloud Servers. SherWeb 2015. Recuperado de: http://www.sherweb.com/blog/truth-about-cloud-server-pricing/ [Consulta: 3 de octubre de 2016]
  • UMass OS. Lecture 22. Virtualization and Cloud Computing [Archivo de video]. Publicado el 28 de abril de 2014. Recuperado de: https://www.youtube.com/watch?v=_fGrYN5rxhs [Consulta: 3 de octubre de 2016]

Pablo Andrés Ruz Salmones

veritas@colegiocpmexico.org.mx

 

 

 

 

 

Facebook Comments

Related Articles

0 Comments

No Comments Yet!

There are no comments at the moment, do you want to add one?

Write a comment

Write a Comment

Twitter

Para la titular de la BIVA, @maria_ariza existe una gran opción, y por ello están trabajando en incorporar liquidez, visibilidad y nuevos emisores. Comenta que, después de tres meses de operación, lo están haciendo bien.
Entrevista completa >>> https://t.co/cBVGuHVNBA

La Iniciativa de eliminación de la compensación universal generará una seria afectación en su capital de trabajo, en sus proyectos de inversión. Nota completa >>> https://t.co/Krya1CvvLZ

Hoy Martes 18 de Diciembre de 2018 el tipo de cambio promedio del dólar en México es de 19.90 Pesos vía https://t.co/kv4nrLn5uY

#FelizMartes no olvides que la escucha activa es tan importante como expresar tus ideas.

Cuando se habla de corrupción, la atención se centra en la corrupción gubernamental, desvíos de recursos y malversación de fondos por parte de los funcionarios públicos; sin embargo, se dejan de lado los efectos colaterales que este gran problema presenta.
https://t.co/hFzZrla84H

Load More...
A %d blogueros les gusta esto: