12 Repos
Processes for reconstructing structured data from raw byte slices or streams.
Distinct from Binary Data Accessors: Distinct from Binary Data Accessors: focuses on full reconstruction of objects rather than partial zero-copy access.
Explore 12 awesome GitHub repositories matching data & databases · Binary Deserialization. Refine with filters or upvote what's useful.
Thrift ist ein sprachübergreifendes Remote-Procedure-Call-Framework (RPC) und Datenserialisierungsprotokoll. Es bietet eine Interface-Definition-Sprache (IDL), um Datentypen und Service-Interfaces in einem neutralen Format zu spezifizieren, was die automatisierte Generierung von Client- und Server-Code über mehrere Programmiersprachen hinweg ermöglicht. Das Projekt fungiert als polyglotter Service-Kommunikator, der einen geschichteten Software-Stack verwendet, um eine interoperable Kommunikation zu gewährleisten. Es konzentriert sich auf die Implementierung sprachübergreifender RPCs und die Transformation komplexer Datenstrukturen in standardisierte Formate für einen effizienten Netzwerktransport. Das Framework enthält Funktionen für das Management der API-Versionskompatibilität, um nicht-atomare Updates zwischen Clients und Servern zu unterstützen. Es bietet zudem Mechanismen zur Verifizierung der Datenintegrität und zur Validierung, dass sich Services über verschiedene Sprachimplementierungen hinweg identisch verhalten.
Supports non-atomic updates by ignoring unknown fields during binary deserialization, ensuring backward and forward compatibility.
Sled is an embedded key-value store and ACID-compliant database designed for high-performance data persistence. It functions as a log-structured storage engine that organizes data using B+ trees to support efficient range queries and prefix scans. The engine implements a zero-copy data store model, utilizing epoch-based reclamation to provide direct references to cached values without memory allocations. It distinguishes itself through a combination of write-ahead logging, page cache optimizations to reduce write amplification on flash storage, and serializable transactions for atomic multi-k
Allows reconstructing structured data from byte slices using specific configurations.
Sui is a blockchain platform featuring an object-centric state model and resource-oriented smart contracts. It utilizes parallel transaction execution to increase network throughput and supports programmable transaction blocks that bundle multiple operations into single atomic units. The platform distinguishes itself with a capability-based access control system and zero-knowledge login mechanisms, enabling users to authenticate via identity providers without seed phrases. It also implements deterministic object addressing to allow predictable state lookups and supports the creation of soulbo
Implements binary deserialization to reconstruct structured data from BCS serialized byte slices.
MessagePack-CSharp is a high-performance binary serialization library for .NET applications that converts object graphs into the MessagePack format. It functions as a C# data serialization toolkit and a polymorphic binary encoder capable of handling abstract classes and interfaces using union keys to identify concrete derived types. The library provides a binary format transcoder to transform binary data into human-readable JSON for debugging. It supports ahead-of-time formatter generation to avoid runtime overhead and implements LZ4 binary compression to reduce the size of serialized data.
Reconstructs structured object graphs from raw binary blobs using both typed and dynamic deserialization.
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
Deserializes binary data with missing or extra fields by ignoring unknown keys and applying defaults.
protobuf-net ist ein binäres Serialisierungs-Framework und eine .NET-Bibliothek, die die Protocol-Buffers-Spezifikation implementiert. Es fungiert als schema-basiertes Serialisierungstool und Contract-First-Datenmapper, der komplexe Objektgraphen für die Speicherung und Netzwerkübertragung in ein kompaktes Binärformat umwandelt. Die Bibliothek ermöglicht plattformübergreifenden Datenaustausch und High-Performance-Networking durch Reduzierung von Payload-Größen und Verarbeitungszeit. Sie unterstützt spezifisch die Persistenz von Objekthierarchien und ermöglicht die Serialisierung und Rekonstruktion komplexer Klassenstrukturen, die Vererbung und abgeleitete Typen beinhalten. Das Projekt deckt Kernfunktionen ab, einschließlich binärer Datenserialisierung und -deserialisierung, schema-gesteuerter Klassengenerierung und der Verwaltung von Typvererbung durch eindeutige Identifikatoren. Es bietet Mechanismen zum Mapping von Datenstrukturen über statische Attribute oder dynamische Runtime-Konfigurationen.
Reconstructs complex .NET objects from raw binary streams to restore original application state.
Dieses Projekt ist eine Protocol Buffers Swift-Bibliothek und ein Framework, das eine Laufzeitumgebung für die Serialisierung und Deserialisierung strukturierter Daten bereitstellt. Es enthält einen Codegenerator, der Schemadateien in typsichere Swift-Strukturen umwandelt, sowie ein Binär-Serialisierungs-Framework für die Konvertierung von Daten in kompakte Streams. Die Bibliothek fungiert als JSON-Daten-Mapper, der Nachrichten in standardmäßige JSON-Repräsentationen umwandelt, um den plattformübergreifenden Datenaustausch zu erleichtern. Sie nutzt einen schema-gesteuerten Ansatz, um eine konsistente Datenmodellierung zwischen Swift-Anwendungen und Diensten, die in anderen Sprachen geschrieben sind, sicherzustellen. Das Framework deckt die Serialisierung und Deserialisierung von Binär- und JSON-Daten ab und nutzt eine interface-basierte Laufzeitbibliothek, um diese Formate über generierte Nachrichten hinweg zu verarbeiten.
Reconstructs structured data from compact binary streams using predefined protobuf schemas.
Prost ist eine Protocol-Buffers-Implementierung für Rust, die als binäres Serialisierungs-Framework und Codegenerator fungiert. Sie übersetzt Schemadefinitionen in idiomatische Rust-Structs und -Enums und bietet die Logik, die erforderlich ist, um strukturierte Daten in das binäre Protocol-Buffers-Format zu kodieren und zu dekodieren. Das Projekt zeichnet sich durch eine no-std-Implementierung aus, die es ermöglicht, in eingebetteten oder Kernel-Umgebungen zu operieren, denen eine Standardbibliothek fehlt. Es dient zudem als Schema-Introspektor durch das Ausgeben von File-Descriptor-Sets, was die programmatische Analyse ursprünglicher Schemadefinitionen zur Laufzeit ermöglicht. Die Bibliothek deckt ein breites Spektrum an Funktionen ab, einschließlich Service-Trait-Generierung für Schnittstellenmodellierung, Unterstützung für bekannte Typen und prozedurale Makro-Annotationen für das Mapping manueller Typdefinitionen. Sie bietet zudem Tools für Abhängigkeitsmanagement und Fuzz-Testing, um Serialisierungsstabilität zu gewährleisten.
Transforms binary streams back into structured Rust data objects through efficient deserialization.
Fury ist ein sprachübergreifendes Framework für binäre Serialisierung, das für die Kodierung von Domänenobjekten und komplexen Graphen entwickelt wurde, um den Datenaustausch zwischen verschiedenen Sprachen zu erleichtern. Es enthält einen Compiler für eine Interface Definition Language (IDL), der Schemadefinitionen in idiomatische native Typen und Serialisierungs-Boilerplate über mehrere Sprachen hinweg übersetzt. Das Projekt zeichnet sich durch einen Zero-Copy-Binär-Reader aus, der den Zugriff auf spezifische Felder ermöglicht, ohne das gesamte Objekt zu deserialisieren, sowie durch einen Objekt-Graph-Serializer, der zirkuläre Referenzen und referenzielle Integrität bewahrt. Es enthält zudem einen Datenkonverter, der zeilenbasierte Binärdaten für analytische Workloads in spaltenbasierte Apache-Arrow-Formate transformiert. Das Framework deckt breite Funktionsbereiche ab, einschließlich metadatengesteuerter Schema-Evolution für Vorwärts- und Rückwärtskompatibilität, einen AOT-Kompilierungsprozess zur Eliminierung von Laufzeit-Reflektion und sichere Deserialisierung durch Whitelist-basierte Typvalidierung. Es bietet zudem Integration für hochperformante Remote Procedure Calls via gRPC.
Reconstructs original typed objects from binary payloads using a shared schema to ensure type safety.
fastjson2 ist eine performante Java-Bibliothek zur Serialisierung und Deserialisierung von Java-Objekten in und aus JSON-Strings und Byte-Arrays. Sie fungiert als binärer JSON-Serializer, um Objekte in optimierte Binärformate zu kodieren, was die Payload-Größe reduziert und die Verarbeitungsgeschwindigkeit erhöht. Das Projekt enthält eine JSONPath-Query-Engine zum Extrahieren spezifischer Daten und Felder aus JSON-Dokumenten mittels standardisierter Pfadausdrücke und Filter. Zudem dient es als JSON-Schema-Validator und bietet Hilfsprogramme zur Generierung von Datenverträgen sowie zur Validierung von JSON-Eingaben gegen definierte Schemata, um die strukturelle Korrektheit sicherzustellen. Die Bibliothek deckt eine Vielzahl von Datenverarbeitungsfunktionen ab, einschließlich der Transformation von JSON in Maps oder spezifische Objekttypen sowie der Konvertierung von Java Beans in Binärformate. Sie bietet Mechanismen für benutzerdefinierte Serialisierungslogik, Feld-Mapping via Annotationen und die Möglichkeit, Objekttypen während der Konvertierung beizubehalten.
Reconstructs Java objects from binary data using embedded type information for automatic resolution.
Fory is a cross-language serialization framework and binary data serializer designed to convert complex object graphs into a compact binary format for high-performance data exchange. It includes an IDL-based schema compiler to transform interface definition language files into type-safe native data models and a schema evolution manager to maintain forward and backward compatibility. The project features a zero-copy data access layer that allows reading specific fields from binary rows without deserializing the entire object. It supports dual-mode serialization, enabling a toggle between a por
Reconstructs native language objects from binary streams based on a shared schema.
NBTExplorer is a viewer and editor for Named Binary Tag data. It functions as a processor for the hierarchical binary tag files used within Minecraft save files and game configuration. The tool enables the exploration and modification of game world settings, player data, and entity states. It supports reading and updating structured binary data across standard, uncompressed, and region-based file formats. The project provides capabilities for binary tag deserialization and in-place modification. It handles data through buffered stream reading, zlib-based decompression, and region-file indexi
Implements binary deserialization to convert raw NBT streams into structured tree objects.