21 dépôts
Tools for converting data from one structured format to another, such as CSV to JSON, using a processing engine.
Distinct from Data Formats and Parsers: Candidates are either for animation formats or generic parsers; this is about the act of transformation.
Explore 21 awesome GitHub repositories matching data & databases · Data Format Transformations. Refine with filters or upvote what's useful.
Pentaho Kettle est une plateforme d'intégration de données ETL d'entreprise conçue pour extraire, transformer et charger des données entre des sources disparates et des bases de données cibles. Il fonctionne comme un orchestrateur piloté par les métadonnées qui utilise un concepteur de flux de travail visuel pour créer et gérer des séquences complexes de tâches de données et de pipelines de transformation. Le système se distingue par son moteur de traitement de données distribué, qui exécute les charges de travail sur des clusters de nœuds de serveur pour augmenter le débit. Il emploie une architecture basée sur des plugins, permettant à la plateforme d'être étendue via des fichiers JAR externes pour fournir une connectivité à diverses bases de données et services cloud. La plateforme couvre un large éventail de capacités d'intégration de données, notamment le chargement en masse, la gestion de fichiers à distance et la transformation de structures de données. Elle fournit des outils pour la validation de la qualité des données, l'automatisation des pipelines et la gestion du cycle de vie des tâches, ainsi que des utilitaires de surveillance pour suivre la santé du serveur et l'état d'exécution en temps réel.
Converts information between different file formats to ensure compatibility when moving data across disparate systems.
AlaSQL is a JavaScript SQL database engine that allows for the filtering, grouping, and joining of in-memory object arrays and JSON data. It functions as an in-memory SQL database and client-side data processor, enabling the execution of SQL statements against JavaScript arrays and external data sources in both browser and server environments. The project serves as a universal data query tool capable of performing relational joins across diverse sources, such as merging Google Spreadsheets, SQLite files, and remote APIs into a single result set. It also acts as an IndexedDB SQL wrapper, allow
Transforms data between formats, such as reading CSV or XLSX and writing the results as JSON.
Bookshelf is a JavaScript ORM for Node.js that provides a structured way to define and interact with database models. It centers on a model-driven approach where developers register models, define their relations, and manage data persistence through a consistent interface. The library distinguishes itself through its comprehensive handling of model relationships and data transformations. It supports defining one-to-one, one-to-many, many-to-many, and polymorphic associations, with the ability to eager load related models in a single query to avoid performance pitfalls. Bookshelf also automate
Parses and formats attribute values when reading from or writing to the database for data normalization.
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
Applies mathematical, string, and date transformations to incoming data streams for normalization.
Octosql est un moteur de requête SQL fédéré, un transformateur de données et un processeur SQL de flux. Il permet aux utilisateurs d'exécuter des instructions SQL uniques sur plusieurs sources de données disparates, y compris différents types de bases de données et formats de fichiers, afin de fusionner et transformer les résultats en un ensemble unifié. Le système se distingue en traitant les fichiers CSV, JSONLines et Parquet comme des tables virtuelles et en utilisant une architecture basée sur des plugins pour étendre la connectivité aux moteurs de stockage externes. Il fonctionne comme un processeur de flux pour les flux de données infinis, utilisant des filigranes (watermarks), des rétractions et des fenêtres glissantes pour maintenir la cohérence des événements hors séquence. De plus, il sert de générateur de données SQL capable de produire des jeux de données synthétiques et des flux d'enregistrements via des fonctions table. Le moteur inclut des capacités de jointure de données inter-sources et d'analyse multi-sources, optimisées par le push-down de prédicats côté source pour réduire le transfert de données. Il gère des données complexes via un système de typage statique avec des types union et offre une observabilité grâce à la visualisation des plans d'exécution de requêtes.
Treats CSV, JSONLines, and Parquet files as virtual tables for analysis and transformation via SQL.
Ce projet est une collection de frameworks et de pipelines de big data, incluant un framework d'analyse Apache Hive, une plateforme d'analyse de données comportementales, un moteur d'analyse prédictive et des pipelines de données en temps réel. Il fournit l'infrastructure pour construire des workflows ETL (Extract, Transform, Load) afin de traiter de grands jeux de données pour le stockage distribué et l'analyse basée sur SQL. Le système prend en charge diverses implémentations analytiques, telles qu'un moteur prédictif utilisant la régression linéaire pour la prévision de valeurs et une architecture temps réel qui fait transiter les données via des courtiers de messages pour un reporting immédiat. Il inclut des capacités spécialisées pour l'analyse du comportement des utilisateurs, la mesure de performance e-commerce et l'analyse de données de transport urbain. La base de code couvre un large spectre d'ingénierie et d'analyse de données, incluant le nettoyage et la transformation de données, l'ingestion distribuée, le traitement de flux par fenêtrage et la visualisation des résultats via des outils de business intelligence. Il permet en outre le calcul de métriques métier spécifiques comme les taux de conversion, la performance de monétisation et les niveaux d'engagement des utilisateurs.
Transforms raw JSON formatted source data into cleaned CSV files for downstream analytical processing.
Kiln est un atelier de développement LLM et un framework d'évaluation conçu pour concevoir, tester et optimiser des prompts et des agents IA. Il fonctionne comme un orchestrateur multi-agents et un outil d'optimisation RAG, fournissant une interface visuelle pour le développement itératif de systèmes IA. Le projet se distingue par un pipeline d'affinage complet qui prend en charge l'entraînement de modèle sans code et la distillation de raisonnement. Il permet la création de systèmes multi-agents hiérarchiques où des acteurs spécialisés se coordonnent via l'appel d'outils, et il implémente un serveur de protocole de contexte de modèle (Model Context Protocol) pour exposer ces agents et capacités de recherche en tant qu'outils standardisés pour les clients externes. La plateforme couvre un large éventail de capacités, y compris la notation automatisée par juge IA pour l'assurance qualité, la génération de données synthétiques pour l'entraînement et l'évaluation, et la récupération hybride vecteur-mot-clé pour ancrer les réponses du modèle. Elle fournit également des outils pour l'évolution des prompts, l'audit de traces et la gestion de jeux de données collaboratifs via l'intégration Git. L'atelier est accessible via une API REST auto-hébergeable et une bibliothèque Python dédiée pour l'exécution de flux de travail programmatiques.
Converts raw input data into structured formats using templates for cleaning and reshaping.
codeigniter-restserver est un framework d'API REST et une bibliothèque de contrôleurs pour construire des serveurs RESTful dans l'environnement PHP CodeIgniter. Il fonctionne comme une implémentation backend qui gère les méthodes HTTP standard pour exposer des données et des fonctionnalités via des endpoints structurés. Le projet inclut un moteur de réponse personnalisable qui permet la transformation des données de sortie en divers formats spécifiques via des méthodes de formatage personnalisées. La bibliothèque fournit des outils pour mapper les requêtes HTTP entrantes aux méthodes de contrôleur, gérer les réponses aux ressources et implémenter un contrôle d'accès basé sur la configuration.
Transforms server output into specific formats to meet the requirements of different third-party API consumers.
Consul Template est un moteur de rendu de configuration et un gestionnaire de configuration dynamique qui génère des fichiers en remplissant des modèles avec des données provenant de Consul et Vault. Il fonctionne comme un moteur de template de découverte de services et un intégrateur de gestion des secrets, transformant le catalogue de cluster et les données de santé en fichiers de configuration formatés. L'outil se distingue en agissant comme un superviseur de processus et un notificateur, capable d'exécuter des commandes shell ou de redémarrer automatiquement les applications après la mise à jour des modèles. Il dispose d'un watcher à long polling pour surveiller les magasins clé-valeur distants et emploie un mécanisme de verrouillage partagé pour coordonner les mises à jour sur plusieurs instances et empêcher les redémarrages de service simultanés. Le système couvre un large éventail de capacités, notamment la rotation automatique des secrets pour les certificats PKI et les identifiants Vault, la transformation de format de données pour JSON et YAML, et l'exécution de plugins binaires externes pour le traitement de données personnalisé. Il fournit également l'amorçage d'infrastructure et la synchronisation de rendu distribué pour réduire la charge API via la déduplication de requêtes basée sur le leader.
Converts data structures into JSON, YAML, TOML, or base64 strings with pretty-printing.
JSON-java est une bibliothèque Java pour analyser et générer du texte JSON et le mapper vers des objets et collections Java. Elle fonctionne comme un framework de sérialisation pour convertir des instances de classe et des structures de données en chaînes JSON standardisées. Le projet inclut une implémentation de pointeur JSON pour récupérer des valeurs spécifiques à partir de documents en utilisant des représentations de chaîne ou de fragment d'URI. Il fournit également un convertisseur pour traduire des structures de données entre JSON et XML, ainsi qu'un traducteur pour transformer des données entre JSON et des formats web tels que les en-têtes HTTP, les cookies et les listes délimitées par des virgules. La bibliothèque couvre de larges capacités pour le traitement JSON, incluant la sérialisation et la désérialisation d'objets. Elle prend en charge l'analyse flexible de texte JSON en objets et la génération de documents JSON standardisés.
Transforms data between JSON and web-specific formats such as browser cookies and comma-delimited lists.
Rudder Server est une plateforme de données client et un pipeline de routage d'événements conçu pour collecter, transformer et router les données d'événements client depuis diverses sources vers des entrepôts de données et des outils métier. Il fonctionne comme un résolveur d'identité client, liant les identifiants de multiples sources pour construire un graphe d'identité unifié et des profils client comportementaux complets. Le système se différencie par des capacités de reverse ETL, qui poussent les segments et audiences client traités depuis les entrepôts de données vers des applications tierces opérationnelles. Il fournit également un plan de données conteneurisé pour les déploiements Kubernetes, permettant la gestion de l'infrastructure de données en tant que code. La plateforme couvre un large éventail de capacités de gestion de données, y compris la transformation d'événements en temps réel, la validation de schéma via des catalogues de données et la gouvernance de la confidentialité. Celles-ci incluent des outils pour gérer le consentement des utilisateurs, appliquer la résidence des données au sein de régions géographiques spécifiques et masquer les informations personnellement identifiables en transit. L'installation et le déploiement des composants du plan de données sont gérés à l'aide de charts Helm.
Converts event data into destination-specific formats using a pipeline of enrichment, filtering, and anonymization functions.
llm-foundry est un framework d'entraînement pour grands modèles de langage, fournissant un système pour le pré-entraînement de modèles de fondation et le fine-tuning supervisé. Il inclut un entraîneur distribué pour mettre à l'échelle les charges de travail sur plusieurs nœuds et GPU, un pipeline de streaming de données pour charger les données depuis le stockage cloud, et une implémentation de fine-tuning efficace en paramètres. Le framework se distingue par son utilisation du sharding de paramètres et du streaming de données à haut débit pour maintenir la stabilité lors d'entraînements à grande échelle. Il intègre l'adaptation de bas rang (LoRA) pour réduire les coûts de calcul et utilise une précision en virgule flottante 8 bits pour augmenter la vitesse de calcul sur le matériel compatible. La base de code couvre un large éventail de capacités, incluant l'ingénierie de jeux de données pour transformer des données brutes en formats compressés, le benchmarking des performances des modèles via une suite d'évaluation, et la capacité d'exporter les poids des modèles dans des formats industriels standardisés. Il prend également en charge l'enregistrement de composants personnalisés via des décorateurs et offre un contrôle sur les méthodes d'embedding positionnel.
Transforms raw data into compressed, streaming-compatible formats to improve training efficiency and throughput.
Assemble est un générateur de site statique et un système de pipeline de construction qui compile le markdown, les modèles et les données en fichiers HTML statiques. Il fonctionne comme un convertisseur markdown-vers-HTML et un transformateur de format de données capable de déplacer du contenu entre les formats JSON, YAML, XML, PLIST et CSV. Le projet propose un processus de construction basé sur un pipeline où les utilisateurs peuvent définir des séquences ordonnées de transformations de données et d'étapes de traitement de fichiers. Il inclut des outils d'échafaudage de projet pour amorcer les structures de répertoires et les fichiers de configuration à partir de modèles prédéfinis. Le système gère le contenu par filtrage basé sur des collections et imbrication de mises en page hiérarchiques, permettant aux pages d'être organisées par tags et catégories. Il prend en charge des moteurs de modèles enfichables, des fonctions d'assistance personnalisables et l'injection de métadonnées YAML front-matter pour contrôler la logique de rendu. La boîte à outils fournit également des utilitaires pour compiler des feuilles de style LESS, gérer les permaliens du site et surveiller les fichiers pour détecter les changements afin de déclencher des tâches de construction automatisées.
Converts files between JSON, YAML, XML, PLIST, and CSV formats using a transformation engine.
Ce projet est une couche d'abstraction de base de données pour Laravel qui implémente le pattern repository pour découpler la logique métier des requêtes de base de données Eloquent. Il fournit une interface standardisée pour la récupération, la pagination et le filtrage des données. Le système inclut un mécanisme de critères de requête pour appliquer des conditions de recherche réutilisables basées sur les paramètres de requête et un wrapper de mise en cache qui efface automatiquement les résultats stockés lors de la création, de la mise à jour ou de la suppression d'enregistrements. Il dispose également d'une couche de présentation pour transformer les attributs bruts des modèles de base de données en une sortie formatée pour les interfaces utilisateur. Les capacités supplémentaires incluent un outil en ligne de commande pour le scaffolding de modèles, de dépôts, de contrôleurs et de fournisseurs de services, ainsi que des outils pour valider les données des dépôts et transformer les attributs des modèles.
Formats data objects using presenters to decouple internal database structures from the final output.
AdalFlow est un framework d'agents IA autonomes et une bibliothèque d'applications LLM conçue pour construire des flux de travail modulaires. Il sert d'interface agnostique au modèle et d'orchestrateur de pipeline RAG, permettant aux utilisateurs de développer des agents ReAct qui utilisent un raisonnement itératif et l'exécution d'outils externes pour résoudre des tâches complexes. Le projet se distingue par un système d'optimisation de prompt qui utilise la descente de gradient textuelle pour affiner automatiquement les templates de prompt et les exemples few-shot. Il traite le feedback du modèle comme un signal différentiable, permettant une forme de rétropropagation LLM pour améliorer itérativement la qualité de sortie basée sur des métriques d'évaluation. Le framework couvre une large surface de capacités, incluant la génération augmentée par récupération (RAG) avec recherche vectorielle sémantique et reranking, le traçage d'exécution basé sur les spans pour l'observabilité, et l'analyse structurée pilotée par schéma. Il fournit une couche de communication unifiée pour de nombreux fournisseurs de modèles propriétaires et open source, et prend en charge la conversion de fonctions Python en interfaces d'outils standardisées. Le système est implémenté en Python et s'intègre avec MLflow pour le suivi et l'analyse des flux de travail.
Converts data between dictionaries, JSON, YAML, and dataclass objects to facilitate internal data movement.
fsql is a command line interface tool that provides a SQL-like query language for finding files and directories on a local disk. It functions as a filesystem query engine, allowing users to isolate files by executing structured statements against metadata instead of using standard command line flags. The tool features an interactive read-eval-print loop that supports multi-line queries and recursive subqueries, where the results of nested search operations serve as criteria for outer queries. Search scopes are configurable through the resolution of absolute paths, relative paths, environment
Converts file attribute values into specific display formats, including size unit conversion and timestamp styling.
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.
Converts tabular data between wide and long formats using optimized casting and melting operations.
dsq is a command-line interface and data engine for executing SQL queries against local structured files, such as CSV, JSON, Parquet, and Excel, without requiring a formal database import. It functions as a schema-inference engine that automatically detects data types and maps heterogeneous file structures into relational tables for analysis. The tool utilizes a lazy stream data processor and checksum-based disk caching to handle large datasets with minimal memory usage. It provides a persistent interactive shell for iterative data exploration, allowing users to inspect inferred schemas and r
Transforms files between different formats by applying SQL transformations to the input data.
Tabletop is a JavaScript library and data parser designed to retrieve data from public Google Sheets and convert it into structured JSON objects. It functions as a client-side tool for fetching remote spreadsheet data and transforming rows into lists of objects or arrays for use in web applications. The library enables the use of Google Sheets as a lightweight database, allowing for dynamic content management where application data can be updated by editing a spreadsheet. It supports selective worksheet retrieval to limit the amount of transferred data and provides programmatic interfaces for
Provides options to return spreadsheet data as either a list of named objects or numbered arrays.
Buffer est une bibliothèque pour la manipulation de données binaires qui fournit une implémentation compatible avec le navigateur de l'interface de programmation d'application (API) de données binaires de Node.js. Elle permet aux développeurs de créer, modifier et traiter des structures de données binaires brutes au sein d'environnements web en utilisant une interface cohérente qui reflète les normes côté serveur. La bibliothèque se distingue en fournissant une approche unifiée du développement JavaScript multiplateforme, permettant le partage de code entre les environnements serveur et navigateur. Elle y parvient en polyfillant les méthodes binaires standard et en étendant le prototype de tableau d'octets natif, garantissant que les développeurs peuvent gérer la mémoire et les structures de données sans s'appuyer sur des implémentations spécifiques à l'environnement. La boîte à outils inclut des utilitaires pour gérer l'accès aux données conscient de l'endianness et effectuer des découpages (slicing) sans copie pour manipuler des segments de mémoire sans dupliquer les charges utiles. Elle prend également en charge une large compatibilité de données en facilitant les conversions entre buffers, tableaux typés et blobs, garantissant que les données binaires peuvent être échangées à travers diverses interfaces web et formats de stockage.
Ensures seamless data exchange between different web interfaces and storage formats by converting between buffers, typed arrays, and blobs.