Infrastructure at your Service

All posts by Daniel Westermann

Daniel Westermann
Senior Consultant and Technology Leader Open Infrastructure

Daniel Westermann has more than 10 years of experience in management, engineering and optimization of databases and infrastructures. He is specialized in Oracle Technologies as Performance Optimization and Tuning, Standardization, Backup & Recovery, in High Avaibility solutions as Oracle Real Application Clusters (RAC), Oracle Data Guard, Oracle Grid Infrastructure, as well as in storage technologies as Oracle Automatic Storage Management (ASM). Daniel Westermann is Oracle Certified Professional 10g/11g/12c. He is also a PostgreSQL Plus 9.0 Professional and a Postgres Advanced Server 9.4 Professional. Prior to dbi services, Daniel Westermann was Management System Engineer at LC SYSTEMS-Engineering AG in Basel. Before that, he worked as Oracle Developper & Project Manager at Delta Energy Solutions AG in Basel (today Powel AG). Daniel Westermann holds a diploma in Business Informatics (DHBW, Germany). His branch-related experience mainly covers the pharma industry, the financial sector, energy, lottery, telecommunications.
Daniel Westermann

the fastest way to load 1m rows in postgresql

By | Development & Performance | 3 Comments

There have been several posts on how to load 1m rows into a database in the last days: Variations on 1M rows insert (1): bulk insert Variations on 1M rows insert(2): commit write Variations on 1M rows insert (1): bulk insert – PostgreSQL Variations on 1M rows insert(2): commit write – PostgreSQL Variations on 1M rows insert (3): TimesTen In this post I’ll focus on how to prepare a PostgreSQL database for bulk loading in…

 
Read More
Daniel Westermann

getting started with postgres plus advanced server (4) – setting up the monitoring server

By | Database management | One Comment

If you followed the first, second and the third post the current ppas infrastructure consists of a primary database, a hot standby database and a backup and recovery server. Now we will add the monitoring server on another host so that the system overview looks like this: server ip address purpose ppas 192.168.56.243 ppas database cluster ppasstandby 192.168.56.244 ppas hot standby database ppasbart 192.168.56.245 backup and recovery server ppasem 192.168.56.246 ppas enterprise manager On the…

 
Read More
Daniel Westermann

getting started with postgres plus advanced server (3) – setting up a hot standby server

By | Hardware & Storage | 5 Comments

So, we have a ppas 94 database up and running and we have a backup server for backing up and restoring the database. Now it is time to additionally protect the database by setting up a hot standby database. This database could even be used to offload reporting functionality from the primary database as the standby database will be open in read only mode. Again, I’ll use another system for that so that the system…

 
Read More
Daniel Westermann

getting started with postgres plus advanced server (2) – setting up a backup and recovery server

By | Database management | 5 Comments

The first post in this series explained how to get ppas installed on a linux system. Now that the database cluster is up and running we should take care immediately about backup and recovery. For this I’ll use another system where I’ll install and configure bart. So, the system overview for now is: server ip address purpose ppas 192.168.56.243 ppas database cluster ppasbart 192.168.56.245 backup and recovery server As bart requires the postgres binaries I’ll…

 
Read More
Daniel Westermann

getting started with postgres plus advanced server (1) – setting up ppas

By | Database management | No Comments

I did several posts around postgresql and postgres plus advanced server in the past. What is missing is a beginners guide on how to get postgres plus advanced server up and running including a solution for backup and recovery, high availability and monitoring. So I thought I’d write a guide on how to do that, consisting of: setting up postgres plus advanced server setting up a backup and recovery server setting up a hot standby…

 
Read More
Daniel Westermann

bulk loading semi structured data in postgresql

By | Development & Performance | 3 Comments

The last post took a look at how to efficiently load 1m rows into a table in PostgreSQL. In this post I’ll take a look on how to do the same with semi structured data. Again it is the same system as in the last post using the same PostgreSQL parameters. Using the hstore datatype For storing key/value pairs there is the hstore extension in PostgreSQL. Using the same sample data as in the last…

 
Read More
Daniel Westermann

Variations on 1M rows insert(2): commit write – PostgreSQL

By | Development & Performance | No Comments

Franck was quite fast with his second post Variations on 1M rows insert(2): commit write. Lets see what we can do on the PostgreSQL side. I’ll take the same test table as Franck again: create table DEMO (“id” number , “text” varchar2(15), “number” number) ; The pgplsql block which corresponds to Frank’s plsql block looks like this: \timing on truncate table DEMO; DO $$DECLARE l_people_array varchar(15)[12] := ‘{“Marc”, “Bill”, “George”, “Eliot”, “Matt”, “Trey”, “Tracy”,”Greg”, “Steve”,…

 
Read More
Daniel Westermann

Variations on 1M rows insert (1): bulk insert – PostgreSQL

By | Development & Performance | No Comments

When I read Franck’s post about Variations on 1M rows insert (1): bulk insert I thought doing quite the same in PostgreSQL might be interesting. Lets start by using the same test tables, one using a primary key and the other one without a primary key:create table DEMO (“id” int , “text” varchar(15), “number” int); create table DEMO_PK (“id” int , “text” varchar(15), “number” int, constraint demo_pk_pk primary key (id) ) ; postgres=# \d demo*…

 
Read More