Modern data analytics requires capabilities beyond those offered by traditional data processing systems. On one hand, today’s data come in many different forms, be it graphs, matrices, or tensors; on the other, analysis tasks are becoming more and more complex, often involving complex operations running iteratively. These new challenges demand ever greater efficiency from the data processing system. My research builds on the relational foundation of data management systems, but evolves it to meet the demands of modern data analytics. In this talk, I will present three lines of work that push the state of art of modern relational data processing: 1. A new algorithm for the relational join, 2. Optimization techniques for relational programs, and 3. A new language for relational programming. I conclude with my vision for a relational future of programming.