Partage
  • Partager sur Facebook
  • Partager sur Twitter

recuperation de donnée de taille importante

    17 juin 2008 à 10:04:32

    Bonjour,
    je suis actuellement en stage et je dois créer une application qui doit récupérer des données dans une base de données oracle (base de donnée de SAP).Ces bases sont assez conséquentes ( plus de 80 000 entrées) et donc je ne peux pas toutes les récupérer en même temps. C'est ce qui me pose problème, comment pourrais je les récupérer sachant qu'après je dois mettre ces données dans une base mysql?si quelqu'un a une idée...

    merci d'avance.
    • Partager sur Facebook
    • Partager sur Twitter
      17 juin 2008 à 10:08:37

      Bonjour,

      Peux-tu préciser pourquoi tu ne peux pas prendre 80000 entrées ?
      Quelle erreur as-tu ?

      Avec un requête sql, tu peux générer des fichiers qui seront importable dans mysql.

      Cdlt,
      Guiblan
      • Partager sur Facebook
      • Partager sur Twitter
        17 juin 2008 à 10:12:50

        car j'ai un probleme de memoire ça m'affiche : outofmemory java heap space
        je ne peux en recuperer que 20000 à la fois. Pour l'instant je met les 20000 dans une arraylist ensuite je relance le programme pour recuperer les 20000 suivantes...donc je voulais savoir s'il n'y avait pas un moyen plus rapide, sachant que le nombre d'entrée d'une table n'est pas tout le temps de 80 000 il peut etre beaucoup plus grand ou beaucoup plus petit selon les tables.

        Probleme resolu : j'ai reussi à recuperer le nombre de donnée d'une table avec une fonction RFC après j'ai juste à faire une boucle dessus.
        merci pour ton attention guiblan.
        • Partager sur Facebook
        • Partager sur Twitter
          17 juin 2008 à 11:58:43

          Bonjour,

          Peux-tu me donner ton code ?

          L'erreur que tu as est obtenu car tes lignes sont chargés en mémoire sature la mémoire de la jvm.

          J'avais effectué un programme java permettant de lire des millions de lignes de fichiers.
          Je pense donc qu'il y a peut-être une limitation au niveau du paramétrage de ta connexion.

          Cdlt,
          Guiblan
          • Partager sur Facebook
          • Partager sur Twitter
            17 juin 2008 à 16:17:41

            Quel est le but ? Changer de SGBD ? Car sinon tu peux tout simplement passer par un format xml transitoire, que tu utilises pour restorer les tables sur le nouveau SGBD.
            • Partager sur Facebook
            • Partager sur Twitter
              19 juin 2008 à 15:39:26

              le but c'était de récupérer les données de sap et de les mettre dans une base sql pour pouvoir faire des traitements par la suite.Le seul problème était l'import de données, j'ai été obligé de couper les données en paquet sinon je mettais le serveur par terre. Mais bon c'est réglé, merci beaucoup pour votre aide
              • Partager sur Facebook
              • Partager sur Twitter
                19 juin 2008 à 20:00:53

                Rien à voir avec le code ici... C'est un problème de mémoire java. Donc il faut allouer plus de mémoire.
                • Partager sur Facebook
                • Partager sur Twitter
                  27 juin 2008 à 8:39:38

                  Citation : maminova77

                  Rien à voir avec le code ici... C'est un problème de mémoire java. Donc il faut allouer plus de mémoire.

                  Ou on peut voir si on peu pas modifier le code pour qu'il en utilise moins
                  • Partager sur Facebook
                  • Partager sur Twitter
                    27 juin 2008 à 9:28:26

                    C'etait un peu des deux, enfin le probleme venait surtout de la memoire java (que j'ai augmenté maintenant) et du code qui n'etait pas optimisé.
                    • Partager sur Facebook
                    • Partager sur Twitter
                      27 juin 2008 à 9:37:59

                      Citation : idris5

                      enfin le probleme venait surtout de la memoire java (que j'ai augmenté maintenant)


                      Comment tu as fais ?
                      • Partager sur Facebook
                      • Partager sur Twitter
                        27 juin 2008 à 10:49:22

                        J'utilise eclipse, dans eclipse pour que la modification de la memoire java soit appliquable pour tout tes projets tu dois aller dans :

                        menu Window
                        preference
                        ensuite tu vas dans java
                        puis dans installed JREs
                        ensuite tu selectionnes le jdk que tu utilises, puis tu fais edit
                        après dans default VM Arguments tu mets : -Xmx512M si tu veux 512Mo en plus 256 si tu veux moins... ensuite tu fais ok
                        et ça devrait etre bon.
                        • Partager sur Facebook
                        • Partager sur Twitter

                        recuperation de donnée de taille importante

                        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                        • Editeur
                        • Markdown