Archivo por meses: diciembre 2013

Jobs y las personas inteligentes…

No son estas el tipo de entradas que suelo escribir, pero me lo he encontrado en LinkedIn y creo que merece la pena leerla y pensar sobre ella…

frase Steve Jobs

 

No tiene sentido contratar a personas inteligentes y después decirles lo que tienen que hacer. Nosotros contratamos a personas inteligentes para que nos digan que tenemos que hacer. – Steve Jobs

Creo que poco más hay que aportar a esta frase, que resume con tanta rotundidad algo que debería estar visible en cada empresa y ser parte del motor de la misma.

Fecha de caducidad.

Pese a la carga de trabajo de estas últimas semanas, esta semana he estado siguiendo un debate en LinkedIn bastante activo:

¿Con los 40, ya se es viejo para la vida laboral?

A partir del tema inicial, sobre esa tendencia que desde hace tiempo parece haberse asentado en nuestra sociedad laboral de considerar ‘viejos’ a muchos trabajadores a partir de los 40 años, o menos atractivos que otros más jóvenes, se han ido vertiendo opiniones bastante interesantes sobre el tema.

Los tópicos.

Leyendo unas y otras, incluyendo algunas que mencionan la dificultad para enseñar a alguien que ya tiene ciertas costumbres y manías adquiridas, me ha venido a la mente la idea para esta entrada… ¿tiene fecha de caducidad un trabajador?

El caso es que entre todo lo que he leído me he encontrado con muchos tópicos bastante habituales alrededor de este tema…

A un trabajador con más de 40 años es difícil enseñarle cosas nuevas….

Un trabajador mayor es menos flexible ante el cambio y se resiste a cambiar su forma de trabajar…

… ponen menos interés en las cosas y son menos productivos…

Lo que más me ha llamado la atención de todo esto, es que si pienso en esos tópicos puedo ponerles caras de personas con las que he trabajado y se pueden ajustar en algún momento a los mismos. Pero lo más curioso de todo, es que muchas de esas caras no tienen ni de lejos los 40 o más años.

En todos estos años muchas de esas personas que se ajustan a estos tópicos podían tener, en algún caso, los 40 años ya cumplidos, pero también recuerdo muchos que con 25-35 años podrían servir de perfecto ejemplo, ya sea por su resistencia al cambio, por sus ‘manías’ o por su falta de interés en aprender cosas distintas o distintas formas de hacer las cosas.

Desde gente con muy buen nivel técnico que sí o sí se empeñaban en discutir cualquier propuesta técnica que no fuera propia haciendo caso omiso a los razonamientos ajenos, a otros que tras unos cuantos años haciendo una tarea rutinaria están tan acomodados que no quieren ni tomarse la molestia de aprender algo distinto.

Así pues… ¿y si el no es un problema de edad?

fecha de caducidad

No es tema de edad… sino de actitud.

¿Se imaginan a alguien diciendo que Dennis Ritchie o Steve Jobs eran menos válidos por haber cumplido los 40 años?… ¿o que Tesla o Einstein debían dejar paso a los más jóvenes?

Tomemos el ejemplo de Steve Jobs por ser un ejemplo reciente y bien conocido.

Ya rondaba los 40 cuando convirtió Pixar en el estudio de animación a seguir por todos, capaces de lanzar éxito tras éxito en los cines, con innovadoras técnicas de animación por ordenador.

Sobrepasaba los 40 cuando volvió a Apple, para volver a llevarla a lo más alto con productos como el iPod o el iPhone, quizás no del todo innovadores por basarse en conceptos ya conocidos, pero sí lanzados con un nuevo enfoque que los convertirían en absolutos éxitos a niveles nunca vistos.

Y lo que realmente le distinguía, tanto a él como al resto puestos como ejemplo, era su actitud y pasión por el trabajo, que en ningún momento se veía mermada de manera alguna por su edad, que unidas a la experiencia acumulada y los conocimientos adquiridos son las que te empujan a buscar esa forma distinta de hacer las cosas.

Por ello, como mencionaba antes, podemos encontrar ejemplos de todas las edades que encajen con los tópicos y estereotipos usados para los ‘trabajadores mayores’.

¿Qué se puede hacer entonces al respecto?…

Yo aquí lo que suelo hacer ante estos casos de falta de motivación o ‘acomodamiento’ es lo que dije en su día… recoger el feedbcak.

Hablar de manera informal, pero orientando la conversación hacia el tema a indagar, nos puede dar una visión de si estamos ante una persona cuya propia forma de ser le lleva a buscar acomodo y tareas rutinarias, o si por contra estamos ante una persona que por algún motivo ha relegado o perdido su empuje llevándole a una situación donde una actitud pasiva es fruto de la frustración.

En el primer caso lo que podemos hacer es buscar tareas que obliguen a esta persona a salir de su zona de confort, a enfrentar tareas distintas que le exijan una mayor exigencia, siempre dentro de sus capacidades. Tareas que podemos supervisar directamente y que estén limitadas en el tiempo para evitar que las relegue indefinidamente, o que deba realizar en coordinación con otras personas para que sea el grupo el que le envuelva y empuje.

En el segundo caso, aunque no hay reglas genéricas, podemos optar por tratar el tema directamente para provocar que sea la otra persona la que nos diga qué le motiva y luego intentar encajarlo en su día a día como tarea complementaria al resto, siempre que sea posible, exigiendo a cambio su compromiso y supervisando periódicamente sus avances y propuestas.

Aunque siempre debemos de contemplar que podemos encontrarnos con el caso de personas que simplemente no sabrán qué quieren, o no querrán hacer nada distinto, en cuyo caso o asumimos que será difícil sacarles de ese rol adquirido, o tendremos que limitarles a ese tipo de tareas.

¿Y se puede prevenir?

A este respecto me gusta mucho la política adoptada por Recursos Humanos en mi actual empresa, que ha potenciado mucho el tema de la formación presencial, la auto-formación online y que anualmente lanza una campaña de actualización de CV para que pongamos al día nuestros conocimientos.

En el caso del CV me parece una muy buena forma de ponernos frente al espejo, hacernos pensar en qué hemos hecho el último año y ser así conscientes de si avanzamos o nos quedamos estancados.

Y es que un departamento de Recursos Humanos es mucho más que el responsable de hacer los contratos, entregar cartas de despido o el encargado de notificar las subidas o no subidas de salario.

Muchos empresarios se quejan muy a menudo de que sus empleados se limitan a hacer lo mínimo en el día a día, que no proponen ideas nuevas o que están ‘obsoletos’ pero los mantiene porque les costaría mucho dinero echarles.

Pero de vez en cuando hay que hacer auto-crítica (yo tengo mucha tendencia a ello) y plantearnos… ¿hemos hecho algo por formarlos en los últimos años? ¿les hemos dado medios para que nos hagan llegar sus propuestas? ¿les hemos escuchado lo suficiente cuando aún tenían empuje? ¿les hemos hecho sentirse parte activa de nuestro negocio o les hemos relegado a un papel de meros componentes de nuestra cadena de producción?

Para mí la mejor prevención pasa por no permitir que pierdan su empuje, no dejar que se acomoden en tareas rutinarias, hacerles partícipes en las propuestas para mejorar nuestra metodología y exigir que se formen, o darles los medios para que lo hagan, desde el primer día y no cuando nos surja una necesidad puntual.

Un trabajador no es una herramienta, es una parte activa de nuestro negocio y así debemos de intentar mantenerlo.

Todos conocemos las políticas del 80-20 que empresas como Google (hasta hace un par de años) permitían a sus trabajadores, con el objeto de dejarles que hicieran llegar propuestas de nuevas líneas de negocio o mejoras sobre las existentes, permitiéndoles que dedicasen un 20% de su tiempo de trabajo en algo que surgiese de ellos mismos y les apasionara.

O la política de VolksWagen, y otras empresas, de otorgar premios a aquellas propuestas surgidas de sus trabajadores orientadas a mejorar su forma de trabajar o ayudar a ahorrar costes.

Para mí estas son, o pueden ser, la clave para desterrar tópicos y seguir viendo a trabajadores que tras cumplir los 40 siguen trabajando con la misma curiosidad, empuje y ganas de hacer cosas nuevas.

Calculo del coste de la licencia de Oracle Database – Sprint2

Continuamos…

Vamos con los cálculos

Para los ejemplos que vamos a usar, vamos a suponer que, por funcionalidad, nos vale cualquiera de las ediciones de BBDD (si no es así, tendríamos que usar como mínimo, la que cumpla nuestras condiciones)

Vamos a usar siempre la más barata.

Además considerare siempre que se compra la licencia perpetua, pero los cálculos cambiado los precios, son los mismos para la licencia anual.

Hay que tener en cuenta que se pagan dos cosas. Primero la licencia de uso, que se puede comprar anual o perpetua y segundo el soporte.

Vamos a suponer 3 hardwares diferentes.

Maquina1: 2 sockets con 1 CPUs instalada de 10 cores y 3 usuarios nominales
Maquina2: 4 sockets con 2 CPUs instaladas de 10 cores y 10 usuarios nominales
Maquina3: 8 Sockets con 6 CPUs de 10 cores y 90 usuarios nominales

Paso 1, Saber que edición de la BBDD necesitamos.

Para determinar la edición, tenemos que conocer la aplicación que queremos realizar y revisar las características de las edición de la BBDD en el enlace de más arriba. Un detalle, la SE1 y la SE son idénticas salvo si queremos usar RAC.

Paso 2. Conocer el hardware en el que correrá nuestra aplicación.

Y no quiero risas (como dice un amigo mío). Esto muchas veces no lo sabemos hasta el final, hasta que hacemos pruebas de rendimiento… Realmente no es crítico (para nuestros calculos). De hecho, como dije en el inicio del anterior Sprint, es posible que intentes modificar tu hardware cuando calcules el coste de las licencias…

Lo realmente crítico es el paso anterior. Es decir, si determinamos que las características de la SE1 son suficientes, podemos usar una SE1. Si al final estamos obligados a usar una SE o una EE, no habrá problemas porque son totalmente compatibles. De hecho, la instalación solo da a elegir entre EE y SE. Si vamos a licenciar SE1, tendremos que instalar SE. Luego se licencia una SE1 o una SE en función del hardware usado.

Paso 3. Aplicar los límites por el hardware.

Los límites se establecen en función del número de sockets que tenga nuestra maquina, estén ocupados todos o no lo estén:

  • SE1 permite un máximo 2 sockets
  • SE permite un máximo 4 sockets
  • EE sin límite

Así, para la Maquina1 podremos usar una SE1, para la Maquina2, la mínima es una SE y para la Maquina3 solo vale la EE.

Paso 4. Calcular el número de “unidades de facturación” a usar.

Estas “unidades de facturación” no aparece en ningún sitio con ese nombre pero este número es necesario para los cálculos del importe a pagar por licencias. Oracle, para las licencias, lo llama “processors”, pero esa palabra tiene otros significados. Lo voy a llamr UFO (Unidentified Facturation Object) (una vez más, no quiero risas aquí).

Este cálculo de UFOs se hace un función del número de cores o de CPUs que tenga instaladas nuestra maquina (aquí si, instalados, se limita por sockets pero se paga por CPUs).

Los UFOs, además, son necesarios tanto para la licencia por usuario como por procesador.
El número de UFOs para un mismo hardware dependiente de la edición de la BBDD a usar:

  • SE y SE1

Es necesario 1 UFO por cada CPU, independiente del número de cores que tengan nuestras CPUs

  • EE

El número de UFOs es numCPUs X numCores X Factor

El Factor depende del tipo de procesador, para Intel es 0,5.

Veamos los ejemplos

Maquina1
Serian 1 UFOs de SE1 (el número de CPUs)

Maquina2
Serian 2 UFOs de SE (el número de CPUs)

Maquina3
Serian 30 UFOs de EE: 6 CPUS * 10 * 0,5

Ojo, luego veremos que un UFO de SE no cuesta lo mismo que un UFO de EE, el de EE es 3 veces el de la SE y la SE es 3 veces el de la SE1

Paso 5. Calculo x procesador

Para el cálculo por procesador, simplemente hay que coger el número de UFOs anterior y multiplicarlo por el precio “Processor License” de la edición que corresponda. Podéis verlos en la lista publica de precios de Oracle (está en dólares).

Ejemplos

Maquina1, SE1

Licencia perpetua: 1×5.800€
Soporte 1 año: 1×1.276€

Maquina2, SE

Licencia perpetua: 2×17.500€
Soporte 1 año: 2×3.850€

Maquina3, EE

Licencia perpetua: 30×47.500€
Soporte 1 año: 30×10.450€

Paso 6. Calculo x Usuarios

Para el cálculo por número de usuarios, hay que multiplicar los usuarios x el precio por usuario (lógico, verdad?).

Hay que tener en cuenta el mínimo de usuarios, no se puede comprar menos que el mínimo marcado. Este mínimo depende de la edición y debe ser multiplicado por los UFOs.

Vamos a suponer que con el mínimo de usuarios nos basta, así que, vamos a calcular el mínimo a pagar. Como he puesto antes, podeís ver los precios en la lista publica de precios de Oracle (está en dólares).

Ejemplos del coste mínimo

Maquina1, SE1, mínimo 5 usuarios en la SE1

Licencia: 5 usuarios * 1 UFO * 180€
Soporte 1 año: 5 usuarios * 1 UFO * 39,60 €

Maquina2, SE, mínimo 5 usuarios en la SE, con 2 UF0s, el mínimo es 5 x 2

Licencia: 5 usuarios * 2 UFOs * 350€
Soporte 1 año: 5 usuarios * 2 UFOs * 77 €

Maquina3, EE, mínimo 25 usuarios en la EE, con 30 UFOs, el mínimo a comprar es 25 x 30

Licencia: 25 usuarios * 30 UFOs * 950€
Soporte 1 año: 25 usuarios * 30 UFOs * 209 €

Paso 7. ¿Cuando elegir Licencia x usuario o Licencia por procesador?

Esto es un cálculo muy simple y solo hay que mirar lo precios.

Maquina 1, SE1, 1 CPU

En la edición SE1, una licencia de procesador = 32,2 usuarios, con lo que, con menos de de 33 usuarios, compensa usar una licencia de tipo usuario, teniendo en cuenta que el mínimo de usuarios a comprar es 5.

Maquina 2, SE, 2 CPU

En este caso, una licencia de procesador = 50 usuarios, como tenemos que comprar 2 licencias de procesador, será más barato comprar por usuario hasta 100 usuarios, teniendo en cuenta que el mínimo de usuarios a comprar es 2*5, es decir, 10

Maquina 3, EE, 6 CPU x 10 cores

En este caso, una licencia de procesador también es = 50 usuarios, como tenemos que comprar 30 licencias de tipo procesador, será más barato comprar por usuario hasta 1500 usuarios teniendo en cuenta que el mínimo de usuarios a comprar es 30*25, es decir, 750

Conclusión

Como podemos ver, la elección de la edición tiene un coste muy elevado. Esto lleva incluso a plantearse el hardware a usar en función de los limites de licenciamiento de Oracle.

Por ejemplo, la maquina3 tiene 6 CPUs y 8 Sockets y el coste de 1er año de Oracle es casi un millón y medio de licencia (que se paga una sola vez) más 313 mil euros cada año.

Si las características de la SE son suficientes, os aseguro que yo haría pruebas de performance con una maquina con 4 CPUs únicamente.

Así, si limitamos a 4 CPUs (en una maquina de 4 Sockets) y la SE es suficiente, el coste pasa a ser de 70 mil euros de licencia + unos 15 mil de soporte anualmente.

Vosotros mismos, pero con esa pasta, contrato a un gurú de tunning y de paso, formo a mis desarrolladores en high performance applications…

Todo condicionado a que las características de la SE sean suficientes, por supuesto.

No he incluido aquí el dato por usuarios, porque lógicamente necesitas saber cuantos tienes, pero el mínimo de usuarios a comprar en este ejemplo, como sabrás por los cálculos anteriores, es de 750, con lo que el mínimo a pagar si tienes menos de 750 usuarios será justo la mitad de lo expuesto.

Posdata

Venga va, alguna cosa mas…

Cambio de plataforma

¿Que pasa si tengo licencias de BBDD en SUN Solaris y quiero pasar a X86 Linux?

Este es un tema que siempre me ha causado grandes dudas. De hecho, no tengo link de Oracle donde puedas contrastar esto.

Mi conocimiento sobre este detalle concreto es mas de “campo”. Si tienes una licencia de la BBDD para un sistema SPARC/Solaris, es gratis que pases esa licencia a un sistema X86/Red Hat Enterprise Linux (RHEL).

Entendiendo por licencia lo que has pagado, claro. Es decir, si tienes una maquina SUN con una CPU y has pagado una licencia de la edición standard para una CPU, eso es lo que tienes. Si tu nuevo sistema tiene 2 CPUs, evidentemente, tendrás que comprar otra licencia para la segunda CPU.

Actualizar la versión de la Base de Datos

A día de hoy, la Base de Datos va por su versión 12c, pero existen muchas instalaciones con la 10g, y la con la 9i. Pagar el soporte de Oracle da derecho a actualizar gratuitamente de versión.

Es decir, si has pagado una licencia de Oracle 9i y estás pagando el soporte, puedes actualizar hasta la 11g R2 sin coste adicional.

Certificación de la BBDD en tu plataforma

Lo primero que tienes que saber es si la versión de la BBDD está certificada en tu sistema operativo. Por ejemplo, la 11g ha sido certificada recientemente para su uso en Red Hat Enterprise Linux 6.1. Que sirva de ejemplo la siguiente tabla de compatibilidad con RHEL:

VERSIÓN PRODUCTO Documento Oracle
9.2.0 RHEL4 x86-64 353529.1
10.2.0 RHEL5 x86-64 421308.1
RHEL4 x86-64 339510.1
11.2.0 RHEL6 x86-64 1441282.1
RHEL5 x86-64 880989.1
RHEL4 x86-64 880942.1

Por último, el RAC, ese curioso elemento objeto de licenciamiento de Oracle

No sé qué concienzudos estudios de mercado han hecho en Oracle pero el tema de RAC es muy curioso.

El RAC (con limitaciones, como solo estar permitido el clusterware de Oracle) es gratis en la SE.

Solo puede usarse en la SE si la suma de todos los Sockets de todas las maquinas implicadas no supera en número a 4. Por ejemplo, se puede usar en 2 maquinas de 2 Sockets cada una.

Si usamos una edición EE, es una opción de pago adicional, que además hay que pagar en cada máquina que lo use. Es decir, si poner 4 maquinas, deberemos sumar todos sus UFOs y pagar una licencia tipo EE y una licencia de RAC por cada uno de los UFOs.

Ahora si:

FIN

Cálculo del coste de la licencia de Oracle Database – Sprint1

Disclaimer

Este no es un articulo vacuo y de “titulares”, por aquí no tenemos de esos, si queréis uno de esos os puedo pasar unas cuantas direcciones, así que, si vas a empezar a leerlo, piénsalo dos veces.

Introducción

En este articulo voy a intentar dar algo de luz sobre un tema recurrente: ¿cuánto cuesta la licencias de Oracle BBDD que necesito?

Uno esperaría encontrar estos datos de forma fácil y rápida pero Oracle se esfuerza denodadamente en que esto no sea así.

Supongo que es como esas tiendas pequeñas, que no te permiten mirar las cosas tranquilamente, en las que nada más entrar, se te tira encima el dependiente para “ayudarte”.

En Oracle deben preferir enviar la comercial a “ayudarte”. Por esto mismo, que este articulo sirva como guía, espero que te descubra algunos temas oculto, pero la última palabra la tiene siempre Oracle.

Después de pegarme con algunos de los “detalles” a tener en cuenta, y aún con la duda de la letra pequeña que mi miopía no me haya permitido alcanzar a leer, vamos con lo que he sacado en limpio.

Descubrirás como Oracle te puede hacer cambiar tu maquina de producción.

Si me preguntas a mí, desarrollador, que hardware es necesario poner en producción para poner online una calculadora, mi respuesta será siempre la misma: “la más gorda, es más barato el hardware que el precio las horas que gaste yo tuneándola”.

Pero, ¿qué pasa si esa calculadora guarda los datos en una BBDD Oracle? La película cambia…

A tener en cuenta

  • Los ejemplos concretos que pongan tendrá relación con x86 y Red Hat Enterprise Linux (RHEL), ya que es la plataforma con la que estoy más familiarizado pero las bases de estudio son extrapolables a otros sistemas
  • Solo vamos a hablar de las ediciones SE, SE1 y EE, por ser las típicas en aplicaciones empresariales
  • En todo momento vamos a dar por hecho que cualquiera de las ediciones de la BBDD de Oracle nos sirve para nuestros propósitos y eso es algo que tenéis que analizar

Conceptos

Vamos a empezar aclarando una serie de conceptos para no perdernos a lo largo del artículo.

Versión de la BBDD

Es lo que todos entendemos por versión. Ahora mismo la última versión es la 12.

Además del número de versión, Oracle añade una letra. Por ejemplo, las últimas versiones son 12c, 11g, 10g, 9i, 8i, etc.

Cada versión tiene una única letra para todas las releases de esa versión

La c es de Cloud, la g de Grid, y la i de Internet

Luego estan las releases, que añaden una R y un número de release ejemplo, 11g R2.

El número de versión completo es algo como 12.1.0.0.1 y la explicación de cada digito la tenéis aquí: Getting Started with Database Administration

Edición de la BBDD

Hay 5 ediciones de BBDD

    1. Oracle Database Standard Edition One (SE1).
    2. Oracle Database Standard Edition (SE)
    3. Oracle Database Enterprise Edition (EE)
    4. Oracle Database Express Edition (XE) .
    5. Oracle Database Personal Edition (PE)

Si quieres ver las diferencias entre las ediciones, puede ver los detalles en “Oracle Database Editions“.

Limitaciones de uso de las diferentes ediciones.

Oracle imponen dos tipos de limitaciones

  • Hardware permitido

La SE1 solo esta licenciada para que sea ejecutada en maquinas con un máximo de 2 sockets, por ejemplo

  • Funcionalidad

Oracle limita tanto la funcionalidad incluida, por ejemplo, Query Results Cache, como las opciones (de pago) que te permite usar, por ejemplo Oracle Spatial.

Pero para conocer cómo te afecta tendríamos que hablar de la aplicación que va a usar la BBDD, de tus requisitos no funcionales y de qué significa cada opción de la BBDD y todo eso no será hoy.

Sockets, CPUs y Cores

Socket es el espacio físico para “pinchar CPUs”.

CPU es el chip como tal, que puede incluir varios cores. Un sistema típico incluirá varias CPUs y cada una de estas varios cores. Por ejemplo, la CPU E7-8870 tiene 10 cores.

Tipos de licencias

Named user plus

Se paga por cada usuario que use el sistema.

Los usuarios son nominales, es decir, no son “usuarios concurrentes”, si no que la licencia se otorga a una persona con nombres y apellidos.

Permite que sea traspasada a otra pero para ello hay que hablar con Oracle

Los sistemas que accedan a la BBDD se consideran usuario también.

Además, hay un mínimo de usuarios a licenciar, dependiente de la BBDD, es decir, no se puede comprar una licencia para 2 usuarios de tipo Standard One, el mínimo son 5 en la SE1.

Processor

En esta modalidad se paga por el número de procesadores instalados y permite un número ilimitado de usuarios.

La licencia puede ser anual, pagando por cada año que se quiera disponer del producto, o perpetua, que da derecho a usarlo de por vida.

Soporte y actualización

El soporte es siempre anual, y es el 22% del importe de la licencia perpetua.

Da derecho a lo que todos conocemos por soporte y a la actualización a cualquier versión de la BBDD.

Hasta aquí ha llegado el primer Sprint, esto promete, permaneced atentos…