14.3 ¿Cómo escoger tecnología?

Por ejemplo, retomando sólo tomando el tema anterior, API gateways - existen al menos dos grandes opciones:

Oferta en la nube * Azure y Amazon ofrecen sistemas propietarios de API Management * Robustos, muy bien conectado * Costo por uso * Sin costo de adquisición de equipo On premise * Se puede utilizar Software Libre * Costo anual por soporte * Con costo de adquisición de equipo * Depende de la conexión del data center.

Procesamiento de datos tiene una disyuntiva similar, procesar en:

  • Data center propio
  • Google
  • Amazon

… Y más …

  • Software propietario
  • Software libre

… Y más …

  • Python
  • R
  • Java

Bases de datos:

  • Relacional (MySQL, SQL Server, PostgreSQL,…)
  • No-relacional (MongoDB, CouchDB, Cassandra,…)

Procesamiento y consulta de Big Data:

  • Spark
  • Hadoop
  • Kubernetes
  • Docker (swarm)
  • Hive
  • Kafka

Motores de búsqueda:

  • Solr
  • Elasticsearch

Servidores de mapas:

  • Geoserver
  • Mapnik
  • Mapserver

Una de las tareas principales de los DevOps, analistas y sobre todo, líderes de equipo será el de diseñar bien los flujos de trabajo y por tanto los pipelines. Esto implica no sólo plantear bien qué se hará si no también cómo y con qué tecnología. Investigar qué utilizar para cada parte puede ser una tarea abrumadora ¡pero es terriblemente necesaria!

En los mismos equipos de 3 y retomando su pipeline propuesto, intentar asignar tecnología a las distintas partes de su pipeline.

Tarea: leer sobre docker