Datacenter Challenges in Selecting Hardware, Selecting Software, Creating Balanced Systems
Datacenter Challenges in Selecting Hardware, Selecting Software,
and Creating Balanced Systems
Dr. John R Busch, CTO and Founder
Datacenter quality-of-service and total cost of ownership have a major impact on the success of any enterprise. Solution architects and datacenter managers seek architectures and deployments that provide excellent performance scalability and high service availability to effectively meet rising service demand, while controlling capital and operating expenses.
Tremendous technology advances have been made in recent years. But it is a major engineering effort to define and develop highly-effective hardware and software architectures and deployment technologies and implementations that can meet datacenter performance, availability and cost objectives.
In order to deliver cost-effective, high-performance, highly-available solutions, we need to carefully integrate technologies to create balanced networked system configurations for targeted workloads.
When configuring servers for a workload, we must ask:
- How much DRAM, how many processor cores, what storage (flash, hard disk drives)?
- Are the software and hardware effectively integrated?
- What caching levels are required to exploit DRAM and flash and disk access time and bandwidth variations?
- Is there sufficient thread-level parallelism and concurrency control to exploit more processor cores and flash IOPS?
Service availability is as important as performance scalability.
- To what extent should failure tolerance be handled by replication at the component level (e.g. RAID of hard disks and flash drives, redundant fans and power supplies, etc.), between systems with low-level replication and recovery mechanisms, or at the distributed application level?
How much networking capacity is required between clients and servers and among servers?
Where are the performance bottlenecks? How can the performance scalability be improved? What is the resulting service availability, and how can it be improved and at what cost? What is the total cost of ownership, and how is it affected by technology choices we are considering?
Technology selection is complicated by confusion in the market around the relative benefits of different technologies.
- When combined into a standard server with real workloads, what is the application-level performance difference, system cost difference, and the actual resulting Price/Performance of using $15,000 PCI-e based flash cards as opposed to an array of $750 flash SSDs ?
- How much application-level performance improvement will be achieved by going to servers with 6- and 8- core processors vs 4-core processors, and what is the resulting price/performance?
- To what extent will 10/40 Gb Ethernet or Infiniband technology improve data center quality-of-service, and at what cost?
- Which applications are best suited to a SQL or NoSQL data-access architecture?
- For which application scenarios can Cassandra, Couch, MongoDB, etc. effectively replace databases and what is the resulting scalability, performance, availability, and cost?
Which experiments, measurement and analysis tools, and studies can help determine the best technology choices, balanced system configurations, and the optimal software, high availability, and deployment architectures for your workloads?
Our Schooner research focuses on answering these questions.