15 dépôts
Support for compact binary serialization formats like BSON or MessagePack.
Distinguishing note: Focuses on binary-specific serialization rather than text-based formats.
Explore 15 awesome GitHub repositories matching data & databases · Binary Data Formats. Refine with filters or upvote what's useful.
This library is a header-only C++ framework designed for the serialization, parsing, and manipulation of structured data. It provides a recursive variant data model that represents arbitrary structures as native types, allowing developers to navigate, modify, and patch hierarchical data using standard pointer paths and declarative update patterns. The project distinguishes itself through its template-based architecture, which enables type-safe data structures and custom type mapping at compile time. It offers a unified interface for binary format abstraction, supporting multiple compact repre
Provides a unified interface for encoding and decoding data into multiple compact binary representations.
This project is a comprehensive platform for quantitative investment research, machine learning, and algorithmic trading. It provides an end-to-end environment for developing, testing, and executing financial strategies, supporting the entire lifecycle from data ingestion and feature engineering to model training and backtesting. The system is distinguished by its configuration-driven workflow orchestration, which allows researchers to automate complex pipelines and manage experiments through declarative files. It features a high-performance data infrastructure that utilizes custom binary for
Provides custom binary file structures to optimize disk I/O and memory throughput for large-scale market datasets.
ET is a C# game server framework and distributed actor model runtime designed for large-scale multiplayer environments. It provides a comprehensive toolkit for building distributed game backends, incorporating a multiplayer network transport layer and a specialized suite for game AI and pathfinding. The framework is distinguished by its use of a distributed actor model to scale processing across multiple threads and servers, utilizing isolated actors for state management and messaging. It features a unified codebase architecture that allows shared logic between the server and client, enabling
Uses BSON-based binary serialization to minimize garbage collection and optimize network throughput.
This project is an educational resource and a collection of instructional materials for performing data manipulation and statistical analysis using Python. It provides a comprehensive set of guides and code examples for using the Pandas, NumPy, and Matplotlib libraries to analyze structured data. The resource includes a dedicated guide for reshaping, cleaning, and aggregating tabular data and time series via Pandas, alongside a reference for high-performance vectorized operations and linear algebra using NumPy. It also features tutorials for creating publication-quality charts, distribution p
Persists data using compact binary serialization formats to facilitate high-performance read and write access.
The mongo-go-driver is a Go library for building applications that integrate with a MongoDB document store. It enables the storage and retrieval of flexible document data by providing a bridge between Go backends and the database. The driver implements specialized capabilities for semantic vector search, allowing the handling and execution of high-dimensional vector data for similarity-based retrieval. It also supports full-text search via linguistic analysis and programmatic search index management. The project covers a broad range of database operations, including document-based CRUD, bulk
Implements BSON binary serialization for efficient data transmission and storage.
asyncpg is an asynchronous database driver and binary protocol client for PostgreSQL. It provides a non-blocking interface for executing SQL statements, streaming result sets, and managing data transfer between an application and a PostgreSQL database. The driver implements the PostgreSQL binary protocol directly to facilitate efficient data transfer and type conversion. It includes a connection pool to maintain and reuse open database connections, reducing the latency associated with repeated handshakes. The project covers a broad range of database integration capabilities, including atomic
Uses binary-format codecs to convert database types to Python objects, reducing parsing overhead.
MessagePack is a binary object serialization library and a cross-platform data exchange format. It serves as a binary alternative to JSON, converting structured data into a space-efficient binary representation for network transmission and storage. The system provides a standardized format for swapping complex data types across different programming languages and architectures. It allows for the definition of custom data type encoding by pairing application-specific information with specialized serialization markers. The library handles the encoding and decoding of diverse data types, includ
Provides a compact binary serialization format that uses type-prefix markers to define data size and type.
MessagePack-CSharp is a high-performance binary serializer for .NET that converts C# objects to and from the compact MessagePack format. It uses compile-time source generation to produce AOT-safe formatters and resolvers, eliminating runtime reflection and enabling ahead-of-time compilation scenarios. The serializer encodes object fields as integer indices instead of string keys, producing compact binary output with deterministic field ordering, and provides stack-allocated reader and writer structs for direct encoding and decoding of MessagePack primitives without heap allocations. The libra
Embeds full .NET type names into serialized blobs for type-argument-free deserialization.
Racket est un langage de programmation généraliste multi-paradigme de la famille Lisp, conçu pour la création de langages. Il fonctionne comme un atelier de langage, fournissant une plateforme pour concevoir et implémenter des langages de programmation personnalisés via un système flexible de macros et de modules. Le système se distingue en offrant une suite complète pour l'ingénierie sémantique, permettant la construction de sous-ensembles de langages spécialisés et de couches éducatives. Il inclut des outils pour la conception de langages personnalisés, tels que la génération de lexer et de parser, ainsi que la capacité de définir des règles d'expansion de module et une sélection de langage dynamique au moment de la lecture. Le projet fournit un environnement de développement intégré avec un éditeur intégré, un débogueur visuel et un gestionnaire de paquets logiciels. Sa surface de capacités s'étend à une bibliothèque standard généraliste couvrant le rendu graphique 2D, le traitement de données binaires, l'intégration SQL et de bases de données déductives, et la construction d'interfaces utilisateur graphiques. L'environnement prend en charge la compilation du code source en fichiers exécutables autonomes pour la distribution.
Allows mapping field sequences to binary formats to automate the handling of complex data structures.
pgx est un framework et une suite d'outils pour développer des extensions PostgreSQL haute performance en utilisant le langage de programmation Rust. Il fournit un wrapper API bas niveau pour interagir avec les contextes mémoire internes de la base de données, les systèmes de journalisation et les API d'exécution principales, permettant d'implémenter des fonctionnalités et une logique personnalisées directement au sein du moteur de base de données. Le projet se distingue par un outil de build dédié et une interface en ligne de commande qui gère le cycle de vie de développement de l'extension, de l'initialisation de l'environnement au packaging binaire. Il inclut un mappeur de types qui traduit les structures du langage en types composites de base de données et génère automatiquement les définitions de schéma SQL correspondantes. Le framework couvre une large surface de fonctionnalités, incluant le mappage de fonctions définies par l'utilisateur, l'intégration de protocoles binaires et la prise en charge de cibles multi-versions pour assurer la compatibilité entre les différentes versions de la base de données. Il fournit également des wrappers de gestion mémoire spécialisés pour manipuler les pointeurs et prévenir les fuites au sein de l'environnement de base de données.
Implements specialized binary codecs for translating PostgreSQL internal binary representations into native Rust objects.
Cereal est une bibliothèque de sérialisation C++ et un outil de persistance d'objets utilisé pour convertir des types de données et des conteneurs en formats de stockage ou de transmission. Elle est implémentée sous forme de bibliothèque header-only, permettant de l'inclure directement dans le code source sans avoir besoin d'un binaire compilé. La bibliothèque prend en charge plusieurs représentations de données, incluant binaire, XML et JSON. Elle offre la possibilité de définir des archives personnalisées, permettant le développement de formats de sortie spécialisés pour contrôler la manière dont les données sont encodées et stockées. Le système gère la conversion d'objets complexes via la sérialisation basée sur les templates et le parcours récursif d'arbres. Ces capacités soutiennent la persistance de l'état des applications et l'échange de données binaires entre processus.
Supports compact binary serialization formats for efficient communication between different C++ processes.
Kaitai Struct est un framework pour la spécification binaire déclarative qui fournit une génération automatisée d'analyseurs et de sérialiseurs sur plusieurs langages de programmation. Il utilise un langage portable spécifique au domaine pour décrire la mise en page des fichiers binaires et des paquets réseau, convertissant ces spécifications en code source pour la lecture et l'écriture de données binaires. Le système permet le traitement de données multi-langages en traduisant une définition structurelle unique en code source natif pour des langages incluant C++, C#, Go, Java, JavaScript, Python et Rust. Cette approche permet à la même spécification de données binaires d'être implémentée sur différentes plateformes sans réécrire manuellement la logique d'analyse. Le framework couvre la modélisation et le traitement des données binaires, y compris la capacité de gérer des pointeurs de lecture pour la navigation par offset et d'appliquer des transformations de données telles que la décompression et le déchiffrement. Il fournit également des outils pour le débogage de spécification de format afin de valider le mappage entre les mises en page de données binaires et leurs descriptions déclaratives.
Allows developers to create portable binary schema definitions for file and network packet formats.
meta-rules-dat is a collection of binary-encoded network datasets used to identify and categorize traffic for routing on resource-constrained devices. It provides a structured domain categorization list and a geographic IP routing dataset to map network traffic to specific countries or service providers. The project utilizes trie-based lookup data and compact binary serialization to enable high-performance prefix matching and fast domain-to-category resolution. To minimize memory and storage overhead, it employs stripped-down GeoIP mapping that removes non-essential metadata. The datasets co
Implements compact binary serialization formats to minimize memory overhead and increase lookup speed.
Odin Serializer est un framework conçu pour le moteur de jeu Unity afin de convertir des graphes d'objets complexes en formats binaires ou JSON persistants. Il fournit un système pour sauvegarder et charger des structures de classe complexes, incluant des génériques imbriqués et des types polymorphes, tout en maintenant l'intégrité structurelle des données. Le framework se distingue par sa prise en charge de la compilation ahead-of-time, générant les métadonnées de type nécessaires pendant le processus de build pour garantir la fonctionnalité sur les plateformes qui restreignent la réflexion à l'exécution. Il s'intègre directement au cycle de vie du moteur Unity, permettant la sérialisation de types spécifiques au moteur et la gestion des références d'actifs externes via des identifiants persistants uniques. Les utilisateurs peuvent définir des politiques de sérialisation granulaires pour contrôler quels membres de classe sont inclus ou exclus pendant le processus de conversion. Cette capacité permet l'optimisation du stockage et de la transmission des données en garantissant que seules les informations requises sont traitées, tandis que le moteur sous-jacent gère le mappage récursif des hiérarchies d'héritage complexes.
Transforms complex object graphs into compact binary representations for efficient storage and transmission.
Ce projet fournit une collection d'utilitaires d'administration en ligne de commande conçus pour gérer les instances de bases de données MongoDB. Il sert d'interface principale pour effectuer des sauvegardes de bases de données, restaurer des snapshots binaires et exécuter des tâches de migration de données entre des instances de bases de données et des systèmes externes. Les outils facilitent le transfert d'informations en important et exportant des collections dans divers formats, notamment JSON, CSV, TSV et des fichiers binaires. Au-delà de la migration, la suite inclut des utilitaires spécialisés pour inspecter les fichiers de données binaires dans un format lisible par l'homme et gérer les fichiers binaires volumineux stockés dans le système de fichiers de la base de données. Ces utilitaires fonctionnent en communiquant directement avec le serveur de base de données via des requêtes de protocole binaire structurées. L'architecture sous-jacente prend en charge le traitement orienté flux et les opérations par lots pour gérer efficacement les grands jeux de données tout en maintenant la durabilité et l'intégrité des données lors des tâches administratives.
Uses a compact binary format to store and transmit complex data structures efficiently between the database and external files.