Monday, January 7, 2013

Updates about my current job

Occasionally I am asked about my current job and if I would like to make a change. Here is an update since my last overview. I spent some time refactoring the web service providing GIS information about addresses and localities in Czech Republic and some other countries. As usually there is more so we are in process of migrating the database back-end of this system from DB/2 to Postgresql with PostGIS. That way we hope to get simple access to coordinates using various systems. We read data provided by authority (RUIAN - sometimes even the state can serve something useful) and surprisingly this is relatively straightforward - parse some XMLs that have schemas available so we could generate JAXB classes and convert that to a data objects and store in DB. Again I wanted to keep it simple so there is Hibernate involved and things are bind together using Spring. A bit of wrestling to get compatible mix of all these libraries (beware of conflicts with versions in JBoss) and it is spiced with Hibernate Spatial extension that has Postgresql driver. Another driver is used for testing - H2Database can run in-memory while support GEOMETRY datatype.

The second big topic is experimenting with storage for our binary data. We want to move some BLOBs out of database and if we built some storage there are a few cases where we can use such storage for resources served on our webs. So far we think that we can run this using Openstack SWIFT though the setup will be simplified. Rather than building a cluster of machine with commodity hardware we will start without replication and store the data using XFS filesystem on SAN that we already have. That way we get HTTP API similar to Amazon's S3 API for access to data and a migration path for future growth. There were some other possibilities that we considered like RIAK, CephFS with Rados, GlusterFS or other DFSs. There is nothing critically wrong with any of these but the idea is to have reasonably simple solution. While playing with all these I had also a chance to learn parts of Puppet and enjoyed beauty of virtualization using VirtualBox often through Vagrant that makes it even simple to build new boxes.

Thinking about it: should I throw some new keywords in my LinkedIn profile :-) At the moment I will not bother with it.

No comments:

Post a Comment