How to access the Picasa (desktop) database?

database, picasa

Solution

In Picasa 3 at least, the internal database is stored in a set of `.pmp` files that sits alongside the `.db` files, in one of the standard locations for Picasa's application data. On the Mac for instance, it is under `$HOME/Library/Application Support/Google/Picasa3/db3`

Rather confusingly, the `.db` files don't contain the database, they are just containers that hold thumbnail previews for various groups of images. They are in the standard Windows `thumbs.db` format, more information from this answer.

The `.pmp` files contain the database, and are in a non-standard format. There is a cluster of files per table, with one file per field. The filenames for a given table share the same prefix. For example, the data in the `catdata` table comes from this set of files:

$ ls -1 catdata_*
catdata_0
catdata_catpri.pmp
catdata_name.pmp
catdata_state.pmp

which has three fields, `catpri`, `name` and `state`. I've written up some partial notes in a blog on the format of these files as of Picasa 3.9.0.522, as well as a small java program to dump out as much of the data as I've been able to understand.

Problem

Is there any way to read the Picasa database? What is the format of the Picasa database? Are there any APIs to access the database?

Original source