Précédent   Forum des professionnels en informatique > Bases de données > Firebird
Firebird Forum d'entraide sur le SGBD Firebird. Avant de poster -> F.A.Q Firebird, Tutoriels
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/12/2007, 10h53   #1
Membre confirmé
 
Avatar de chris81
 
Homme
Inscription : mars 2004
Messages : 606
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 29
Localisation : France

Informations forums :
Inscription : mars 2004
Messages : 606
Points : 259
Points : 259
Par défaut Acces dotnet natif

Bonjour,
Existe t'il un acces natif pour dotnet et savez vous où je peux le télécharger ?.
__________________
VivaSoft,Intégrateur et Formateur Google Apps Authorized Reseller
chris81 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/12/2007, 12h21   #2
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 215
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 49
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 215
Points : 3 318
Points : 3 318
tu n'as pas beaucoup cherché

http://www.firebirdsql.org/index.php...id=netprovider
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/12/2007, 13h03   #3
Membre confirmé
 
Avatar de chris81
 
Homme
Inscription : mars 2004
Messages : 606
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 29
Localisation : France

Informations forums :
Inscription : mars 2004
Messages : 606
Points : 259
Points : 259
si mais je connais celui la et il n'est vraiment pas performant. c'est pour ça en fait j'en cherche un autre.
__________________
VivaSoft,Intégrateur et Formateur Google Apps Authorized Reseller
chris81 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/12/2007, 14h00   #4
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 215
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 49
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 215
Points : 3 318
Points : 3 318
pardon ?
pas performant ?
c'est la première fois que j'entend dire ça !
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/12/2007, 15h21   #5
Membre confirmé
 
Avatar de chris81
 
Homme
Inscription : mars 2004
Messages : 606
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 29
Localisation : France

Informations forums :
Inscription : mars 2004
Messages : 606
Points : 259
Points : 259
ben je suis en train de faire de la R&D sur les acces natif en dotnet. je teste pas mal de sgbd sql server, acces, mysql, firebird,oracle....
je prend toutes les lignes et les envoie dans la base de test.

La base source comprend 1 000 000 de lignes.

fb = firebird
sql = sql server

voici les resultats

Citation:
R&D Fb->Fb 7.20min
R&D Fb->SQL 2.20min
R&D SQL->SQL 2.10min
R&D SQL->MySQL 5.00min
R&D Fb->MySQL 5.06min
R&D SQL->Fb 7.00min ;
avec le driver alpha 2.5 -> 6.3 min (Super Serveur)
avec le driver alpha 2.5 -> 5 min ( Serveur Classic)
voici les mêmes résultats d'un prog en delphi avec les composants d'accés aux données dbexpress

Citation:
Data Fb->Fb 4.43min
Data Fb->SQL 4.17min
Data SQL->SQL 4.22min
Data SQL->MySQL 5.30min
Data Fb->MySQL 5.41min

On voit que le probleme vient lors de l'écriture dans firebird.
++
__________________
VivaSoft,Intégrateur et Formateur Google Apps Authorized Reseller
chris81 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/12/2007, 16h37   #6
Expert Confirmé Sénior
 
Avatar de _skip
 
Homme
Développeur d'applications
Inscription : novembre 2005
Messages : 2 326
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 28
Localisation : Suisse

Informations professionnelles :
Activité : Développeur d'applications
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : novembre 2005
Messages : 2 326
Points : 4 795
Points : 4 795
J utilise ce driver pour une applic professionnelle et je n ai pas de problème de lenteur.
Il faut regarder la façon dont tu envoies tes requetes, si tu fais des requetes paramétrées sans indiquer la longueur ou le type des paramètres, il fera automatiquement une requete avant la tienne pour connaitre les metadata ce qui a un sale impact.

Ca peut venir de ça?
_skip est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/12/2007, 16h42   #7
Membre confirmé
 
Avatar de chris81
 
Homme
Inscription : mars 2004
Messages : 606
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 29
Localisation : France

Informations forums :
Inscription : mars 2004
Messages : 606
Points : 259
Points : 259
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 string sql = @"INSERT INTO SCONN_MOD_LESIMPLE1(IDHISTOLIG,COD_PRO)VALUES(@idhisto,@cod)";
 
            cn = ConnectionFactory(strDataProviderDestination, strCnxStringDestination);
            cn.Open();
 
            cmd = cn.CreateCommand();
            cmd.Transaction = cn.BeginTransaction();
            //  cmd.Parameters.ADD(new SqlParameter("@idhisto", ""));
            //cmd.Parameters.ADD(new SqlParameter("@cod", ""));
            cmd.Parameters.ADD(new FbParameter("@idhisto", ""));
            cmd.Parameters.ADD(new FbParameter("@cod", ""));
 
            while (rd.READ())
            {
                (cmd.Parameters["@idhisto"] AS FbParameter).Value = rd.GetString(0);
                (cmd.Parameters["@cod"] AS FbParameter).Value = (rd.IsDBNull(1) ? rd.GetFloat(1) : 0);
                cmd.CommandText = sql;
                cmd.ExecuteNonQuery();
            }
            cmd.Transaction.Commit();
            rd.Close();
__________________
VivaSoft,Intégrateur et Formateur Google Apps Authorized Reseller
chris81 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/12/2007, 17h19   #8
Expert Confirmé Sénior
 
Avatar de _skip
 
Homme
Développeur d'applications
Inscription : novembre 2005
Messages : 2 326
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 28
Localisation : Suisse

Informations professionnelles :
Activité : Développeur d'applications
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : novembre 2005
Messages : 2 326
Points : 4 795
Points : 4 795
Soyez sûr que ce ne sera pas performant.

Si vous téléchargez le code source du driver et que vous le liez à votre debugger en vs2005, vous verrez que pour chaque paramètre vous aurez droit a un aller-retour au serveur.

Si vous précisez le type et la longueur des paramètres dans Add, ca devrait bien mieux marcher!
_skip est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/12/2007, 10h43   #9
Membre confirmé
 
Avatar de chris81
 
Homme
Inscription : mars 2004
Messages : 606
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 29
Localisation : France

Informations forums :
Inscription : mars 2004
Messages : 606
Points : 259
Points : 259
bonjour

Code :
1
2
cmd.Parameters.ADD(new FbParameter("@idhisto",FbDbType.VarChar,30));
cmd.Parameters.ADD(new FbParameter("@cod",FbDbType.Float,2));
Voici ce que j'ai rajouté dans le code, aucun changement. 6.21 min pour le transfert.

a+
__________________
VivaSoft,Intégrateur et Formateur Google Apps Authorized Reseller
chris81 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/12/2007, 10h59   #10
Membre confirmé
 
Avatar de chris81
 
Homme
Inscription : mars 2004
Messages : 606
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 29
Localisation : France

Informations forums :
Inscription : mars 2004
Messages : 606
Points : 259
Points : 259
Re,
voici un autre test ou j'ai hôter les CAST du parametre generique vers le parametre firebird.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
            cmd.Transaction = cn.BeginTransaction();
            //  cmd.Parameters.ADD(new SqlParameter("@idhisto", ""));
            //cmd.Parameters.ADD(new SqlParameter("@cod", ""));
 
            FbParameter p1;
            FbParameter p2;
 
            p1 = new FbParameter("@idhisto", FbDbType.VarChar, 60);
            p2 = new FbParameter("@cod", FbDbType.Float);
 
            cmd.Parameters.ADD(cmd1);
            cmd.Parameters.ADD(cmd2);
 
            while (rd.READ())
            {
                p1.Value = rd.GetString(0);
                p2.Value = (rd.IsDBNull(1) ? rd.GetFloat(1) : 0);
                cmd.CommandText = sql;
                cmd.ExecuteNonQuery();
            }
            cmd.Transaction.Commit();
            rd.Close();
Et je met toujours 6 min pour 1 000 000 de lignes.
De plus j'ai fait l'install en serveur classic car j'ai un processeur duo.

++
__________________
VivaSoft,Intégrateur et Formateur Google Apps Authorized Reseller
chris81 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/12/2007, 11h30   #11
Expert Confirmé Sénior
 
Avatar de _skip
 
Homme
Développeur d'applications
Inscription : novembre 2005
Messages : 2 326
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 28
Localisation : Suisse

Informations professionnelles :
Activité : Développeur d'applications
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : novembre 2005
Messages : 2 326
Points : 4 795
Points : 4 795
Mouais je sais pas trop,
Il faudrait debugger le provider pour savoir exactement ce qu'il fait, mais normalement, en dehors du problème dont je vous ai parlé plus haut si on ne précise pas les informations sur les paramètres, ce driver est reconnu comme tout à fait performant par la communauté, du moins dans sa release stable.

Maintenant, il a été dit que dans un environnement MS, SQL server 2005 offrait de meilleures performances mais il y a d'autres inconvénients. Et de tous vos tests, cela reste la seule véritablement gratuite.

Voici un petit quelque chose toutefois :
http://firebirdsql.org/dotnetfirebir...ce-tuning.html
_skip est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h26.


 
 
 
 
Partenaires

Hébergement Web