Silicon Valley 2019 Program

2019-09-18
09:00
Samay Sharma Building scalable, real-time analytics applications with Azure Database for PostgreSQL
Hands On with Azure Database for PostgreSQL

presented by Samay Sharma

In this hands-on tutorial, we will cover many of the capabilities that make Postgres the world’s most advanced open source relational database. Specifically, we'll dive deep on how to build scalable, real-time analytics applications using Postgres in the cloud. To do this, we’ll go hands-on and use Azure Database for PostgreSQL including Hyperscale (Citus).

Topics include:

  • Why more & m...
more

09:00 - 12:00 Winchester (2) Data
Malcolm McLean Postgresql performance tuning - a crash course
Tuning PostgreSQL isn't as hard as you think

presented by Malcolm McLean

Out of the box PostgreSQL comes with very conservative performance settings. In this 3-hour workshop, we'll look at more useful options that relate to performance and how to set them for your environment, as well as query optimization, statistics, operating system parameters and server resources.

There is no one-size-fits-all approach, but through this workshop, you'll get the fundamentals o...

more

09:00 - 12:00 Winchester (1) Ops and Administration
13:00
Alvaro Hernandez Oracle to PostgreSQL Migration Tutorial
Stop paying for Larry’s boat!

presented by Alvaro Hernandez

PostgreSQL is a fully-featured, enterprise-grade and open source database, named two years in a row database of the year! And it’s also the best candidate to migrate off of Oracle, supporting very advanced SQL, easy administration and pl/pgsql, a replacement for Oracle’s PL/SQL. Stop spending hundreds of thousands or millions of $ on database licenses and reinvest them in your team, infrastru...

more

13:00 - 16:00 Winchester (1) Ops and Administration
Hans-Jürgen Schönig Finding and fixing slow queries

presented by Hans-Jürgen Schönig

Your database is performing badly but you got no idea why. Fortunately PostgreSQL has all the means to figure out what is really going on inside your database. You just have to find the right modules and use the right tools and understand what PostgreSQL is really trying to tell you. This talk will show you how to track down slow queries using pg_stat_statement, work with "explain analyze" and...

more

13:00 - 16:00 Winchester (2) Ops and Administration
2019-09-19
11:00
Roland Lee How the Heimdall Proxy Improved SQL Scale for the World's #1 Coffee Retailer
Query Caching and Read/Write splitting without code change

presented by Roland Lee

In this session, we will go over a customer use case of how the Heimdall Database Proxy offloaded and improved database scale for one of the world's largest coffee retailer. We will discuss features and solutions used to diagnose and cure bottlenecks. As the backend infrastructure has been the culprit of many application performance issues, Database Proxies in the market can save development an...

more

11:00 - 11:50 Winchester (2) Case Studies
Mason Sharp Using PostgreSQL for Data Privacy and Security
.

presented by Mason Sharp

In the age of data science and machine learning, data scientists want access to data sets quickly, but organizations often need to protect private data, whether due to internal policy or government regulations.

In this talk we discuss how to leverage PostgreSQL for managing organization-wide data access while protecting privacy.

Topics include:

  • Purpose-based data access
  • Federating...
more

11:00 - 11:50 Market Data
Greg Spiegelberg PostgreSQL as a Graph Database
Use Case Identification to Application

presented by Greg Spiegelberg

Graph databases can be an incredible tool for discovering relationships buried within the data but are they always the right choice? As technical people, we are inclined to learning something new. Graph database solutions are no exception and to many of us they appear as shiny things that must be explored and applied. They are not always the right fit and we forget the R in RDBMS. PostgreSQ...

more

11:00 - 11:50 Winchester (1) Dev
12:00
David Kohn Creating Continuously Up to Date Materialized Aggregates
Using Postgres Features to Speed Your Queries

presented by David Kohn

Time-series workloads (i.e. data from sensors, IoT devices, finance, or even satellites) are generally insert-mostly, and data typically arrives in time order (at regular or irregular intervals). Given the high velocity and continuous workload of writing time-series, insert performance is paramount. But what is the use of inserting a significant amount of data if you can't analyze, visualize, a...

more

12:00 - 12:50 Market Data
Zohaib Sibte Hassan The NoSQL store everyone ignored
Building a modern FriendFeed with PostgreSQL

presented by Zohaib Sibte Hassan

The talk is based on my original article that I wrote back in 2011 and followed up with friend feed case study. We will do a walk through history of HSTORE, and how we can now use JSONB support in PostgreSQL, d...

more

12:00 - 12:50 Winchester (2) Case Studies
Denis Magda PostgreSQL with In-Memory Computing: Faster Transactions and Analytics

presented by Denis Magda

Learn how to boost performance 10x and scale to over million transactions per second with in-memory computing.

It will be shown how to add speed and scale to your PostgresQL-based applications, APIs and analytics for different use cases. We will discuss when each option makes sense, as well as how to evolve your architecture over time to add the speed, scale, agility and new technologies nee...

more

12:00 - 12:50 Winchester (1) Dev
14:00
Christopher Travers PostgreSQL as a Big Data Platform
How to Use Postgres like People Use Hadoop

presented by Christopher Travers

In this talk for all audiences, I provide a whirlwind survey of three of our big data environments at Adjust all built on PostgreSQL. These environments are all very different in structure and operation.

One takeaway from this is that it is quite possible to apply NoSQL-like strategies to horizontally scaling various kinds of PostgreSQL analytical environments, but since every large system ...

more

14:00 - 14:50 Winchester (2) Data
Jeremy Schneider Wait! What's going on inside my database? Understanding PostgreSQL wait events
A deep dive into wait events on PostgreSQL

presented by Jeremy Schneider

PostgreSQL 9.6 introduced wait events and PostgreSQL 10 progressed them, but what are they? What do they mean? How do I find them and how do I make them go away? Wait events are one of the most significant advancements in observability for PostgreSQL databases; their usefulness is unparalleled in troubleshooting performance. This talk will go into all that and more as we explore the world of Po...

more

14:00 - 14:50 Market Ops and Administration
Jignesh Shah PostgreSQL Extensions:

presented by Jignesh Shah

PostgreSQL is designed to be easily extensible. For this reason, extensions loaded into the database can function just like features that are built in. In this session, we will learn more about PostgreSQL extension framework, how are they built, look at some popular extensions, management of these extensions in your deployments.

14:00 - 14:50 Winchester (1) Dev
Andrew Woods The Architecture of Geo-DistributedSQL Database

presented by Andrew Woods

A DistributedSQL database is unlike others in that it is architected to complement the elastic and durable nature of the cloud. They are designed to meet the needs of modern services-based applications and most are great within a region or two. But what about global scale?

In this talk, Andy Woods, Principal Product Manager at Cockroach Labs, will speak to the architecture of a globally dis...

more

14:00 - 14:50 Ballroom Distributed SQL
15:00
Morgan Howes The Great Escape: On Prem to the Cloud with Postgres

presented by Morgan Howes

Join me in recounting the trials and tribulations of moving a 14 terabyte monolith database from a bare metal, on premise solution to Amazon Web Services (Aurora/RDS). Specifically, the focus is on how to move the data with high availability, minimal downtime, and still leave the option to go back to the old hardware.

This combination of case study and tutorial goes into the technical detai...

more

15:00 - 15:50 Winchester (2) Ops and Administration
Hans-Jürgen Schönig The PostgreSQL optimizer: What it really does

presented by Hans-Jürgen Schönig

What does the query optimizer really do? Is it magic? Is it Voodoo? What is really going on there? And what does all this "cost thing" really mean? Well, let us dive into the optimizer and find out, what is really going on deep inside the planner. You will be guides through the basic optimization and learn how the optimizer calculates costs, prunes joins, handles parallel queries, flattens subs...

more

15:00 - 15:50 Winchester (1) Dev
Hans-Jürgen Schönig 10 Steps to good PostgreSQL Performance

presented by Hans-Jürgen Schönig

Are you suffering from bad performance? Do you have the feeling that your database can do a lot better? Well, maybe it really can. This talk will provide you with a simple guideline to ensure superior database performance using a systematic approach to tuning and especially to performance analysis. You will learn to find missing indexes (which will help to cut performance problems in half), fin...

more

15:00 - 15:50 Market Ops and Administration
16:20
Joshua D. Drake PostgreSQL V12: Features and migration considerations

presented by Joshua D. Drake

Learn all about the exciting upcoming release of PostgreSQL v12 including new features and migration considerations!

16:20 - 17:10 Market Ops and Administration
Mike Freedman Advanced compression in TimescaleDB with hybrid row/columnar storage
Introducing state-of-the-art compression techniques through hybrid row/columnar storage representations

presented by Mike Freedman

Storage systems like databases and file systems have long used compression to reduce their storage footprint. Yet the most effective compression were traditionally limited to column stores, where increased data-type locality provides greater options for advanced techniques. It has often been assumed that fundamental differences between column-store and row-store architectures lead to these op...

more

16:20 - 17:10 Winchester (2) Ops and Administration
Jim Mlodgenski Data Modeling with PostgreSQL

presented by Jim Mlodgenski

Regardless of the type of application you are writing, PostgreSQL needs a data model to hold your data. Some people think that your data model needs to conform to perfect 5th normal form, while others think the ideal model is just putting everything in a JSON document. For most business applications, the answer is likely somewhere in the middle. Whether you are designing a new application or mi...

more

16:20 - 17:10 Winchester (1) Dev
2019-09-20
10:00
 Tom Kincaid Andrew Dunstan Vacuuming through pictures

presented by Tom Kincaid and Andrew Dunstan

Proper Vacuum operations is an important function of any Postgres deployment. Vacuum is at the core of many Postgres operational items. Having a Postgres deployment properly tuned for vacuum is critical for all successful Postgres production instances.

Unfortunately, may people struggle with the concepts behind vacuum and auto-vacuum. Hence, DBAs and Developers become extremely confused abou...

more

10:00 - 10:50 Market Ops and Administration
 Kannan Muthukkaruppan The Evolution of Distributed Databases at Facebook

presented by Kannan Muthukkaruppan

Building cloud-native applications that are high performance, fault tolerant and scalable is a core competency at Facebook. As more traditional enterprises begin to move their data tier to the cloud and containerized environments, they are encountering many of the challenges that Facebook has already solved. In this panel discussion we dive into Facebook's distributed database journey covering ...

more

10:00 - 10:20 Ballroom Distributed SQL
Armin Nesiren Postgresql in Kubernetes
and bare metal issues

presented by Armin Nesiren

Postgresql running in Kubernetes

We live in Service Oriented Arhitecture at the time, and Postgresql is not omitted. We often need to manage high number of Postgresql instances and to manipulate with them. In the time where we have containers, we are enabled to do that with containers, but we also need to manage containers somehow, to **have good options for scalability, load balancing and h...

more

10:00 - 10:50 Winchester (1) Ops and Administration
Micah Gates What you learn in the first six months on a high performance Postgres team

presented by Micah Gates

Celeen and Micah are both experienced developers, but had never managed large databases. Then they joined Braintree’s Database team, which is responsible for the maintenance, scaling, and application interactions of twenty high availability Postgres clusters storing a hundred terabytes that drive the processing of more than 6 billion payments a year. In this talk, we discuss learning about the ...

more

10:00 - 10:50 Winchester (2) Dev
10:30
 Kamal Gupta An Introduction to Amazon Aurora

presented by Kamal Gupta

Amazon Aurora is a relational database service for OLTP workloads offered as part of Amazon Web Services (AWS). In this talk, we describe how Aurora brings a novel architecture to the relational database by pushing redo processing to a multi-tenant scale-out storage service, purpose-built for Aurora. We describe how doing so not only reduces network traffic, but also allows for fast crash recov...

more

10:30 - 10:50 Ballroom Distributed SQL
11:00
 Campbell Fraser Google Spanner's SQL Evolution

presented by Campbell Fraser

Spanner is a globally-distributed data management system that backs hundreds of mission-critical services at Google. Spanner is built on ideas from both the systems and database communities. The first Spanner paper published at OSDI 2012 focused on the systems aspects such as scalability, automatic sharding, fault tolerance, consistent replication, external consistency, and wide-area distributi...

more

11:00 - 11:20 Ballroom Distributed SQL
11:10
Victoria McCormick Converting from a SQL Server DBA to a Postgres DBA Role

presented by Victoria McCormick

Rough draft placeholder for Vikki's session:

Imagine you are a SQL Server DBA, only to wake up one morning to find that you must now become a Postgres DBA? What would be the challenges and changes that you would face?

This session is to familiarize SQL Server experienced folks with Postgres, so that you'll be comfortable with your new role.

11:10 - 12:00 Winchester (2) Ops and Administration
Lloyd Albin AutoVacuum - Tuning and Monitoring

presented by Lloyd Albin

I was recently asked by another PostgreSQL DBA about what could be causing queries to run slow while their application is running but then runs fast again after the application is stopped. While I have given several presentations on this subject, each one has been on a specific cause and not talking about all of them together. I decided I would compile them into a single tuning and monitoring p...

more

11:10 - 12:00 Market Ops and Administration
Avinash Vallarapu High Availability and Automatic Failover in PostgreSQL
High Availaibilty

presented by Avinash Vallarapu

  • PostgreSQL is an advanced open source database that is completely community driven. Continuous development and performance improvements while making it feature rich gave PostgreSQL a great market penetration. When a database server is deployed in production, it is important to achieve several 9's of availability. It starts with a replication setup that is stable and some tool that could manag...
more

11:10 - 12:00 Winchester (1) Ops and Administration
11:30
 Ram Ravichandran How Cloud-Native and Distributed SQL are Transforming ECommerce & Retail

presented by Ram Ravichandran

In this panel Narvar CTO, Ram Ravichandran sits down with software architects of some of most well known retail brands to explore the effect that cloud-native and distributed SQL technologies are having on internet-scale ECommerce and retailing applications.

11:30 - 11:50 Ballroom Distributed SQL
12:00
 Robert Winslow Benchmarking Distributed SQL Databases

presented by Robert Winslow

Traditional RDBMS databases run on a single node, and therefore the benchmarks designed for these systems make that implicit assumption. Distributed SQL databases are a new breed that operate on a cluster of nodes. These databases have fundamentally different architectures, requiring a different benchmarking methodology. For example, the network latency between the nodes begins to dominate the ...

more

12:00 - 12:20 Ballroom Distributed SQL
12:10
Sridhar Ranganathan PostgreSQL Managed Services at Amazon RDS: Best Practices

presented by Sridhar Ranganathan

PostgreSQL databases are supported on Amazon Relational Database Service (RDS) since 2013. Amazon RDS provides an ideal platform to run your PostgreSQL databases - be it a mission critical OLTP or a data warehouse or an analytics database or databases for test & development. This session provides best practices to deploy your PostgreSQL databases, perform upgrades, choose data protection option...

more

12:10 - 13:00 Winchester (2) Ops and Administration
Malcolm McLean Effectively securing your PostgreSQL database
Are you doing enough to secure your database and access to your data?

presented by Malcolm McLean

Securing access to your database and data seems obvious, but are you doing enough? The default settings within PostgreSQL and even the default firewall configuration on stock Linux installs are a far cry from being secure.

Even if you're not handling or storing credit card information, PCI-DSS defines many things to do in order to secure access to a database and operating system, which can b...

more

12:10 - 13:00 Market Ops and Administration
Pavlo Golub Professional PostgreSQL monitoring made easy

presented by Pavlo Golub

The talk firstly introduces all pertinent levels of database monitoring and then focuses on PostgreSQL and the means it provides. The meaning and importance of key metrics will be explained. As the Postgres community has already developed a lot of tools in that area, some popular common options will be highlighted together with the problems that different monitoring approaches have. To overcome...

more

12:10 - 13:00 Winchester (1) Ops and Administration
12:30
 Peter Zaitsev Distributed MySQL Architectures, Past, Present and Future

presented by Peter Zaitsev

Although MySQL is now more than two decades old, it continues to power some of the world's largest internet applications. In this presentation we'll look at the history and evolution of distributed MySQL deployments. We'll explore the original designs and the common architecture patterns still in use today. Finally, we'll predict what the future has in store for us with the advent of the cloud ...

more

12:30 - 12:50 Ballroom Distributed SQL
14:00
 Ryan Scheidter Building Microservices in a Cloud-Native World with Distributed SQL

presented by Ryan Scheidter

Microservices and cloud-native deployments have ushered in an era of unparalleled developer agility.

The portability offered by technologies such as Kubernetes and Cloud Foundry ensures that applications can be run anywhere and everywhere. But what about the data?

In this talk we'll examine where a distributed SQL database fits into a modern hybrid/multi-cloud architecture, as well as pos...

more

14:00 - 14:20 Ballroom Distributed SQL
Andrew Dunstan Using SSL with PostgreSQL and pgbouncer

presented by Andrew Dunstan

This talk provides an introduction to setting up PostgreSQL and pgbouncer to use SSL securely and effectively. It will cover

  • what SSL provides - encryption and authentication
  • levels of SSL verification
  • client certificates and server certificates
  • use of self-signed certificates for testing
  • creation and use of Certificate Authorities
  • use of intermediate Certificate authorit...
more

14:00 - 14:50 Market Ops and Administration
Avinash Vallarapu Mostly mistaken and ignored PostgreSQL parameters while optimizing a PostgreSQL database
Tuning PostgreSQL parameters

presented by Avinash Vallarapu

  • *Abstract : *

    • Optimizing a PostgreSQL database may be a challenge if some of the important parameters are ignored. And a bigger challenge may be the algorithm behind setting those parameters correctly. In my experience with PostgreSQL Consulting for more than a decade, I have seen a bigger list of parameters that are wrongly set or ignored. This talk details a list of important Postg...
more

14:00 - 14:50 Winchester (1) Ops and Administration
Kristi Anderson How to Reduce Your Time-Consuming PostgreSQL Operational Tasks by 90% with ScaleGrid

presented by Kristi Anderson

Managing a PostgreSQL production deployment is hard. There are hundreds of operational tasks involved, and missing one could critically impact on your deployment. 90% of tasks can be automated, 100% can be optimized. Learn how you can automate your time-consuming PostgreSQL operational tasks so you can get your time back for database development and performance optimizations with ScaleGrid:

...

more

14:00 - 14:50 Winchester (2) Ops and Administration
14:30
Rajkumar Sen How-To: Zero Downtime Migrations from Oracle to a Cloud-Native PostgreSQL

presented by Rajkumar Sen

Legacy applications are transforming rapidly. They are being broken down into cloud-native microservices. This phase is followed by a database transformation phase, where the database tier comprising legacy is modernized. Distributed SQL databases being cloud-native and feature-rich are a great migration choice. In this talk, we will look at what database features are required to replace legacy...

more

14:30 - 14:50 Ballroom Distributed SQL
15:00
Nikhil Chandrappa Guillermo Tantachuco Spring Forward to a Cloud-Native PostgreSQL

presented by Nikhil Chandrappa and Guillermo Tantachuco

Business critical applications of the past are monolithic in design and run on proprietary databases like Oracle. These are being transformed into microservice-based cloud-native applications using popular frameworks like Spring - while the database itself is moving to cloud-native PostgreSQL deployments and distributed SQL databases. This talk will cover how Spring is evolving to enable buildi...

more

15:00 - 15:20 Ballroom Distributed SQL
Richard Yen Eeny, Meeny, Miny, Moe
Choosing from the Many Flavors of PostgreSQL Replication

presented by Richard Yen

One of the most important tasks of a DBA or sysadmin is to make sure there is a copy of a database's contents available, either in case of a catastrophic failure or to ensure scalability of the entire application stack. Within the PostgreSQL community, there are several options to choose from for replication, and making the choice isn't always trivial. Several factors need to be considered, r...

more

15:00 - 15:50 Winchester (1) Ops and Administration
Daniil Treshchin Implementation and Coding Issues with building tiered architectures and microservices

presented by Daniil Treshchin

In this talk we will discuss a few aspects of application and database design that are often overlooked. I will try providing practical examples and solutions from real life with particular focus on what not to do and “features” to avoid. We will talk about how monolithic application practices are still pervasive in our micro-service and tiered architectures as well as problems with ORMs and va...

more

15:00 - 15:50 Market Dev
Alexey Solovtsov Implementing Temporal Tables in PostgreSQL
Plan for data audit scenarios in the early stages of the development cycle

presented by Alexey Solovtsov

Temporal Tables are useful in scenarios that require tracking history of data changes. Using temporal tables allows to perform data audit of individual records and also to see how entire data sets are changing over time. This is especially useful in the early stages of the development cycle, as it allows to defer date warehouse modeling and implementation and instead focus on delivering an init...

more

15:00 - 15:20 Winchester (2) Case Studies
15:30
 Mahesh Tyagarajan Transforming the Omni-Channel Experience at Kroger

presented by Mahesh Tyagarajan

Evolving the technology stack at Kroger to meet the transformational needs of the business – to become a true omni-channel retailer in the food/grocery space. The technology stack evolves to a cloud-native micro-services platform which moves from an on-prem ecosystem to a hybrid of on-prem and public cloud infrastructure. Along this journey we are not lifting and shifting but rethinking the ent...

more

15:30 - 15:50 Ballroom Distributed SQL
16:00
 Ram Ravichandran Scaling Microservices and Distributed Databases in a Multi-Cloud World

presented by Ram Ravichandran

70% of U.S. adults have experienced better retail through Narvar's customer engagement platform. In this talk, Ram Ravichandran - CTO, walks us through some of the highlights on how Narvar scaled their microservices architecture and data-tier onto multiple clouds. He'll also discuss how they simplified their operations and maintained GDPR compliance through the entire process.

16:00 - 16:20 Ballroom Distributed SQL
Ryan Lambert PostGIS: Querying OpenStreetMap Vector Data
Selecting, cleaning and restructuring

presented by Ryan Lambert

This PostGIS mini-workshop provides hands-on experience querying and preparing real-world vector data from OpenStreetMap. Examples walk through the process of preparing and cleaning vector GIS data for use in a relational format.

Participants will have access to the same data file (.sql) used for demonstration to easily follow along with queries and examples. Query examples shown will incl...

more

CANCELED 16:00 - 16:50 Winchester (1) Data
Sangwook Kim Taming Performance Variability in PostgreSQL
How to make PostgreSQL predictable for write-intensive workloads

presented by Sangwook Kim

PostgreSQL background tasks, such as the checkpointer and autovacuum workers, produce file I/O in bursts. This behavior is increased in write-intensive workloads. These background tasks are essential to guarantee the ACID properties while providing high performance, however, they significantly affect performance variability. In our experiments with write-intensive OLTP queries, tuning the check...

more

16:00 - 16:50 Market Ops and Administration
16:30
Karthik Ranganathan 6 Technical Challenges Developing a Distributed SQL Database

presented by Karthik Ranganathan

Developing YugaByte DB 2.0 was but not without its fair share of technical challenges. There were times when we had to go back to the drawing board and even sift through academic research to find a better solution than what we had at hand. In this talk we’ll outline some of the hardest architectural issues we have had to address in our journey of building an open source, cloud native, high-perf...

more

16:30 - 16:50 Ballroom Distributed SQL