PyDough
What is PyDough?
PyDough is an open-source Python analytics domain-specific language for expressing analytical questions through a logical document model rather than directly writing relational SQL. It uses a knowledge-graph semantic layer to represent the collections, relationships, hierarchies, and metrics in an organization’s data.
Users write PyDough expressions in Python to navigate related data, calculate metrics, aggregate values, and define analytical results. PyDough abstracts SQL details such as joins, grouping behavior, and aggregation order, then translates requested logic into SQL for execution against supported database systems. Its lazy-evaluation model delays SQL generation and execution until results are requested.
PyDough is intended for analysts, data teams, and AI-enabled analytics workflows that need a governed representation of data relationships and business meaning. Its Python-based DSL is designed to produce analytical logic that is easier for people and large language models to inspect than equivalent SQL. PyDough is currently used primarily through Jupyter notebooks and is available as a Python package.
PyDough is a semantic and analytical-language layer; it is not a database, a BI visualization product, or an autonomous AI agent.
Categories & Use Cases
Technical Details
| Mobile Application | No |
|---|
FAQs
What is PyDough?
PyDough is an open-source Python analytics domain-specific language for expressing analytical questions through a logical document model rather than directly writing relational SQL. It uses a knowledge-graph semantic layer to represent the collections, relationships, hierarchies, and metrics in an organization’s data.