10 dépôts
Processing and evaluating complex datasets using optimized low-level algorithmic toolkits.
Distinct from High-Performance Data Infrastructures: Focuses on the algorithmic analysis layer rather than the storage infrastructure or visualization.
Explore 10 awesome GitHub repositories matching data & databases · High-Performance Data Analysis. Refine with filters or upvote what's useful.
dlib is a C++ machine learning toolkit and data analysis framework. It provides a collection of algorithms and utilities for building predictive modeling applications and performing statistical analysis on large datasets within native C++ environments. The project functions as a binding library that wraps low-level C++ machine learning algorithms into high-level Python scripting interfaces. This allows for the integration of high-performance native implementations with Python for machine learning development. The framework covers the implementation of predictive models, the execution of mach
Implements optimized low-level toolkits for the high-performance processing of large, complex datasets.
Apache Druid is a real-time OLAP database and distributed analytics engine. It functions as a columnar time-series database designed for high-performance analytical queries and the real-time ingestion of streaming and batch datasets. The system provides a framework for high-concurrency analytics, allowing multiple simultaneous users to execute SQL and native queries across large-scale data. It supports mixed data ingestion, combining real-time streaming and batch loading into a single system for unified analysis. The platform includes capabilities for distributed cluster management, enabling
Serves a large number of simultaneous users performing complex data analysis and reporting.
Apache Druid is a real-time analytics database and distributed columnar time-series store designed for sub-second analytical queries. It functions as a data platform featuring a distributed SQL query engine and a real-time data ingestion system for moving historical and streaming data from external sources. The system is distinguished by its ability to provide low-latency analytics under high concurrency to power operational dashboards. It implements a Kerberos-secured environment for user authentication and employs a shared-nothing cluster architecture to enable horizontal scaling. The plat
Enables the serving of complex analytical queries to many simultaneous users across distributed clusters without performance loss.
cuDF is a GPU-accelerated dataframe library and data processing engine designed for manipulating and analyzing large tabular datasets. It provides a high-level API for executing filtering, joining, and aggregating operations directly on GPU hardware. The project integrates the Apache Arrow memory format to enable zero-copy data transfers and includes a just-in-time compiler for executing custom user-defined functions on the GPU. The library features specialized acceleration for existing workflows by redirecting standard Pandas dataframe calls and Polars query plans to a GPU backend. It also p
Reads and writes Parquet, ORC, and CSV files directly to GPU memory to eliminate CPU processing bottlenecks.
RisingWave is a cloud-native streaming database and real-time analytics engine that uses standard SQL to process continuous data streams. It functions as a streaming data lakehouse, combining the capabilities of a streaming SQL database with a platform that integrates streaming ingestion with open table formats. The system is distinguished by its use of the PostgreSQL wire protocol, allowing it to integrate with existing SQL tools and drivers. It employs a decoupled compute and storage architecture, persisting streaming state and materialized views in cloud object storage to enable independen
Runs concurrent SQL queries against streaming data using a dedicated serving layer.
Vaex is a high-performance Apache Arrow DataFrame library and out-of-core data processing engine designed to handle billion-row tabular datasets in Python. It functions as a lazy evaluation framework that defers computations and transformations until results are required, enabling the processing of datasets that exceed available system RAM by mapping files directly from disk. The project distinguishes itself as a tool for big data visualization and exploration, specifically integrated for use within interactive notebooks. It provides specialized capabilities for machine learning feature engin
Calculates summary statistics using deferred execution to maintain high performance when processing billions of rows.
Pinot is a distributed, columnar analytical database designed for high-concurrency, low-latency query processing. It functions as a real-time OLAP datastore, enabling interactive, user-facing analytics by ingesting and querying massive datasets from both streaming and batch sources. The system architecture relies on a centralized controller for cluster coordination and a distributed segment-based storage model to ensure horizontal scalability. The platform distinguishes itself through a hybrid ingestion pipeline that unifies real-time event streams and historical batch data into a single quer
Serves complex analytical queries to many simultaneous users with strict latency requirements for interactive applications.
Highway est une bibliothèque C++ portable et une couche d'abstraction matérielle conçue pour écrire du code SIMD (Single Instruction Multiple Data). Elle fournit une interface unifiée qui mappe la logique de parallélisme de données vers divers jeux d'instructions CPU, permettant le développement de logiciels haute performance qui s'exécutent sur différentes architectures de processeurs sans nécessiter d'assembleur spécifique à l'architecture. Le projet dispose d'un répartiteur d'instructions dynamique qui sélectionne le jeu d'instructions CPU le plus efficace à l'exécution en fonction du matériel détecté. Il prend également en charge la spécialisation de cible statique et des mécanismes extensibles pour ajouter de nouvelles cibles matérielles ou des opérations SIMD personnalisées. La bibliothèque couvre un large éventail d'opérations vectorielles, incluant l'arithmétique élément par élément, la réduction de voie, le mélange (shuffling) et l'exécution conditionnelle masquée. Elle inclut une bibliothèque mathématique vectorisée, un gestionnaire de mémoire pour l'allocation alignée et les opérations de chargement-stockage masquées, ainsi que des primitives pour la cryptographie accélérée par matériel. Des outils sont fournis pour la compilation et la validation automatisées des instructions accélérées par matériel sur plusieurs architectures de processeurs.
Accelerates mathematical operations, sorting, and hashing using optimized low-level vector algorithmic toolkits.
Ce projet est un framework de traitement de données tabulaires haute performance pour R, conçu pour gérer des jeux de données massifs avec efficacité mémoire et vitesse. Il fournit une structure de données améliorée qui utilise la sémantique de référence et la modification sur place pour effectuer des transformations complexes sans la surcharge de copies d'objets inutiles. La bibliothèque se distingue par ses optimisations architecturales de bas niveau, incluant le traitement parallèle multi-threadé, le tri basé sur radix et l'analyse de fichiers mappés en mémoire. En déchargeant les routines critiques de manipulation et d'agrégation de données vers du code C compilé, elle permet une exécution rapide des tâches qui seraient autrement coûteuses en calcul. Son moteur principal prend en charge des opérations relationnelles avancées, telles que les jointures non-équi, glissantes et à intervalles chevauchants, parallèlement à l'indexation secondaire automatique pour accélérer l'accès répété aux données. Au-delà de ses capacités de traitement principales, le projet offre une suite complète d'outils pour la gestion du cycle de vie des données. Cela inclut des utilitaires d'ingestion et de sérialisation à haute vitesse avec détection automatique de type, ainsi qu'un support spécialisé pour l'analyse de séries temporelles et l'agrégation multidimensionnelle. Le framework est conçu pour évoluer, permettant aux utilisateurs d'effectuer des opérations complexes de regroupement, de filtrage et de remodelage sur des jeux de données contenant des milliards de lignes tout en maintenant la stabilité et les performances du système.
Orders rows using high-performance sorting algorithms to accelerate data processing tasks.
Ce projet est une bibliothèque standard communautaire pour le langage de programmation Fortran, fournissant une collection complète d'algorithmes, de structures de données et d'utilitaires système. Il est conçu pour étendre les capacités natives du langage, offrant une boîte à outils unifiée pour le calcul scientifique, l'analyse numérique et la programmation à usage général. La bibliothèque se distingue par une architecture modulaire qui utilise le dispatch d'interface générique et la spécialisation à la compilation pour garantir des performances élevées sur divers types de données. Elle fournit des abstractions standardisées pour les backends numériques externes, permettant aux développeurs de basculer entre des implémentations de référence internes et des bibliothèques de fournisseurs optimisées. La base de code est organisée en espaces de noms hiérarchiques pour éviter les collisions de symboles et prend en charge la gestion de mémoire statique pour maintenir des performances prévisibles dans les environnements à haut débit. La bibliothèque couvre une large surface de capacités, incluant les opérations d'algèbre linéaire, le calcul de fonctions mathématiques et la génération de distributions aléatoires. Elle fournit également une infrastructure essentielle pour le traitement de texte, l'interaction avec le système de fichiers et la gestion de l'environnement. Pour soutenir le cycle de vie du développement, le projet inclut des outils intégrés pour les tests unitaires, la validation basée sur les assertions et la journalisation diagnostique à l'exécution. Le projet suit des modèles de système de build conventionnels pour garantir la compatibilité avec les gestionnaires de paquets modernes et les environnements de développement externes.
Implements efficient algorithms for sorting, searching, and managing large datasets to maintain speed and reliability in computational workflows.