Using Open Source Tools to Create an Enterprise GIS
- 3.5 hours on-demand video
- 1 downloadable resource
- Full lifetime access
- Access on mobile and TV
- Certificate of Completion
Get your team access to 4,000+ top Udemy courses anytime, anywhere.Try Udemy for Business
- Install PostGRES and PostGIS
- Design a PostGRES database with multiple users and roles
- Load GIS and attribute data into PostGRES and PostGIS
- Manage data by including constraints, views, and indexes.
- Connect GIS software as clients to the Enterprise PostGRES database
- Perform simultaneous multi-user editing of GIS data
- Issue spatial and non-spatial SQL to perform geographic analysis
- Develop an external application (kiosk) in Python
- Publish enterprise data on the Internet
- Students should know what GIS is, and have had some experience using GIS.
- Students should be excited to learn about how to implement an enterprise GIS.
- Although this class provides a lot of hand-holding through advanced technical concepts, students should have a natural curiosity about GIS and technology, and not be afraid to tinker around - remember, in this training the stakes are low - if you break it, you can always start again.
For years I've been hearing everyone talking about Enterprise GIS, but I haven't seen anyone do it. After this course, I can now say that "I've created a multi-user enterprise GIS on my own!" - John from California.
Do you want to learn how to build an Enterprise GIS from scratch using Free and Open Source Software for GIS (FOSS4g)?
In response to the high cost and complexities of implementing an Enterprise GIS, I created this easy-to-follow, hands-on training course allowing students to actually build a multi-user enterprise GIS from scratch using Postgres, PostGIS (free) and Quantum GIS (free). As an added bonus, this training will show how you can add other GIS products (i.e. commercial GIS software) into the enterprise stack as GIS clients.
In this course you will create an Enterprise GIS that includes vector and raster data for a mid-sized municipality. You will learn how to add users, each with different permissions for accessing and editing data, and also how to use PostGRES to control all aspects of database access, presentation, and editing. You'll even perform simultaneous multi-user editing on the same GIS layer, and learn how a true Enterprise GIS can manage many users at once.
As a bonus, you will see how you can access all the GIS tools from outside of the software by using python to create a table-top GIS application that you might find at a kiosk. And finally, I will show you an example of how the same data in the enterprise can be simultaneously displayed on the Internet using FOSS4g software.
- This course is meant for those looking for hands-on experience building a multi-user enterprise GIS from scratch, using open source tools.
- Students should have a familiarity with open source tools like QGIS, however, having that experience is not required, as the course is designed to teach student with little or no experience
- This course is perfect training for someone who is interviewing for a GIS position - not many applicants can articulate how they put together an enterprise GIS.
Welcome to the course - watch the following material to learn what we are going to cover in this class - and don't forget to download the support material below, so you can work alongside me.
In this lecture you will learn how to download and install PostGRES, PostGIS, and Quantum GIS (QGIS). While many courses have the software waiting for the students to use in order to simplify things, we will actually show you how to install PostGRES, PostGIS, QGIS, and other extensions to make the enterprise GIS work.
In this lecture you will actually load a variety of data (attribute and spatial) into PostGRES and PostGIS. Particular attention will be paid to open source tools available for data loading, and also how to manage different coordinate systems in the database. Unlike many courses that already have the data waiting for you, this course will make sure that you know how to load the data yourself!
If you've ever used a multi-user enterprise system, you may have wondered how some users have access to certain data but not other data. In this lecture, you will learn how to create specific working GROUPS, and assign those groups to individual layers. You will create groups that have full control over data, view only capabilities, and limited editing capabilities. In the next lecture, students will create individual login roles for specific users who will inherit the permissions granted to the groups.
In this lecture, you will learn how to manage the database users through creating specialized roles and permissions. Particular emphasis is made on giving users the proper permissions for viewing, editing, and creating data. Here you will create a multi-user system with different users having different levels of data access. At the end of this lecture you will have confidence that you can assign different permissions to different users.
One of the things that makes an enterprise system so powerful is that you can create constraints that protect your data from erroneous data entry. Many GIS implementations have a middle-ware tier to handle data integrity. But, it is often easy to bypass these securities. In a real enterprise system, all the logic and security is handled by the database itself - in other words, you can't circumvent the security. In this lecture, you will learn how to add constraints to the data to ensure that data is properly protected. And unlike many of your GIS counterparts, you can state that the data is protected no matter what system a third party uses to access the data.
In this lecture, you will learn how to create VIEWS to control what a user might see in the database. Rather than having a user directly link to a layer, a VIEW will allow the database manager to create a visualization of the data that an end user can see. In this lecture, we will focus on creating a specialized view from a simple attribute query, a more complex query that spans multiple tables, and a spatial query that re-imagines the original layer to take on the characteristics of the spatial query.
In this lecture, you will learn how to load raster data into PostGRES using the raster2pgsql.exe command. Although using the command line is a little more cumbersome than a GUI, learning to use this command is well worth it, as the GDAL library allows you to load virtually any kind of data source.
In this lecture, you will learn how to use QGIS to perform analysis on data stored in PostGRES. Also, the lecture will demonstrate how to also perform GIS analysis using Manifold GIS. In this case, you will learn how QGIS (or Manifold GIS, or any other GIS product) doesn't care where the data comes from - it will just use it. And, having structured the data in an enterprise GIS you gain the advantage of having the data better managed in PostGRES.
Have you ever tried editing data in a GIS when someone else was trying to edit it? Most often, you can't, as the data becomes locked once a user checks it out for edting. In this session, you will actually perform multi-user, simultaneous editing of the GIS data in PostGRES using QGIS. Students with access to Manifold will also be shown how to edit the data with other software products.
So, unlike most of your GIS counterparts, you'll have built a system that can handle multiple users simultaneously editing the data!
In this lecture, you will learn how to create triggers, that will fire off in response to some action the user might take. Specifically, you will create a trigger that automatically updates a value in the parcels table with the watershed it is contained in. Also, your trigger is going to make sure that the new geometry you create actually falls inside a watershed boundary. This is a really powerful way to control your data quality and also automatically perform analytical tasks in response to a data editing activity you might perform.
In this lecture, you will learn how to create server-side analysis and functions in PostGRES that can serve the entire enterprise. Students will also learn how to call PostGRES and PostGIS commands from external applications, making this a truly enterprise system. You will also see the benefit of allowing the server to do most of the heavy-lifting for certain spatial analysis tasks.
In this lecture, you will learn how to create a table-top application by writing an external program (in this case, python) that talks directly to PostGRES. This means you can write stand alone applications that simply prompt a user for input, and then perform any powerful GIS process on the back end server, without the user needing to know anything about GIS, or even have a GIS application open.
Once you are done with this lecture, you will be come part of the elite 1% of GIS users that can create external applications to leverage the enterprise GIS.