Welcome!

Java IoT Authors: Liz McMillan, Elizabeth White, Yeshim Deniz, Zakia Bouachraoui, Pat Romanski

Blog Feed Post

Improving GIS performance with AppDynamics

image_pdfimage_print

Twenty years ago I started my professional career working in a niche field of IT called Geographical Information Systems (GIS) – basically mapping systems. This is an area where Big Data was prevalent, long before the term was officially coined, GIS covered a range of concepts from satellite imagery and aerial photography processing to geo-demographic data analysis, address cleansing and geocoding to routing analysis, spatial algorithms and finally to publishing maps & associated data.

Google and Microsoft Bing have recently commoditised a lot of the publishing aspects of background mapping data, but the need for analysing and publishing an organisation’s own geographic data is as important today is it has ever been.

Historically, Application Performance Management (APM) and GIS have never made good bedfellows mainly due to the effort required in deploying APM.  At a recent conference I spoke to a GIS developer who stated they had no interest in APM because “they work in GIS.” Upon further questioning, this GIS developer acknowledged processing and accessing these large datasets is complicated and it’s slow and that’s “just how it is.”. So I challenged this and decided to demonstrate AppDynamics on GeoServer,  an open source mapping server written in Java that allows users to share and edit geospatial data.

Within a few minutes of installation, AppDynamics automatically detected key transactions such as publishing a map layer.

Mapping Layers as Business Transactions

Mapping Layers as Business Transactions

Taking this a step further, we looked at how AppDynamics can help a system administrator understand which parts of their service is accessed most and which components are the slowest (in this case average response times for publishing mapping datasets).

Individual Map Layer performance and access

Individual map layer performance and access

In the race to prove innocence, the challenge is to be able to determine whether any slow service calls were due to the end user or consumer of a service rather than the service itself — to understand if users are doing something you did not expect. For example, they could be pulling back too much data from the service (this applies to any system dealing with data).

In the case of mapping systems, AppDynamics can capture the bounding box representing the coordinates used to outline and return an area of interest, if the area of interest retrieved is too large and that leads to a slow transaction, then it’s likely a system administrator is allowing users to pull back too much data in one go:

Capturing HTTP parameters for a map image request

Capturing HTTP parameters for a map image request

If an administrator does see a slow down in the service they can drill into the service to isolate where performance problems occur. Problems in this type of application can manifest themselves in coordinate conversion, vector data reading (roads, rivers & buildings), database queries, grid handlers (reading image files such as satellite and aerial images), writing to an image file: 

Method level breakdown for publishing a map layer

Method level breakdown for publishing a map layer

System administrators and owners can improve their application or data processing times by identifying bottlenecks. The following example shows how an address lookup service was sped up from processing 60 calls per minute taking a second each, to more than 700 calls per minute taking less than 50ms.

Geocode Response Time

Capturing the SQL for an Address Search ("Reverse Geocode")

Capturing the SQL for an address search (“Reverse Geocode”)

AppDynamics for Databases identified the cause of the slowness as the spatial query used to query the postcode, without an index it went from querying 1,684,930 rows…

Postcode query with a Full Table Scan

Postcode query with a Full Table Scan

To just 5,976: -

The same postcode query using an index

The same postcode query using an index

Tuning this query led to a tenfold performance improvement!

“Software is eating the world” [Marc Andreessen] and ensuring your application or service is performing is key. This message applies across all sectors, not just banking and ecommerce, “typical” APM customers, but everyone who offers a service or process. Our customers & consumers expect Google-like response times for all online services and we need to deliver.

Using AppDynamics, you can halve or better your data processing times, free up resources, achieve a faster time to market or execution and ensure your consumers in the wider world get that up to date map when they need it.

Take five minutes to get complete visibility into the performance of your production applications with AppDynamics Pro today.

The post Improving GIS performance with AppDynamics written by appeared first on Application Performance Monitoring Blog from AppDynamics.

Read the original blog entry...

More Stories By AppDynamics Blog

In high-production environments where release cycles are measured in hours or minutes — not days or weeks — there's little room for mistakes and no room for confusion. Everyone has to understand what's happening, in real time, and have the means to do whatever is necessary to keep applications up and running optimally.

DevOps is a high-stakes world, but done well, it delivers the agility and performance to significantly impact business competitiveness.

IoT & Smart Cities Stories
The deluge of IoT sensor data collected from connected devices and the powerful AI required to make that data actionable are giving rise to a hybrid ecosystem in which cloud, on-prem and edge processes become interweaved. Attendees will learn how emerging composable infrastructure solutions deliver the adaptive architecture needed to manage this new data reality. Machine learning algorithms can better anticipate data storms and automate resources to support surges, including fully scalable GPU-c...
Machine learning has taken residence at our cities' cores and now we can finally have "smart cities." Cities are a collection of buildings made to provide the structure and safety necessary for people to function, create and survive. Buildings are a pool of ever-changing performance data from large automated systems such as heating and cooling to the people that live and work within them. Through machine learning, buildings can optimize performance, reduce costs, and improve occupant comfort by ...
The explosion of new web/cloud/IoT-based applications and the data they generate are transforming our world right before our eyes. In this rush to adopt these new technologies, organizations are often ignoring fundamental questions concerning who owns the data and failing to ask for permission to conduct invasive surveillance of their customers. Organizations that are not transparent about how their systems gather data telemetry without offering shared data ownership risk product rejection, regu...
René Bostic is the Technical VP of the IBM Cloud Unit in North America. Enjoying her career with IBM during the modern millennial technological era, she is an expert in cloud computing, DevOps and emerging cloud technologies such as Blockchain. Her strengths and core competencies include a proven record of accomplishments in consensus building at all levels to assess, plan, and implement enterprise and cloud computing solutions. René is a member of the Society of Women Engineers (SWE) and a m...
Poor data quality and analytics drive down business value. In fact, Gartner estimated that the average financial impact of poor data quality on organizations is $9.7 million per year. But bad data is much more than a cost center. By eroding trust in information, analytics and the business decisions based on these, it is a serious impediment to digital transformation.
Digital Transformation: Preparing Cloud & IoT Security for the Age of Artificial Intelligence. As automation and artificial intelligence (AI) power solution development and delivery, many businesses need to build backend cloud capabilities. Well-poised organizations, marketing smart devices with AI and BlockChain capabilities prepare to refine compliance and regulatory capabilities in 2018. Volumes of health, financial, technical and privacy data, along with tightening compliance requirements by...
Predicting the future has never been more challenging - not because of the lack of data but because of the flood of ungoverned and risk laden information. Microsoft states that 2.5 exabytes of data are created every day. Expectations and reliance on data are being pushed to the limits, as demands around hybrid options continue to grow.
Digital Transformation and Disruption, Amazon Style - What You Can Learn. Chris Kocher is a co-founder of Grey Heron, a management and strategic marketing consulting firm. He has 25+ years in both strategic and hands-on operating experience helping executives and investors build revenues and shareholder value. He has consulted with over 130 companies on innovating with new business models, product strategies and monetization. Chris has held management positions at HP and Symantec in addition to ...
Enterprises have taken advantage of IoT to achieve important revenue and cost advantages. What is less apparent is how incumbent enterprises operating at scale have, following success with IoT, built analytic, operations management and software development capabilities - ranging from autonomous vehicles to manageable robotics installations. They have embraced these capabilities as if they were Silicon Valley startups.
As IoT continues to increase momentum, so does the associated risk. Secure Device Lifecycle Management (DLM) is ranked as one of the most important technology areas of IoT. Driving this trend is the realization that secure support for IoT devices provides companies the ability to deliver high-quality, reliable, secure offerings faster, create new revenue streams, and reduce support costs, all while building a competitive advantage in their markets. In this session, we will use customer use cases...