Overview
Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore the inner workings of Pony ORM's unique approach to translating Python generators into SQL queries in this conference talk from EuroPython 2014. Dive deep into the multi-stage translation process, including bytecode decompilation, Abstract Syntax Tree (AST) analysis, and SQL generation. Learn about the principles of building a programming language translator, implementation details of Python-to-SQL conversion, and approaches for creating a pluggable translator architecture. Compare Pony ORM's query syntax with other ORMs, and discover additional features like Identity Map, N+1 Query Problem solution, and optimistic locking. Gain insights into the performance implications of this innovative method for constructing SQL queries.
Syllabus
Intro
A Python generator vs a SQL query
The same query in Pony
Query syntax comparison
Query translation
Bytecode decompilation
Abstract Syntax Tree (AST)
Monad types
AST Translation
AST to SQL Translation
Abstract SQL
Specific SQL dialects
Other Pony ORM features
Pony ORM - seeds, Identity Map
Solution for the N+1 Query Problem
Transactions Django ORM
Optimistic Locking
Pony roadmap
Transactions Pony ORM
Taught by
EuroPython Conference