Demo Data from SIGIR 2026 / reviewers in the wild / expert
Matteo Interlandi
dblp:49/10034
· DBLP profile ↗
57ranked-venue papers
6as first author
26since 2021 · last 2026
0000-0002-5756-8321ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Databases, data management, data science and information retrieval · 39 · 4 first-author · 24 since 2021Systems, architecture and hardware · 9 · 1 first-author · 1 since 2021Software engineering, systems software and programming languages · 7 · 1 first-authorArtificial intelligence and machine learning · 4 · 1 since 2021Applied, interdisciplinary, general and emerging computing · 1
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Databases, data mining, and information retrieval
30 papers |
Query processing and optimization · 44% Machine learning and data management · 28% Database system architecture and tuning · 14% | |
| Computer architecture, parallel and distributed computing, and storage systems
18 papers |
GPUs and heterogeneous computing · 36% Cloud and datacenter computing · 22% Storage systems · 13% | |
| Software engineering, system software, and programming languages
7 papers |
Debugging and program repair · 56% Compilers and program optimization · 23% Software maintenance and evolution · 14% |
Topics — the 30 heaviest of 69, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
GPUs and heterogeneous computing
GPU computing |
1.9 | 2 | 2026 | Scalable GPU Acceleration of Scalar Functions in Analytical Databases: Compilation, Benchmarking, and Optimization · Proc. VLDB Endow. 2026 GPU Acceleration of SQL Analytics on Compressed Data · Proc. VLDB Endow. 2025 |
Query processing and optimization › query execution › hardware-accelerated query processing
GPU-accelerated query processing |
1.7 | 2 | 2025 | Scaling GPU-Accelerated Databases beyond GPU Memory Size · Proc. VLDB Endow. 2025 GPU Acceleration of SQL Analytics on Compressed Data · Proc. VLDB Endow. 2025 |
Query processing and optimization
query optimization |
1.6 | 3 | 2022 | Deploying a Steered Query Optimizer in Production at Microsoft · SIGMOD Conference 2022 Phoebe: A Learning-based Checkpoint Optimizer · Proc. VLDB Endow. 2021 Steering Query Optimizers: A Practical Take on Big Data Workloads · SIGMOD Conference 2021 |
GPUs and heterogeneous computing
GPU database system |
1.5 | 2 | 2025 | Scaling GPU-Accelerated Databases beyond GPU Memory Size · Proc. VLDB Endow. 2025 GPU Database Systems Characterization and Optimization · Proc. VLDB Endow. 2023 |
Query processing and optimization
analytical query processing |
1.3 | 2 | 2026 | Scalable GPU Acceleration of Scalar Functions in Analytical Databases: Compilation, Benchmarking, and Optimization · Proc. VLDB Endow. 2026 Scaling GPU-Accelerated Databases beyond GPU Memory Size · Proc. VLDB Endow. 2025 |
Data mining
large-scale data analytics |
0.9 | 1 | 2025 | Terabyte-Scale Analytics in the Blink of an Eye · Proc. VLDB Endow. 2025 |
Cloud and datacenter computing
cluster resource management and scheduling |
0.9 | 3 | 2021 | Phoebe: A Learning-based Checkpoint Optimizer · Proc. VLDB Endow. 2021 Apache REEF: Retainable Evaluator Execution Framework · ACM Trans. Comput. Syst. 2017 Titian: Data Provenance Support in Spark · Proc. VLDB Endow. 2015 |
Machine learning and data management
learned database components |
0.8 | 3 | 2021 | Machine Learning for Cloud Data Systems: the Promise, the Progress, and the Path Forward · Proc. VLDB Endow. 2021 Phoebe: A Learning-based Checkpoint Optimizer · Proc. VLDB Endow. 2021 Steering Query Optimizers: A Practical Take on Big Data Workloads · SIGMOD Conference 2021 |
Debugging and program repair › software debugging
interactive debugging |
0.8 | 3 | 2017 | Debugging Big Data Analytics in Spark with BigDebug · SIGMOD Conference 2017 BigDebug: interactive debugger for big data analytics in Apache Spark · SIGSOFT FSE 2016 BigDebug: debugging primitives for interactive big data processing in spark · ICSE 2016 |
Data integration and cleaning › data quality
data debugging |
0.8 | 1 | 2024 | Data Debugging with Shapley Importance over Machine Learning Pipelines · ICLR 2024 |
Machine learning and data management
data management for machine learning |
0.7 | 2 | 2024 | Machine Learning for Cloud Data Systems: the Promise, the Progress, and the Path Forward · Proc. VLDB Endow. 2021 Data Debugging with Shapley Importance over Machine Learning Pipelines · ICLR 2024 |
Machine learning and data management
machine learning pipeline |
0.7 | 2 | 2024 | WindTunnel: Towards Differentiable ML Pipelines Beyond a Single Modele · Proc. VLDB Endow. 2021 Data Debugging with Shapley Importance over Machine Learning Pipelines · ICLR 2024 |
Database system architecture and tuning
database benchmarking |
0.7 | 1 | 2023 | Unshackling Database Benchmarking from Synthetic Workloads · ICDE 2023 |
Machine learning and data management › data management for machine learning
feature store |
0.7 | 1 | 2023 | Optimizing Data Pipelines for Machine Learning in Feature Stores · Proc. VLDB Endow. 2023 |
Machine learning and data management › in-database machine learning
in-database inference |
0.7 | 1 | 2023 | Pushing ML Predictions Into DBMSs · IEEE Trans. Knowl. Data Eng. 2023 |
Machine learning and data management
in-database machine learning |
0.7 | 1 | 2023 | Pushing ML Predictions Into DBMSs · IEEE Trans. Knowl. Data Eng. 2023 |
Query processing and optimization › query optimization › join ordering
join optimization |
0.7 | 1 | 2023 | Optimizing Data Pipelines for Machine Learning in Feature Stores · Proc. VLDB Endow. 2023 |
Database system architecture and tuning
query workload generation |
0.7 | 1 | 2023 | Unshackling Database Benchmarking from Synthetic Workloads · ICDE 2023 |
Storage systems › data management › database storage
columnar storage |
0.7 | 1 | 2023 | A Deep Dive into Common Open Formats for Analytical DBMSs · Proc. VLDB Endow. 2023 |
Storage systems › data representation
file format |
0.7 | 1 | 2023 | A Deep Dive into Common Open Formats for Analytical DBMSs · Proc. VLDB Endow. 2023 |
Cloud and datacenter computing
resource allocation |
0.7 | 1 | 2023 | GPU Database Systems Characterization and Optimization · Proc. VLDB Endow. 2023 |
Performance modeling and evaluation › analytical modeling
roofline model |
0.7 | 1 | 2023 | GPU Database Systems Characterization and Optimization · Proc. VLDB Endow. 2023 |
Query processing and optimization › parallel query processing
heterogeneous hardware query processing |
0.6 | 1 | 2022 | Query Processing on Tensor Computation Runtimes · Proc. VLDB Endow. 2022 |
Query processing and optimization
query execution |
0.6 | 1 | 2022 | Query Processing on Tensor Computation Runtimes · Proc. VLDB Endow. 2022 |
Graph data management
graph processing |
0.5 | 1 | 2021 | Tensors: An abstraction for general data processing · Proc. VLDB Endow. 2021 |
Query processing and optimization › query optimization › learned query optimization
learned query optimizer |
0.5 | 1 | 2021 | Steering Query Optimizers: A Practical Take on Big Data Workloads · SIGMOD Conference 2021 |
Machine learning and data management › inference serving
ML inference |
0.5 | 1 | 2021 | Transforming ML Predictive Pipelines into SQL with MASQ · SIGMOD Conference 2021 |
Query processing and optimization › query planning
query plan selection |
0.5 | 1 | 2021 | Steering Query Optimizers: A Practical Take on Big Data Workloads · SIGMOD Conference 2021 |
Query processing and optimization
SQL query processing |
0.5 | 1 | 2021 | Transforming ML Predictive Pipelines into SQL with MASQ · SIGMOD Conference 2021 |
Distributed systems › distributed data processing
dataflow systems |
0.5 | 1 | 2021 | SEIZE: Runtime Inspection for Parallel Dataflow Systems · IEEE Trans. Parallel Distributed Syst. 2021 |
Methods — techniques the papers use, named apart from their topics
benchmarking · 4.3compilation · 3.5operator offloading · 1.7data filtering · 1.7compression · 1.7machine learning · 1.7tensor compilation · 1.4scikit-learn · 1.3operator fusion · 0.9continuous integration · 0.9shapley value · 0.8monte carlo approximation · 0.8ML.NET · 0.8roofline model · 0.7microarchitectural analysis · 0.7format evaluation · 0.7Multi-Instance GPU · 0.7tensor computation · 0.5
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | Scalable GPU Acceleration of Scalar Functions in Analytical Databases: Compilation, Benchmarking, and Optimization
Kaushik Rajan, Sampath Rajendra, Momin Al-Ghosien, Nicolas Bruno, Carlo Curino, Matteo Interlandi, Yinan Li 0009, Lukas M. Maas, Craig Peeper, Surajit Chaudhuri, Johannes Gehrke |
Proc. VLDB Endow. | 6 |
| 2025 | FairnessEval: a Framework for Evaluating Fairness of Machine Learning Models
Andrea Baraldi 0002, Matteo Brucato, Miroslav Dudík, Francesco Guerra 0001, Matteo Interlandi |
EDBT | 5 |
| 2025 | GPU Acceleration of SQL Analytics on Compressed Data
Zezhou Huang, Krystian Sakowski, Hans Lehnert, Carlo Curino, Matteo Interlandi, Marius Dumitru, Rathijit Sen |
Proc. VLDB Endow. | 6 |
| 2025 | Scaling GPU-Accelerated Databases beyond GPU Memory SizeabstractThere has been considerable interest in leveraging GPUs' computational power and high memory bandwidth for analytical database workloads. However, their limited memory capacity remains a fundamental limitation for databases whose sizes far exceed the GPU memory size. This challenge is exacerbated by the slow PCIe data transfer speed, that creates a bottleneck in overall system performance. In this work, we introduce a hybrid CPU-GPU query processing strategy that leverages the distinct strengths of CPU and GPU to alleviate the data transfer bottleneck. Our approach performs highly efficient data filtering on the CPU, which substantially reduces the volume of data transferred to the GPU via PCIe, and offloads compute-intensive operators such as joins to the GPU for further processing. Our evaluation on the TPC-H benchmark at scale factors up to 1000 (1TB), using a single A100 GPU with 80GB memory, demonstrates that our approach can effectively handle datasets significantly larger than the GPU memory size. Moreover, it substantially outperforms a state-of-the-art CPU-only database system in both performance and cost-effectiveness. Yinan Li 0009, Bailu Ding, Ziyun Wei, Lukas M. Maas, Momin Al-Ghosien, Spyros Blanas, Nicolas Bruno, Carlo Curino, Matteo Interlandi, Craig Peeper, Kaushik Rajan, Surajit Chaudhuri, Johannes Gehrke |
Proc. VLDB Endow. | 9 |
| 2025 | Terabyte-Scale Analytics in the Blink of an Eye
Carlo Curino, Matteo Interlandi, Rathijit Sen |
Proc. VLDB Endow. | 4 |
| 2025 | Data formats in analytical DBMSs: performance trade-offs and future directionsabstractAbstract This paper evaluates the suitability of Apache Arrow, Parquet, and ORC as formats for subsumption in an analytical DBMS. We systematically identify and explore the high-level features that are important to support efficient querying in modern OLAP DBMSs and evaluate the ability of each format to support these features. We find that each format has trade-offs that make it more or less suitable for use as a format in a DBMS and identify opportunities to more holistically co-design a unified in-memory and on-disk data representation. Notably, for certain popular machine learning tasks, none of these formats perform optimally, highlighting significant opportunities for advancing format design. Our hope is that this study can be used as a guide for system developers designing and using these formats, as well as provide the community with directions to pursue for improving these common open formats. Chunwei Liu, Anna Pavlenko, Matteo Interlandi, Brandon Haynes |
VLDB J. | 3 |
| 2024 | Pushing ML Predictions into DBMSs (Extended Abstract)abstractWe explore the use of Relational Database Manage-ment Systems to reduce technical debt in Machine Learning de-ployments, specifically focusing on in-DBMS prediction serving. We evaluate the performance of ML pipelines in Sklearn and ML.NET against their SQL counterparts executed on MySQL and SQL Server. Results suggest comparable performance when data resides in the database, indicating the potential feasibility of executing prediction processes directly in SQL on DBMSs. Matteo Paganelli, Paolo Sottovia, Kwanghyun Park 0001, Matteo Interlandi, Francesco Guerra 0001 |
ICDE | 4 |
| 2024 | Data Debugging with Shapley Importance over Machine Learning PipelinesabstractWhen a machine learning (ML) model exhibits poor quality (e.g., poor accuracy or fairness), the problem can often be traced back to errors in the training data. Being able to discover the data examples that are the most likely culprits is a fundamental concern that has received a lot of attention recently. One prominent way to measure "data importance" with respect to model quality is the Shapley value. Unfortunately, existing methods only focus on the ML model in isolation, without considering the broader ML pipeline for data preparation and feature extraction, which appears in the majority of real-world ML code. This presents a major limitation to applying existing methods in practical settings. In this paper, we propose Datascope, a method for efficiently computing Shapley-based data importance over ML pipelines. We introduce several approximations that lead to dramatic improvements in terms of computational speed. Finally, our experimental evaluation demonstrates that our methods are capable of data error discovery that is as effective as existing Monte Carlo baselines, and in some cases even outperform them. We release our code as an open-source data debugging library available at https://github.com/easeml/datascope. Bojan Karlas, David Dao, Matteo Interlandi, Sebastian Schelter, Wentao Wu 0001, Ce Zhang 0001 |
ICLR | 3 |
| 2023 | The Tensor Data Platform: Towards an AI-centric Database System
Apurva Gandhi, Yuki Asada, Victor Fu, Advitya Gemawat, Rathijit Sen, Carlo Curino, Jesús Camacho-Rodríguez, Matteo Interlandi |
CIDR | 9 |
| 2023 | Query Processing on Gaming Consolesabstractresearch-article Share on Query Processing on Gaming Consoles Authors: Wei Cui Microsoft Research Asia, CN Microsoft Research Asia, CN 0009-0005-9362-3585View Profile , Qianxi Zhang Microsoft Research Asia, CN Microsoft Research Asia, CN 0000-0002-0646-5365View Profile , Spyros Blanas The Ohio State University, US The Ohio State University, US 0009-0004-2703-7177View Profile , Jesús Camacho-Rodríguez Microsoft, US Microsoft, US 0009-0008-9151-6024View Profile , Brandon Haynes Microsoft Gray Systems Lab, US Microsoft Gray Systems Lab, US 0000-0002-1501-9586View Profile , Yinan Li Microsoft Research, US Microsoft Research, US 0009-0004-5483-2862View Profile , Ravi Ramamurthy Microsoft, USA Microsoft, USA 0000-0002-3484-0038View Profile , Peng Cheng Microsoft Research, CN Microsoft Research, CN 0000-0003-4014-4757View Profile , Rathijit Sen Microsoft, US Microsoft, US 0000-0003-4736-2837View Profile , Matteo Interlandi Microsoft, US Microsoft, US 0000-0002-5756-8321View Profile Authors Info & Claims DaMoN '23: Proceedings of the 19th International Workshop on Data Management on New HardwareJune 2023Pages 86–88https://doi.org/10.1145/3592980.3595313Published:18 June 2023Publication History 0citation191DownloadsMetricsTotal Citations0Total Downloads191Last 12 Months191Last 6 weeks191 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteGet Access Qianxi Zhang, Spyros Blanas, Jesús Camacho-Rodríguez, Brandon Haynes, Yinan Li 0009, Ravishankar Ramamurthy, Peng Cheng 0005, Rathijit Sen, Matteo Interlandi |
DaMoN | 10 |
| 2023 | Unshackling Database Benchmarking from Synthetic WorkloadsabstractIntroducing new (learned) features into a DBMS requires considerable experimentation and benchmarking to avoid regressions in production (customer) workloads. Using standard benchmarks such as TPC-H and TCH-DS is common practice, but, unfortunately, these do not represent the complexity of real production workloads. To solve this problem, in this demo, we propose a technique that generates a synthetic dataset from query logs and metadata—without touching the original data. The keystone of our approach is to map the data generation as a SAT problem where constraints, such as runtime cardinalities, are extracted from query logs and metadata. We show that our approach can generate representative benchmarks mirroring the performance of the original data without trading off privacy. The demo will guide the attendees through the various steps involved in the data generation and testing process. Parimarjan Negi, Laurent Bindschaedler, Mohammad Alizadeh, Tim Kraska, Jyoti Leeka, Anja Gruenheid, Matteo Interlandi |
ICDE | 7 |
| 2023 | GPU Database Systems Characterization and OptimizationabstractGPUs offer massive parallelism and high-bandwidth memory access, making them an attractive option for accelerating data analytics in database systems. However, while modern GPUs possess more resources than ever before (e.g., higher DRAM bandwidth), efficient system implementations and judicious resource allocations for query processing are still necessary for optimal performance. Database systems can save GPU runtime costs through just-enough resource allocation or improve query throughput with concurrent query processing by leveraging new GPU resource-allocation capabilities, such as Multi-Instance GPU (MIG). In this paper, we do a cross-stack performance and resource-utilization analysis of four GPU database systems, including Crystal (the state-of-the-art GPU database, performance-wise) and TQP (the latest entry in the GPU database space). We evaluate the bottlenecks of each system through an in-depth microarchitectural study and identify resource underutilization by leveraging the classic roofline model. Based on the insights gained from our investigation, we propose optimizations for both system implementation and resource allocation, using which we are able to achieve 1.9x lower latency for single-query execution and up to 6.5x throughput improvement for concurrent query execution. Jiashen Cao, Rathijit Sen, Matteo Interlandi, Joy Arulraj, Hyesoon Kim |
Proc. VLDB Endow. | 3 |
| 2023 | Optimizing Data Pipelines for Machine Learning in Feature StoresabstractData pipelines (i.e., converting raw data to features) are critical for machine learning (ML) models, yet their development and management is time-consuming. Feature stores have recently emerged as a new "DBMS-for-ML" with the premise of enabling data scientists and engineers to define and manage their data pipelines. While current feature stores fulfill their promise from a functionality perspective, they are resource-hungry---with ample opportunities for implementing database-style optimizations to enhance their performance. In this paper, we propose a novel set of optimizations specifically targeted for point-in-time join, which is a critical operation in data pipelines. We implement these optimizations on top of Feathr: a widely-used feature store, and evaluate them on use cases from both the TPCx-AI benchmark and real-world online retail scenarios. Our thorough experimental analysis shows that our optimizations can accelerate data pipelines by up to 3× over state-of-the-art baselines. Rui Liu 0002, Kwanghyun Park 0001, Fotis Psallidas, Xiaoyong Zhu, Jinghui Mo, Rathijit Sen, Matteo Interlandi, Konstantinos Karanasos, Yuanyuan Tian 0001, Jesús Camacho-Rodríguez |
Proc. VLDB Endow. | 7 |
| 2023 | A Deep Dive into Common Open Formats for Analytical DBMSsabstractThis paper evaluates the suitability of Apache Arrow, Parquet, and ORC as formats for subsumption in an analytical DBMS. We systematically identify and explore the high-level features that are important to support efficient querying in modern OLAP DBMSs and evaluate the ability of each format to support these features. We find that each format has trade-offs that make it more or less suitable for use as a format in a DBMS and identify opportunities to more holistically co-design a unified in-memory and on-disk data representation. Our hope is that this study can be used as a guide for system developers designing and using these formats, as well as provide the community with directions to pursue for improving these common open formats. Chunwei Liu, Anna Pavlenko, Matteo Interlandi, Brandon Haynes |
Proc. VLDB Endow. | 3 |
| 2023 | Pushing ML Predictions Into DBMSsabstractIn the past decade, many approaches have been suggested to execute ML workloads on a DBMS. However, most of them have looked at in-DBMS ML from a training perspective, whereas ML inference has been largely overlooked. We think that this is an important gap to fill for two main reasons: (1) in the near future, every application will be infused with some sort of ML capability; (2) behind every web page, application, and enterprise there is a DBMS, whereby in-DBMS inference is an appealing solution both for efficiency (e.g., less data movement), performance (e.g., cross-optimizations between relational operators and ML) and governance. In this article, we study whether DBMSs are a good fit for prediction serving. We introduce a technique for translating trained ML pipelines containing both featurizers (e.g., one-hot encoding) and models (e.g., linear and tree-based models) into SQL queries, and we compare in-DBMS performance against popular ML frameworks such as Sklearn and ml.net. Our experiments show that, when pushed inside a DBMS, trained ML pipelines can have performance comparable to ML frameworks in several scenarios, while they perform quite poorly on text featurization and over (even simple) neural networks. Matteo Paganelli, Paolo Sottovia, Kwanghyun Park 0001, Matteo Interlandi, Francesco Guerra 0001 |
IEEE Trans. Knowl. Data Eng. | 4 |
| 2022 | End-to-end Optimization of Machine Learning Prediction QueriesabstractPrediction queries are widely used across industries to perform advanced analytics and draw insights from data. They include a data processing part (e.g., for joining, filtering, cleaning, featurizing the datasets) and a machine learning (ML) part invoking one or more trained models to perform predictions. These parts have so far been optimized in isolation, leaving significant opportunities for optimization unexplored. We present Raven, a production-ready system for optimizing prediction queries. Raven follows the enterprise architectural trend of collocating data and ML runtimes. It relies on a unified intermediate representation that captures both data and ML operators in a single graph structure to unlock two families of optimizations. First, it employs logical optimizations that pass information between the data part (and the properties of the underlying data) and the ML part to optimize each other. Second, it introduces logical-to-physical transformations that allow operators to be executed on different run-times (relational, ML, and DNN) and hardware (CPU, GPU). Novel data-driven optimizations determine the runtime to be used for each part of the query to achieve optimal performance. Our evaluation shows that Raven is able to improve performance of prediction queries on Apache Spark and SQL Server by up to 13.1x and 330x, respectively. Finally, for complex models where GPU acceleration is beneficial, Raven provides up to 8× speedup compared to state-of-the-art systems. Kwanghyun Park 0001, Karla Saur, Dalitso Banda, Rathijit Sen, Matteo Interlandi, Konstantinos Karanasos |
SIGMOD Conference | 5 |
| 2022 | Deploying a Steered Query Optimizer in Production at MicrosoftabstractModern analytical workloads are highly heterogeneous and massively complex, making generic out of the box query optimizers untenable for many customers and scenarios. As a result, it is important to specialize these optimizers to instances of the workloads. In this paper, we continue a recent line of work in steering a query optimizer towards better plans for a given workload, and make major strides in pushing previous research ideas to production deployment. Along the way we solve several operational challenges including, making steering actions more manageable, keeping the costs of steering within budget, and avoiding unexpected performance regressions in production. Our resulting system, QO-Advisor, essentially externalizes the query planner to a massive offline pipeline for better exploration and specialization. We discuss various aspects of our design and show detailed results over production SCOPE workloads at Microsoft, where the system is currently enabled by default. Wangda Zhang, Matteo Interlandi, Paul Mineiro, Shi Qiao 0001, Nasim Ghazanfari, Karlen Lie, Marc T. Friedman, Rafah Hosn, Hiren Patel, Alekh Jindal |
SIGMOD Conference | 2 |
| 2022 | Share the Tensor Tea: How Databases can Leverage the Machine Learning EcosystemabstractWe demonstrate Tensor Query Processor (TQP): a query processor that automatically compiles relational operators into tensor programs. By leveraging tensor runtimes such as PyTorch, TQP is able to: (1) integrate with ML tools (e.g., Pandas for data ingestion, Tensorboard for visualization); (2) target different hardware (e.g., CPU, GPU) and software (e.g., browser) backends; and (3) end-to-end accelerate queries containing both relational and ML operators. TQP is generic enough to supports the TPC-H benchmark, and it provides performance that are comparable to, and often better than, that of specialized CPU and GPU query processors. Yuki Asada, Victor Fu, Apurva Gandhi, Advitya Gemawat, Ehi Nosakhare, Dalitso Banda, Rathijit Sen, Matteo Interlandi |
Proc. VLDB Endow. | 10 |
| 2022 | Query Processing on Tensor Computation RuntimesabstractThe huge demand for computation in artificial intelligence (AI) is driving unparalleled investments in hardware and software systems for AI. This leads to an explosion in the number of specialized hardware devices, which are now offered by major cloud vendors. By hiding the low-level complexity through a tensor-based interface, tensor computation runtimes (TCRs) such as PyTorch allow data scientists to efficiently exploit the exciting capabilities offered by the new hardware. In this paper, we explore how database management systems can ride the wave of innovation happening in the AI space. We design, build, and evaluate Tensor Query Processor (TQP): TQP transforms SQL queries into tensor programs and executes them on TCRs. TQP is able to run the full TPC-H benchmark by implementing novel algorithms for relational operators on the tensor routines. At the same time, TQP can support various hardware while only requiring a fraction of the usual development effort. Experiments show that TQP can improve query execution time by up to 10X over specialized CPU- and GPU-only systems. Finally, TQP can accelerate queries mixing ML predictions and SQL end-to-end, and deliver up to 9X speedup over CPU baselines. Dong He 0002, Supun Nakandala, Dalitso Banda, Rathijit Sen, Karla Saur, Kwanghyun Park 0001, Carlo Curino, Jesús Camacho-Rodríguez, Konstantinos Karanasos, Matteo Interlandi |
Proc. VLDB Endow. | 10 |
| 2021 | Transforming ML Predictive Pipelines into SQL with MASQabstractInference of Machine Learning (ML) models, i.e. the process of obtaining predictions from trained models, is often an overlooked problem. Model inference is however one of the main contributors of both technical debt in ML applications and infrastructure complexity. MASQ is a framework able to run inference of ML models directly on DBMSs. MASQ not only averts expensive data movements for those predictive scenarios where data resides on a database, but it also naturally exploits all the "Enterprise-grade" features such as governance, security and auditability which make DBMSs the cornerstone of many businesses. MASQ compiles trained models and ML pipelines implemented in scikit-learn directly into standard SQL: no UDFs nor vendor-specific syntax are used, and therefore queries can be readily executed on any DBMS. In this demo, we will showcase MASQ's capabilities through a GUI allowing attendees to: (1) train ML pipelines composed of data featurizers and ML models; (2) compile the trained pipelines into SQL, and deploy them on different DBMSs (MySQL and SQLServer in the demo); and (3) compare the related performance under different configurations (e.g., the original pipeline on the ML framework against the SQL implementations). Francesco Del Buono, Matteo Paganelli, Paolo Sottovia, Matteo Interlandi, Francesco Guerra 0001 |
SIGMOD Conference | 4 |
| 2021 | Steering Query Optimizers: A Practical Take on Big Data WorkloadsabstractIn recent years, there has been tremendous interest in research that applies machine learning to database systems. Being one of the most complex components of a DBMS, query optimizers could benefit from adaptive policies that are learned systematically from the data and the query workload. Recent research has brought up novel ideas towards a learned query optimizer, however these ideas have not been evaluated on a commercial query processor or on large scale, real-world workloads. In this paper, we take the approach used by Marcus et al. in Bao and adapt it to SCOPE, a big data system used internally at Microsoft. Along the way, we solve multiple new challenges: we define how optimizer rules affect final query plans by introducing the concept of a rule signature, we devise a pipeline computing interesting rule configurations for recurring jobs, and we define a new learning problem allowing us to apply such interesting rule configurations to previously unseen jobs. We evaluate the efficacy of the approach on production workloads that include 150K daily jobs. Our results show that alternative rule configurations can generate plans with lower costs, and this can translate to runtime latency savings of 7-30% on average and up to 90% for a non trivial subset of the workload. Parimarjan Negi, Matteo Interlandi, Ryan Marcus, Mohammad Alizadeh, Tim Kraska, Marc T. Friedman, Alekh Jindal |
SIGMOD Conference | 2 |
| 2021 | Machine Learning for Cloud Data Systems: the Promise, the Progress, and the Path ForwardabstractThe goal of this tutorial is to educate the audience about the state of the art in ML for cloud data systems, both in research and in practice. The tutorial is divided in two parts: the progress, and the path forward. Part I covers the recent successes in deploying machine learning solutions for cloud data systems. We will discuss the practical considerations taken into account and the progress made at various levels. The goal is to compare and contrast the promise of ML for systems with the ground actually covered in industry. Finally, Part II discusses practical issues of machine learning in the enterprise covering the generation of explanations, model debugging, model deployment, model management, constraints on eyes-on data usage and anonymization, and a discussion of the technical debt that can accrue through machine learning and models in the enterprise. Alekh Jindal, Matteo Interlandi |
Proc. VLDB Endow. | 2 |
| 2021 | Tensors: An abstraction for general data processingabstractDeep Learning (DL) has created a growing demand for simpler ways to develop complex models and efficient ways to execute them. Thus, a significant effort has gone into frameworks like PyTorch or TensorFlow to support a variety of DL models and run efficiently and seamlessly over heterogeneous and distributed hardware. Since these frameworks will continue improving given the predominance of DL workloads, it is natural to ask what else can be done with them. This is not a trivial question since these frameworks are based on the efficient implementation of tensors, which are well adapted to DL but, in principle, to nothing else. In this paper we explore to what extent Tensor Computation Runtimes (TCRs) can support non-ML data processing applications, so that other use cases can take advantage of the investments made on TCRs. In particular, we are interested in graph processing and relational operators, two use cases very different from ML, in high demand, and complement quite well what TCRs can do today. Building on HUMMINGBIRD, a recent platform converting traditional machine learning algorithms to tensor computations, we explore how to map selected graph processing and relational operator algorithms into tensor computations. Our vision is supported by the results: our code often outperforms custom-built C++ and CUDA kernels, while massively reducing the development effort, taking advantage of the cross-platform compilation capabilities of TCRs. Dimitrios Koutsoukos, Supun Nakandala, Konstantinos Karanasos, Karla Saur, Gustavo Alonso, Matteo Interlandi |
Proc. VLDB Endow. | 6 |
| 2021 | WindTunnel: Towards Differentiable ML Pipelines Beyond a Single ModeleabstractWhile deep neural networks (DNNs) have shown to be successful in several domains like computer vision, non-DNN models such as linear models and gradient boosting trees are still considered state-of-the-art over tabular data. When using these models, data scientists often author machine learning (ML) pipelines: DAG of ML operators comprising data transforms and ML models, whereby each operator is sequentially trained one-at-a-time. Conversely, when training DNNs, layers composing the neural networks are simultaneously trained using backpropagation. In this paper, we argue that the training scheme of ML pipelines is sub-optimal because it tries to optimize a single operator at a time thus losing the chance of global optimization. We therefore propose WindTunnel: a system that translates a trained ML pipeline into a pipeline of neural network modules and jointly optimizes the modules using backpropagation. We also suggest translation methodologies for several non-differentiable operators such as gradient boosting trees and categorical feature encoders. Our experiments show that fine-tuning of the translated WindTunnel pipelines is a promising technique able to increase the final accuracy. Gyeong-In Yu, Saeed Amizadeh, Sehoon Kim 0001, Artidoro Pagnoni, Ce Zhang 0001, Byung-Gon Chun, Markus Weimer, Matteo Interlandi |
Proc. VLDB Endow. | 8 |
| 2021 | Phoebe: A Learning-based Checkpoint OptimizerabstractEasy-to-use programming interfaces paired with cloud-scale processing engines have enabled big data system users to author arbitrarily complex analytical jobs over massive volumes of data. However, as the complexity and scale of analytical jobs increase, they encounter a number of unforeseen problems, hotspots with large intermediate data on temporary storage, longer job recovery time after failures, and worse query optimizer estimates being examples of issues that we are facing at Microsoft. To address these issues, we propose Phoebe, an efficient learning-based checkpoint optimizer. Given a set of constraints and an objective function at compile-time, Phoebe is able to determine the decomposition of job plans, and the optimal set of checkpoints to preserve their outputs to durable global storage. Phoebe consists of three machine learning predictors and one optimization module. For each stage of a job, Phoebe makes accurate predictions for: (1) the execution time, (2) the output size, and (3) the start/end time taking into account the inter-stage dependencies. Using these predictions, we formulate checkpoint optimization as an integer programming problem and propose a scalable heuristic algorithm that meets the latency requirement of the production environment. We demonstrate the effectiveness of Phoebe in production workloads, and show that we can free the temporary storage on hotspots by more than 70% and restart failed jobs 68% faster on average with minimum performance impact. Phoebe also illustrates that adding multiple sets of checkpoints is not cost-efficient, which dramatically reduces the complexity of the optimization. Matteo Interlandi, Abhishek Roy 0008, Krishnadhan Das, Hiren Patel, Malay Bag, Hitesh Sharma, Alekh Jindal |
Proc. VLDB Endow. | 2 |
| 2021 | SEIZE: Runtime Inspection for Parallel Dataflow SystemsabstractMany Data-Intensive Scalable Computing (DISC) Systems provide easy-to-use functional APIs, and efficient scheduling and execution strategies allowing users to build concise data-parallel programs. In these systems, data transformations are concealed by exposed APIs, and intermediate execution states are masked under dataflow transitions. Consequently, many crucial features and optimizations (e.g., debugging, data provenance, runtime skew detection), which require runtime datafow states, are not well-supported. Inspired by our experience in implementing features and optimizations over DISC systems, we present SEIZE, a unified framework that enables dataflow inspection-wiretapping the data-path with listening logic-in MapReduce-style programming model. We generalize our lessons learned by providing a set of primitives defining dataflow inspection, orchestration options for different inspection granularities, and operator decomposition and dataflow punctuation strategy for dataflow intervention. We demonstrate the generality and flexibility of the approach by deploying SEIZE in both Apache Spark and Apache Flink, and by implementing a prototype runtime query optimizer for Spark. Our experiments show that, the overhead introduced by the inspection logic is most of the time negligible (less than 5 percent in Spark and 10 percent in Flink). Youfu Li 0003, Matteo Interlandi, Fotis Psallidas, Wei Wang 0010, Carlo Zaniolo |
IEEE Trans. Parallel Distributed Syst. | 2 |
| 2020 | Cloudy with high chance of DBMS: a 10-year prediction for Enterprise-Grade ML
Ashvin Agrawal, Rony Chatterjee, Carlo Curino, Avrilia Floratou, Neha Godwal, Matteo Interlandi, Alekh Jindal, Konstantinos Karanasos, Subru Krishnan, Brian Kroth, Jyoti Leeka, Kwanghyun Park 0001, Hiren Patel, Olga Poppe, Fotis Psallidas, Raghu Ramakrishnan 0001, Abhishek Roy 0008, Karla Saur, Rathijit Sen, Markus Weimer, Travis Wright |
CIDR | 6 |
| 2020 | Extending Relational Query Processing with ML Inference
Konstantinos Karanasos, Matteo Interlandi, Fotis Psallidas, Rathijit Sen, Kwanghyun Park 0001, Ivan Popivanov, Doris Xin, Supun Nakandala, Subru Krishnan, Markus Weimer, Raghu Ramakrishnan 0001, Carlo Curino |
CIDR | 2 |
| 2020 | SEIZE User Desired Moments: Runtime Inspection for Parallel Dataflow SystemsabstractIn Data-Intensive Scalable Computing (DISC) Systems, data transformations are concealed by exposed APIs, and intermediate execution moments are masked under dataflow transitions. Consequently, many crucial features and optimizations (e.g., debugging, data provenance, runtime skew detection) are not well-supported. Inspired by our experience in implementing features and optimizations over DISC systems, we present SEIZE, a unified framework that enables dataflow inspection- wiretapping the data-path with listening logic -in MapReduce-style programming model. We generalize our lessons learned by providing a set of primitives defining dataflow inspection, orchestration options for different inspection granularities, and operator decomposition and dataflow puncutation strategy for dataflow intervention. We demonstrate the generality and flexibility of the approach by deploying SEIZE in both Apache Spark and Apache Flink. Our experiments show that, the overhead introduced by the inspection logic is most of the time negligible (less than 5% in Spark and 10% in Flink). Youfu Li 0003, Matteo Interlandi, Fotis Psallidas, Wei Wang 0010, Carlo Zaniolo |
ICDCS | 2 |
| 2020 | Building Continuous Integration Services for Machine LearningabstractContinuous integration (CI) has been a de facto standard for building industrial-strength software. Yet, there is little attention towards applying CI to the development of machine learning (ML) applications until the very recent effort on the theoretical side. In this paper, we take a step forward to bring the theory into practice. Bojan Karlas, Matteo Interlandi, Cédric Renggli, Wentao Wu 0001, Ce Zhang 0001, Deepak Mukunthu Iyappan Babu, Jordan Edwards, Chris Lauren, Andy Xu, Markus Weimer |
KDD | 2 |
| 2020 | A Tensor Compiler for Unified Machine Learning Prediction Serving
Supun Nakandala, Karla Saur, Gyeong-In Yu, Konstantinos Karanasos, Carlo Curino, Markus Weimer, Matteo Interlandi |
OSDI | 7 |
| 2020 | Explaining data with descriptions
Matteo Paganelli, Paolo Sottovia, Antonio Maccioni, Matteo Interlandi, Francesco Guerra 0001 |
Inf. Syst. | 4 |
| 2019 | Understanding Data in the Blink of an EyeabstractMany data analysis and knowledge mining tasks require a basic understanding of the content of a dataset prior to any data access. In this demo, we showcase how data descriptions---a set of compact, readable and insightful formulas of boolean predicates---can be used to guide users in understanding datasets. Finding the best description for a dataset is, unfortunately, both computationally hard and task-specific. This demo shows that not only we can generate descriptions at interactive speed, but also that diverse user needs---from anomaly detection to data exploration---can be accommodated through a user-driven process exploiting dynamic programming in concert with a set of heuristics. Matteo Paganelli, Paolo Sottovia, Antonio Maccioni, Matteo Interlandi, Francesco Guerra 0001 |
CIKM | 4 |
| 2019 | Acorn: Aggressive Result Caching in Distributed Data Processing FrameworksabstractResult caching is crucial to the performance of data processing systems, but two trends complicate its use. First, immutable datasets make it difficult to efficiently employ powerful result caching techniques like predicate analysis, since predicate analysis typically requires optimized query plans but generating those plans can be costly with data immutability. Second, increased support for user-defined functions (UDFs), which are treated as black boxes by query engines, hinders aggressive result caching. This paper overcomes these problems by introducing 1) a judicious adaptation of predicate analysis on analyzed query plans that avoids unnecessary query optimization, and 2) a UDF translator that transparently compiles UDFs from general purpose languages into native equivalents. We then present Acorn, a concrete implementation of these techniques in Spark SQL that provides speedups of up to 5x across multiple benchmark and real Spark graph processing workloads. Lana Ramjit, Matteo Interlandi, Eugene Wu 0002, Ravi Netravali |
SoCC | 2 |
| 2019 | Coded Elastic ComputingabstractCloud providers have recently introduced new offerings whereby spare computing resources are accessible at discounts compared to on-demand computing. Exploiting such opportunity is challenging inasmuch as such resources are accessed with low-priority and therefore can elastically leave (through preemption) and join the computation at any time. In this paper, we design a new technique called coded elastic computing enabling distributed computations over elastic resources. The proposed technique allows machines to leave the computation without sacrificing the algorithm-level performance, and, at the same time, flexibly reduce the workload at existing machines when new ones join the computation. Leveraging coded redundancy, our approach is able to achieve similar computational cost as the original (uncoded) method when all machines are present; the cost gracefully increases when machines are preempted and reduces when machines join. The performance of the proposed technique is evaluated on matrix-vector multiplication and linear regression tasks, and shows improvements over existing techniques. Yaoqing Yang 0002, Matteo Interlandi, Pulkit Grover, Soummya Kar, Saeed Amizadeh, Markus Weimer |
ISIT | 2 |
| 2019 | Machine Learning at Microsoft with ML.NETabstractMachine Learning is transitioning from an art and science into a technology available to every developer. In the near future, every application on every platform will incorporate trained models to encode data-based decisions that would be impossible for developers to author. This presents a significant engineering challenge, since currently data science and modeling are largely decoupled from standard software development processes. This separation makes incorporating machine learning capabilities inside applications unnecessarily costly and difficult, and furthermore discourage developers from embracing ML in first place. In this paper we present ML.NET, a framework developed at Microsoft over the last decade in response to the challenge of making it easy to ship machine learning models in large software applications. We present its architecture, and illuminate the application demands that shaped it. Specifically, we introduce DataView, the core data abstraction of ML.NET which allows it to capture full predictive pipelines efficiently and consistently across training and inference lifecycles. We close the paper with a surprisingly favorable performance study of ML.NET compared to more recent entrants, and a discussion of some lessons learned. Saeed Amizadeh, Mikhail Bilenko, Rogan Carr, Wei-Sheng Chin, Yael Dekel, Xavier Dupré, Vadim Eksarevskiy, Senja Filipi, Tom Finley, Abhishek Goswami, Monte Hoover, Scott Inglis, Matteo Interlandi, Najeeb Kazmi, Gleb Krivosheev, Pete Luferenko, Ivan Matantsev, Sergiy Matusevych, Shahab Moradi, Gani Nazirov, Justin Ormont, Gal Oshri, Artidoro Pagnoni, Jignesh Parmar, Prabhat Roy, Mohammad Zeeshan Siddiqui, Markus Weimer, Shauheen Zahirazami |
KDD | 14 |
| 2018 | RIOS: Runtime Integrated Optimizer for SparkabstractMany Data-Intensive Scalable Computing (DISC) systems do not support sophisticated cost-based query optimizers because they lack the necessary data statistics. Consequently many crucial optimizations, such as join order and plan selection, are not well supported in DISC systems. RIOS is a Runtime Integrated Optimizer for Spark that lazily binds to execution plans at runtime, after collecting the statistics needed to make more optimal decisions. We evaluate the efficacy of our approach and show that better plans can be derived at runtime, achieving more than an order-of-magnitude performance improvement compared to compile time generated plans produced by the Apache Spark rule-base optimizer. Youfu Li 0003, Ling Ding 0002, Matteo Interlandi |
SoCC | 4 |
| 2018 | PRETZEL: Opening the Black Box of Machine Learning Prediction Serving Systems
Yunseong Lee, Alberto Scolari, Byung-Gon Chun, Marco D. Santambrogio, Markus Weimer, Matteo Interlandi |
OSDI | 6 |
| 2018 | Scaling-up reasoning and advanced analytics on BigDataabstractAbstract BigDatalog is an extension of Datalog that achieves performance and scalability on both Apache Spark and multicore systems to the point that its graph analytics outperform those written in GraphX. Looking back, we see how this realizes the ambitious goal pursued by deductive database researchers beginning 40 years ago: this is the goal of combining the rigor and power of logic in expressing queries and reasoning with the performance and scalability by which relational databases managed BigData. This goal led to Datalog which is based on Horn Clauses like Prolog but employs implementation techniques, such as semi-naïve fixpoint and magic sets, that extend the bottom-up computation model of relational systems, and thus obtain the performance and scalability that relational systems had achieved, as far back as the 80s, using data-parallelization on shared-nothing architectures. But this goal proved difficult to achieve because of major issues at (i) the language level and (ii) at the system level. The paper describes how (i) was addressed by simple rules under which the fixpoint semantics extends to programs using count, sum and extrema in recursion, and (ii) was tamed by parallel compilation techniques that achieve scalability on multicore systems and Apache Spark. This paper is under consideration for acceptance in Theory and Practice of Logic Programming. Tyson Condie, Ariyam Das, Matteo Interlandi, Alexander Shkapsky, Mohan Yang, Carlo Zaniolo |
Theory Pract. Log. Program. | 3 |
| 2018 | A datalog-based computational model for coordination-free, data-parallel systemsabstractAbstract Cloud computingrefers to maximizing efficiency by sharing computational and storage resources, whiledata-parallel systemsexploit the resources available in the cloud to perform parallel transformations over large amounts of data. In the same line, considerable emphasis has been recently given to two apparently disjoint research topics:data-parallel, andeventually consistent, distributedsystems.Declarative networkinghas been recently proposed to ease the task of programming in the cloud, by allowing the programmer to express only the desired result and leave the implementation details to the responsibility of the run-time system. In this context, we deem it appropriate to propose a study on alogic-programming-based computational modelfor eventually consistent, data-parallel systems, the keystone of which is provided by the recent finding that the class of programs that can be computed in an eventually consistent, coordination-free way is that ofmonotonic programs. This principle is called Consistency and Logical Monotonicity (CALM) and has been proven by Amelootet al.for distributed, asynchronous settings. We advocate that CALM should be employed as a basic theoretical tool also for data-parallel systems, wherein computation usually proceeds synchronously in rounds and where communication is assumed to be reliable. We deem this problem relevant and interesting, especially for what concernsparallel dataflow optimizations. Nowadays, we are in fact witnessing an increasing concern about understanding which properties distinguish synchronous from asynchronous parallel processing, and when the latter can replace the former. It is general opinion that coordination-freedom can be seen as a major discriminant factor. In this work, we make the case that the current form of CALM does not hold in general for data-parallel systems, and show how, using novel techniques, the satisfiability of the CALM principle can still be obtained although just for the subclass of programs calledconnected monotonic queries. We complete the study with considerations on the relationships between our model and the one employed by Amelootet al., showing that our techniques subsume the latter when the synchronization constraints imposed on the system are loosened. Matteo Interlandi, Letizia Tanca |
Theory Pract. Log. Program. | 1 |
| 2018 | Adding data provenance support to Apache Spark
Matteo Interlandi, Ari Ekmekji, Kshitij Shah, Muhammad Ali Gulzar, Sai Deep Tetali, Miryung Kim, Todd D. Millstein, Tyson Condie |
VLDB J. | 1 |
| 2017 | Automated debugging in data-intensive scalable computingabstractDeveloping Big Data Analytics workloads often involves trial and error debugging, due to the unclean nature of datasets or wrong assumptions made about data. When errors (e.g., program crash, outlier results, etc.) arise, developers are often interested in identifying a subset of the input data that is able to reproduce the problem. BigSift is a new faulty data localization approach that combines insights from automated fault isolation in software engineering and data provenance in database systems to find a minimum set of failure-inducing inputs. BigSift redefines data provenance for the purpose of debugging using a test oracle function and implements several unique optimizations, specifically geared towards the iterative nature of automated debugging workloads. BigSift improves the accuracy of fault localizability by several orders-of-magnitude (∼103 to 107×) compared to Titian data provenance, and improves performance by up to 66× compared to Delta Debugging, an automated fault-isolation technique. For each faulty output, BigSift is able to localize fault-inducing data within 62% of the original job running time. Muhammad Ali Gulzar, Matteo Interlandi, Xueyuan Han, Tyson Condie, Miryung Kim |
SoCC | 2 |
| 2017 | Towards Accelerating Generic Machine Learning Prediction PipelinesabstractMachine Learning models are often composed by sequences of transformations. While this design makes easy to decompose and accelerate single model components at training time, predictions requires low latency and high performance predictability whereby end-to-end runtime optimizations and acceleration is needed to meet such goals. This paper shed some light on the problem by using a production-like model, and showing how by redesigning model pipelines for efficient execution over CPUs and FPGAs performance improvements of several folds can be achieved. Alberto Scolari, Yunseong Lee, Markus Weimer, Matteo Interlandi |
ICCD | 4 |
| 2017 | Debugging Big Data Analytics in Spark with BigDebugabstractTo process massive quantities of data, developers leverage Data-Intensive Scalable Computing (DISC) systems such as Apache Spark. In terms of debugging, DISC systems support only post-mortem log analysis and do not provide any debugging functionality. This demonstration paper showcases BigDebug: a tool enhancing Apache Spark with a set of interactive debugging features that can help users in debug their Big Data Applications. Muhammad Ali Gulzar, Matteo Interlandi, Tyson Condie, Miryung Kim |
SIGMOD Conference | 2 |
| 2017 | Apache REEF: Retainable Evaluator Execution FrameworkabstractResource Managers like YARN and Mesos have emerged as a critical layer in the cloud computing system stack, but the developer abstractions for leasing cluster resources and instantiating application logic are very low level. This flexibility comes at a high cost in terms of developer effort, as each application must repeatedly tackle the same challenges (e.g., fault tolerance, task scheduling and coordination) and reimplement common mechanisms (e.g., caching, bulk-data transfers). This article presents REEF, a development framework that provides a control plane for scheduling and coordinating task-level (data-plane) work on cluster resources obtained from a Resource Manager. REEF provides mechanisms that facilitate resource reuse for data caching and state management abstractions that greatly ease the development of elastic data processing pipelines on cloud platforms that support a Resource Manager service. We illustrate the power of REEF by showing applications built atop: a distributed shell application, a machine-learning framework, a distributed in-memory caching system, and a port of the CORFU system. REEF is currently an Apache top-level project that has attracted contributors from several institutions and it is being used to develop several commercial offerings such as the Azure Stream Analytics service. Byung-Gon Chun, Tyson Condie, Yingda Chen, Carlo Curino, Chris Douglas, Matteo Interlandi, Beomyeol Jeon, Joo Seong Jeong, Gyewon Lee, Yunseong Lee, Tony Majestro, Dahlia Malkhi, Sergiy Matusevych, Brandon Myers, Mariia Mykhailova, Shravan M. Narayanamurthy, Joseph Noor, Raghu Ramakrishnan 0001, Sriram Rao, Russell Sears, Beysim Sezgin, Taegeon Um, Julia Wang, Markus Weimer, Youngseok Yang |
ACM Trans. Comput. Syst. | 8 |
| 2017 | Fixpoint semantics and optimization of recursive Datalog programs with aggregatesabstractAbstract A very desirable Datalog extension investigated by many researchers in the last 30 years consists in allowing the use of the basic SQL aggregates min, max, count and sum in recursive rules. In this paper, we propose a simple comprehensive solution that extends the declarative least-fixpoint semantics of Horn Clauses, along with the optimization techniques used in the bottom-up implementation approach adopted by many Datalog systems. We start by identifying a large class of programs of great practical interest in which the use of min or max in recursive rules does not compromise the declarative fixpoint semantics of the programs using those rules. Then, we revisit the monotonic versions of count and sum aggregates proposed by Mazuran et al. (2013b, The VLDB Journal 22, 4, 471–493) and named, respectively, mcount and msum. Since mcount, and also msum on positive numbers, are monotonic in the lattice of set-containment, they preserve the fixpoint semantics of Horn Clauses. However, in many applications of practical interest, their use can lead to inefficiencies, that can be eliminated by combining them with max, whereby mcount and msum become the standard count and sum. Therefore, the semantics and optimization techniques of Datalog are extended to recursive programs with min, max, count and sum, making possible the advanced applications of superior performance and scalability demonstrated by BigDatalog (Shkapsky et al. 2016. In SIGMOD. ACM, 1135–1149) and Datalog-MC (Yang et al. 2017. The VLDB Journal 26, 2, 229–248). Carlo Zaniolo, Mohan Yang, Ariyam Das, Alexander Shkapsky, Tyson Condie, Matteo Interlandi |
Theory Pract. Log. Program. | 6 |
| 2016 | Programming and Runtime Support to Blaze FPGA Accelerator Deployment at Datacenter ScaleabstractWith the end of CPU core scaling due to dark silicon limitations, customized accelerators on FPGAs have gained increased attention in modern datacenters due to their lower power, high performance and energy efficiency. Evidenced by Microsoft's FPGA deployment in its Bing search engine and Intel's 16.7 billion acquisition of Altera, integrating FPGAs into datacenters is considered one of the most promising approaches to sustain future datacenter growth. However, it is quite challenging for existing big data computing systems-like Apache Spark and Hadoop-to access the performance and energy benefits of FPGA accelerators. In this paper we design and implement Blaze to provide programming and runtime support for enabling easy and efficient deployments of FPGA accelerators in datacenters. In particular, Blaze abstracts FPGA accelerators as a service (FaaS) and provides a set of clean programming APIs for big data processing applications to easily utilize those accelerators. Our Blaze runtime implements an FaaS framework to efficiently share FPGA accelerators among multiple heterogeneous threads on a single node, and extends Hadoop YARN with accelerator-centric scheduling to efficiently share them among multiple computing tasks in the cluster. Experimental results using four representative big data applications demonstrate that Blaze greatly reduces the programming efforts to access FPGA accelerators in systems like Apache Spark and YARN, and improves the system throughput by 1.7 × to 3× (and energy efficiency by 1.5× to 2.7×) compared to a conventional CPU-only cluster. Muhuan Huang, Di Wu 0010, Cody Hao Yu, Zhenman Fang, Matteo Interlandi, Tyson Condie, Jason Cong |
SoCC | 5 |
| 2016 | Optimizing Interactive Development of Data-Intensive ApplicationsabstractModern Data-Intensive Scalable Computing (DISC) systems are designed to process data through batch jobs that execute programs (e.g., queries) compiled from a high-level language. These programs are often developed interactively by posing ad-hoc queries over the base data until a desired result is generated. We observe that there can be significant overlap in the structure of these queries used to derive the final program. Yet, each successive execution of a slightly modified query is performed anew, which can significantly increase the development cycle. Vega is an Apache Spark framework that we have implemented for optimizing a series of similar Spark programs, likely originating from a development or exploratory data analysis session. Spark developers (e.g., data scientists) can leverage Vega to significantly reduce the amount of time it takes to re-execute a modified Spark program, reducing the overall time to market for their Big Data applications. Matteo Interlandi, Sai Deep Tetali, Muhammad Ali Gulzar, Joseph Noor, Tyson Condie, Miryung Kim, Todd D. Millstein |
SoCC | 1 |
| 2016 | BigDebug: debugging primitives for interactive big data processing in sparkabstractDevelopers use cloud computing platforms to process a large quantity of data in parallel when developing big data analytics. Debugging the massive parallel computations that run in today's data-centers is time consuming and error-prone. To address this challenge, we design a set of interactive, real-time debugging primitives for big data processing in Apache Spark, the next generation data-intensive scalable cloud computing platform. This requires re-thinking the notion of step-through debugging in a traditional debugger such as gdb, because pausing the entire computation across distributed worker nodes causes significant delay and naively inspecting millions of records using a watchpoint is too time consuming for an end user. First, BIGDEBUG's simulated breakpoints and on-demand watchpoints allow users to selectively examine distributed, intermediate data on the cloud with little overhead. Second, a user can also pinpoint a crash-inducing record and selectively resume relevant sub-computations after a quick fix. Third, a user can determine the root causes of errors (or delays) at the level of individual records through a fine-grained data provenance capability. Our evaluation shows that BIGDEBUG scales to terabytes and its record-level tracing incurs less than 25% overhead on average. It determines crash culprits orders of magnitude more accurately and provides up to 100% time saving compared to the baseline replay debugger. The results show that BIGDEBUG supports debugging at interactive speeds with minimal performance impact. Muhammad Ali Gulzar, Matteo Interlandi, Seunghyun Yoo, Sai Deep Tetali, Tyson Condie, Todd D. Millstein, Miryung Kim |
ICSE | 2 |
| 2016 | Big Data Analytics with Datalog Queries on SparkabstractThere is great interest in exploiting the opportunity provided by cloud computing platforms for large-scale analytics. Among these platforms, Apache Spark is growing in popularity for machine learning and graph analytics. Developing efficient complex analytics in Spark requires deep understanding of both the algorithm at hand and the Spark API or subsystem APIs (e.g., Spark SQL, GraphX). Our BigDatalog system addresses the problem by providing concise declarative specification of complex queries amenable to efficient evaluation. Towards this goal, we propose compilation and optimization techniques that tackle the important problem of efficiently supporting recursion in Spark. We perform an experimental comparison with other state-of-the-art large-scale Datalog systems and verify the efficacy of our techniques and effectiveness of Spark in supporting Datalog-based analytics. Alexander Shkapsky, Mohan Yang, Matteo Interlandi, Hsuan Chiu, Tyson Condie, Carlo Zaniolo |
SIGMOD Conference | 3 |
| 2016 | BigDebug: interactive debugger for big data analytics in Apache SparkabstractTo process massive quantities of data, developers leverage data-intensive scalable computing (DISC) systems in the cloud, such as Google's MapReduce, Apache Hadoop, and Apache Spark. In terms of debugging, DISC systems support post-mortem log analysis but do not provide interactive debugging features in realtime. This tool demonstration paper showcases a set of concrete usecases on how BigDebug can help debug Big Data Applications by providing interactive, realtime debug primitives. To emulate interactive step-wise debugging without reducing throughput, BigDebug provides simulated breakpoints to enable a user to inspect a program without actually pausing the entire computation. To minimize unnecessary communication and data transfer, BigDebug provides on-demand watchpoints that enable a user to retrieve intermediate data using a guard and transfer the selected data on demand. To support systematic and efficient trial-and-error debugging, BigDebug also enables users to change program logic in response to an error at runtime and replay the execution from that step. BigDebug is available for download at http://web.cs.ucla.edu/~miryung/software.html Muhammad Ali Gulzar, Matteo Interlandi, Tyson Condie, Miryung Kim |
SIGSOFT FSE | 2 |
| 2016 | Combining user and database perspective for solving keyword queries over relational databases
Sonia Bergamaschi, Francesco Guerra 0001, Matteo Interlandi, Raquel Trillo Lado, Yannis Velegrakis |
Inf. Syst. | 3 |
| 2015 | Proof positive and negative in data cleaningabstractOne notoriously hard data cleaning problem is, given a database, how to precisely capture which value is correct (i.e., proof positive) or wrong (i.e., proof negative). Although integrity constraints have been widely studied to capture data errors as violations, the accuracy of data cleaning using integrity constraints has long been controversial. Overall they deem one fundamental problem: Given a set of data values that together forms a violation, there is no evidence of which value is proof positive or negative. Hence, it is known that integrity constraints themselves cannot guide dependable data cleaning. In this work, we introduce an automated method for proof positive and negative in data cleaning, based on Sherlock rules and reference tables. Given a tuple and reference tables, Sherlock rules tell us what attributes are proof positive, what attributes are proof negative and (possibly) how to update them. We study several fundamental problems associated with Sherlock rules. We also present efficient algorithms for cleaning data using Sherlock rules. We experimentally demonstrate that our techniques can not only annotate data with proof positive and negative, but also repair data when enough information is available. Matteo Interlandi, Nan Tang 0001 |
ICDE | 1 |
| 2015 | Titian: Data Provenance Support in SparkabstractDebugging data processing logic in Data-Intensive Scalable Computing (DISC) systems is a difficult and time consuming effort. Today's DISC systems offer very little tooling for debugging programs, and as a result programmers spend countless hours collecting evidence ( e.g. , from log files) and performing trial and error debugging. To aid this effort, we built Titian , a library that enables data provenance ---tracking data through transformations---in Apache Spark. Data scientists using the Titian Spark extension will be able to quickly identify the input data at the root cause of a potential bug or outlier result. Titian is built directly into the Spark platform and offers data provenance support at interactive speeds---orders-of-magnitude faster than alternative solutions---while minimally impacting Spark job performance; observed overheads for capturing data lineage rarely exceed 30% above the baseline job execution time. Matteo Interlandi, Kshitij Shah, Sai Deep Tetali, Muhammad Ali Gulzar, Seunghyun Yoo, Miryung Kim, Todd D. Millstein, Tyson Condie |
Proc. VLDB Endow. | 1 |
| 2013 | QUEST: A Keyword Search System for Relational Data based on Semantic and Machine Learning TechniquesabstractWe showcase QUEST (QUEry generator for STructured sources), a search engine for relational databases that combines semantic and machine learning techniques for transforming keyword queries into meaningful SQL queries. The search engine relies on two approaches: the forward, providing mappings of keywords into database terms (names of tables and attributes, and domains of attributes), and the backward, computing the paths joining the data structures identified in the forward step. The results provided by the two approaches are combined within a probabilistic framework based on the Dempster-Shafer Theory. We demonstrate QUEST capabilities, and we show how, thanks to the flexibility obtained by the probabilistic combination of different techniques, QUEST is able to compute high quality results even with few training data and/or with hidden data sources such as those found in the Deep Web. Sonia Bergamaschi, Francesco Guerra 0001, Matteo Interlandi, Raquel Trillo Lado, Yannis Velegrakis |
Proc. VLDB Endow. | 3 |
| 2012 | Knowlog: A Declarative Language for Reasoning about Knowledge in Distributed Systems
Matteo Interlandi |
ER | 1 |
| 2012 | A Meta-language for MDX Queries in eLog Business SolutionabstractThe adoption of business intelligence technology in industries is growing rapidly. Business managers are not satisfied with ad hoc and static reports and they ask for more flexible and easy to use data analysis tools. Recently, application interfaces that expand the range of operations available to the user, hiding the underlying complexity, have been developed. The paper presents eLog, a business intelligence solution designed and developed in collaboration between the database group of the University of Modena and Reggio Emilia and eBilling, an Italian SME supplier of solutions for the design, production and automation of documentary processes for top Italian companies. eLog enables business managers to define OLAP reports by means of a web interface and to customize analysis indicators adopting a simple meta-language. The framework translates the user's reports into MDX queries and is able to automatically select the data cube suitable for each query. Over 140 medium and large companies have exploited the technological services of eBilling S.p.A. to manage their documents flows. In particular, eLog services have been used by the major media and telecommunications Italian companies and their foreign annex, such as Sky, Media set, H3G, Tim Brazil etc. The largest customer can provide up to 30 millions mail pieces within 6 months (about 200 GB of data in the relational DBMS). In a period of 18 months, eLog could reach 150 millions mail pieces (1 TB of data) to handle. Sonia Bergamaschi, Matteo Interlandi, Mario Longo, Laura Po, Maurizio Vincini |
ICDE | 2 |