Leverage the power of PostgreSQL 10 to build powerful database and data warehousing applications. About This Book • Be introduced to the concept of relational databases and PostgreSQL, one of the fastest growing open source databases in the world • Learn client-side and server-side programming in PostgreSQL, and how to administer PostgreSQL databases • Discover tips on implementing efficient database solutions with PostgreSQL 10 Who This Book Is For If you're interested in learning more about PostgreSQL - one of the most popular relational databases in the world, then this book is for you. Those looking to build solid database or data warehousing applications with PostgreSQL 10 will also find this book a useful resource. No prior knowledge of database programming or administration is required to get started with this book. What You Will Learn • Understand the fundamentals of relational databases, relational algebra, and data modeling • Install a PostgreSQL cluster, create a database, and implement your data model • Create tables and views, define indexes, and implement triggers, stored procedures, and other schema objects • Use the Structured Query Language (SQL) to manipulate data in the database • Implement business logic on the server side with triggers and stored procedures using PL/pgSQL • Make use of advanced data types supported by PostgreSQL 10: Arrays, hstore, JSONB, and others • Develop OLAP database solutions using the most recent features of PostgreSQL 10 • Connect your Python applications to a PostgreSQL database and work with the data efficiently • Test your database code, find bottlenecks, improve performance, and enhance the reliability of the database applications In Detail PostgreSQL is one of the most popular open source databases in the world, and supports the most advanced features included in SQL standards and beyond. This book will familiarize you with the latest new features released in PostgreSQL 10, and get you up and running with building efficient PostgreSQL database solutions from scratch. We'll start with the concepts of relational databases and their core principles. Then you'll get a thorough introduction to PostgreSQL and the new features introduced in PostgreSQL 10. We'll cover the Data Definition Language (DDL) with an emphasis on PostgreSQL, and the common DDL commands supported by ANSI SQL. You'll learn to create tables, define integrity constraints, build indexes, and set up views and other schema objects. Moving on, you'll get to know the concepts of Data Manipulation Language (DML) and PostgreSQL server-side programming capabilities using PL/pgSQL. This will give you a very robust background to develop, tune, test, and troubleshoot your database application. We'll also explore the NoSQL capabilities of PostgreSQL and connect to your PostgreSQL database to manipulate data objects. By the end of this book, you'll have a thorough understanding of the basics of PostgreSQL 10 and will have the necessary skills to build efficient database solutions. Style and approach This book is a comprehensive beginner level tutorial on PostgreSQL and introduces the features of the newest version 10, along with explanation of concepts in a very easy to understand manner. Practical tips and examples are provided at every step to ensure you are able to grasp each topic as quickly as possible.