22 repository-uri
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 22 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 este un API gateway AI-native și cloud-native care rutează, securizează și optimizează traficul între clienți și serviciile de modele de limbaj mari (LLM). Funcționează ca un punct de intrare centralizat pentru microservicii, servind atât ca un controller de ingress Kubernetes, cât și ca un orchestrator de gateway AI. Proiectul se distinge prin gestionarea traficului între mai mulți furnizori AI folosind un protocol unificat, încorporând limitarea ratei de acces (rate limiting) conștientă de token-uri și caching-ul răspunsurilor pentru a optimiza inferența modelului. Coordonează comunicarea între modelele AI și instrumentele externe pentru a oferi context și date în timp real, găzduind în același timp endpoint-uri de server pentru agenți AI. Capabilitățile largi includ aplicarea securității API prin firewall-uri pentru aplicații web (WAF), gestionarea automatizată a certificatelor TLS și descoperirea dinamică a serviciilor. Gateway-ul suportă procesarea personalizată a cererilor prin plugin-uri WebAssembly sandbox-uite care permit transformarea traficului cu hot-reloading. Sistemul implementează API-uri de ingress standardizate pentru a gestiona rutarea rețelei în clustere containerizate cu un overhead de resurse redus.
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 este un framework de implementare bazat pe PyTorch pentru modelul de limbaj LLaMA, oferind un sistem pentru pre-antrenare, fine-tuning și inferență de înaltă performanță. Include un pipeline de pre-antrenare pentru crearea de modele de limbaj fundamentale de la zero și instrumente pentru rularea ponderilor preantrenate pentru a genera text natural și a prezice secvențe. Proiectul oferă toolkit-uri specializate pentru fine-tuning eficient din punct de vedere al parametrilor, folosind adaptarea low-rank (LoRA) și adaptoare ușoare. Include, de asemenea, o bibliotecă de cuantizare care reduce amprenta de memorie a modelelor prin precizie pe patru și opt biți pentru a permite execuția pe hardware cu resurse limitate. Framework-ul încorporează un design simplificat de transformer și utilizează flash attention pentru a optimiza memoria și viteza. Mai mult, gestionează seturi de date la scară largă prin formate de date streaming pentru a evita încărcarea întregilor corpora în memoria sistemului.
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 este un framework de scraping web și un crawler web asincron conceput pentru a extrage date structurate de pe site-uri web. Funcționează ca un extractor de date HTML care transformă conținutul brut al paginii într-o schemă definită folosind selectori de tip CSS. Proiectul implementează un crawler cu browser headless capabil să execute JavaScript pentru a randa conținut dinamic. Gestionează descoperirea conținutului site-ului printr-o strategie de crawling în lățime și descoperirea automată a paginării pentru a traversa seturile de rezultate multi-pagină. Framework-ul gestionează pipeline-urile de date web folosind o coadă de cereri cu concurență limitată și controlul ratei cererilor pentru a regla apelurile de rețea de ieșire. Rezultatele extrase sunt gestionate prin persistența datelor bazată pe flux pentru a procesa seturi mari de date fără a supraîncărca memoria sistemului.
Writes extracted data to streams to process large datasets without overloading system memory.
Această bibliotecă este un serializator și stringifier de date CSV pentru transformarea înregistrărilor structurate în valori separate prin virgulă. Oferă instrumente pentru convertirea înregistrărilor de date în text simplu prin implementări sincrone, bazate pe callback sau bazate pe stream. Proiectul se distinge prin oferirea unei implementări de streaming prin API-ul nativ Node.js Transform, care permite procesarea seturilor mari de date fără a încărca toate înregistrările în memorie. Include, de asemenea, un sistem flexibil de formatare pentru a defini delimitatori specifici, ghilimele, caractere de escape și configurații de header. Setul de instrumente acoperă automatizarea exportului de date și maparea înregistrărilor către șiruri de caractere, permițând generarea programatică a fișierelor din înregistrările bazei de date sau răspunsurile API.
Utilizes a streaming pipeline to transform records into CSV format while minimizing memory usage.
more-itertools este o bibliotecă utilitară pentru iterabile în Python, care oferă funcții avansate pentru manipularea, filtrarea și transformarea secvențelor de date. Servește drept set de instrumente pentru procesarea fluxurilor de date și gestionarea stării iteratorilor, extinzând capabilitățile modulului standard itertools din Python. Biblioteca include un set de instrumente matematice combinatorice pentru generarea de permutări, combinații și mulțimi de puteri, alături de rutine pentru calcule de teoria numerelor și operații cu matrice. De asemenea, oferă instrumente pentru gestionarea stării fluxurilor, permițând utilizatorilor să verifice elementele viitoare sau să navigheze într-o secvență pentru a controla modul în care sunt consumate datele. Capabilitățile suplimentare acoperă rutine de procesare a datelor pentru fragmentarea (chunking), intercalarea și aplatizarea secvențelor complexe. Setul de instrumente include, de asemenea, funcții pentru analizarea proprietăților iterabilelor și sincronizarea fluxurilor de date concurente.
Offers a toolkit for chunking, interleaving, and flattening sequences to process large datasets with minimal memory overhead.
Acest proiect este un framework pentru generarea de date tabulare sintetice care păstrează proprietățile statistice și integritatea relațională a seturilor de date sursă originale. Funcționează ca un motor bazat pe metadate, utilizând modele de limbaj pentru a sintetiza informații chiar și atunci când eșantioanele de antrenament originale sunt restricționate. Sistemul este conceput pentru a menține consistența logică în structuri complexe, multi-tabel, asigurându-se în același timp că output-urile generate respectă cerințele de schemă definite. Platforma se distinge printr-un accent pe sinteza care protejează confidențialitatea, integrând instrumente pentru a cuantifica și atenua riscurile de re-identificare prin confidențialitate diferențială și tehnici de anonimizare. Susține extensibilitatea modulară, permițând integrarea modelelor de generare personalizate și a conectorilor de date. Mai mult, framework-ul include rutine de validare automatizate care compară distribuția și tiparele de corelație ale output-urilor sintetice cu datele sursă pentru a verifica fidelitatea statistică. Dincolo de generarea de bază, sistemul oferă capabilități pentru îmbogățirea datelor și feature engineering prin derivarea de noi coloane din tiparele învățate. Încorporează instrumente de supraveghere operațională pentru a monitoriza utilizarea resurselor și eficiența procesării în timpul sarcinilor de mare volum. Biblioteca este concepută pentru a gestiona seturi de date la scară largă prin procesare de flux eficientă din punct de vedere al memoriei și batching iterativ pentru a asigura stabilitatea.
Processes large-scale datasets in memory-efficient chunks to maintain system stability during high-volume generation.
Swift OpenAPI Generator este un instrument de build-time care produce cod Swift client și server type-safe direct din documentele de specificație OpenAPI. Prin integrarea cu sistemele de build prin plugin-uri native, automatizează crearea interfețelor puternic tipizate și a protocol stubs care mapează operațiunile de rețea la metode native, asigurându-se că codul aplicației rămâne strict consistent cu schemele de date definite. Proiectul se distinge printr-o arhitectură orientată pe protocol care decuplează logica de business de implementările specifice de transport. Utilizează un strat de transport pluggable și interceptarea cererilor bazată pe middleware pentru a gestiona preocupările transversale (cross-cutting concerns) precum autentificarea, logarea și colectarea metricilor. Acest design permite dezvoltatorilor să mențină un strat de comunicare consistent în timp ce rămân agnostici față de framework-urile web subiacente sau detaliile de transmisie în rețea. Generatorul suportă o gamă largă de capabilități, inclusiv maparea datelor bazată pe schemă și negocierea conținutului pentru diverse formate. Oferă gestionarea eficientă a memoriei pentru payload-uri mari prin procesarea incrementală a fluxurilor, ceea ce permite schimbul de date complexe fără a încărca întregul conținut în memorie. Toolset-ul include, de asemenea, utilitare pentru testarea automată a contractelor și generarea de documentație interactivă pentru a ajuta la validarea cerințelor endpoint-urilor.
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.