Comment est-JDBC mise à Jour par Lot utile?
Tout le monde dit mises à jour par lot de réduire le nombre d'appels JDBC. Quelqu'un pourrait-il expliquer ce "JDBC appel", et comment l'augmentation du nombre de ces appels sont plus coûteux par rapport à l'accomplissement de la totalité de la charge dans un JDBC appel.
Regardez l'une des blogs, des réponses, etc. où "tout le monde dit" ce, et ils ont presque toujours expliquer pourquoi. Si vous ne comprenez pas l'explication, poser une question de suivi. Ou lire le JDBC de la documentation.
Comment cela a été évalué que l'envoi de plusieurs choses par le biais de multiples appels JDBC sont plus coûteux que de les envoyer tous à travers un jdbc appel.Dans un cas, nous sommes en train de le charger via un seul JDBC appel et dans d'autres cas, nous sommes la distribution de la charge par le biais de multiples appels jdbc.
Comment cela a été évalué que l'envoi de plusieurs choses par le biais de multiples appels JDBC sont plus coûteux que de les envoyer tous à travers un jdbc appel.Dans un cas, nous sommes en train de le charger via un seul JDBC appel et dans d'autres cas, nous sommes la distribution de la charge par le biais de multiples appels jdbc.
OriginalL'auteur cooper | 2013-01-10
Vous devez vous connecter pour publier un commentaire.
Familièrement, lors du développeur d'utiliser l'expression JDBC appel ils parlent de l'envoi d'informations à travers le fil à la base de données. Le lot de fonctionnalité de l'API JDBC permet de présenter plusieurs opérations distinctes en un seul appel du réseau, par opposition à un appel pour chaque instruction SQL. À partir de la JDBC spec:
Dans le cas d'un PreparedStatement, l'avantage de n'avoir à créer un état unique existe. Cela vous permet d'exécuter la même requête avec plusieurs ensembles de lier des paramètres sans l'ajout de la déclaration elle-même pour le lot plusieurs fois. Le résultat final est moins de trafic réseau et de ses frais généraux associés.
Un exemple de la spécification:
le lot exécuter en une seule opération? Que faire si une de l'échec des requêtes à exécuter? il va revenir ou pas?
OriginalL'auteur jonathan.cone
Comme décrit dans IBM documentation:
OriginalL'auteur knowbody
Sur l'appel de JDBC mise à jour, le programme java se connecte au serveur de base de données et exécute la requête. Il désigne, pour chaque jour, le programme java contacte le serveur de base de données et exécute la requête. Maintenant, si l'on utilise JDBC lot de mise à jour, l'application java doit contacter le serveur de base de données qu'une seule fois et exécute toutes les requêtes au serveur de base de données et renvoie à l'application java.
En bref, il permettra de réduire le trajet aller-retour entre l'application java et le serveur de base de données. Normalement, les deux seront sur un serveur différent, de sorte qu'il permettra de réduire beaucoup de ressources réseau. Par conséquent, il permet d'obtenir de meilleures performances.
OriginalL'auteur Fahad