23 dépôts
Techniques for processing large datasets in small chunks to prevent memory overload.
Distinct from Stream Processing: Distinct from general Stream Processing by focusing on local memory efficiency and chunking rather than real-time high-velocity data analysis.
Explore 23 awesome GitHub repositories matching data & databases · Memory-Efficient Data Streaming. Refine with filters or upvote what's useful.
AISystem is a comprehensive AI full-stack infrastructure project covering the entire pipeline from AI chip architecture to high-level training frameworks. It encompasses the development of AI compiler frameworks, inference engines, and distributed training orchestrators designed to coordinate workloads across a heterogeneous compute stack of CPUs, GPUs, and NPUs. The project focuses on the deep integration of software and hardware, employing software-hardware co-design to align tensor layouts with physical memory structures. It provides specialized capabilities for accelerating Transformer mo
Divides large matrices into smaller blocks to balance memory bandwidth and maximize hardware compute utilization.
PHPExcel is a PHP spreadsheet library used for programmatically reading and writing spreadsheet files in various formats. It utilizes an in-memory spreadsheet model that maps spreadsheet structures to a hierarchy of objects for programmatic manipulation. The library functions as an Office Open XML processor for generating and manipulating XLSX documents and serves as a reader for extracting data and structure from legacy binary XLS files. It also includes tools for CSV data integration and importing. The project provides capabilities for automated report generation and spreadsheet data extra
Implements chunk-based processing to minimize memory consumption when reading or writing large spreadsheet datasets.
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
Teaches how to process large datasets using streams to avoid loading entire files into memory.
This project is a software engineering style guide and a curated collection of architectural patterns and coding standards. It provides a multi-language coding standard to ensure maintainable software across Ruby, Python, JavaScript, and Swift. The project establishes a development workflow specification for version control, continuous integration, and peer review to maintain a linear project history. It also includes a web accessibility framework based on ARIA and WCAG standards, using design tokens and semantic HTML patterns to build inclusive interfaces. The guides cover a broad range of
Implements sequential chunk processing for infinite event streams to prevent memory overflows.
YARA is a pattern matching engine and binary analysis tool used to identify and classify malware samples. It functions as a malware research framework that allows for the definition of file descriptions and detection rules to find indicators of compromise within binaries. The system enables the creation of custom detection rules using strings, wildcards, and regular expressions. These rules use boolean logic to match textual or binary patterns, allowing for the classification of files into specific malware families and the automation of threat intelligence. The engine utilizes Aho-Corasick s
Processes large binaries in memory-efficient chunks to prevent system memory overload during scans.
llrt is a low-latency JavaScript runtime based on the QuickJS engine, specifically designed for executing asynchronous functions in serverless environments. It provides a lightweight execution layer optimized for fast startup times and minimal memory usage when running ES2023 workloads. The project differentiates itself by bundling natively optimized cloud service SDKs directly into the runtime binary to eliminate external dependency loading. To further reduce cold start latency, it implements parallel connection warming for TLS and network handshakes during the startup phase. The runtime co
Processes continuous data flows using buffers and stream interfaces for efficient memory management.
Higress est une passerelle API native IA et cloud-native qui route, sécurise et optimise le trafic entre les clients et les services de grands modèles de langage. Il fonctionne comme un point d'entrée centralisé pour les microservices, servant à la fois de contrôleur d'ingress Kubernetes et d'orchestrateur de passerelle IA. Le projet se distingue par la gestion du trafic entre plusieurs fournisseurs d'IA en utilisant un protocole unifié, intégrant une limitation de débit consciente des jetons (token-aware) et la mise en cache des réponses pour optimiser l'inférence des modèles. Il coordonne la communication entre les modèles d'IA et les outils externes pour fournir un contexte et des données en temps réel, tout en hébergeant des endpoints de serveur pour les agents IA. Les capacités larges incluent l'application de la sécurité API via des pare-feu d'applications web (WAF), la gestion automatisée des certificats TLS et la découverte dynamique de services. La passerelle prend en charge le traitement personnalisé des requêtes via des plugins WebAssembly sandboxés qui permettent la transformation du trafic avec rechargement à chaud. Le système implémente des API d'ingress standardisées pour gérer le routage réseau au sein de clusters conteneurisés avec une faible surcharge de ressources.
Processes request and response bodies as continuous data streams to minimize memory overhead for AI responses.
CloudSaver is a multi-cloud file transfer manager and storage aggregator designed to discover remote resources and save them directly to cloud drives. It functions as a cloud file downloader and management platform that enables the movement of data between different cloud storage providers without requiring files to be downloaded to a local device first. The system uses OAuth authentication to manage secure connections to third-party cloud drives, facilitating direct server-to-server data transfers. It incorporates asynchronous streaming to move data between remote sources and destinations, p
Uses memory-efficient data streaming to move large files between remote servers without loading them into RAM.
The C++ REST SDK is a library for asynchronous HTTP and RESTful communication in native C++ applications. It provides a non-blocking network client for sending requests and receiving responses, a JSON parser for serializing and deserializing data, and a WebSocket client library for real-time, full-duplex communication. The project includes a dedicated OAuth2 authentication client to manage access tokens and authorization flows for secure communication with protected cloud resources. It utilizes a task-based asynchronous model to coordinate background operations and keep application interfaces
Processes large network payloads in incremental chunks to maintain memory efficiency.
elasticsearch-dump is a command line tool for importing, exporting, and transferring data between Elasticsearch and OpenSearch instances. It functions as an index dump utility that saves documents, mappings, and analyzers to local files or standard output. The tool enables the movement of data between clusters using local files as an intermediary and can flatten nested JSON documents into CSV files for external analysis. It allows for the modification or anonymization of documents during the transfer process through the use of custom JavaScript functions. The utility covers data extraction a
Processes documents in sequential chunks to move data without overloading system memory.
This project is a learning guide and collection of study notes designed to teach Node.js backend development. It provides a comprehensive core API reference and practical demonstrations for implementing server-side logic, network programming, and system APIs. The guide specifically covers advanced technical domains including process management for scaling applications via clusters and child processes, as well as network programming for building TCP, UDP, and HTTP services. It also includes detailed instructional material on security implementation, focusing on cryptographic hashing and encryp
Processes large datasets incrementally in small chunks to maintain low memory overhead.
DbGate is a universal database management tool and SQL client that provides a unified interface for querying and administering multiple SQL and NoSQL databases. It functions as a multi-database administration GUI and SQL IDE, allowing users to write and execute scripts and manage database schemas. The project distinguishes itself by acting as an API client and explorer for REST, GraphQL, and OData services, enabling users to fetch and export data from these endpoints. It also serves as a data integration tool, facilitating the movement of records between diverse databases and file formats suc
Moves records between sources and destinations using a pipeline of readers and writers to handle large datasets efficiently.
Lit-llama est un framework d'implémentation basé sur PyTorch pour le modèle de langage LLaMA, fournissant un système pour le pré-entraînement, l'ajustement (fine-tuning) et l'inférence haute performance. Il inclut un pipeline de pré-entraînement pour créer des modèles de langage fondamentaux à partir de zéro et des outils pour exécuter des poids pré-entraînés afin de générer du texte naturel et prédire des séquences. Le projet fournit des toolkits spécialisés pour l'ajustement efficace en paramètres utilisant l'adaptation de bas rang (LoRA) et des adaptateurs légers. Il inclut également une bibliothèque de quantification qui réduit l'empreinte mémoire des modèles via une précision de quatre et huit bits pour permettre l'exécution sur du matériel aux ressources limitées. Le framework intègre une conception de transformateur simplifiée et emploie l'attention flash pour optimiser la mémoire et la vitesse. Il gère en outre des jeux de données à grande échelle via des formats de données en streaming pour éviter de charger des corpus entiers dans la mémoire système.
Processes massive datasets in small chunks from disk to prevent system memory overload during pre-training.
CppGuide is a curated collection of educational resources and practical guides focused on C++ server development, Linux kernel internals, concurrent programming, network protocols, and security exploitation. It provides structured learning paths for backend developers, covering everything from interview preparation to building high-performance network servers and understanding operating system fundamentals. The guide distinguishes itself by offering in-depth, hands-on tutorials that walk through real-world implementations, including building a Redis-like server from scratch, designing custom
Streams results through worker pools and pipelines to handle high-volume data efficiently.
X-Ray est un framework de scraping web et un crawler web asynchrone conçu pour extraire des données structurées à partir de sites web. Il fonctionne comme un extracteur de données HTML qui transforme le contenu brut de la page en un schéma défini en utilisant des sélecteurs de style CSS. Le projet implémente un crawler de navigateur headless capable d'exécuter du JavaScript pour rendre du contenu dynamique. Il gère la découverte de contenu de site web via une stratégie de crawling en largeur d'abord et la découverte automatique de pagination pour traverser les jeux de résultats multi-pages. Le framework gère les pipelines de données web en utilisant une file d'attente de requêtes à concurrence limitée et un contrôle du taux de requête pour réguler les appels réseau sortants. Les résultats extraits sont gérés via une persistance de données basée sur les flux pour traiter de grands jeux de données sans surcharger la mémoire système.
Writes extracted data to streams to process large datasets without overloading system memory.
Cette bibliothèque est un sérialiseur et stringifier de données CSV pour transformer des enregistrements structurés en valeurs séparées par des virgules. Elle fournit des outils pour convertir des enregistrements de données en texte brut via des implémentations synchrones, basées sur des callbacks ou basées sur des flux. Le projet se distingue en offrant une implémentation de streaming via l'API Transform native de Node.js, qui permet le traitement de grands ensembles de données sans charger tous les enregistrements en mémoire. Elle inclut également un système de formatage flexible pour définir des délimiteurs, guillemets, caractères d'échappement et configurations d'en-tête spécifiques. Le toolkit couvre l'automatisation de l'exportation de données et le mappage d'enregistrement vers chaîne, permettant la génération programmatique de fichiers depuis des enregistrements de base de données ou des réponses API.
Utilizes a streaming pipeline to transform records into CSV format while minimizing memory usage.
more-itertools is a Python iterable utility library providing advanced functions for manipulating, filtering, and transforming data sequences. It serves as a data stream processing toolkit and a set of utilities for iterator state management, extending the capabilities of the standard Python itertools module. The library includes a combinatorial math toolkit for generating permutations, combinations, and powersets, alongside routines for number theory calculations and matrix operations. It also provides tools for stream state management, allowing users to peek at upcoming elements or seek wit
Offers a toolkit for chunking, interleaving, and flattening sequences to process large datasets with minimal memory overhead.
This project is a framework for generating synthetic tabular data that preserves the statistical properties and relational integrity of original source datasets. It functions as a metadata-driven engine, utilizing language models to synthesize information even when original training samples are restricted. The system is designed to maintain logical consistency across complex, multi-table structures while ensuring that generated outputs adhere to defined schema requirements. The platform distinguishes itself through a focus on privacy-preserving synthesis, integrating tools to quantify and mit
Processes large-scale datasets in memory-efficient chunks to maintain system stability during high-volume generation.
Le Swift OpenAPI Generator est un outil de build qui produit du code client et serveur Swift typé directement à partir de documents de spécification OpenAPI. En s'intégrant aux systèmes de build via des plugins natifs, il automatise la création d'interfaces fortement typées et de stubs de protocole qui mappent les opérations réseau aux méthodes natives, garantissant que le code de l'application reste strictement cohérent avec les schémas de données définis. Le projet se distingue par une architecture orientée protocole qui découple la logique métier des implémentations de transport spécifiques. Il utilise une couche de transport enfichable et une interception de requête basée sur un middleware pour gérer les préoccupations transversales telles que l'authentification, la journalisation et la collecte de métriques. Cette conception permet aux développeurs de maintenir une couche de communication cohérente tout en restant agnostiques des frameworks web sous-jacents ou des détails de transmission réseau. Le générateur prend en charge un large éventail de capacités, incluant le mappage de données piloté par schéma et la négociation de contenu pour divers formats. Il fournit une gestion efficace en mémoire des grandes charges utiles via un traitement de flux incrémentiel, ce qui permet l'échange de données complexes sans charger l'intégralité du contenu en mémoire. L'ensemble d'outils inclut également des utilitaires pour les tests de contrat automatisés et la génération de documentation interactive pour aider à valider les exigences des endpoints.
Handles large request and response payloads incrementally to maintain memory efficiency during network exchanges.
Kotlinx-io is a multiplatform library designed for input and output operations, providing a unified interface for streaming data, managing byte buffers, and interacting with local filesystems. It serves as a cross-platform abstraction layer that standardizes how applications handle data movement across different operating systems and hardware architectures. The library distinguishes itself by providing high-performance tools for both mutable and immutable byte sequences. It utilizes segmented memory pools and direct memory access to minimize allocation overhead and prevent unnecessary data co
Processes large datasets in continuous flows to minimize memory usage.