13 Repos
Implementing streaming pipelines to prevent memory exhaustion when processing large JSON objects.
Distinct from JSON: Specifically addresses memory management via streaming, whereas the parent focuses on the parsing architecture.
Explore 13 awesome GitHub repositories matching data & databases · Memory-Efficient Streaming. Refine with filters or upvote what's useful.
Fastjson is a Java data binding framework and serialization library designed to convert objects to JSON strings and parse JSON data into typed objects. It functions as a JSON parser and stream processor capable of transforming JSON strings into data structures. The project emphasizes high performance JSON processing and memory management, specifically through the use of a pipeline to stream oversized JSON objects and texts to prevent memory exhaustion. It provides capabilities for JSON data serialization and deserialization workflows, including custom JSON data mapping and the ability to def
Prevents application memory exhaustion by streaming oversized JSON objects and texts through a processing pipeline.
Got is a promise-based HTTP request library for Node.js that supports HTTP/2 and streaming. It provides a system for making network requests with a focus on asynchronous control flow and type-safe API client development. The library is distinguished by its middleware-based request lifecycle, which uses interceptors and plugins to modify request options and response data. It includes a configurable automatic retry mechanism with backoff strategies, a built-in HTTP response cache, and a cookie-jar system for maintaining persistent sessions. Broad capabilities cover data handling through duplex
Processes request and response bodies as duplex streams to handle large datasets without memory exhaustion.
Gron is a command line utility that transforms nested JSON data into a flat list of path-value assignments. This process converts hierarchical structures into line-based statements, mapping every leaf value to its absolute path to make the data compatible with standard text-processing tools. The tool allows for the bidirectional transformation of data, enabling the reconstruction of original nested JSON objects from flattened path assignments. It can ingest JSON from local files, standard input, or remote URLs, with the ability to route network traffic through proxy servers. The utility supp
Employs memory-efficient streaming to process large JSON inputs without loading entire files into memory.
This project is a structured Node.js programming course and educational guide designed to teach JavaScript backend development. It provides a sequence of workshops and interactive tutorials that focus on the fundamentals of the Node.js runtime and its core modules. The material emphasizes asynchronous programming, specifically covering non-blocking I/O, callback patterns, and event-driven architecture. It includes a practical exploration of the core API for managing network applications, file system operations, and binary data. The curriculum covers module management and dependency resolutio
Provides instruction on using memory buffers to efficiently process binary data and large datasets.
Proxygen is a collection of C++ libraries for building high-performance HTTP servers and clients. It provides a protocol parser that converts raw network bytes into high-level transaction objects and includes a network stack for processing web traffic over the QUIC transport protocol. The project implements a layered protocol abstraction and a QUIC-based transport integration to support multiple versions of the HTTP standard, including HTTP/3. It utilizes state-machine based parsing and an event-driven I/O loop to manage concurrent network connections. The library covers asynchronous buffer
Utilizes non-blocking memory buffers to efficiently queue and stream data between the network socket and the application.
WeixinBot is a framework for WeChat account automation and bot development. It provides a programmable interface to monitor incoming messages and trigger automated actions within the WeChat ecosystem. The system emulates a browser session using a WebSocket-based protocol and establishes identity through QR code authentication. It maintains session-state persistence to keep accounts active without repeated verification. The project covers message processing for text, images, voice notes, and location data, and supports the transmission of emojis and links. It includes utilities for user conta
Provides background downloading of binary image and voice data to maintain system responsiveness.
oboe.js ist ein Streaming-JSON-Parser und HTTP-Stream-Client für die inkrementelle Datenverarbeitung. Er ermöglicht es Anwendungen, auf einzelne JSON-Objekte zu reagieren, sobald diese von einer Netzwerkanfrage oder einem lesbaren Stream eintreffen, noch bevor der gesamte Download abgeschlossen ist. Die Bibliothek fungiert als JSON-Stream-Transformer und ermöglicht das Modifizieren, Filtern und Mappen von Knoten zur Laufzeit. Sie bietet pfadbasierte Knotenauswahl, um Callbacks bei Übereinstimmung mit bestimmten Mustern auszulösen, und kann Netzwerkverbindungen vorzeitig beenden, sobald die benötigten Daten gefunden wurden, um Bandbreite zu sparen. Um Datensätze zu verarbeiten, die den verfügbaren Arbeitsspeicher übersteigen, nutzt die Bibliothek ein stream-basiertes Speichermanagement, um verarbeitete Knoten zu verwerfen. Sie unterstützt zudem das Zusammenführen historischer Datensätze mit Echtzeit-Updates über langlebige Verbindungen und bietet die Möglichkeit, bei Verbindungsabbrüchen teilweise Daten wiederherzustellen.
Discards processed nodes from the internal tree to handle datasets that exceed available system RAM.
Beast ist eine C++-Bibliothek zur Implementierung von Low-Level-HTTP- und WebSocket-Clients sowie -Servern. Es fungiert als asynchrones Networking-Framework, das darauf ausgelegt ist, nicht-blockierende I/O-Operationen und geschichtete Stream-Stacks zur Verwaltung von gleichzeitigem Netzwerkverkehr zu kombinieren, wobei speziell das asynchrone Modell von Boost.Asio genutzt wird. Die Bibliothek bietet eine umfassende Implementierung der HTTP/1.1- und WebSocket-Protokolle. Für HTTP enthält sie Primitive zum Parsen und Serialisieren von Nachrichten mit Unterstützung für Chunked-Transfer-Encoding, inkrementelles Body-Lesen und Request-Pipelining. Die WebSocket-Implementierung deckt den gesamten Lebenszyklus der bidirektionalen Kommunikation ab, einschließlich Handshakes, Subprotokoll-Aushandlung, Nachrichtenfragmentierung und Liveness-Monitoring via Control-Frames. Beast enthält eine spezialisierte Suite von Tools für das Netzwerk-Buffer-Management, um Scatter-Gather-I/O durch dynamische und sequenzbasierte Speicherpuffer zu optimieren. Es deckt zudem sichere Netzwerkkommunikation durch die Integration von SSL/TLS-Layern für verschlüsselte Streams, Zertifikatsauthentifizierung und sichere Verbindungsbeendigung ab. Das Framework bietet plattformübergreifende Abstraktionen für Datei-I/O und System-Signal-Management, um die Entwicklung stabiler Netzwerkanwendungen zu unterstützen.
Uses dynamic and sequence-based buffer concepts to handle incremental data parsing.
Memgraph is an in-memory, distributed graph database designed for high-performance labeled property graph management. It utilizes a Cypher query engine for declarative data retrieval and manipulation, providing a scalable knowledge graph backend that integrates vector search and graph traversals. The system distinguishes itself as a real-time graph analytics platform, employing native C++ and CUDA implementations to execute complex network analysis and dynamic community detection on streaming data. It provides specialized support for AI integration, including GraphRAG capabilities, the constr
Removes relationships and nodes in batches to prevent memory exhaustion in large graphs.
evpp is a C++ network library and framework designed for building high-performance network services using TCP, UDP, and HTTP protocols. It provides an asynchronous event loop to manage nonblocking I/O operations and concurrent network connections across multiple threads. The framework includes specialized tools for asynchronous DNS resolution and a system for asynchronous task scheduling using a managed thread pool. It also features a nonblocking HTTP server and client with integrated connection pooling. The project covers low-level transport layer connectivity for TCP and UDP, as well as hi
Uses asynchronous network buffers to optimize data throughput between sockets and the application.
The Datadog Agent is an infrastructure monitoring agent and host telemetry collector. It functions as a background process that gathers system metrics and application health data to send to a centralized monitoring platform. The project operates as a plugin-based metric collector, using a modular system of independent check scripts to gather data from various third-party services and applications. It serves as a remote telemetry transmitter, providing a pipeline to stream infrastructure and system information to a remote analysis and alerting backend. Its capabilities cover application perfo
Implements non-blocking memory buffers to stream telemetry data between the agent and remote monitoring endpoints.
This project provides a browser-based media player and server-side bridging component designed to render live network camera feeds directly within web applications. By utilizing standard browser media APIs, it enables the playback of video streams without the need for external plugins or proprietary software. The system functions by routing raw network camera data through a server-side proxy that translates specialized protocols into browser-compatible formats. This bridge facilitates real-time media delivery by managing network traffic and decapsulating stream headers directly within the bro
Manages incoming network packets in a memory-efficient queue to ensure smooth video rendering despite fluctuations in network latency.
Tiramisu is a polyhedral C++ compiler framework designed to express and optimize data-parallel algorithms for diverse hardware accelerators. It provides a programming interface that allows developers to define mathematical expressions, manage loop iteration spaces, and organize functions targeting heterogeneous architectures. The system features an advanced compilation infrastructure that abstracts computations into a hardware-agnostic intermediate representation before lowering them into native machine code or hardware configuration bitstreams. It calculates exact data flow dependencies thro
Represents memory buffers and creates specific views on existing buffers to handle data access operations efficiently.