DekGenius.com
[ Team LiB ] Previous Section Next Section

Chapter 2. Relational Data Architecture

Good sense is the most evenly shared thing in the world, for each of us thinks that he is so well endowed with it that even those who are the hardest to please in all other respects are not in the habit of wanting more than they have. It is unlikely that everyone is mistaken in this. It indicates rather that the capacity to judge correctly and to distinguish true from false, which is properly what one calls common sense or reason, is naturally equal in all men, and consequently the diversity in our opinions does not spring from some of us being more able to reason than others, but only from our conducting our thoughts along different lines and not examining the same things.

—René Descartes Discourse on the Method

Database programming begins with the database. A well-performing, scalable database application depends heavily on proper database design. Just about every time I have encountered a problematic database application, a large part of the problem sat in the underlying data model. Before you worry too much about writing Java code, it is important to lay the proper foundation for that Java code in the database.

Relational data architecture is the discipline of structuring databases to serve application needs while remaining scalable to future demands and usage patterns. It is a complex discipline well beyond the scope of any single chapter. We will focus instead on the core data architecture needs of Java applications—from basic data normalization to object-relational mapping.

Though knowledge of SQL (Structured Query Language) is not a requirement for this chapter, I use it to illustrate some concepts. I provide a SQL tutorial in the tutorial section of the book should you want to dive into SQL now. You will definitely need it as we get further into database programming.

    [ Team LiB ] Previous Section Next Section