High-Performance JDBC
summary
Covers practical JDBC-level performance issues and remedies when using databases from Java, focusing on connection management, batching updates, statement caching, result-set fetching, and concurrency control. Names and provides references for Oracle, SQL Server, PostgreSQL and MySQL and discusses how driver and engine behaviors affect performance when higher-level APIs (JPA/Hibernate, jOOQ) are used.
AI-written summary · about
chapters (27)
- 0:00Intro
- 0:45Performance Facts
- 1:28Data access layers
- 6:40Connection acquisition overhead
- 7:39Connection management
- 9:01Connection pooling
- 10:39Connection pool sizing
- 16:31FlexyPool - Connection acquisition time
- 17:05FlexyPool - Connection lease time
- 19:18Oracle Statement batching
- 21:40Delete PreparedStatement batching (5k rows)
- 24:37Statement caching gain (one minute interval)
- 25:28Oracle server-side statement caching
- 28:14PostgreSQL server-side statement caching
- 31:08Oracle explicit client-side statement caching
- 33:15PostgreSQL Server client-side statement caching
- 34:08MySQL Server client-side statement caching
- 38:13Oracle ResultSet fetch size
- 39:33SQL Server ResultSet fetch size
- 40:17PostgreSQL ResultSet fetch size
- 41:02ResultSet fetch size (10k rows)
- 43:47Oracle ResultSet size limit
- 44:23SQL Server ResultSet size limit
- 44:40Statement max rows
- 46:30Fetching too many columns
- 48:08Processing Logic
- 50:03Questions and Answers
related talks
52mPostgreSQL and Java: Best Practices
46mThe State of Java Relational Persistence
52mJava Persistence and Hibernate Tips that can boost up your application performance
31mJDBC, What Is It Good For?
34mUsing MySQL with Java
46mMastering JPA Performance
44mPostgres for Java Developers
44mPerformance oriented Spring Data JPA & Hibernate
