A growing number of organizations are using containers, such as docker, to deploy applications and parts of their infrastructure. How well do contains work with a database such as PostgreSQL? What do we need to know about installing, configuring, and deploying PostgreSQL in this way, and what mistakes should we aim to avoid? In this talk, Jignesh Shah shares his experiences combining PostgreSQL with Docker. He describes the reasons why it’s useful to work in this way, and how we can deploy and then monitor our PostgreSQL instances in a number of ways.
Databases form the cornerstone of many applications, Web sites, and platforms. A huge amount of time, money, and research has been poured into databases over the last few decades. But our thirst for data, and the quantities that we’re trying to read and analyze, continue to grow. What can and should we do? How can we ensure reliability? How can we communicate with a growing number of other systems? And where does PostgreSQL, an open-source relational database with a growing number of features, fit into this trend? In this talk, Siimon Riggs answers all of these questions, and describes how PostgreSQL’s developers are working to keep as many of these questions in mind as they continue to improve their contribution to the world of databases.
So, you’ve got a lot of data. You might even say “big data.” You want to analyze it, and so you turn to Python and the SciPy stack. But you might also want to benefit from a relational database, such as PostgreSQL — either because the data is already in there, or because it’ll be useful to take advantage of some of PostgreSQL’s features. In this talk, Josh Berkus shows us how we can use PL/Python, running inside of the database — thus avoiding the need to transfer data from the database to Python. If you’re doing data science, using Python, or using PostgreSQL, then this talk will show yo how to combine these tools for fast and flexible open-source tools that help you to do great data science.
So, you’ve put text inside of your PostgreSQL database. How you can find, among all of your rows, the rows that contain precisely the text that you want? Fortunately, PostgreSQL offers many options, including a sophisticated full-text search engine. In this talk, Phil Vacca provides us with an introduction to searching for text in PostgreSQL, looking at some of the features that make it much better than just a plain ol’ index, such as weighting and stemming,
Many applications now use PostgreSQL as a database; the price, features, and community have long made for a compelling use case. But what if you need several, or many, PostgreSQL servers? How can you best deploy such servers? One answer is to use Ansible, a provisioning system written in Python that has become an increasingly popular alternative to such well-known systems as Chef and Puppet. In this talk, Kenny Gorman describes why you would want to provision your PostgreSQL servers with Ansible, and then how you can do so.
PostgreSQL is a well-known and powerful relational database. But it is increasingly a platform that can integrate with other databases and storage systems, using a number of “foreign data wrappers” and other integration mechanisms. How do these work, and how do they allow you to read from and write to other PostgreSQL servers, relational database systems, and even NoSQL systems? And how can PostgreSQL thus become the center of a heterogeneous database federation, rather than a standalone server? In this talk, Jim Mlodgenski introduces the theory and practice of combining various database systems into a single system, all coordinated by PostgreSQL.
Functions are one of PostgreSQL‘s most powerful and least-used features. You can invoke functions, but you can also write functions in a variety of languages. How do PostgreSQL’s functions work? How are the languages different from one another? How do you create anonymous functions? And what are the best practices for function creation? In this talk, Joe Conway answers all of these questions, and more, providing a deep dive into the functions that we use, and those that we create, providing a great deal of insight into the process for PostgreSQL users old and new alike.
What do you need to know in order to run a PostgreSQL system? This talk, by Simon Riggs, attempts to summarize many of the ideas, tasks, and tools that PostgreSQL administrators need to know in order to do their jobs effectively. How should you think about your job as a PostgreSQL DBA? What sorts of monitors should you put on your system? What settings should you avoid to reduce the chance of disaster? If you’re running one or most PostgreSQL systems, then this talk will give you some ideas for how to ensure they run smoothly — and continue to do so.
For several years now, PostgreSQL has supported streaming replication. The idea, simply put, is that a master database streams database changes to one or more slave machines. The slave machines then replay those changes, providing us with identical PostgreSQL machines that can be queried in read-only mode. But the setup of such slaves can be a bit complex, and the streaming describes the precise changes that occurred in the database, rather than a logical description of those changes. Logical decoding is a new feature in PostgreSQL that opens to door to better streaming replication, and also to new applications that can take advantage of these logical descriptions. In this talk, Alvaro Hernandez describes the motivation behind logical decoding, the ways in which you can implement it, and ways in which you might want to take advantage of it — for replication, but beyond it, as well.
PostgreSQL is a popular open-source database. But can it handle large-scale applications? In particular, can it scale up to handle large Web applications, with millions of users and many billions of dollars at stake? The answer is “yes,” but that just raises the question of “how,” and what techniques can (and should) be used to scale it up in this way. In this talk, Sean Chittenden describes the aspects of scaling, and some of the different ways and layers that can fail. He then describes how Groupon has tried to reduce the risk of failure, and how they have used PostgreSQL in this context, and the ways that you can tune context appropriately (and inappropriately) to scale it up.