• EN
    • DE
Blog

Cybertec Logo

  • Services
    • PostgreSQL design
      • Database architecture
      • Database modeling
    • PostgreSQL migration
      • Migration from Oracle
      • Migrating from MySQL / MariaDB
      • CYBERTEC Migrator
    • PostgreSQL administration
      • PostgreSQL disaster and data recovery
      • Troubleshooting
      • Performance Tuning
      • Remote DBA
      • Performance and scalability
      • Automation with kubernetes
    • PostgreSQL consulting
    • PostgreSQL development
    • PostgreSQL clustering and HA
      • Clustering and failover
      • High availability with Patroni
      • Point-In-Time-Recovery
      • Synchronous and asynchronous replication
      • Scaling with PL/Proxy
    • PostgreSQL Health Check
    • CYBERTEC Partner Network
  • Support
    • Standard PostgreSQL Support
      • Product Support
      • 9/5 Basic Support
      • 24/7 Basic Support
      • 24/7 Enterprise Support
    • Advanced PostgreSQL Support
      • 9/5 Remote DBA
      • 24/7 Remote DBA
      • 9/5 Dedicated DBA
      • 24/7 Cloud-based Support
    • Support for Reseller
      • 3rd Level Support
      • CYBERTEC Partner Network
  • Products
    • Our Products
      • CYPEX – Build Apps & Forms
      • CYBERTEC PostgreSQL Enterprise Edition
      • CYBERTEC Migrator
      • Scalefield – Private PostgreSQL Cloud
      • PostgreSQL Transparent Data Encryption
      • Data Masking for PostgreSQL
      • PL/pgSQL_sec – Fully encrypted stored procedures
    • PostgreSQL Tools & Extensions
      • pg_timetable – Advanced Job Scheduling
      • pg_show_plans – Monitoring Execution Plans
      • pgwatch – PostgreSQL Monitoring Tool
      • pg_squeeze – Shrinks Tables
      • Walbouncer – Enterprise Grade Partial Replication
      • PGConfigurator – Visual PostgreSQL Configuration
      • ora_migrator
      • Patroni Environment Setup
    • Assessment Packages
      • Data Science Assessment Package
      • Start-Up Assessment Package
      • Spatial Data Assessment Package
    • CYBERTEC Partner Network
  • Training
    • Course Catalogue
    • Online Training
    • Customized Training
  • PostgreSQL
    • Advantages of PostgreSQL
    • PostgreSQL Books
    • Solutions – Who uses PostgreSQL
      • PostgreSQL for Startups
      • PostgreSQL for governments and public services
      • Longlife solutions
    • Business Cases
      • Fraud Detection
      • PostgreSQL for biotech and scientific applications
  • Data Science
    • Data Science Overview
    • Machine Learning
    • Big Data Analytics
  • Contact

Posts

Category: Hans-Juergen Schoenig

02.03.2021 | Hans-Jürgen Schönig

PostgreSQL: Getting started on Ubuntu

To make it easier for our readers to install PostgreSQL on Ubuntu, we have compiled a quick guide to getting started. Don’t worry, it’s not too hard. You will learn: How to download PostgreSQL How to install PostgreSQL on Ubuntu How to create a database instance How to ensure the service is running Creating your […]

Read more
23.02.2021 | Hans-Jürgen Schönig

PostgreSQL: How to write a trigger

Just like in most databases, in PostgreSQL a trigger is a way to automatically respond to events. Maybe you want to run a function if data is inserted into a table. Maybe you want to audit the deletion of data, or simply respond to some UPDATE statement. That is exactly what a trigger is good […]

Read more
18.02.2021 | Hans-Jürgen Schönig

PostgreSQL: CREATE STATISTICS – advanced query optimization

PostgreSQL query optimization with CREATE STATISTICS is an important topic. Usually, the PostgreSQL optimizer (query planner) does an excellent job. This is not only true for OLTP but also for data warehousing. However, in some cases the optimizer simply lacks the information to do its job properly. One of these situations has to do with […]

Read more
16.02.2021 | Hans-Jürgen Schönig

PostgreSQL: ANALYZE and optimizer statistics

Our PostgreSQL 24×7 support team recently received a request from one of our customers who was facing a performance problem. The solution to the problem could be found in the way PostgreSQL handles query optimization (specifically, statistics). So I thought it would be nice to share some of this knowledge with my beloved readers. The […]

Read more
09.02.2021 | Hans-Jürgen Schönig

Patroni Environment Setup: PostgreSQL High Availability for Windows

PostgreSQL High-Availability has been one of the most dominant topics in the field for a long time. While there are many different approaches out there, Patroni seems to have become one of the most dominant solutions currently in use out there. Many database clusters are running on Linux. However, we have seen some demand for […]

Read more
09.12.2020 | Hans-Jürgen Schönig

Upgrading and updating PostgreSQL

Recently, PostgreSQL 13 was released. People are asking what are best ways upgrading and updating PostgreSQL 12 or some other version to PostgreSQL 13. This blog post covers how you can move to the latest release. Before we get started, we have to make a distinction between two things: Updating PostgreSQL Upgrading PostgreSQL Let’s take […]

Read more
03.12.2020 | Hans-Jürgen Schönig

BLOB cleanup in PostgreSQL

PostgreSQL offers a nice BLOB interface which is widely used. However, recently we came across problems faced by various customers, and it makes sense to reflect a bit and figure out how PostgreSQL handles BLOBs – and especially BLOB cleanup. Using the PostgreSQL BLOB interface In PostgreSQL, you can use various means to store binary […]

Read more
13.11.2020 | Hans-Jürgen Schönig

pg_crash: Crashing PostgreSQL automatically

PostgreSQL is a rock-solid database that is widely used for highly critical applications. Bugs are rarely seen. However, everything fails once in a while. The entire stack (hardware, operating system, etc) are subjected to occasional failure. Thus one has to prepare for that. The main problem is: How can one simulate failure? In many cases […]

Read more
29.10.2020 | Hans-Jürgen Schönig

PostgreSQL clustering: vip-manager

Patroni has dramatically simplified the setup of the PostgreSQL High-Availability cluster. Personally I consider Patroni to be by far the best tool out there to cluster PostgreSQL and to ensure HA in the most reliable and straightforward way possible. The main questions asked by many people are: How can you make a PostgreSQL cluster transparent? […]

Read more
27.10.2020 | Hans-Jürgen Schönig

PostgreSQL: Foreign keys and insertion order in SQL

In SQL, the concept of foreign keys is an important one that can be found in all professional databases used in the industry. The core idea is to prevent your PostgreSQL database from storing inconsistent data by enforcing constraints ensuring the correctness of your tables (at least as far as relations between objects are concerned). […]

Read more
20.10.2020 | Hans-Jürgen Schönig

zheap: Inspecting storage sizes

To dig a bit deeper into zheap and PostgreSQL storage technology in general I decided to provide some more empirical information about space consumption. As stated in my previous blog post about zheap is more efficient in terms of storage consumption. The reasons are: The tuple header is much smaller Alignment has been improved The […]

Read more
07.10.2020 | Hans-Jürgen Schönig

zheap: Reinvented PostgreSQL storage

In PostgreSQL table bloat has been a primary concern since the original MVCC model was conceived. Therefore we have decided to do a series of blog posts discussing this issue in more detail. What is table bloat in the first place? Table bloat means that a table and/or indexes are growing in size even if […]

Read more

Posts navigation

Older posts

logo

CYBERTEC PostgreSQL International GmbH
Gröhrmühlgasse 26
2700 Wiener Neustadt
AUSTRIA

+43 (0) 2622 93022-0
office@cybertec.at
twitter.com/PostgresSupport
github.com/cybertec-postgresql

Our Services

• Administration
• Replication
• Consulting
• Database Design
• Support
• Migration
• Development

 

SUPPORT CUSTOMERS
Go to the support platform >>

Newsletter

Check out previous newsletters!

Stay well informed about PostgreSQL by subscribing to our newsletter.

© 2000–2021 CYBERTEC PostgreSQL International GmbH
  • IMPORTANT INFORMATION ABOUT COVID-19
  • Contact
  • Data protection policy
  • Imprint
  • Terms and Conditions