This document discusses matching data intensive applications to hardware and software architectures. It provides examples of over 50 big data applications and analyzes their characteristics to identify common patterns. These patterns are used to propose a "big data version" of the Berkeley dwarfs and NAS parallel benchmarks for evaluating data-intensive systems. The document also analyzes hardware architectures from clouds to HPC and proposes integrating HPC concepts into the Apache software stack to develop an HPC-ABDS software stack for high performance data analytics. Key aspects of applications, hardware, and software architectures are illustrated with examples and diagrams.