Chapter 9. Choosing the Best Deployment Option

As data-driven organizations move away from “big iron” appliances to agile infrastructures that favor agility and flexibility to scale, IT departments face multiple options to meet real-time demands. In this chapter we will look at the deployment decisions to consider across bare metal, virtual machines and containers, and the cloud, as shown in Figure 9-1.

Figure 9-1. Flexible deployments for in-memory systems

Considerations for Bare Metal

Bare metal deployments provide the most direct access to the underlying hardware thereby maximizing performance on a per CPU or per GB of RAM basis. If new server purchases are required, bare metal environments can have a larger upfront cost, but they provide more cost-effective operation in the long run if the dataset and size remain relatively predictable.

Bare metal environments are mostly complemented by on-premises deployments, and in some cases cloud providers offer bare metal deployments.

Virtual Machine (VM) and Container Considerations

When working with a dataset and workload that require the agility and flexibility to scale as needed, virtual environments can be the right choice. Virtual machines offer many benefits such as fast server provisioning, fewer hardware restrictions, and easier migration to the cloud.

Containers are another option; they offer many of the benefits of virtual ...

Get Building Real-Time Data Pipelines now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.