JDBC (Java DB connectivity) concorrente

Citation: Wilson Santos, Diogo Gomes, Óscar Mortágua Pereira, "JDBC (Java DB connectivity) concorrente", Universidade de Aveiro, Mar 2011
https://ria.ua.pt/handle/10773/7359

Abstract

A API JDBC permite aos programas Java manipularem dados de uma base de dados. No entanto, a definição da API não prevê uma utilização concorrente dos seus servi cos, n~ao e por isso poss vel partilhar objectos JDBC em seguran ca entre threads. Neste documento e descrita uma implementa c~ao concorrente da interface ResultSet. Esta interface e utilizada para ler ou modi car linhas do resultado da execu c~ao de uma instru c~ao SQL. O driver JDBC foi criado para SQL Server 2008. De modo a avaliar o desempenho da solu c~ao desenvolvida foram realizados testes de desempenho comparando-a com a implementa c~ao do driver da Microsoft, em que se criou um ResultSet por thread. Os resultados mostraram que a ideia desenvolvida produz um aumento de desempenho em ambientes multithreaded.

The JDBC API allows Java programs to access data stored on a data base. However, the API specification doesn't provide a solution for concurrent access to its interfaces, so it isn't safe to shared the same JDBC object between threads. This document describes the concurrent implementation of the Result Set interface. This interface is used to read or modify lines in the result of executing a SQL statement. The JDBC driver was created for SQL Server 2008. In order to assess its performance, the developed solution was benchmarked against the situation where it is created one ResultSet per thread using Microsoft's implementation of the JDBC driver. Results show that the solution increases performance on a multithreaded environment.

Information

Publisher: Universidade de Aveiro