This proposal developed an algorithmic foundation for big and fast data analytics that supports not only the scale of data analytics, but also perpetual, low-latency processing for a broad set of analytical tasks. Prior to this project, data analytics systems fell short due to the lack of support of complex analytics with scale, low latency, and strong guarantees of user performance requirements. More specifically, our project addressed the following topics:
Optimization of Cloud Analytics: Our first focus was a principled optimization system for supporting big and fast data analytics for numerous cloud users. As a big data system has hundreds of parameters that control the degree of parallelism, memory allocation, granularity of scheduling, etc., different settings of them lead to drastically different performance regarding user objectives like latency, throughput, and cloud cost. It is crucial to find the optimal configuration of this large set of parameters that best meets the user objectives. To this end, we designed the first multi-objective cloud analytics optimizer can automatically determine all the tunable parameters of an analytics job, collectively called a job configuration, based on user objectives. While multi-objective optimization (MOO) has been studied in the theory community, we addressed the distinct challenges in designing an optimizer for cloud analytics, i.e. highly diverse workloads and system behaviors, large numbers of parameters, and the requirement of low solving time to avoid delays in starting a job.
Stream Analytics: Our second focus was new algorithms for eXplainable Anomaly Detection (XAD) on data streams, which finds application in numerous use cases such as safeguarding financial systems and numerous IT systems. Yet, the literature lacked an algorithmic solution that adapts to complex, evolving patterns, provides human-readable, actionable insights, and does so at stream speed. Our project devised a new algorithmic framework to meet these challenges.
Exploratory Analytics: We further developed algorithms for a new form of big data analytics with human-in-the-loop: the human user is interactively exploring a large data repository and expects the system to provide support for efficiently and effectively achieving user data exploration goals. We proposed a large suit of algorithms to expedite data exploration on large databases and RDF graphs.