Database Design and Modeling with PostgreSQL and MySQL : Build Efficient and Scalable Databases for Modern Applications Using Open Source Databases.

Author
Tezuysal, Alkin [Browse]
Format
Book
Language
English
Εdition
1st ed.
Published/​Created
  • Birmingham : Packt Publishing, Limited, 2024.
  • ©2024.
Description
1 online resource (222 pages)

Details

Subject(s)
Summary note
Become well-versed with database modeling and SQL optimization, and gain a deep understanding of transactional systems through practical examples and exercises Key Features Get to grips with fundamental-to-advanced database design and modeling concepts with PostgreSQL and MySQL Explore database integration with web apps, emerging trends, and real-world case studies Leverage practical examples and hands-on exercises to reinforce learning Purchase of the print or Kindle book includes a free PDF eBook Book Description Database Design and Modeling with PostgreSQL and MySQL will equip you with the knowledge and skills you need to architect, build, and optimize efficient databases using two of the most popular open-source platforms. As you progress through the chapters, you'll gain a deep understanding of data modeling, normalization, and query optimization, supported by hands-on exercises and real-world case studies that will reinforce your learning. You'll explore topics like concurrency control, backup and recovery strategies, and seamless integration with web and mobile applications. These advanced topics will empower you to tackle complex database challenges confidently and effectively. Additionally, you'll explore emerging trends, such as NoSQL databases and cloud-based solutions, ensuring you're well-versed in the latest developments shaping the database landscape. By embracing these cutting-edge technologies, you'll be prepared to adapt and innovate in today's ever-evolving digital world. By the end of this book, you'll be able to understand the technologies that exist to design a modern and scalable database for developing web applications using MySQL and PostgreSQL open-source databases. What you will learn Design a schema, create ERDs, and apply normalization techniques Gain knowledge of installing, configuring, and managing MySQL and PostgreSQL Explore topics such as denormalization, index optimization, transaction management, and concurrency control Scale databases with sharding, replication, and load balancing, as well as implement backup and recovery strategies Integrate databases with web apps, use SQL, and implement best practices Explore emerging trends, including NoSQL databases and cloud databases, while understanding the impact of AI and ML Who this book is for This book is for a wide range of professionals interested in expanding their knowledge and skills in database design and modeling with PostgreSQL and MySQL. This includes software developers, database administrators, data analysts, IT professionals, and students. While prior knowledge of MySQL and PostgreSQL is not necessary, some familiarity with at least one relational database management system (RDBMS) will help you get the most out of this book.
Notes
Description based upon print version of record.
Source of description
Description based on publisher supplied metadata and other sources.
Contents
  • Cover
  • Copyright
  • Foreword
  • Contributors
  • Table of Contents
  • Preface
  • Part 1: Introduction to Databases
  • Chapter 1: SQL and NoSQL Databases: Characteristics, Design, and Trade-Offs
  • Understanding databases and data models
  • Exploring the relational data model (SQL databases)
  • Tables, rows, and columns
  • Normalization
  • Structured Query Language (SQL)
  • ACID transactions
  • Navigating the document data model (NoSQL databases)
  • Data models in NoSQL
  • Types of NoSQL databases
  • Key-value stores
  • Document stores
  • Column-family stores
  • Graph databases
  • Applying the CAP theorem and NoSQL design choices
  • Consistency
  • Availability
  • Partition tolerance
  • Consistency models in NoSQL databases
  • NoSQL design choices and use cases
  • Managing transaction management and concurrency control in NoSQL
  • BASE transactions in NoSQL databases
  • Reasons for the BASE model in NoSQL databases
  • Implications for data integrity and concurrency control
  • Analyzing the advantages and disadvantages of NoSQL databases
  • Advantages of NoSQL databases
  • Disadvantages of NoSQL databases
  • Summary
  • Chapter 2: Building a Strong Foundation for Database Design
  • The importance of a solid foundation in database design
  • Key terms and data models
  • Understanding the relational model in detail
  • Identifying entities, attributes, and relationships in database design
  • Creating an ER diagram
  • Advanced database design
  • Normalization - reducing redundancy and improving data integrity
  • Achieving normal forms - 1NF, 2NF, and 3NF
  • Ensuring database validity and integrity
  • Concluding thoughts
  • Part 2: Practical Implementation
  • Chapter 3: Getting Your Hands Dirty with PostgreSQL and MySQL
  • Understanding the sample database
  • EDA and preprocessing
  • Database schema
  • MySQL
  • Summary.
  • Part 3: Core Concepts in Database Design
  • Chapter 4: Mastering the Building Blocks of Database Design and Modeling
  • Understanding database objects
  • Understanding data types and constraints
  • Keys and how to use them
  • Database checks and constraints
  • Check constraint
  • Default constraint
  • Not null constraint
  • Checking data quality with constraints
  • No date in the future
  • Value within a specific range
  • How to avoid redundancy
  • Database consistency and beyond
  • Transactions - ensuring data integrity
  • Concurrency control - managing multiple users
  • PostgreSQL
  • Part 4: Advanced Database Techniques
  • Chapter 5: Advanced Techniques for Advanced Databases
  • Creating custom views of your data
  • Understanding the purpose of views
  • The advantages of using views in database management
  • Indexing - how to find data faster
  • Understanding indexing
  • Types of indexes
  • How indexing works
  • PostgreSQL indexes
  • MySQL indexes
  • Stored procedures - reusable code for your database
  • UDFs
  • The essence of UDFs
  • Efficiency through reusability - the role of UDFs in code optimization
  • UDFs and performance optimization in database operations
  • Using UDFs to enrich SQL queries for expressive interactions
  • Practical insights into UDFs in MySQL and PostgreSQL
  • Understanding CTEs
  • The role of CTEs in code modularity
  • Components and integration of CTEs
  • Guidelines for efficient CTE usage
  • Advanced strategies with CTEs
  • Case studies in action - real-world examples of CTE transformations
  • Chapter 6: Understanding Database Scalability
  • Introducing database scaling
  • Challenges in database scaling
  • Primary methods of database scaling
  • Vitess - a horizontal scaling solution for MySQL
  • Citus - a horizontal scaling solution for PostgreSQL.
  • Vertical scaling - enhancing capacity within existing infrastructure
  • InnoDB Cluster for MySQL
  • Sharding and resharding
  • Future trends and emerging challenges in database scaling
  • Serverless databases
  • Part 5: Best Practices and Future Trends
  • Chapter 7: Best Practices for Building and Maintaining Your Database
  • Designing for performance - optimizing database efficiency
  • Schema design
  • Query optimization
  • Advanced query optimization techniques
  • Using subqueries and JOIN clauses wisely
  • Utilizing temporary tables
  • Optimizing aggregates and GROUP BY clauses
  • Using an index to assist GROUP BY clauses
  • Iterative process and analysis
  • Understanding database scaling
  • Vertical scaling
  • Horizontal scaling
  • Replication in PostgreSQL
  • MySQL replication
  • Ensuring database security
  • Access control
  • Implementing robust authentication mechanisms
  • Permission models
  • PostgreSQL permission model
  • Roles and privileges
  • Example setup in PostgreSQL
  • MySQL permission model
  • Privileges and levels
  • Example setup in MySQL
  • Management and flexibility
  • Exploring data encryption
  • Protecting data at rest
  • Protecting data in transit
  • Monitoring and auditing
  • Data quality and governance - maintaining high standards
  • Learning about data cleaning
  • Data governance frameworks
  • Compliance
  • Collaboration and documentation
  • Effective communication
  • Documentation practices
  • Advanced topics in database management
  • Backup and recovery
  • Tools for monitoring PostgreSQL
  • MySQL performance monitoring tools
  • Strategies for regular performance analysis
  • Chapter 8: The Future of Databases and Their Designs
  • Understanding vectorized search
  • MySQL enhancements and innovations
  • MySQL HeatWave
  • Prospects of use cases of HeatWave.
  • TiDB as a MySQL drop-in replacement for distributed systems
  • PostgreSQL - expanding horizons
  • pgEdge - fully distributed PostgreSQL optimized for the network edge
  • Multi-master replication in pgEdge
  • Simplified cluster management
  • Enhanced backup and recovery
  • Advanced monitoring and alerting
  • EnterpriseDB - elevating PostgreSQL for the enterprise
  • Choosing your EDB deployment method
  • Introduction to columnar databases with ClickHouse
  • What is ClickHouse?
  • Choosing the right alternative
  • Index
  • Other Books You May Enjoy.
ISBN
1-80324-096-2
OCLC
1443941483
Statement on language in description
Princeton University Library aims to describe library materials in a manner that is respectful to the individuals and communities who create, use, and are represented in the collections we manage. Read more...
Other views
Staff view

Supplementary Information