  The complexity and diversity of big data and AI workloads make understanding
them difficult and challenging. This paper proposes a new approach to modelling
and characterizing big data and AI workloads. We consider each big data and AI
workload as a pipeline of one or more classes of units of computation performed
on different initial or intermediate data inputs. Each class of unit of
computation captures the common requirements while being reasonably divorced
from individual implementations, and hence we call it a data motif. For the
first time, among a wide variety of big data and AI workloads, we identify
eight data motifs that take up most of the run time of those workloads,
including Matrix, Sampling, Logic, Transform, Set, Graph, Sort and Statistic.
We implement the eight data motifs on different software stacks as the micro
benchmarks of an open-source big data and AI benchmark suite ---BigDataBench
4.0 (publicly available from http://prof.ict.ac.cn/BigDataBench), and perform
comprehensive characterization of those data motifs from perspective of data
sizes, types, sources, and patterns as a lens towards fully understanding big
data and AI workloads. We believe the eight data motifs are promising
abstractions and tools for not only big data and AI benchmarking, but also
domain-specific hardware and software co-design.
