4 repositorios
Mechanisms to ensure data integrity when multiple threads write to shared flat files like CSVs.
Distinct from Concurrent Write Optimizations: Focuses on file-system write synchronization for data export, unlike row-level database locking or message broker locks.
Explore 4 awesome GitHub repositories matching data & databases · Concurrent File Write Synchronizations. Refine with filters or upvote what's useful.
This project is a collection of Python scripts and tools designed for web scraping, browser automation, and large-scale data extraction. It provides a set of implementations for retrieving information from websites and private APIs, including tools for multimedia downloading and social media data archiving. The toolset includes specialized mechanisms for bypassing anti-scraping measures through IP proxy pool rotation and multi-threaded crawlers. It also features capabilities for simulating browser sessions to handle authentication, intercepting session cookies, and decrypting network payloads
Employs synchronization locks to prevent data corruption when multiple threads write to a shared CSV file.
NLog is an open-source logging framework for .NET that functions as a structured logging library and log routing engine. It captures log events with named parameters as searchable data rather than plain text and directs these messages to various output destinations based on severity and source. The framework is designed as an extensible platform, supporting custom targets, layout renderers, and filters that can be loaded from external assemblies or defined in code. It features a dynamic configuration system that allows logging targets, rules, and layouts to be updated via XML or programmatic
Allows multiple processes to write to the same log file without locking conflicts.
EasyLogger es una biblioteca de registro ligera en C/C++ y un framework asíncrono diseñado para sistemas embebidos, dispositivos IoT y wearables. Funciona como un logger eficiente en recursos y gestor de memoria flash, proporcionando herramientas para depuración de bajo nivel y registro de eventos del sistema con requisitos mínimos de ROM y RAM. El proyecto se distingue por un modelo de registro asíncrono que almacena mensajes en un hilo separado, evitando que las operaciones de registro bloqueen la ejecución de la aplicación en tiempo real. Incluye un gestor de memoria flash especializado que utiliza buffers circulares para persistir registros en almacenamiento no volátil, asegurando que los datos críticos se conserven tras reinicios del dispositivo. La biblioteca cubre una amplia gama de capacidades de observabilidad, incluyendo aserciones del sistema para validación de estado, filtrado de severidad en tiempo de compilación y ejecución, y la generación de volcados binarios hexadecimales crudos. Admite enriquecimiento de metadatos con marcas de tiempo e identificadores de hilos, junto con una interfaz portátil para enrutar registros a destinos personalizados como puertos serie o archivos. El sistema garantiza la integridad de los datos mediante sincronización de escritura y proporciona mecanismos para el vaciado manual de buffers y la recuperación de registros almacenados.
Uses semaphores to synchronize concurrent writes and prevent data corruption in the log storage.
H2 es un sistema de gestión de bases de datos relacionales compatible con JDBC, escrito en Java. Funciona como una base de datos SQL embebible que puede ejecutarse directamente dentro de un proceso de aplicación para eliminar la latencia de red, o como una base de datos en memoria para almacenamiento volátil de alto rendimiento. También incluye una consola basada en web para ejecutar comandos SQL y administrar esquemas. El sistema se caracteriza por sus modos de despliegue flexibles, incluyendo un modo servidor independiente para acceso remoto TCP/IP y un modo mixto para conectividad local y remota simultánea. Cuenta con una capa de emulación de dialectos y modos de compatibilidad que permiten imitar el comportamiento y la sintaxis de otros sistemas de bases de datos. El motor proporciona un amplio conjunto de capacidades que cubren transacciones ACID con control de concurrencia multiversión, soporte para datos geoespaciales y JSON, y funciones avanzadas de ventana analítica. Incluye herramientas para la preservación de datos mediante copias de seguridad comprimidas, restauración de scripts SQL y gestión de memoria fuera del heap (off-heap) para manejar grandes datasets. La base de datos se integra con aplicaciones utilizando controladores estándar de Java Database Connectivity y URLs de conexión.
Ensures data integrity by preventing multiple concurrent processes from writing to the same database file.