12 repositorios
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 es un framework de llamada a procedimiento remoto (RPC) y protocolo de serialización de datos entre lenguajes. Proporciona un lenguaje de definición de interfaz (IDL) para especificar tipos de datos e interfaces de servicio en un formato neutral, permitiendo la generación automatizada de código de cliente y servidor en múltiples lenguajes de programación. El proyecto funciona como un comunicador de servicios políglota utilizando un stack de software en capas para garantizar una comunicación interoperable. Se centra en implementar llamadas a procedimientos remotos entre lenguajes y transformar estructuras de datos complejas en formatos estandarizados para un transporte de red eficiente. El framework incluye capacidades para gestionar la compatibilidad de versiones de API para admitir actualizaciones no atómicas entre clientes y servidores. También proporciona mecanismos para verificar la integridad de los datos y validar que los servicios se comporten de manera idéntica a través de diferentes implementaciones de lenguaje.
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 es un framework de serialización binaria y biblioteca .NET que implementa la especificación Protocol Buffers. Funciona como una herramienta de serialización basada en esquemas y un mapeador de datos orientado a contratos, convirtiendo gráficos de objetos complejos en un formato binario compacto para almacenamiento y transmisión en red. La biblioteca permite el intercambio de datos multiplataforma y redes de alto rendimiento al reducir los tamaños de carga útil y el tiempo de procesamiento. Admite específicamente la persistencia de jerarquías de objetos, permitiendo la serialización y reconstrucción de estructuras de clases complejas que incluyen herencia y tipos derivados. El proyecto cubre capacidades principales que incluyen la serialización y deserialización de datos binarios, generación de clases basada en esquemas y la gestión de la herencia de tipos a través de identificadores únicos. Proporciona mecanismos para mapear estructuras de datos a través de atributos estáticos o configuraciones dinámicas en tiempo de ejecución.
Reconstructs complex .NET objects from raw binary streams to restore original application state.
Este proyecto es una librería y framework de Protocol Buffers para Swift que proporciona un runtime para serializar y deserializar datos estructurados. Incluye un generador de código que transforma archivos de esquema en estructuras de Swift con seguridad de tipos y un framework de serialización binaria para convertir datos en flujos compactos. La librería funciona como un mapeador de datos JSON, transformando mensajes en representaciones JSON estándar para facilitar el intercambio de datos multiplataforma. Utiliza un enfoque basado en esquemas para garantizar un modelado de datos consistente entre aplicaciones Swift y servicios escritos en otros lenguajes. El framework cubre la serialización y deserialización de datos binarios y JSON, utilizando una librería de runtime basada en interfaces para manejar estos formatos a través de los mensajes generados.
Reconstructs structured data from compact binary streams using predefined protobuf schemas.
Prost es una implementación de Protocol Buffers para Rust que funciona como un framework de serialización binaria y generador de código. Traduce definiciones de esquema a structs y enums idiomáticos de Rust, proporcionando la lógica necesaria para codificar y decodificar datos estructurados en el formato binario de Protocol Buffers. El proyecto se distingue por una implementación no-std, permitiéndole operar en entornos embebidos o de kernel que carecen de una biblioteca estándar. También sirve como un introspector de esquemas emitiendo conjuntos de descriptores de archivos, lo que permite el análisis programático de definiciones de esquema originales en tiempo de ejecución. La biblioteca cubre una amplia gama de capacidades, incluyendo generación de rasgos de servicio para modelado de interfaces, soporte para tipos bien conocidos y anotaciones de macros procedimentales para mapear definiciones de tipos manuales. También proporciona herramientas para la gestión de dependencias y pruebas de fuzzing para asegurar la estabilidad de la serialización.
Transforms binary streams back into structured Rust data objects through efficient deserialization.
Fury es un framework de serialización binaria multilenguaje diseñado para codificar objetos de dominio y grafos complejos para facilitar el intercambio de datos entre lenguajes. Incluye un compilador de lenguaje de definición de interfaz (IDL) que traduce definiciones de esquemas a tipos nativos idiomáticos y código repetitivo de serialización en múltiples lenguajes. El proyecto se distingue por un lector binario de copia cero (zero-copy) que permite acceder a campos específicos sin deserializar todo el objeto, así como un serializador de grafos de objetos que preserva las referencias circulares y la integridad referencial. También cuenta con un convertidor de datos que transforma datos binarios basados en filas a formatos columnares de Apache Arrow para cargas de trabajo analíticas. El framework cubre amplias áreas de capacidad, incluyendo la evolución de esquemas basada en metadatos para compatibilidad hacia adelante y hacia atrás, un proceso de compilación AOT en tiempo de construcción para eliminar la reflexión en tiempo de ejecución y la deserialización segura mediante validación de tipos basada en listas blancas. Además, proporciona integración para llamadas a procedimientos remotos de alto rendimiento a través de gRPC.
Reconstructs original typed objects from binary payloads using a shared schema to ensure type safety.
fastjson2 is a high-performance Java library used for serializing and deserializing Java objects to and from JSON strings and byte arrays. It functions as a binary JSON serializer for encoding objects into optimized binary formats to reduce payload size and increase processing speed. The project includes a JSONPath query engine for extracting specific data and fields from JSON documents using standardized path expressions and filters. It also serves as a JSON schema validator, providing utilities to generate data contracts and validate JSON input against defined schemas to ensure structural c
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.