IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Oracle Discussion :

Base Oracle embarquée sur un navire et synchronisation avec la BD à terre


Sujet :

Oracle

  1. #1
    Membre actif Avatar de habasque
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Septembre 2006
    Messages
    530
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Septembre 2006
    Messages : 530
    Points : 296
    Points
    296
    Par défaut Base Oracle embarquée sur un navire et synchronisation avec la BD à terre
    Salut à tous,

    je travaille actuellement sur une base de données Oracle 10g/Forms 6i qui concerne les données de pêcheries.
    pour le moment, la base de données fonctionne à terre. dans les mois qui viennent, l'idée est de mettre en place un réseau avec un serveur Oracle sur un navire scientifique afin de permettre aux chercheurs de saisir leurs données en live.
    maintenant, je ne vois pas comment mettre à jour/synchroniser la base qui est à terre et les données saisies au cours de la campagne scientifique ?
    faut t-il vider la base embarquée (mise à part les données référentielles) avant chaque campagne en mer?
    au retour de campagne comment intégrer les données à la base maître ?

    si vous avez des idées de processus, je suis preneur...

    merci d'avance

  2. #2
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 073
    Points
    19 073
    Par défaut
    avec des vues matérialisées par exemple

  3. #3
    Membre actif Avatar de habasque
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Septembre 2006
    Messages
    530
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Septembre 2006
    Messages : 530
    Points : 296
    Points
    296
    Par défaut vues matérialisées
    effectivement, ce pourrait être une solution.
    par contre, quelles sont limites en terme de volumétrie ?
    le fait de synchroniser les 2 bases après une durée de 25 jours de campagne en mer ne pose t-il pas problème ?

  4. #4
    Membre éprouvé
    Inscrit en
    Avril 2006
    Messages
    1 024
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 1 024
    Points : 1 294
    Points
    1 294
    Par défaut
    Il faut que tu te pose effectivement plusieurs questions:
    - quel est le volume de la base ?
    - sur quel volume portent les modifications (le nombre de jour n'indique rien) ?
    - une fois les données rapatriées à terre, sont elles modifiées ?
    - la base à terre est-elle modifiée pendant la mission du bateau ?
    - en cas de modifs parallèles, portent-elles sur les mêmes users, les meme tables ?
    - la base à terre est elle exactement l'image de la base sur le bateau ?
    - il y a-t-il une synchronisation dans l'autre sens de la base à terre vers la base du bateau ?

    Il y a une foule de solutions plus ou moins lourdes et plus ou moins performantes :
    - vues matérialisées
    - réplication multi-maitres
    - import/export
    - transportable-tablespace
    - clonage par copie de datafiles ou rman.
    - standby
    - procédures stockée spécifiques
    (et j'en oublie sûrement)

    toutes ces méthodes on des avantages et des inconvéniants en termes de souplesse/rapidité de mise en oeuvre/performances/automatisme on ne peut donc pas donner une solution à priori sans en savoir plus...

  5. #5
    Membre actif Avatar de habasque
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Septembre 2006
    Messages
    530
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Septembre 2006
    Messages : 530
    Points : 296
    Points
    296
    Par défaut volume et utilisation de la base
    la base de données sera utilisée en permanence par le personnel à terre, donc également pendant les campagnes en mer. elle continue d'évoluer.

    à terre, la base aura un volume de 50Go au départ mais arrivera rapidement à 200Go.

    en mer, un faible volume de données sera saisi : de l'ordre de centaines de méga. il s'agira essentiellement d'ajout de données.

    les modifications parallèles pourront portées sur les mêmes tables.

    en fait, peut être que le principe le + simple serait de mettre uniquement les données référentielles sur la version embarquée. au retour de campagne, il suffirait alors de réinjecter dans la base à terre, les données saisies.
    à part, cette idée de vidage de la base embarquée après chaque campagne, je ne vois pas de solution pour garder une cohérence dans la base maître.

  6. #6
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 073
    Points
    19 073
    Par défaut
    dans ce cas des vues matérialisées en FAST REFRESH paraissent pas mal non ?

  7. #7
    Membre éprouvé
    Inscrit en
    Avril 2006
    Messages
    1 024
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 1 024
    Points : 1 294
    Points
    1 294
    Par défaut
    L'évolution parallèle des 2 bases (surtout sur les mêmes tables) élimine un bon nombre de solutions. Avant toute considération technique, je pense qu'il faut déja se poser de manière fonctionnelle le problème de la gestion des conflicts (ie que se passe-t-il si quelqu'un à terre modifie une donnée alors quelqu'un en mer a modifié la même donnée dans un sens différent, qui a raison ? est-ce que ce cas est impossible ? etc...)
    J'ai l'impression que selon la nature des données la réplication ne dois pas se faire dans le meme sens:

    . le référentiel se fait dans les sens : TERRE -> BATEAU et ces données ne sont pas modifiables sur le bateau, donc des vues matérialisées avec refresh différentiel (= FAST REFRESH) semble adapté (tables maitres sur la terre, vues esclaves sur le bateau)

    . Pour ce qui est des données non référentielles, l'idéal serait de pouvoir les séparer dans différentes tables de manière à ce que chacune n'ait qu'un sens unique de réplication et pouvoir ainsi là aussi mettre en place des vues matériélisées dans un sens ou dans l'autre. Pour les tables a accès réellement concurent, je crois qu'il faut faire des fonctions spécifiques de copies à travers un dblink. L'idéal serait que ces données à traiter de manière spécifiques aient la bonne idée d'etre datée et/ou étiquetées afin de pouvoir ne répliquer facilement que le delta à chaque synchronisation. Sinon il va faloir mettre de la réplication multi-maitre sur ces tables, ce qui est une usine à gaz pénalisante pour les performances...

    Tout ça dépend aussi d'un paramètre très important, à savoir si l'application est figée ou si elle est encore en construction ? car la problèmatique de rafraichissement croisé est toujours complexe, c'est donc quelque chose qu'il faut intégrer dans ses analyse dés la conception du logiciel. Sans ça, on est obliger de faire du bricolage plus ou moins heureux après coup...

  8. #8
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 073
    Points
    19 073
    Par défaut
    j'avais pas saisi que la Terre pouvait modifier les mêmes données que la mer

    En effet, il faut d'abord définir les priorités

  9. #9
    Membre actif Avatar de habasque
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Septembre 2006
    Messages
    530
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Septembre 2006
    Messages : 530
    Points : 296
    Points
    296
    Par défaut récolte de données
    il faut savoir que sur le bateau, il s'agit essentiellement de récolter des données puis de les ajouter dans la base. peu de modifications auront lieu sur la base en mer.

    le référentiel se fait dans les sens : TERRE -> BATEAU et ces données ne sont pas modifiables sur le bateau, donc des vues matérialisées avec refresh différentiel (= FAST REFRESH) semble adapté (tables maitres sur la terre, vues esclaves sur le bateau)
    je serais assez d'accord sur ce point. le personnel embarqué n'est pas censé modifier les données du référentiel.

    Pour ce qui est des données non référentielles, l'idéal serait de pouvoir les séparer dans différentes tables de manière à ce que chacune n'ait qu'un sens unique de réplication
    tu veux dire qu'il faut par exemple deux tables pour les données océanographiques : table_oceano_maitre et table_oceano_mer ?

    et pour information, l'application est en phase de test. ell devrait monter en production d'ici 3 mois.

  10. #10
    Membre éprouvé
    Inscrit en
    Avril 2006
    Messages
    1 024
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 1 024
    Points : 1 294
    Points
    1 294
    Par défaut
    Citation Envoyé par habasque

    tu veux dire qu'il faut par exemple deux tables pour les données océanographiques : table_oceano_maitre et table_oceano_mer ?

    Oui c'est mieux d'avoir cette architecture, comme ça tu controle tes flux de données facilement (vues matérialisées) et tu gères tes éventuels conflicts tranquillement. Cependant maintenant que ton applicatif est en test, est-ce que tu as encore la main dessus pour faire ce genre de modification ?

Discussions similaires

  1. Réponses: 5
    Dernier message: 04/06/2012, 16h48
  2. Connexion base oracle 8i sur serveur distant à partir PDA.
    Par chris1977 dans le forum Connexions aux bases de données
    Réponses: 4
    Dernier message: 01/12/2008, 09h38
  3. Restaurer base oracle 10GR2 sur Oracle 9iR2
    Par bannane89 dans le forum Oracle
    Réponses: 1
    Dernier message: 08/01/2007, 08h48
  4. Recuperation base oracle 8 sur un systeme UNIX
    Par Laye dans le forum Oracle
    Réponses: 7
    Dernier message: 06/12/2006, 11h02
  5. Réponses: 4
    Dernier message: 29/08/2005, 17h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo