<?xml version='1.0' encoding='utf-8'?>
<schedule><version>Firefly</version><conference><title>PGConf.EU 2013</title><start>2013-10-29</start><end>2013-11-01</end><days>4</days><baseurl>https://www.postgresql.eu/events/pgconfeu2013/schedule/</baseurl></conference><day date="2013-10-29"><room name="Other"><event id="542"><start>08:30</start><duration>00:30</duration><room>Other</room><title>Registration</title><abstract /><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/542/</url><track>Breaks</track><persons /></event></room><room name="Dodder"><event id="428"><start>09:00</start><duration>08:00</duration><room>Dodder</room><title>PostgreSQL indexing</title><abstract>Indexing is a core feature of every database system and it is essential to speed up queries.
However, indexing is a lot more than just looking up a value in a binary tree. PostgreSQL
provides various types of indexes offering you a variety of additional functionality such as
full text indexing, fault tolerant text search or geometric search.

During this course you will learn how to make full use of PostgreSQL indexing and you will
get to know indexing strategies tailored to your needs (via PostgreSQL operator classes, etc.)
In addition to that you will find out, when the optimizer decides to use an index and in which
cases it is wise, not to use an index.

Topics:

 * Types of indexes (btree, gist, gin, hash, sp-gist)
 * Binary search via btree
 * Bitmap scans
 * The PostgreSQL cost model and indexing
 * Functional indexes
 * Indexing LIKE and regular expressions
 * Using operator classes (btree_gist, pg_trgm, etc.)
 * Full text search
 * A hand-tailored indexing strategy</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/428/</url><track>Training</track><persons><person id="39">Hans-Jürgen Schönig</person></persons></event></room><room name="Dargle"><event id="429"><start>09:00</start><duration>03:30</duration><room>Dargle</room><title>PostgreSQL &amp; PostGIS</title><abstract>Using PostGIS with PostgreSQL, covering from introductory to examples
advanced usage. Topics include data loading, mapping with QuantumGIS
and using GIST and SP-GIST to improve performance.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/429/</url><track>Training</track><persons><person id="34">Gianni Ciolli</person></persons></event></room><room name="Liffey"><event id="431"><start>09:00</start><duration>03:30</duration><room>Liffey</room><title>PostgreSQL Performance Tuning</title><abstract>This talk is designed for advanced PostgreSQL users who want to know how to maximize PostgreSQL performance.  It covers every aspect of performance: server settings, caching, sizing operating system resources, optimizer processing, problem queries, storage efficiency, and some hardware selection details.  It includes how to size shared memory, how to understand the output of the optimizer, when to restructure queries, and how to configure storage for optimal performance.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/431/</url><track>Training</track><persons><person id="44">Bruce Momjian</person></persons></event></room><room name="Other"><event id="544"><start>12:30</start><duration>01:00</duration><room>Other</room><title>Lunch</title><abstract /><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/544/</url><track>Breaks</track><persons /></event></room><room name="Dargle"><event id="430"><start>13:30</start><duration>03:30</duration><room>Dargle</room><title>Writing &amp; using Postgres Extensions</title><abstract>What extensions are available? Where do you get them from?
How to write Extensions, including portability, multi-version compatibility and controls.
Includes discussion of new 9.3 feature background workers.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/430/</url><track>Training</track><persons><person id="14">Dimitri Fontaine</person></persons></event></room><room name="Liffey"><event id="432"><start>13:30</start><duration>03:30</duration><room>Liffey</room><title>Data Processing Inside PostgreSQL</title><abstract>This talk is best for those who are are familiar with databases and SQL, but want to learn how to move processing from their applications into the database to improve consistency, administration, and performance.  Topics covered  include advanced SQL features like referential integrity constraints, ANSI joins, views, rules, and triggers.  The presentation also explains how to create server-side functions, operators, and custom data types in PostgreSQL</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/432/</url><track>Training</track><persons><person id="44">Bruce Momjian</person></persons></event></room></day><day date="2013-10-30"><room name="Other"><event id="543"><start>08:30</start><duration>01:00</duration><room>Other</room><title>Registration</title><abstract /><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/543/</url><track>Breaks</track><persons /></event></room><room name="Earlsfort"><event id="536"><start>09:30</start><duration>00:15</duration><room>Earlsfort</room><title>Welcome and opening</title><abstract>Welcome and opening</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/536/</url><track>Keynotes</track><persons><person id="1">Magnus Hagander</person></persons></event><event id="565"><start>09:45</start><duration>01:00</duration><room>Earlsfort</room><title>Keynote: Handling the Spotlight: How PostgreSQL can become the database of choice</title><abstract>Once reviled by the great powers of the proprietary technology world, Open Source has gone from 'geeky cult' to near World Domination, and is now rapidly conquering Government IT.

And why shouldn't it? Open Source Advocates have long held out the prospect of benefiting society as a whole, and of effecting positive change in Education, Government and even Liberal Democracy itself through the power of the Open Source vision.

But how do we realise this change? How do we talk with influencers and decision-makers in such a way that they understand and promote the software we love?

Is promoting a project like PostgreSQL different to, say, Firefox or LibreOffice in fundamental ways that we need to recognise?

In his talk, Mark will use the real story of the remarkable conversion of the UK Government to promoter of Open Source, Open Standards and Open Data to illustrate these points and more. And with your help to create a new conversation for change in bringing PostgreSQL to the fore with Governments across Europe and the World.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/565/</url><track>Keynotes</track><persons><person id="180">Mark Taylor</person></persons></event></room><room name="Other"><event id="545"><start>10:45</start><duration>00:25</duration><room>Other</room><title>Coffee</title><abstract /><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/545/</url><track>Breaks</track><persons /></event></room><room name="Pembroke"><event id="465"><start>11:10</start><duration>00:50</duration><room>Pembroke</room><title>Writing a user-defined datatype</title><abstract>Walk-through of extending PostgreSQL with a user-defined type. The journey begins from the basics, from creating simple domain types over existing types, and continues to implementing a full-blown datatype from scratch in C.

PostgreSQL's advanced index types, GiST, GIN, and SP-GiST, are covered in enough detail to give an understanding of what each of them is good for. Support functions for each of them are shown for the example 'color' datatype.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/465/</url><track>Hacker</track><persons><person id="11">Heikki Linnakangas</person></persons></event></room><room name="Earlsfort"><event id="500"><start>11:10</start><duration>00:50</duration><room>Earlsfort</room><title>What's New in PostgreSQL 9.3</title><abstract>Postgres 9.3 has (hopefully) recently been released, and we've got some interesting things to play with. Join us in this overview of new features coming in Postgres 9.3, and see what goodies it has in store for you.

There's a ton of stuff lined up for Postgres 9.3, and this is the place to get your first look. We may or may not talk about exciting things like:

performance improvement and memory changes
improved array support
event triggers
lateral support
background workers
and much much more.
</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/500/</url><track>General</track><persons><person id="168">Robert Treat</person></persons></event></room><room name="Leeson"><event id="452"><start>11:10</start><duration>00:50</duration><room>Leeson</room><title>PostgreSQL for Rails</title><abstract>&lt;b&gt;Plea for database driven software in the enviroment of  technical engineering.&lt;/b&gt;

Axleboxes (the package of wheels and axes) of railway wagons and locomotives have to proof their performance according to the norm DIN EN 12082.
They are only allowed to be mounted, after they passed the required long running ( &gt;600 000 km) approval tests on a test rig.

Lots of parameters have to be controlled, monitored and evaluated in a quite complex way. During the test, all maesurements, calculations and evaluations have to be available online.

This talk is about our database driven software solution. It treats the following topics:
&lt;ul&gt;
  &lt;li&gt; Explanation of the application and specification of the required tests.&lt;/li&gt;
  &lt;li&gt; Database structure, mirroring the technical demands&lt;/li&gt;
  &lt;li&gt; Dataflow inside the database, giving all the required calculations and evaluations.&lt;/li&gt;
  &lt;li&gt; Implementation of the dataflow by triggers, procedures and views.
  &lt;li&gt;Benefits of a database driven software.&lt;/li&gt;
&lt;/ul&gt; 
Using PostgreSQL as a smart database system - instead of a simple persistanace layer behind an ORM - simplifies software development and makes the application more reliable.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/452/</url><track>General</track><persons><person id="121">Roland Sonnenschein</person></persons></event></room><room name="Pembroke"><event id="488"><start>12:10</start><duration>00:50</duration><room>Pembroke</room><title>LATERAL querying in 9.3; keep up with the new features!</title><abstract>In this talk we describe LATERAL subqueries, introduced in 9.3,
seeking answers to following questions:

* What is LATERAL?
* Why it is an improvement?
* Does it make queries easier to read?
* How can LATERAL help us?
* Does LATERAL affect performance?
</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/488/</url><track>Developer</track><persons><person id="34">Gianni Ciolli</person></persons></event></room><room name="Earlsfort"><event id="403"><start>12:10</start><duration>00:50</duration><room>Earlsfort</room><title>PostgreSQL - One of the most important Open Source projects</title><abstract>For every company the central database system is one of the most important and business critical pieces of software. PostgreSQL has grown into this space in recent years and replaces well know proprietary systems more and more often. It not only fulfills the technical requirements, but also the operations requirements which makes it a strategical choice for a lot of companies, be it for internal IT or one of the database systems of choice that are supported by their own product. All the technical features needed are available  nowadays.
</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/403/</url><track>General</track><persons><person id="46">Michael Meskes</person></persons></event></room><room name="Leeson"><event id="412"><start>12:10</start><duration>00:50</duration><room>Leeson</room><title>Introduction of  pg_statsinfo and pg_stats_reporter  ~Statistics Reporting Tool for DBA~</title><abstract>How do you analyze the database performance and sign of trouble database? PostgreSQL provides many useful statistcs and DB activities via system views and cotrib modules. But it is difficult to understand detail information and see all of the database condition. Pg_statsinfo and pg_stats_reporter which were made by NTT Corporation are statistics reporting tools as open source software for DBA. They provide more useful statistics information and visual reporting. In this session, I introduce architecture, installation and use case about these tools.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/412/</url><track>DBA</track><persons><person id="154">Mitsumasa KONDO</person></persons></event></room><room name="Other"><event id="546"><start>13:00</start><duration>01:00</duration><room>Other</room><title>Lunch</title><abstract /><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/546/</url><track>Breaks</track><persons /></event></room><room name="Earlsfort"><event id="459"><start>14:00</start><duration>00:50</duration><room>Earlsfort</room><title>Going spatial with PostGIS and more</title><abstract>Geo is everywhere. Smartphones, GPS, crowdsourced maps, LIDAR and many other ways of gathering geo-located data have made the spatial component of usual data a mandatory part of most applications.

PostgreSQL lets you leverage the power of geo-enabled applications, primarily through PostGIS, but also by using some other extensions and features of the database.

This presentations will introduce you to spatial data management, and show you some spatial data processing for various use case.

PostGIS 2.1 has been released mid-2013 and offers many features and new enhancements.

Raster in database is one of the long-awaited features present in version 2.1. Topology is also a complete set of features to deal with a new way of storing geometry information. Data management functions, geometry functions... A lot of new functions has been added to what was already available in the 1.5 series.
Real 3D GIS is now part of PostGIS, and a first set of functions lets you manipulate buildings, terrain and other 3D objects.

PointCloud is another PostgreSQL extension, dedicated to huge point clouds as LIDAR data or smartphones can produce. In association with PostGIS, it is a very powerful tool to efficiently deal with this specific kind of data.

PosgreSQL new features can also be used for spatial data processing : JSON and hstore are among the features we can benefit from.

</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/459/</url><track>Developer</track><persons><person id="146">Hugo Mercier</person></persons></event></room><room name="Leeson"><event id="485"><start>14:00</start><duration>00:50</duration><room>Leeson</room><title>Writing a foreign data wrapper</title><abstract>This talk will cover experiences from writing a FDW for Informix and will discuss differences between 9.1 and 9.2, as well as the new writable API with the upcoming 9.3 release, additionally data type mapping and conversion, optimizer support and performance related topics.

The talk tries to give the attendees an overall idea behind the techniques and pitfalls they may experience when they want to write their own.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/485/</url><track>Hacker</track><persons><person id="42">Bernd Helmle</person></persons></event></room><room name="Pembroke"><event id="425"><start>14:00</start><duration>00:50</duration><room>Pembroke</room><title>Detecting performance bottlenecks</title><abstract>If your database setup feels somewhat slow, it is your task to detect bottlenecks and bring the system back to speed. 
Missing indexes, bad memory configurations, stupid queries - all of those things can be responsible for bad behavior. 
PostgreSQL provides you with all the information to quickly detect performance issues and to fix them. This session present some of the most common bottlenecks and show a way out of disaster.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/425/</url><track>DBA</track><persons><person id="39">Hans-Jürgen Schönig</person></persons></event></room><room name="Other"><event id="547"><start>14:50</start><duration>00:30</duration><room>Other</room><title>Tea</title><abstract /><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/547/</url><track>Breaks</track><persons /></event></room><room name="Earlsfort"><event id="417"><start>15:20</start><duration>00:50</duration><room>Earlsfort</room><title>Nulls Make Things Easier?</title><abstract>Nulls are a very useful but also very error-prone relational database feature. This talk is designed to help applications developers better manage their use of nulls. It covers the use of nulls in relational databases, with a focus on Postgres behaviour. It covers three-value logic, comparing nulls, mapping nulls to strings, indexing nulls, and aggregates. </abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/417/</url><track>Developer</track><persons><person id="44">Bruce Momjian</person></persons></event></room><room name="Pembroke"><event id="406"><start>15:20</start><duration>00:50</duration><room>Pembroke</room><title>Explaining the Index of PostgreSQL Indexes</title><abstract>PostgreSQL comes built-in with a variety of indexes, some of which are further extensible to build powerful new indexing schemes.  But what are all these index types?  What are some of the special features of these indexes?  What are the size &amp; performance tradeoffs?  How do I know which ones are appropriate for my application?

Fortunately, this talk aims to answer all of these questions as we explore the whole family of PostgreSQL indexes: B-tree, expression, GiST (of all flavors), GIN and how they are used in theory and practice.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/406/</url><track>Developer</track><persons><person id="6">Jonathan S. Katz</person></persons></event></room><room name="Leeson"><event id="451"><start>15:20</start><duration>00:50</duration><room>Leeson</room><title>Success stories on migrating from Sybase ASE to PostgreSQL</title><abstract>We are going to speak about two successful migrations of business critical Databases from Sybase ASE to PostgreSQL.
The talk explains two different approches of migrating data, distinguished by efford and downtime. 
Finally we'd like to speak about the benefits from a 'one year after' point of view.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/451/</url><track>General</track><persons><person id="174">Achim Eisele</person><person id="100">Jens Wilke</person></persons></event><event id="492"><start>16:20</start><duration>00:50</duration><room>Leeson</room><title>Multicorn: writing Foreign Data Wrappers in python</title><abstract>Multicorn is a generic Foreign Data Wrapper which goal is to simplify development of FDWs by writing them in Python.

We will see:

- what is an FDW
- what Multicorn is trying to solve
- how to use it, with a brief tour of the FDWs shipping with Multicorn.
- how to write your own FDW in python, including the new 9.3 write API
- the internals: what Multicorn is doing for you behind the scenes, and what it doesn't</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/492/</url><track>Hacker</track><persons><person id="143">Ronan Dunklau</person></persons></event></room><room name="Pembroke"><event id="504"><start>16:20</start><duration>00:50</duration><room>Pembroke</room><title>Conduct change from Oracle to PostgreSQL</title><abstract>How large companies and governmental organization in France did the move from Oracle to PostgreSQL. What were the pros and cons of such a move, and in which context it happened.

Such migrations is not only about money, even tough its part of the deal. Each of those entities had to conduct a change. There are technical issues, but those weren't the biggest ones. Knowledge, organization and other human aspects were much bigger issues... One has to be open-minded to succeed completely.

About the technical part of this talk, as I guess it can't be all about methods and blah-blah, we'll cover latests releases of Ora2Pg, developed by Gilles Darold at Dalibo. It handles now a usefull estimation module: it scans every object in the database and gives an estimation in man-days for the migration. It's now part of the process to estimate a total cost of change. We'll show some usefull examples for the audience.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/504/</url><track>General</track><persons><person id="13">Jean-Paul Argudo</person></persons></event></room><room name="Earlsfort"><event id="453"><start>16:20</start><duration>00:50</duration><room>Earlsfort</room><title>PostgreSQL Disaster Recovery with Barman</title><abstract>Are you tired of managing backup and recovery processes of your Postgres server using custom scripts?
Are you worried about being called in the night or worse whilst on holiday to perform a recovery operation of your company's business critical PostgreSQL server?
**Barman, Backup and Recovery Manager**, standardises backup and recovery operations, allowing database administrators and system administrators to easily integrate their PostgreSQL solutions in their *disaster recovery plan*.
Barman is distributed as open source under GNU GPL 3 terms.
Further information available at [www.pgbarman.org](http://www.pgbarman.org/).</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/453/</url><track>DBA</track><persons><person id="4">Gabriele Bartolini</person></persons></event></room></day><day date="2013-10-31"><room name="Leeson"><event id="455"><start>09:30</start><duration>00:50</duration><room>Leeson</room><title>Gotcha! Finer points of the postgres query planner and how to use them in your queries</title><abstract>The topic of the talk will be to discuss lesser known points of the query planner where one can squeeze performance in their queries, such as subquery to join conversions etc. The talk shall also focus on the shortcomings of the query planner and how to avoid them, and where they are unavoidable. This shall also lead in to discussion about the future of the query planner, and how it can be further improved.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/455/</url><track>Developer</track><persons><person id="149">Atri Sharma</person></persons></event></room><room name="Pembroke"><event id="505"><start>09:30</start><duration>00:50</duration><room>Pembroke</room><title>pgBadger v.4</title><abstract>YAY! pgBadger will be in v.4 during autumn 2013.

This talk will cover this useful tool, released in 2012. Already 4 versions... 
 
pgBadger will have then with this new version a bootstrap interface, designed by pros and sponsored by Dalibo.

This version of pgBadger is now completely exploitable and shows the results an easiest way. Thanks to bootstrap, it's also compatible on lots of devices, including mobiles ones.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/505/</url><track>DBA</track><persons><person id="13">Jean-Paul Argudo</person></persons></event></room><room name="Earlsfort"><event id="410"><start>09:30</start><duration>00:50</duration><room>Earlsfort</room><title>Taking advantage of custom background workers</title><abstract>Similar to the existing extensions, hooks and foreign data wrappers, custom background workers is module infrastructure newly-added in PostgreSQL 9.3 allowing to create plug-ins for the server core in the shape of a process controlled by the PostgreSQL server and running custom code. </abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/410/</url><track>Hacker</track><persons><person id="107">Michael Paquier</person></persons></event></room><room name="Other"><event id="548"><start>10:20</start><duration>00:30</duration><room>Other</room><title>Coffee</title><abstract /><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/548/</url><track>Breaks</track><persons /></event></room><room name="Pembroke"><event id="516"><start>10:50</start><duration>00:50</duration><room>Pembroke</room><title>Business Intelligence &amp; Performance</title><abstract>PostgreSQL's use in Business Intelligence is growing. This talk discusses the features we already have, together with benchmark analysis. In addition we look at features in active development for 9.4 and beyond, including features as part of the European funded project AXLE.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/516/</url><track>General</track><persons><person id="17">Simon Riggs</person></persons></event></room><room name="Earlsfort"><event id="441"><start>10:50</start><duration>00:50</duration><room>Earlsfort</room><title>Doing PITR Right - There's more than just replication</title><abstract>Is your data important? If so, it needs to be backed up and by far the best way to do that is with Point-in-Time Recovery. This talk will cover the current 'state of the art' regarding PostgreSQL backup, restore, and PITR. We'll bring a database up, throw some data into it, back it up, add some more data, delete some data, then show how to restore up to the point before the data was deleted. 

In this talk, we'll also cover how PostgreSQL writes out data and how that stream allows us to create a backup which can be used to go back to any point in time during the database's operation. Understanding this is critical to any production database because when you need to do a restore, you don't want to go back to yesterday's backup and lose all the work that happened today!

</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/441/</url><track>DBA</track><persons><person id="84">Stephen Frost</person></persons></event></room><room name="Leeson"><event id="498"><start>10:50</start><duration>00:50</duration><room>Leeson</room><title>Materialised views now and the future</title><abstract>Materialised views are now in available in PostgreSQL as of version 9.3, but there are some limitations.  This talk will explain what they can be used for, where the current limitations lie, and improvements users can expect to see in 9.4 and beyond.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/498/</url><track>Developer</track><persons><person id="63">Thom Brown</person></persons></event></room><room name="Earlsfort"><event id="483"><start>11:50</start><duration>00:50</duration><room>Earlsfort</room><title>Postgres what they really use</title><abstract>Running the largest fleet of Postgres instances in the world we have a lot of requests from users. We have even more data around what users do. We have websites large and small running on our platform including a top 100 website within the US. We'll take a look at some broader characteristics such as:

* Distribution of datasizes
* What extensions get used, i.e. is hstore really a thing people take advantage of
* Frequent problems users encounter
* Anecdotal data around most desired upcoming features/developments (which foreign data wrapper is the most requested)

This talk will be heavily data driven and reveal some actual numbers and distributions on usage. Only in places where hard data is entirely unavailable will more summaries be given.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/483/</url><track>General</track><persons><person id="144">Craig Kerstiens</person></persons></event></room><room name="Leeson"><event id="493"><start>11:50</start><duration>00:50</duration><room>Leeson</room><title>Federation with Foreign Data Wrappers</title><abstract>Disqus runs the comments section on 75% of the world's web sites.  To
handle this volume of data, we use many different data storage and
motion technologies including Memcached, Cassandra, Redis, Storm, and
of course PostgreSQL at the center.  Find out how we're federating all
this and what for with foreign data wrappers.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/493/</url><track>General</track><persons><person id="8">David Fetter</person></persons></event></room><room name="Pembroke"><event id="491"><start>11:50</start><duration>00:50</duration><room>Pembroke</room><title>Concurrency in Postgres</title><abstract>PostgreSQL implements some fairly involved rules to ensure correct behavior in the face of concurrent activity. Multi-version concurrency control prevents readers from blocking writers and writers from blocking readers, but even without the pessimistic locking of some systems, locking issues abound in many Postgres client applications. These problems are considerably ameliorated by improvements made in Postgres 9.3, where locks acquired when enforcing foreign keys are more granular, making deadlocks far less frequent and lock waits shorter, while still ensuring correct behavior.

Postgres hasn’t always been the most user-friendly when it comes to exposing this information, and allowing users to act upon it to fix performance problems. Getting the most pertinent information about how to fix problems is tricky, and is the subject of ongoing work on the core system.

This talk gives an overview of:

* How Postgres implements the various isolation levels described by the SQL standard, and the visibility rules and exact set of guarantees made by each level.
* The various locks that Postgres acquires on tables, indexes, rows and transactions, and even query predicates, and how all of this fits together with the isolation modes.
* Other ways in which the isolation modes handle conflict resolution.
* How Postgres locks can be represented as a tree, with cascading lock dependencies, and how this information can be interpreted to find backends that block other backends without being blocked themselves (the “real offenders”) using a recursive SQL query.
* Common scenarios in which race condition bugs can be inadvertently added to applications, and how you can avoid them.
* How to write queries to avoid locking issues such as deadlocks.
* New improvements to foreign key locking added to Postgres 9.3, and what they mean for your application.
How to implement UPSERT (i.e. atomic insert-or-update) correctly, in the absence of core functionality to take care of this for you.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/491/</url><track>Developer</track><persons><person id="165">Peter Geoghegan</person></persons></event></room><room name="Other"><event id="549"><start>12:40</start><duration>01:00</duration><room>Other</room><title>Lunch</title><abstract /><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/549/</url><track>Breaks</track><persons /></event></room><room name="Leeson"><event id="484"><start>13:40</start><duration>00:50</duration><room>Leeson</room><title>Switching Horses Overnight - a Software Manufacturer's View on Replacing an Existing Database Management System with PostgreSQL</title><abstract>synedra IT produces a clinical archive system which uses a relational database system for metadata management. Over 50 systems are currently installed and productive. The OLTP database often contains more than 100 Million rows and is critical for data integrity, availability and performance of the whole system.

Replacing an existing Oracle database system with PostgreSQL is challenging on several levels: The switch itself has to be performed reliably and with minimal downtime. All system components must operate smoothly and with high performance with the new database after the switch. Technical support must quickly adopt the new system to ensure service delivery and the ability to react in case of problems. Finally, the switch should be somehow beneficial from a customer and business point of view.

While the whole task was by no means trivial it was delivered successfully and the transition went surprisingly well in many aspects. Interesting insights could be gained on data migration, SQL dialects, the effects of a database engine on seemingly unrelated coding and PostgreSQL specific performance and tuning. 

We would therefore like to relate some preparations, experiences and anecdotes from our journey that might or might not be instructive and uplifiting for the inclined audience.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/484/</url><track>General</track><persons><person id="156">Robert Lichtenberger</person><person id="157">Stefan Andreatta</person></persons></event></room><room name="Pembroke"><event id="476"><start>13:40</start><duration>00:50</duration><room>Pembroke</room><title>Next generation of GIN</title><abstract>This talk presents set of advances which significantly improves GIN index. Their primary target is to make full-text search (FTS) in PostgreSQL to be as fast as it's in stand-alone solutions such as Sphinx and Solr. However it has many other applications.

The set of advances is following:
* Compression of item pointers in index
* Store additional information in posting trees and posting lists
* Fast scan: skip parts of posting trees during scan
* Sorting result in index

These advances in GIN leads to following benefits to GIN indexes:
* Indexes will become about 2 time smaller without any work in opclass.
* Usage of additional information for filtering enables new features for GIN opclasses: better phrase search, better array similarity search, inverse FTS search (search for tsqueries matching tsvector), inverse regex search (search for regexes matching string), better string similarity using positioned n-grams.
* Fast scan dramatically GIN search in "frequest_term &amp; rare_term" case.
* Usage of additional information for sorting in index accelerates ranking in FTS and dramatically reduces its IO.

We present the results of benchmarks for FTS using several datasets (6 M and 15 M documents) and real-life load for PostgreSQL and Sphinx full-text search engines and demonstrate that improved PostgreSQL FTS (with all ACID overhead) outperforms the standalone Sphinx search engine.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/476/</url><track>Hacker</track><persons><person id="64">Alexander Korotkov</person><person id="164">Oleg Bartunov</person></persons></event></room><room name="Earlsfort"><event id="402"><start>13:40</start><duration>00:50</duration><room>Earlsfort</room><title>Indexes: The neglected performance all-rounder</title><abstract>Proper indexing is a very time and cost-effective way to improve performance. Yet it is often done in a very sloppy way. This talk explains the organizational misconceptions that lead to sloppy indexing and gives advice how to change it. Finally we will show the results of a short online quiz that reveals the state of indexing know-how in the field.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/402/</url><track>DBA</track><persons><person id="142">Markus Winand</person></persons></event></room><room name="Pembroke"><event id="523"><start>14:40</start><duration>00:50</duration><room>Pembroke</room><title>Visualizing Postgres</title><abstract>Postgres comes with several introspection tools out of the box. Some are easier to understand than others, but they are all useful. Recent improvements in 9.2's pg_stat_statements make it even easier gain insights into the performance of your application.

This talk will explore the history of data visualization and information display to build a strong foundation. Then take a dive into the built-in postgres tools tools, and what it takes to combine them to provide real-time visualizations of the health your database.

Other topics will include
- What metrics are the most valuable and how to use them
- A deep dive into example application for realtime postgres visibility
- Storage of postgres statistics
- Tools for time series visualization
</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/523/</url><track>DBA</track><persons><person id="87">Will Leinweber</person></persons></event></room><room name="Leeson"><event id="510"><start>14:40</start><duration>00:50</duration><room>Leeson</room><title>My experience with embedding PostgreSQL</title><abstract> At my current company, we embed PostgreSQL based technologies in various applications shipped as shrink-wrapped software. In this session we talk about the experience of embedding PostgreSQL where it is not directly exposed to end-user and the issues encountered on how they were resolved.

We will talk about business reasons,technical architecture of deployments, upgrades, security processes on how to work with embedded PostgreSQL databases. </abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/510/</url><track>Developer</track><persons><person id="85">Jignesh Shah</person></persons></event></room><room name="Earlsfort"><event id="464"><start>14:40</start><duration>00:50</duration><room>Earlsfort</room><title>Migrating from MySQL to PostgreSQL</title><abstract>A presentation of some tooling I'm building to take care of all the boring steps of the migration in a single easy and fast step: schema, handling types and default values, auto-increment and sequences, data, constraints, indexes.

That feature set actually works already, only missing is a little glue and a user language to drive the tool, and that's in good progress already. The tool would definitely be ready for a full demo at the conference.

Obviously the tool licence of choice is "The PostgreSQL Licence". Actually it's part of the new version of pgloader.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/464/</url><track>General</track><persons><person id="14">Dimitri Fontaine</person></persons></event></room><room name="Other"><event id="550"><start>15:30</start><duration>00:30</duration><room>Other</room><title>Tea</title><abstract /><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/550/</url><track>Breaks</track><persons /></event></room><room name="Earlsfort"><event id="537"><start>16:00</start><duration>00:50</duration><room>Earlsfort</room><title>Lightning talks</title><abstract>Lightning Talks - the high intensity part of conference which only uses 5 minutes of attention span at a time.

The rules for Lightning Talks are easy: you can talk about anything, but not longer than 5 minutes. The audience really prefers the talks to be related to PostgreSQL (the worlds most advanced OpenSource Database, the project, the community, the conference, the ecosystem)

To optimally prepare for your awesome Lightning Talk: give your presentation as HTML, OpenOffice, PDF, PPT or Prezi to Harald Armin Massa hours before the scheduled time. If you cannot do that, please make sure your laptop/tablet/mobilephone is able to communicate with the projector, especially that you have all necessary adapters and Jobs-plugs and you have the correct drivers, settings and licences.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/537/</url><track>Keynotes</track><persons><person id="78">Harald Armin Massa</person></persons></event></room></day><day date="2013-11-01"><room name="Leeson"><event id="401"><start>09:30</start><duration>00:50</duration><room>Leeson</room><title>Pagination done the PostgreSQL way</title><abstract>Fetching results in a page-wise manner is still a very common requirement—even when using an ‘infinite scrolling’ user interface. This session explains how to use one of PostgreSQL’s unique capabilities to implement these queries in a way that outperforms the traditional LIMIT/OFFSET approach.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/401/</url><track>Developer</track><persons><person id="142">Markus Winand</person></persons></event></room><room name="Earlsfort"><event id="474"><start>09:30</start><duration>00:50</duration><room>Earlsfort</room><title>Epic fails in the RDBMS world</title><abstract>Entertainment is important in this speech - or should i say infotainment? The serious subjects of placing products on the ACID-continuum and the (dis)advantages of breaking RDBMS principles are illustrated by firsthand horror-stories from my 12+ years as a DBA. When will things break when you rub against the RDBMS-framework, such as choosing a wrong data-type, inserting several values in one column, the EAV model or disabling referential integrity are told with rolling eyes anecdotes. What are the dangers of not knowing the RDBMS rules?
Although there will be references to Postgresql functionality and parameters, the lessons from this fun speech are applicable to all RDBMS. 

This speech will be accompanied with a reader with further examples.

"A wise man learns from the mistake of others. A fool of his own."</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/474/</url><track>General</track><persons><person id="161">Willem Leenen</person></persons></event></room><room name="Pembroke"><event id="502"><start>09:30</start><duration>00:50</duration><room>Pembroke</room><title>Agile Oracle to PostgreSQL migrations</title><abstract>Migrating an Oracle database to Postgres is never an automated operation. And it rarely (never?) involve just the database.
Experience brought us to develop an agile methodology for the migration process, involving schema migration, data import, migration of procedures and queries up to the generation of unit tests for QA.

Pitfalls, technologies and main migration opportunities will be outlined, focusing on the reduction of total costs of ownership and management of a database solution in the middle-long term (without reducing quality and business continuity requirements).</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/502/</url><track>General</track><persons><person id="4">Gabriele Bartolini</person></persons></event></room><room name="Other"><event id="551"><start>10:20</start><duration>00:30</duration><room>Other</room><title>Coffee</title><abstract /><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/551/</url><track>Breaks</track><persons /></event></room><room name="Pembroke"><event id="489"><start>10:50</start><duration>00:50</duration><room>Pembroke</room><title>Useful PostgreSQL Extensions -- the extensions behind the scenes</title><abstract>PostgreSQL tarball comes with a bunch of extensions (a.k.a. contrib modules) -- but are they the only ones? 

Of course, not.

There are lots of other extensions around, which are very useful in lots of areas.

This talk will mention about those extensions, their usage patterns with some examples.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/489/</url><track>General</track><persons><person id="49">Devrim Gündüz</person></persons></event></room><room name="Earlsfort"><event id="440"><start>10:50</start><duration>00:50</duration><room>Earlsfort</room><title>Using Postgres FDW w/ a sharded PostgreSQL Database</title><abstract>PostgreSQL 9.3 will be the first PG major release to include an in-core Foreign Data Wrapper for talking to other PostgreSQL databases- and it supports *writing* to those databases through the FDW. This talk will discuss how to set up and use the Postgres FDW with a 32-way sharded PostgreSQL database and go over pros, cons, and limitations. 

Once you've gone beyond being able to (reasonably) acquire single-image (single-system) hardware for your master server, it's time to shift to a sharded database- but how do you manage and deal with all of those shards? We'll talk about how you can use the Postgres FDW to bring all those shards back together- where it works and where it doesn't, and discuss the possible future for the Postgres FDW and how it might be changed to work better.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/440/</url><track>Developer</track><persons><person id="84">Stephen Frost</person></persons></event></room><room name="Leeson"><event id="519"><start>10:50</start><duration>00:50</duration><room>Leeson</room><title>Postgres from Vision to Reality, ABNAMRO Client case</title><abstract>Client Case.

Implementation of a new reporting system on Postgres. Postgres was chosen above Oracle. Oracle was the standard for many years in the organisation with very high standards  The Postgres environment had to match the Oracle standards. 
Project started with Oracle, was later converted during implementation to Postgres. 

Characteristics: 
24X7 Availability
Very Large database
Performance very important

Implementation 
OS Clustering
Streaming Replication 
Backup &amp; recovery
Monitoring 
Partitioned tables
 This presentation explains how the project is implemented. What problems where encountered during implementation and how the customer was convinced that the project could make a success.


</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/519/</url><track>General</track><persons><person id="183">Rob Sijmons</person></persons></event></room><room name="Earlsfort"><event id="508"><start>11:50</start><duration>00:50</duration><room>Earlsfort</room><title>Postgres versus an anonymous database from Redwood</title><abstract>Postgres is often compared with Oracle but how does it really stack up?

In some ways Postgres is much more comfortable to use but in other areas Oracle has dedicated enormous efforts to solving real-world problems that Postgres doesn't have a good answer for. 

Understanding how does Open Source projects prioritize work differently from a large company with customers to please can explain some of these differences.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/508/</url><track>General</track><persons><person id="24">Gregory Stark</person></persons></event></room><room name="Leeson"><event id="522"><start>11:50</start><duration>00:50</duration><room>Leeson</room><title>PostgreSQL Backups, the good the bad and the ugly</title><abstract>A discussion of the various backup techniques available to PostgreSQL including pg_dump, pg_dumpall, pg_basebackup and system utilities. Includes information on creating your own backup scripts and detailed information on best practices usage for each utility.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/522/</url><track>DBA</track><persons><person id="23">Joshua D. Drake</person></persons></event></room><room name="Pembroke"><event id="490"><start>11:50</start><duration>00:50</duration><room>Pembroke</room><title>Binary storage for nested data structures and application to hstore data type.</title><abstract>We present a binary storage for nested data structures with arrays support and its application to nested hstore. We consider this storage as a step forward true json data type. 

Recently, PostgreSQL got json data type, which basically is a string storage with validity checking for stored values and some related functions. To be a real data type, it has to have a binary representation, development of which could be a big project if started from scratch. Hstore is a popular data type, we developed years ago to facilitate working with semi-structured data in PostgreSQL. It is mature and widely used data type with indexing support. Our idea is to implement a binary storage for nested data structures with array support and use it to develop nested hstore data type as well as for json.  The prototype was presented at PGCon-2013 and it proves the benefit of using such storage for hstore  both in performance and functionality. Now we present an improved storage  with types support, which makes possible to use it as storage layer for json. Also, we show, that hstore can get a great performance gain (an order of magnitude)  from new GIN fast scan algorithm.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/490/</url><track>Hacker</track><persons><person id="164">Oleg Bartunov</person></persons></event></room><room name="Other"><event id="552"><start>12:40</start><duration>01:00</duration><room>Other</room><title>Lunch</title><abstract /><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/552/</url><track>Breaks</track><persons /></event></room><room name="Pembroke"><event id="497"><start>13:40</start><duration>00:50</duration><room>Pembroke</room><title>Wiretapping the Wire Protocol: automatic data visualization for psql with Cartographer and FEMEBE</title><abstract>While psql is a great ad-hoc query tool and offers a very useful admin interface, command line tools have some inherent shortcomings, especially in terms of data visualization. However, pure GUI tools have to start from scratch to provide a fluid keyboard-driven interface, and many end up with a frustrating, sub-par experience.

Cartographer explores the idea of mitigating these issues by providing simple, automated data visualization of the results of psql queries. Your interaction with the database is still through psql, but at any point, you can switch to a separate window listening in on your session. From there, you'll see an automatic chart for your latest result set (when appropriate), your query history, and other data visualization options (as fitting).

This talk will then discuss the more general idea of shimming in at the protocol level to build Postgres tools, with Cartographer as an example. The Postgres wire protocol is well documented and fairly straightforward, and the Go FEMEBE library makes it easy to build proxies and other similar tools.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/497/</url><track>Developer</track><persons><person id="166">Maciek Sakrejda</person></persons></event></room><room name="Earlsfort"><event id="486"><start>13:40</start><duration>00:50</duration><room>Earlsfort</room><title>Hierarchies Without Masters</title><abstract>In this talk we describe Narugn, a lightweight distributed computer.

Narugn is implemented on PostgreSQL by an SQL extension (about 30 KB)
which requires PL/Proxy.

The resulting cluster of PostgreSQL databases is heterogeneous,
elastic, resilient, connected by small networks, and there are no
privileged nodes.

Narugn provides a framework to implement distributed algorithms, where
capacity (either storage or CPU) can easily be pooled together. It
implements a small number of core functions, which allow propagation
of more sophisticated user-space code.

Two user-space applications are presented:

1. integer factorisation involving large prime numbers, to demonstrate
    a simple CPU-intensive tasks;

2. distributed large hierarchies (trees), to demonstrate storage
    pooling.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/486/</url><track>General</track><persons><person id="34">Gianni Ciolli</person></persons></event></room><room name="Leeson"><event id="512"><start>13:40</start><duration>00:50</duration><room>Leeson</room><title>Elephants in fashion</title><abstract>PostgreSQL plays a crucial role in our infrastructure, storing everything from customer information to article data, finding it's way even in our real-time warehouse management systems. Starting from version 9.0 we have been using every release of PostgreSQL in production and still loving it.

We want to share how we deploy, monitor and use PostgreSQL databases to power the biggest fashion e-commerce platform in Europe.

Among the challenges, we are going to talk about are:
 - controlling and monitoring more than 100 database instances in several data centers;
 - running our databases with minimal downtimes;
 - managing hundreds of database changes done by hundreds of developers every week.
</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/512/</url><track>General</track><persons><person id="127">Valentine Gogichashvili</person></persons></event></room><room name="Other"><event id="553"><start>14:30</start><duration>00:30</duration><room>Other</room><title>Tea</title><abstract /><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/553/</url><track>Breaks</track><persons /></event></room><room name="Earlsfort"><event id="517"><start>15:00</start><duration>00:20</duration><room>Earlsfort</room><title>PostgreSQL Futures</title><abstract>Each year we look forwards to the new features emerging in PostgreSQL in the next release and beyond. We look at features for developers, for architects and for administrators. We use insights derived from voting, expert users and from expert analysts in the cloud, large server and other environments. Go Postgres!</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/517/</url><track>Keynotes</track><persons><person id="17">Simon Riggs</person></persons></event><event id="525"><start>15:25</start><duration>00:20</duration><room>Earlsfort</room><title>PostgreSQL in 5 years - Expectations from the market place</title><abstract>PostgreSQL has had a tremendously successful trajectory in recent
years, and we've all read the news to that effect. But there's another
side to the PostgreSQL success story, and that is the mounting
expectations on its future road map.   The analysts are weighing in
with their predictions on the future of database technology.
In-memory, key-value, cloud, mobile, database appliances...the
database landscape is rapidly evolving.   In this keynote, Tom
Kincaid, Vice President of Products and Engineering at EnterpriseDB,
will share research from several industry analysts about the future of
database technology, along with his own opinions of how PostgreSQL
should adapt to this changing eco-system of NoSQL, NewSQL and
traditional RDBMS.</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/525/</url><track>Keynotes</track><persons><person id="182">Keith Alsheimer</person></persons></event><event id="535"><start>15:50</start><duration>00:40</duration><room>Earlsfort</room><title>Closing</title><abstract>Closing session</abstract><url>https://www.postgresql.eu/events/pgconfeu2013/schedule/session/535/</url><track>Keynotes</track><persons><person id="2">Dave Page</person><person id="1">Magnus Hagander</person></persons></event></room></day></schedule>