Skip to main content

Database Design and Implementation

Second Edition

  • Textbook
  • © 2020

Overview

  • Intentionally adopts the viewpoint of a software developer in order to investigate “why” database systems are the way they are (and not just “how” they are)
  • Covers all aspects of a database engine from the disk manager to the JDBC programming interface
  • Empowers readers to examine and extend or modify the code of SimpleDB, a simple database system accompanying the book, in order to learn more about the individual components in detail
  • Complemented by both conceptual and programming exercises as well as by references that provide further details

Part of the book series: Data-Centric Systems and Applications (DCSA)

This is a preview of subscription content, log in via an institution to check access.

Access this book

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

eBook USD 44.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book USD 59.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Other ways to access

Licence this eBook for your library

Institutional subscriptions

About this book

This textbook examines database systems from the viewpoint of a software developer. This perspective makes it possible to investigate why database systems are the way they are. It is of course important to be able to write queries, but it is equally important to know how they are processed. We e.g. don’t want to just use JDBC; we also want to know why the API contains the classes and methods that it does. We need a sense of how hard is it to write a disk cache or logging facility. And what exactly is a database driver, anyway?


The first two chapters provide a brief overview of database systems and their use. Chapter 1 discusses the purpose and features of a database system and introduces the Derby and SimpleDB systems. Chapter 2 explains how to write a database application using Java. It presents the basics of JDBC, which is the fundamental API for Java programs that interact with a database. In turn, Chapters 3-11 examine the internals of a typical database engine. Each chapter covers a different database component, starting with the lowest level of abstraction (the disk and file manager) and ending with the highest (the JDBC client interface); further, the respective chapter explains the main issues concerning the component, and considers possible design decisions. As a result, the reader can see exactly what services each component provides and how it interacts with the other components in the system. By the end of this part, s/he will have witnessed the gradual development of a simple but completely functional system. The remaining four chapters then focus on efficient query processing, and focus on the sophisticated techniques and algorithms that can replace the simple design choices described earlier. Topics include indexing, sorting, intelligent buffer usage, and query optimization.


This text is intended for upper-level undergraduate or beginning graduate courses in Computer Science. It assumes that the reader is comfortable with basic Java programming; advanced Java concepts (such as RMI and JDBC) are fully explained in the text. The respective chapters are complemented by “end-of-chapter readings” that discuss interesting ideas and research directions that went unmentioned in the text, and provide references to relevant web pages, research articles, reference manuals, and books. Conceptual and programming exercises are also included at the end of each chapter.  Students can apply their conceptual knowledge by examining the SimpleDB (a simple but fully functional database system created by the author and provided online) code and modifying it.

Similar content being viewed by others

Keywords

Table of contents (15 chapters)

Authors and Affiliations

  • Boston College, Chestnut Hill, USA

    Edward Sciore

About the author

Edward Sciore is a recently retired Associate Professor at the Computer Science Department, Boston College. He is the author of numerous research articles on database systems, which span both theory and practice. His favorite activity, however, is to teach database courses to captive students. These teaching experiences, accumulated over a 35-year period, are what led to the writing of this text.

Bibliographic Information

  • Book Title: Database Design and Implementation

  • Book Subtitle: Second Edition

  • Authors: Edward Sciore

  • Series Title: Data-Centric Systems and Applications

  • DOI: https://doi.org/10.1007/978-3-030-33836-7

  • Publisher: Springer Cham

  • eBook Packages: Computer Science, Computer Science (R0)

  • Copyright Information: Springer Nature Switzerland AG 2020

  • Softcover ISBN: 978-3-030-33835-0Published: 28 February 2020

  • eBook ISBN: 978-3-030-33836-7Published: 27 February 2020

  • Series ISSN: 2197-9723

  • Series E-ISSN: 2197-974X

  • Edition Number: 1

  • Number of Pages: XIII, 458

  • Topics: Database Management

Publish with us