1 repository
Provides flexible access to data when the underlying schema remains unknown or changes frequently.
Distinct from Dynamic Data Structures: Distinct from Dynamic Data Structures: focuses on the representation of flexible JSON documents rather than low-level C containers.
Explore 1 awesome GitHub repository matching data & databases · Dynamic Document Structures. Refine with filters or upvote what's useful.
Acest proiect este o bibliotecă de parsare JSON de înaltă performanță pentru Rust, care utilizează instrucțiuni accelerate hardware pentru a procesa structuri de date complexe. Acesta funcționează ca un instrument de serializare type-safe, mapând string-urile JSON brute în obiecte native ale limbajului, oferind în același timp flexibilitatea de a gestiona structuri de documente dinamice atunci când schemele sunt necunoscute sau se schimbă frecvent. Biblioteca se distinge prin utilizarea parsării accelerate SIMD și a identificării structurale bazate pe bitmask, care îi permit să scaneze și să tokenizeze documente prin procesarea mai multor octeți simultan. Utilizează dispatch-ul de instrucțiuni la runtime pentru a detecta capabilitățile procesorului gazdă, asigurând că setul de instrucțiuni cel mai eficient este selectat pentru mediul hardware curent. Pentru a îmbunătăți și mai mult throughput-ul, motorul utilizează o reprezentare a documentului bazată pe bandă (tape-based) și acces la date de tip zero-copy, care minimizează alocările de memorie și pointer chasing-ul în timpul traversării. Dincolo de capabilitățile sale de bază de parsare, biblioteca suportă procesarea valorilor numerice mari care depășesc capacitatea tipurilor standard de întregi sau virgulă mobilă. Se integrează cu interfețele standard de serializare pentru a asigura o gestionare consistentă a datelor și oferă căutări hash optimizate pentru gestionarea cheilor obiectelor. Proiectul este distribuit ca un crate, oferind o interfață standardizată pentru ca dezvoltatorii să încorporeze procesarea de date de mare viteză în aplicațiile lor.
Creates flexible document structures for accessing and manipulating data when the underlying schema remains unknown or changes frequently.