Monday, November 9, 2015

Winter-GIS Skills Shops


Center for Geospatial Information Science Winter Skill-Set Courses
·          GEOG788F: Big data analytics with Python (1 credit; register here)
·          GEOG788E: Web GIS (2 credits, register here)
·          GEOG788C: GIS and Hadoop (1 credit; register here)
 
The skill-set course sequence at the UMD Center for Geospatial Information Science is designed to provide a comprehensive overview of current state-of-the-art in geospatial information science (GIS) and computational social science (CSS), through intensive training over a short time frame. The skill-set courses provide advanced training in key aspects of GIS and CSS, alongside hands- on lab-based exercises across a diversity of devices, software libraries, exercises, and data environments that emphasize “learning by doing”.
Each course is taught by faculty and staff in the School of Geographical Sciences and Center for Geospatial Information Science at the University of Maryland, with extensive experience in building and applying geographic information systems for use in research and professional environments.
 

Big data analytics with Python (1 credit)

Overview:

This course is designed to provide an introduction to statistical analysis over big data sets (and tackling big data problems), primarily in geography and spatial sciences, but with broader appeal throughout the socio-behavioral sciences. Students will be introduced to a range of methods that can be applied to the exploration, modeling, and visualization of big quantitative data. The course covers a range of topics including: core aspects of data analysis in Python, as well as packages for focused data analytics, web scraping, data visualization, and modeling.
Upon a successful completion of the course the students will be able to:
·         Understand basic concepts and packages of Python relating to data analysis;
·         Demonstrate proficiency in using Python, iPython Notebook, Numpy, SciPy, Matplotlib, etc.;
·         Demonstrate basic technical proficiency in the use of the Python for collecting and scraping web data, particularly as produced on the Twitter messaging platform;
·         Demonstrate proficiency in modeling, predicting, analyzing, and plotting big data;
·         Solve real-world problems using big data
 

Suggested background:

This course assumes a basic knowledge of GIS concepts and capabilities, and an intermediate programing experience is expected. The target audience is students who deal with large datasets across disciplines and need to build proficiency in manipulating big data.
 

Hands-on training:

·         Anaconda and demo packages
·         Demos on ipython and ipcluster (for parallel computing)
·         Draw statistics charts with scipy, numpy, matplotlib
·         Shapefile access / write using Fiona and Shapely (and matplotlib)
·         Introduction to Twitter API (entities, streaming, search)
·         Twitter crawler using Tweepy (streaming and search)
 
 

Web GIS (2 credits)

 

Overview:

This course is designed to explore web-based GIS technologies, and to help students develop the knowledge and skills necessary to plan, design, develop and publish a web-based GIS solution. This course provides students with a comprehensive and up-to-date understanding of: 1) the concepts, theories, and development trend of Web/Internet GIS and its prevalent applications in multidisciplinary fields; 2) various technologies and techniques for creating, analyzing, and publishing GIS data and services via the Internet. Students will be taught state-of-art technical skills and knowledge necessary to develop Web GIS applications and to manage Web GIS projects, in the context of real-world applications of Web GIS in various fields. Students will gain exposure to almost all of the main Web GIS tools including ArcGIS Server, ESRI JavaScript API, Google Map
API, Leaflet, CartoDB, etc. Students will also be exposed to the experience of working with and on cloud computing environments such as Amazon AWS EC2 and ArcGIS Online.
 

Suggested background:

The target audience is students who wish to develop proficiency in developing Web GIS products. Students taking the course must be familiar with geographic data structures, basic GIS concepts, and demonstrate basic understanding of object-oriented programming in a GIS environment.
 
 

Hands-on training:

·         Create map applications using ArcGIS Online;
·         Create a web app with custom symbols and popups using ArcGIS Online;
·         Publish a map service on ArcGIS Server and create a web app with it;
·         Create web apps using ArcGIS Web App Builder;
·         Create web apps using ArcGIS API for Javascript;
·         Publish geoprocessing services and spatial analytics online;
·         Create and design web apps using Google Map API;
·         Create and design web apps using Leaflet, CartoDB, and Mapbox
 

GIS and Hadoop (1 credit)

Overview:
In a world of unstructured data, one of the few common structuring attributes is geography. This places geographic information and spatial data models front and center in the ongoing development of data management and access resources for big-data silos and the systems that rely on them. This course will focus on training students on the latest knowledge and techniques for processing spatial information embedded in big data. Students will work with the Apache Hadoop framework, which is evolving as one of the standard architectures for big data systems used in research and industry. The course will introduce basic concepts and structures of high-performance computing environments atop Apache Hadoop, with detailed instructions on deploying such an environment. Students in this course will develop proficiency in Open sources toolkits, such as GIS Tools for Hadoop, and will be introduced to the various pathways available to leverage the Hadoop framework to conduct spatial and related analyses on big data.

Upon a successful completion of the course the students will be able to:
·         Design a solution and architecture on a Hadoop platform for a spatial analysis of big data on a cluster of machines;
·         Apply MapReduce extensions, such as SpatialHadoop, to work with spatial data;
·         Automate geospatial big data processing using Hive and GIS Tools for Hadoop;
·         Run spatial operations/analysis on billions of spatial data records inside Hadoop;
·         Visualize analysis results of big data via cartographic and geovisual media.
Suggested background:
The prerequisites for this course include an introductory course for Geographic Information Systems (GIS). Students taking the course must be familiar with geographic data structures, basic GIS concepts, and demonstrate basic understanding of geospatial analysis.

Hands-on training:
·         Install and configure Virtual Machine with Ubuntu;
·         Install and configure Hadoop with Pseudo-Distributed Mode;
·         Demo word count example to introduce basic Hadoop mechanism;
·         Install and configure Hive on current Hadoop, install postgre if needed;
·         Compare performance of SQL querying and aggregation with postgre and Hive;
·         Install Hadoop with Fully-Distributed mode on AWS via Cloudera.