Couche de données brutes
Consultez les jeux de données sources pour les entités métier, la télémétrie des appareils et les actifs et inventaires, ainsi que les tables clés et la fréquence de mise à jour.
La couche de données brutes contient 3 schémas de données distincts, chacun couvrant différents aspects de la plateforme de télématique et de veille stratégique :
raw_business_data- contenant des tables, attributs et valeurs liés aux informations métier, telles que les véhicules, les employés, les géofences ajoutées par les utilisateurs, etc.raw_telematics_data- contenant des tables, attributs et valeurs liés aux données de télématique transmises par les appareils sous surveillance, telles que les positions, les entrées, les sorties et les événements.repo- contenant des tables pour la gestion des actifs et des stocks, y compris les types d’actifs configurables, les champs personnalisés, les relations entre actifs et les données géospatiales pour le suivi des ressources de l’organisation.
Chaque schéma est optimisé pour son domaine de données et ses modèles d’accès spécifiques, offrant une couverture complète des besoins opérationnels, télématiques et de gestion des actifs.
raw_business_data structure
Ce schéma contient plus de 40 tables soigneusement sélectionnées pour couvrir divers aspects métier et cas d’utilisation. Ces tables représentent vos entités métier principales, la structure organisationnelle et les données opérationnelles.
Vous trouverez ci-dessous les détails du schéma raw business data.
Fréquence de mise à jour
Les données de ce schéma sont synchronisées avec la base de données principale. Les mises à jour sont effectuées de manière incrémentale au fur et à mesure des changements dans la base MySQL source, généralement en moins de 5 minutes après la modification source.
description_parameters
Le système inclut des données de référence pour standardiser les valeurs dans toute la base de données :
Définitions des types
Types d’entités standard
vehicle_type : car, truck, bus
Codes d’état
Valeurs d’état des tâches et du système
tasks_status : unassigned, assigned, done
Définitions des unités
Unités de mesure pour les capteurs
units_type : liter, gallon, celsius
Classifications des entités
Catégories d’entités métier
entities_type : place, task, customer
Tables clés par catégorie
Les tables du raw_business_data schéma sont organisées en catégories fonctionnelles pour faciliter la navigation. Le tableau ci-dessous récapitule les tables clés par leur finalité métier :
Entités métier principales
Suivi et surveillance
Gestion des actifs
Localisation et itinéraire
Gestion des tâches et des flux de travail
Règles et automatisation
Statut et catégorisation
Groupes et hiérarchie
Champs personnalisés et entités
Suivi historique
Données de référence et de consultation
raw_telematics_data structure
La raw_telematics_data le schéma contient trois principaux types de tables qui fonctionnent ensemble pour fournir des données complètes sur les appareils.
Trouvez ci-dessous les détails du schéma raw telematics data.
Tables clés par catégorie
Chaque table a une fonction spécifique dans la capture de différents aspects des informations de l’appareil :
Les données de ce schéma sont ingérées directement depuis les appareils, avec une latence minimale (généralement de quelques secondes). Le schéma est optimisé pour les données de séries temporelles grâce à TimescaleDB, afin d’assurer un stockage et une récupération efficaces.
Informations supplémentaires
Validation des données
La base de données garantit l'intégrité des données grâce à plusieurs mécanismes :
Contraintes CHECK valident que les valeurs se situent dans des plages acceptables
Clés étrangères garantissent que les relations entre les tables restent cohérentes
Contraintes NOT NULL garantissent que les champs obligatoires ont toujours une valeur
Valeurs DEFAULT fournissent une valeur de repli lorsque les données ne sont pas fournies explicitement
Optimisation des requêtes
Les tables sont organisées avec des stratégies d'indexation spécifiques :
Toutes les tables incluent des index basés sur le temps sur
record_added_atLes colonnes de clés étrangères disposent d'index dédiés pour améliorer les performances des jointures
Les combinaisons de colonnes fréquemment utilisées disposent d' index composites
TimescaleDB fournit des index spécialisés pour les requêtes sur les séries temporelles
repo structure des données
Ce schéma est actuellement en cours de développement. Si vous souhaitez obtenir un accès anticipé ou si vous avez des questions sur cette fonctionnalité, veuillez contacter iotquery@navixy.com.
La repo Le schéma fournit un cadre complet pour la gestion des structures organisationnelles, des actifs, des appareils et de leurs relations dans des environnements multi-tenant. Construit sur PostgreSQL 14+ avec l'extension ltree, le schéma prend en charge les organisations hiérarchiques, les définitions de champs personnalisés pour tout type d'entité, le contrôle d'accès basé sur les rôles avec des restrictions au niveau des objets et des pistes d'audit complètes avec le suivi des modifications au niveau des champs. Toutes les entités peuvent être étendues sans modification du schéma, localisées pour les déploiements internationaux et reliées par des relations polymorphes flexibles.
Le schéma répond à des scénarios complexes de gestion des données, notamment les hiérarchies d'actifs de flotte à travers les niveaux organisationnels, les plateformes SaaS multi-tenant nécessitant l'isolation des données, les opérations soumises à la conformité avec des exigences détaillées d'audit, et les systèmes nécessitant des modèles de données dynamiques adaptables via des champs personnalisés plutôt que par des migrations de base de données.
Trouvez les repo détails du schéma ci-dessous.
Fréquence de mise à jour
Les données dans le repo schéma sont synchronisées en temps réel avec les systèmes sources. Les mises à jour sont appliquées immédiatement au fur et à mesure des changements, et les pistes d'audit enregistrent toutes les modifications à des fins de conformité et d'analyse historique.
ci_base
La repo schéma utilise un modèle d'héritage à table unique pour toutes les données de référence via la ci_base table :
La repo schéma utilise un Héritage à table unique modèle pour toutes les données de référence via la ci_base table. Cette conception regroupe les dictionnaires système, les classifications et les éléments de référence définis par l'utilisateur dans une structure unifiée, offrant cohérence et flexibilité sur l'ensemble du schéma.
Architecture :
La ci_base table sert de fondation pour toutes les données de référence, en utilisant un discriminator champ pour identifier le type de référence spécifique. Chaque type de référence possède une table correspondante (comme ci_device_type, ci_asset_type) qui partage le même id que ci_base, créant ainsi une relation d'héritage typée de manière sûre.
Comment les entités métier se connectent à ci_base :
Toutes les entités métier dans le repo schéma font référence aux ci_base sous-types pour définir leur classification et leur comportement :
organization→ fait référence àci_organization_type(qui hérite deci_entity_type→ci_base)user→ fait référence àci_user_type(qui hérite deci_entity_type→ci_base)device→ fait référence àci_device_typeetci_device_status(tous deux héritent deci_base)asset→ fait référence àci_asset_type(qui hérite deci_entity_type→ci_base)inventory→ fait référence àci_inventory_type(qui hérite deci_entity_type→ci_base)asset_group→ fait référence àci_asset_group_type(qui hérite deci_entity_type→ci_base)
Catégories de types de référence :
Configuration système
ci_module, ci_country, ci_role
Définissent les modules système, les références géographiques et les rôles utilisateur
Définitions des types d'entité
ci_entity_type, ci_device_type, ci_asset_type, ci_inventory_type, ci_organization_type, ci_user_type, ci_asset_group_type
Classent toutes les entités métier par type
État et classification
ci_device_status, ci_asset_type_category
Suivent les états des entités et classent les types de groupes en catégories
Contrôle d'accès
ci_permission_scope
Définissez quelles permissions peuvent être accordées (liées à ci_module et ci_entity_type)
Relations
ci_device_relation_type
Définissez les types de relations entre les appareils (maître-esclave, secours, etc.)
Catégorisation
ci_tag, ci_catalog_category
Permet un balisage flexible et une organisation du catalogue
Tables clés par catégorie
Les tables du repo Le schéma est organisé en catégories fonctionnelles. Les descriptions ci-dessous résument les tables les plus importantes selon leur objectif métier.
Relations de données
La repo Le schéma implémente des modèles de relations sophistiqués pour une modélisation flexible des données :
Structures hiérarchiques
Les organisations utilisent des chemins ltree pour des requêtes arborescentes efficaces
Les éléments de référence (
ci_base) prennent en charge des hiérarchies optionnellesMaintenance automatique des chemins via des déclencheurs de base de données
Modèles d'héritage
Héritage de table :
customizable_entity→ entités métier (organization,user,device,asset,inventory,asset_group)Héritage d'identifiant :
ci_base→ tables de types de référenceDiscrimination de type via
entity_type_idetdiscriminatorchamps
Relations polymorphes
Certaines tables utilisent des références polymorphes sans contraintes de clé étrangère pour une flexibilité maximale :
acl_role_permission.target_entity_id→ n'importe quelcustomizable_entityacl_user_scope.target_entity_id→ n'importe quelcustomizable_entityentity_tag.entity_id→ n'importe quelcustomizable_entity
Ces relations sont validées au niveau de l'application.
Informations supplémentaires
Validation des données
La repo Le schéma garantit l'intégrité des données par plusieurs mécanismes :
Contraintes de base de données
Contraintes UNIQUE avec prise en charge de la suppression logique (index partiels WHERE
deleted_atIS NULL)Contraintes CHECK (par ex.,
device_relationgarantitmaster_id≠slave_id)Contraintes NOT NULL sur les champs obligatoires
Valeurs DEFAULT pour les horodatages et les indicateurs booléens
Validation au niveau de l'application
Validation du type d'entité pour les références polymorphes
Validation du catalogue pour les références de champs personnalisés
Validation du type de champ personnalisé
Gestion des tableaux de champs à plusieurs valeurs
Optimisation des requêtes
Les tables sont organisées avec des stratégies d'indexation spécifiques :
Index standards :
Toutes les clés étrangères disposent d'index dédiés
Index temporels sur
created_at,updated_at,deleted_atIndex composites pour les colonnes fréquemment jointes
Index spécialisés :
Index GiST sur les chemins ltree pour les requêtes hiérarchiques
Index uniques partiels prenant en charge la suppression logique
Index des valeurs de champs personnalisés pour le filtrage et le tri
Index des événements d'audit sur le temps + l'entité pour des recherches efficaces
Considérations de performance :
Utilisation recommandée du pool de connexions (PgBouncer)
Maintenance VACUUM régulière pour les grandes tables
Partitionnement futur possible pour
devicetable parorganization_idVues matérialisées pour les calculs complexes de contrôle d'accès
Mis à jour
Ce contenu vous a-t-il été utile ?