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
- 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