Showing posts with label myWorld. Show all posts
Showing posts with label myWorld. Show all posts

Monday, February 28, 2011

New open source server options for Ubisense myWorld

We have been busy working away on various aspects of Ubisense myWorld. One of the biggest enhancements is behind the scenes, with support for new server options, so that we can run in the cloud or in house.

Up to this point we’ve been working with Arc2Earth, which runs on top of Google App Engine, and both these platforms have worked very well for us, and were a great way of getting an initial system up and running quickly. We see a lot of benefits to running in the cloud, as I’ve talked about on several occasions.

However, a number of our customers, including large utilities and telecom companies, have said that they really like what we’re doing with myWorld, but they would be more comfortable with a solution where the server can run in house. So to support this we have added a new server architecture based on the open source products MapFish and PostGIS. As many of you will know, PostGIS is a very robust spatial database, built on top of PostgreSQL. I have used this on a few projects including whereyougonnabe and have always been very impressed with its functionality and performance. MapFish provides services using data from PostGIS (or from other spatial data sources, including Oracle Spatial, MySQL and Spatialite), using a very similar REST API to that used by Arc2Earth, so that made the migration straightforward and means we can support both server options with a largely common set of code. We’re just using server side components of MapFish, not its client side components (though we might consider using those in the future).

This new server code can run on various operating systems, including Linux and Windows (and Mac!). Customers can run the server in house, while we can now offer services using many different cloud infrastructure providers. We’re currently using Amazon, which has been working well, but it’s good to have alternatives available. We've continued to be pleased with PostGIS, and MapFish too based on our experience so far.

Stay tuned for more news on other cool new functionality on the front end of myWorld coming soon!

Wednesday, December 1, 2010

Ubisense myWorld featured on Google blogs

Today I had a guest post about Ubisense myWorld published on the Google Geo Developers and Google Enterprise blogs, check it out! Thanks to Mano Marks of Google for working with me on this.

Thursday, September 16, 2010

Using Google Maps to broaden the reach of GIS: Ubisense myWorld

Readers of my blog will know that for several years I have been advocating that Google Maps and other "neogeography" systems have a strong role to play in more traditional GIS application areas. In recent months I've been quite busy working on making this a reality, and last week at the Smallworld User conference in Baltimore we announced a new product called Ubisense myWorld. I'm really excited about what we've come up with. Check out the video demo, and read on below for more information (demo video best viewed in full screen, HD, no scaling).
Our initial focus has been on using myWorld with GE Smallworld data (for those not familiar with GE Smallworld, that's where I used to work a few jobs back, and they are still the market leader for GIS in utilities and telecom). However, we are using the excellent Arc2Earth Cloud as the repository for our geospatial data in the cloud (running on Google App Engine), which has comprehensive support for uploading ESRI data, so we can integrate with ESRI too. And much of our functionality is quite applicable to other application areas. So if you might be interested in using myWorld outside a Smallworld environment, let me know!

We've had a really strong emphasis on usability - our aim is that people should be able to use the system with no training. We display all the asset data as raster tiles, which is essential for scalability - Smallworld data models tend to be among the most dense of any GIS applications, with very detailed network data, and tables often running into millions of records. But you can select anything with a single click on the map, which sends a query to the spatial database hosted in Arc2Earth (using a REST API, for those interested in that sort of thing) to get the relevant attribute information. We've found performance to be excellent with this approach.

We've implemented a very fast Google style single box search across the whole geospatial database (well, whichever tables and columns the administrator designates), so users don't need to know any technical details about table names, field names or query structures to find what they are interested in - they can just start typing a pole number, asset id, customer name, etc and we have an autocomplete capability that will show them a list of options to choose from. This uses Google's App Engine datastore, which is based on BigTable, the same technology that powers Google Search, so is obviously very fast and scalable.

Another cool feature, which I haven't seen elsewhere yet done in the same way that we've done it, is tight integration with Google Street View. When you click on an item on the map, like a pole or a customer, we calculate the best street view to show you what that looks like (where one exists - it doesn't in all cases, as not everywhere is covered by street view). So far in our testing, the data has matched up better than I thought it would, with the automatic calculation working well in most cases. However, in some cases there will be mismatches between the data in the GIS and the data in street view, so we make it easy to adjust the view and save it, so that next time you click on the same item it will remember the adjusted view. This street view capability is one of the main reasons we decided to use Google Maps rather than the various other options out there.

We also see a lot of potential for the idea of "enterprise mashups" - being able to easily pull data from other systems within an enterprise that also contain spatial data, like outage management, vehicle tracking, work management, and customer information systems, as well as data from external sources like traffic, weather and more.

Since the application is just based on JavaScript with no plug-ins, it also runs really nicely on the iPad, and on smart phones like the iPhone and Android (with a modified user interface for the phones, to accommodate the smaller screen size). We think that all of these devices have great potential for use in the field.

We are just scratching the surface with what we're showing so far - we have a long list of ideas for more things we want to do, while at the same time maintaining a very strong focus on keeping the user interface super simple. I'll post more in due course about some more detailed aspects of what we've been doing.

You also can see some of my broader perspectives behind what we're doing in the presentation I did at the Smallworld user conference in Baltimore last week:

Smallworld and Google: the best of both worlds from Peter Batty on Vimeo.