6 Repos
Tools and patterns for associating a single entity with multiple different types of tables using type identifiers.
Distinguishing note: Focuses on flexible, multi-table entity associations rather than standard one-to-one or one-to-many relationships.
Explore 6 awesome GitHub repositories matching data & databases · Polymorphic Data Modeling. Refine with filters or upvote what's useful.
Drizzle ORM is a TypeScript-native database toolkit providing type-safe SQL query building, schema management, and automated migrations across PostgreSQL, MySQL, SQLite, and SingleStore.
Drizzle associates a single entity with multiple different types of tables by using a type identifier and a foreign key to maintain flexible data connections.
Instructor is a framework designed for structured data extraction, validation, and language model integration. It functions as a library that transforms unstructured text into validated, type-safe objects by leveraging schema definitions and model-specific tool-calling capabilities. By acting as a validation middleware, the project ensures that language model outputs strictly conform to defined data structures. The library distinguishes itself through a robust validation-based retry loop that automatically re-submits failed responses with error feedback to iteratively correct schema complianc
Allows the model to return one of several different data structures or a list of mixed types to support flexible, multi-intent interactions.
This project is a framework for the efficient serialization and deserialization of data structures. It provides a unified, macro-based interface that automates the conversion of complex internal objects into standardized formats and reconstructs them from raw input streams or buffers. By leveraging compile-time code generation, the library minimizes manual implementation overhead while ensuring consistent logic across diverse data types. The framework distinguishes itself through a format-agnostic data model and a visitor-based parsing architecture that decouples data structures from specific
Parses input that may arrive as either a simple string or a complex object into a single unified data structure.
Mikro-ORM is a TypeScript-based object-relational mapping system that provides a unified persistence layer for Node.js applications. It translates TypeScript entities into relational or document-based database schemas, supporting a variety of engines including PostgreSQL, MySQL, MariaDB, MS SQL Server, SQLite, and MongoDB. The project implements the data mapper pattern to decouple in-memory domain models from the database persistence layer. It utilizes a unit of work pattern to track entity changes in memory and commit them in a single coordinated database transaction. The library covers com
Supports advanced data modeling including entity inheritance and polymorphic relations.
TypeDB ist eine stark typisierte Graphdatenbank und ein Knowledge-Graph-Managementsystem. Es dient als Multi-Modell-Datenspeicher, der relationale, Dokument- und Graphstrukturen in einer einzigen Umgebung vereint und sowohl als ACID-konforme Datenbank als auch als deklarative Abfrage-Engine fungiert. Das System zeichnet sich durch die Verwendung von n-ären Hypergraph-Modellen und polymorphen Typ-Hierarchien aus. Es verwendet ein stark typisiertes Schema, um strukturelle Regeln durchzusetzen und die Datenintegrität zu validieren, was typbasierte polymorphe Inferenz und rollenbasierte Interface-Polymorphie ermöglicht, um komplexe Beziehungen während der Abfrageausführung automatisch aufzulösen. Die Plattform deckt ein breites Spektrum an Funktionen ab, einschließlich der Berechnung rekursiver Beziehungen mittels Tabling, Snapshot-Isolation-Transaktionen und deklarativem Datenabruf. Sie unterstützt zudem Hochverfügbarkeit durch konsensbasierte Cluster-Replikation, rollenbasierte Zugriffskontrolle und die Integration mit KI-Agenten für den strukturierten Datenabruf. Die Verwaltung wird über eine Kommandozeilenschnittstelle unterstützt, und das System bietet Tools zur Visualisierung von Graph-Schemata sowie zur Prüfung administrativer Aktivitäten.
Supports inserting, updating, and deleting data across multiple types and hierarchies using unified operations.
msgspec is a high-performance data modeling, serialization, and schema validation toolkit for Python. It serves as a type-safe serialization framework that integrates schema enforcement and data parsing into a single pass, functioning as both a data serialization library and a schema validation system based on standard Python type annotations. The project distinguishes itself through high-performance structural primitives, including compilation-based routine generation and zero-copy buffer parsing. It optimizes memory usage via garbage collection-aware layouts and reduces processing overhead
Maps input to the correct object representation using tags to distinguish between multiple types in a union.