Richard Yen

Principal Software Development Engineer, EDB

Richard Yen is a Principal Software Development Engineer at EDB, focusing in PostgreSQL tuning, Database architecture, Software engineering, and DevOps. He used to be a web developer, then a DBA, then a Support Engineer, and now a DevOps engineer. Currently, he works on internal tools for EDB to help consolidate and streamline the development lifecycle. His team hopes that the tools we make will help achieve velocity and quality metrics for the company.

Read Blogs

Postgres Tutorials
I’ve come across this scenario maybe twice in the past eight years of using Streaming Replication in Postgres: replication on a standby refuses to proceed because a WAL file has already been removed from the primary server, so it executes Plan B by attempting to fetch the relevant WAL file using restore_command (assuming that archiving is set up and working properly), but upon replay of that fetched file, we hear another croak: “No such file or directory.”
Postgres Tutorials
PostgreSQL is “The World’s Most Advanced Open Source Database,” and I believe it. In my 10+ years of working with it, it’s been solid, serving up data to SaaS loads of over 1000 queries per second, rarely going down, surviving all manner of accusations of corruption (which turned out to be software engineering error) and performance degradation (which turned out to be user error).
Postgres Tutorials
I recently got a few support cases from customers seeking to connect Postgres with LDAP (usually with some form of SSL/TLS encryption, to ensure security). I spent a bit of time trying to create a consistently reproducible environment where LDAP could be used to authenticate PostgreSQL connections and wanted to write it down somewhere.
Postgres Tutorials
Whether we remember it or not, almost all of us learned set theory in elementary school. We drew Venn diagrams with overlapping circles and learned to articulate what the overlap means, making use of a strange set of operators to formulate equations around them. With SQL, there are occasions where we might want to use these concepts from set theory, whether it’s to concatenate two data sets or to extract information about two sets’ relationships. For this, PostgreSQL provides syntax for set operations: UNION, INTERSECT, and EXCEPT. In this article, we will focus on the UNION operator.
Postgres Tutorials
One of the missing features in PostgreSQL’s implementation of triggers was that DDL could not be detected very reliably. With the concept of event triggers introduced in v. 9.3, this is now possible.
Postgres Tutorials
This article offers tips for improving Online Analytical Processing (OLAP) performance for PostgreSQL. Sizing up the Situation Schema Planning Database Tuning Hardware Selection As the world’s most advanced open-source database, PostgreSQL is very versatile. With applications ranging from embedded systems to large-scale multi-terabyte NoSQL data stores, a PostgreSQL deployment can be tweaked to...