{"id":179211,"date":"2012-07-16T23:33:59","date_gmt":"2012-07-17T06:33:59","guid":{"rendered":"http:\/\/www.esri.com\/arcgis-blog\/?post_type=blog&#038;p=179211"},"modified":"2018-12-18T10:48:28","modified_gmt":"2018-12-18T18:48:28","slug":"integrate-big-data-with-the-arcgis-system-using-a-plug-in-data-source","status":"publish","type":"blog","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/data-management\/integrate-big-data-with-the-arcgis-system-using-a-plug-in-data-source","title":{"rendered":"Integrate big data with the ArcGIS System using a plug-in data source"},"author":3971,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":{"_acf_changed":false,"_searchwp_excluded":""},"categories":[23851],"tags":[77141,77131],"industry":[],"product":[36991,36601],"class_list":["post-179211","blog","type-blog","status-publish","format-standard","hentry","category-data-management","tag-mongodb","tag-nosql","product-arcgis-desktop","product-developers"],"acf":{"short_description":"In a recent blog post we released a code sample for integrating MongoDB data with the ArcGIS system.","flexible_content":[{"acf_fc_layout":"content","content":"<p>In a\u00a0<a href=\"http:\/\/blogs.esri.com\/esri\/arcgis\/2012\/05\/02\/mongodb-example-code-for-adding-a-nosql-plug-in-data-source\/\">recent blog post<\/a>\u00a0we released a code sample for integrating MongoDB data with the ArcGIS system. This blog entry will help you use the code sample with an existing Mongo DB database in three steps: downloading and compiling the code sample, pre-processing your data, and preparing your MongoDB database for use with ArcGIS.<\/p>\n<p><span id=\"more-17614\"><\/span>You will need the following:<\/p>\n<ul>\n<li>Familiarity with\u00a0<a href=\"http:\/\/resources.arcgis.com\/en\/help\/arcobjects-net\/conceptualhelp\/index.html#\/\/000100000003000000\">plug-in data sources in ArcGIS<\/a><\/li>\n<li>Familiarity with\u00a0<a href=\"http:\/\/www.mongodb.org\/display\/DOCS\/Object+IDs\">MongoDB<\/a><\/li>\n<li>Visual Studio 2010<\/li>\n<li>ArcGIS Desktop<\/li>\n<li>Geographic data stored in MongoDB that you wish to view in ArcGIS<\/li>\n<\/ul>\n<p><strong>Getting the Code<\/strong><\/p>\n<p>Download the\u00a0<a href=\"http:\/\/www.arcgis.com\/home\/item.html?id=25d12436c73a43c98c711826f9f662e4\" target=\"_blank\" rel=\"noopener\">updated<\/a>\u00a0code sample, now\u00a0compile. You might need to repair some of the references in the projects. After compiling, use the\u00a0<strong>esriRegasm<\/strong>\u00a0utility to register the\u00a0<strong>MongoDBPlugIn<\/strong>\u00a0and\u00a0<strong>MongoDBCommands<\/strong>\u00a0assemblies with ArcGIS Desktop.<\/p>\n<p>Open ArcMap, right click on the toolbar, and choose the\u00a0<strong>Customize<\/strong>\u00a0option. Browse through the commands until you find the MongoDB related buttons, and add them to a toolbar of your liking. At this point, you have to prepare your MongoDB data for display.<\/p>\n<p>Included in the code sample package is a sample connection file. You should customize its contents to reference your MongoDB database. Open it in a text editor and set your IP address and database name:<\/p>\n<p>mongodb:[IPADDRESS]?safe=true,[DATABASE NAME]<\/p>\n<p><strong>Preparing the Data<\/strong><\/p>\n<p>MongoDB and ArcGIS have significant differences that are worth noting before proceeding:<\/p>\n<table border=\"1\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td valign=\"top\" width=\"319\"><strong>MongoDB Characteristics<\/strong><\/td>\n<td valign=\"top\" width=\"319\"><strong>ArcGIS Characteristics<\/strong><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"319\">Documents support arbitrarily deep nestings of key-value pairs.<\/td>\n<td valign=\"top\" width=\"319\">Rows must consist of a flat collection of values matching a defined list of fields.<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"319\">Cursors return heterogeneous documents with the collection keys varying arbitrarily.<\/td>\n<td valign=\"top\" width=\"319\">Cursors return rows conforming to the same set of fields.<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"319\">Documents have a unique object id, which is a\u00a0<a href=\"http:\/\/www.mongodb.org\/display\/DOCS\/Object+IDs\">12 byte binary value<\/a>.<\/td>\n<td valign=\"top\" width=\"319\">Rows have a unique object id, which is a 32 bit integer.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>While MongoDB is schema-less, ArcGIS assumes each dataset has a consistent, flat schema. The ArcObjects cursor model and ArcGIS plug-in dataset architecture requires that datasets return a cursor to sets of features with a fixed collection of fields. Unstructured or semi-structured MongoDB documents shatter this assumption. To bring MongoDB data into ArcGIS, it must first be standardized and flattened.<\/p>\n<p>One approach is to extract some or all of the data into a new collection, performing the necessary transformations along the way. Noting the mismatch between object id value types, be sure to explicitly set the _id attribute in the result document to unique 32 bit integers.\u00a0<strong>Be sure to record the exact set of attributes, their names, and types during this stage, as you will need them later.<\/strong>\u00a0Finally, each document\u2019s points need to be stored in a manner that the code sample can read. Each point should be stored in [X,Y] order as a bson array &lt;add link?&gt; under the key \u201cshape.\u201d \u00a0Note that we have only tested datasets using the WGS 84 geographic coordinate system. Adapting the plug-in data source code sample to handle other projections would require a change to the\u00a0<strong>MongoDBWorkspace CreateDataset<\/strong>\u00a0method to set the spatial index\u2019s minimum and maximum X and Y values.<\/p>\n<p><strong>Dataset Metadata<\/strong><\/p>\n<p>All plug-in dataset implementations need to be able to supply a set of fields and the geographic extent of the dataset on demand. In this code sample, we create a collection known as GDB_ITEMS that contains metadata documents. Please refer to the\u00a0<strong>CatalogDataset.cs<\/strong>\u00a0file for the relevant implementation. The code sample also includes functionality to create this metadata as part of a tool for loading data from a geodatabase feature class into MongoDB. See the\u00a0<strong>MongoDataLoadCmd.cs<\/strong>\u00a0and\u00a0<strong>DataLoadUtilities.cs<\/strong>\u00a0files for implementation\u00a0instructions.<\/p>\n<p>The data load tool is still useful to the current goal of bringing MongoDB data into ArcGIS. One way to generate GDB_ITEMS collection and its contents is to create a dummy feature class in a geodatabase and then to import it into MongoDB using the provided tools.\u00a0 The dummy feature class needs to be a point feature class\u2019s, have a valid geographic extent, and a field set matching those identified previously. Be certain to use a compatible geographic coordinate system when setting the feature class\u2019s spatial reference. Empty feature classes have undefined geographic extents, while we need a feature class with a valid extent that covers the full range of values we have stored in MongoDB. The easiest way to remedy this is to insert points at the upper left and lower right corner of the area your MongoDB data occupies; and then delete the points. The feature class will now have a valid geographic extent.<\/p>\n<p>Once the dummy feature class has been created and its extent primed, open ArcMap and use the data loading tool included in the coding sample to import it into your MongoDB database. Verify that the GDB_ITEMS collection exists and now contains a single metadata document. Additionally a collection will now exist with an identical name to the dummy feature class. Drop this collection and replace it with your actual data by renaming your simplified and flattened collection to match the dummy feature class. Be certain to\u00a0<a href=\"http:\/\/www.mongodb.org\/display\/DOCS\/Geospatial+Indexing#GeospatialIndexing-CreatingtheIndex\">ensure a spatial index<\/a>\u00a0on your spatial field using the MongoDB command line.<\/p>\n<p><strong>Add the Data to a Map<\/strong><\/p>\n<p>Now the data can be used in ArcGIS. In ArcMap use the\u00a0<strong>Add MongoDB Data<\/strong>\u00a0button to navigate to your database and select your collection.\u00a0 You should be able to display data both in the map and in the attribute table. Symbolization and labeling should work normally. Additionally, you should be able to use your layer as a source for some geoprocessing tasks.<\/p>\n<p>Thomas Breed, our resident MongoDB\/NoSQL \u00a0ninja who supplied the info for this post, talked about Plug-in data sources and MongoDB in the Effective Geodatabase Programming session at this year\u2019s Developer Conference. You can find a video of that session\u00a0<a href=\"http:\/\/video.esri.com\/watch\/1219\/effective-geodatabase-programming\" target=\"_blank\" rel=\"noopener\">HERE<\/a>, fast forward to about the 33:30 mark for the spiel on Plug-in data sources.<\/p>\n"}],"authors":[{"ID":3971,"user_firstname":"Brent","user_lastname":"Pierce","nickname":"brentardenpierce","user_nicename":"brentardenpierce","display_name":"Brent Pierce","user_email":"bpierce@esri.com","user_url":"","user_registered":"2018-03-02 00:15:36","user_description":"Brent is a Product Engineering Lead on the ArcGIS Flight team, focused on meeting the needs of the ever expanding mobile GIS community. When he is not nerding out with drones and mobile technology he can usually be found on a pair of skis or a mountain bike depending on the amount of snow on the ground.","user_avatar":"<img alt='' src='https:\/\/secure.gravatar.com\/avatar\/8a80bfd164202461376948d1020034f21d202312f0fba8f7e904a128e29ba421?s=96&#038;d=blank&#038;r=g' srcset='https:\/\/secure.gravatar.com\/avatar\/8a80bfd164202461376948d1020034f21d202312f0fba8f7e904a128e29ba421?s=192&#038;d=blank&#038;r=g 2x' class='avatar avatar-96 photo' height='96' width='96' loading='lazy' decoding='async'\/>"}],"related_articles":"","card_image":false,"wide_image":false},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.9 (Yoast SEO v25.9) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Integrate big data with the ArcGIS System using a plug-in data source<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/data-management\/integrate-big-data-with-the-arcgis-system-using-a-plug-in-data-source\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Integrate big data with the ArcGIS System using a plug-in data source\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/data-management\/integrate-big-data-with-the-arcgis-system-using-a-plug-in-data-source\" \/>\n<meta property=\"og:site_name\" content=\"ArcGIS Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/esrigis\/\" \/>\n<meta property=\"article:modified_time\" content=\"2018-12-18T18:48:28+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@ESRI\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":[\"Article\",\"BlogPosting\"],\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/data-management\/integrate-big-data-with-the-arcgis-system-using-a-plug-in-data-source#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/data-management\/integrate-big-data-with-the-arcgis-system-using-a-plug-in-data-source\"},\"author\":{\"name\":\"Brent Pierce\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/768c204be6aabc306f484e93645aecf5\"},\"headline\":\"Integrate big data with the ArcGIS System using a plug-in data source\",\"datePublished\":\"2012-07-17T06:33:59+00:00\",\"dateModified\":\"2018-12-18T18:48:28+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/data-management\/integrate-big-data-with-the-arcgis-system-using-a-plug-in-data-source\"},\"wordCount\":12,\"publisher\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\"},\"keywords\":[\"MongoDB\",\"noSQL\"],\"articleSection\":[\"Data Management\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/data-management\/integrate-big-data-with-the-arcgis-system-using-a-plug-in-data-source\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/data-management\/integrate-big-data-with-the-arcgis-system-using-a-plug-in-data-source\",\"name\":\"Integrate big data with the ArcGIS System using a plug-in data source\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#website\"},\"datePublished\":\"2012-07-17T06:33:59+00:00\",\"dateModified\":\"2018-12-18T18:48:28+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/data-management\/integrate-big-data-with-the-arcgis-system-using-a-plug-in-data-source#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/data-management\/integrate-big-data-with-the-arcgis-system-using-a-plug-in-data-source\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/data-management\/integrate-big-data-with-the-arcgis-system-using-a-plug-in-data-source#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.esri.com\/arcgis-blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Integrate big data with the ArcGIS System using a plug-in data source\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#website\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/\",\"name\":\"ArcGIS Blog\",\"description\":\"Get insider info from Esri product teams\",\"publisher\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.esri.com\/arcgis-blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\",\"name\":\"Esri\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png\",\"contentUrl\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png\",\"width\":400,\"height\":400,\"caption\":\"Esri\"},\"image\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/esrigis\/\",\"https:\/\/x.com\/ESRI\",\"https:\/\/www.linkedin.com\/company\/5311\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/768c204be6aabc306f484e93645aecf5\",\"name\":\"Brent Pierce\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/8a80bfd164202461376948d1020034f21d202312f0fba8f7e904a128e29ba421?s=96&d=blank&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/8a80bfd164202461376948d1020034f21d202312f0fba8f7e904a128e29ba421?s=96&d=blank&r=g\",\"caption\":\"Brent Pierce\"},\"description\":\"Brent is a Product Engineering Lead on the ArcGIS Flight team, focused on meeting the needs of the ever expanding mobile GIS community. When he is not nerding out with drones and mobile technology he can usually be found on a pair of skis or a mountain bike depending on the amount of snow on the ground.\",\"sameAs\":[\"https:\/\/www.linkedin.com\/in\/brent-a-pierce\/\"],\"gender\":\"male\",\"knowsAbout\":[\"Drones\",\"Mobile Applications\"],\"knowsLanguage\":[\"English\"],\"jobTitle\":\"Senior Principal Product Engineer, Product Engineering Lead\",\"worksFor\":\"Esri\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/author\/brentardenpierce\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Integrate big data with the ArcGIS System using a plug-in data source","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/data-management\/integrate-big-data-with-the-arcgis-system-using-a-plug-in-data-source","og_locale":"en_US","og_type":"article","og_title":"Integrate big data with the ArcGIS System using a plug-in data source","og_url":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/data-management\/integrate-big-data-with-the-arcgis-system-using-a-plug-in-data-source","og_site_name":"ArcGIS Blog","article_publisher":"https:\/\/www.facebook.com\/esrigis\/","article_modified_time":"2018-12-18T18:48:28+00:00","twitter_card":"summary_large_image","twitter_site":"@ESRI","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":["Article","BlogPosting"],"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/data-management\/integrate-big-data-with-the-arcgis-system-using-a-plug-in-data-source#article","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/data-management\/integrate-big-data-with-the-arcgis-system-using-a-plug-in-data-source"},"author":{"name":"Brent Pierce","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/768c204be6aabc306f484e93645aecf5"},"headline":"Integrate big data with the ArcGIS System using a plug-in data source","datePublished":"2012-07-17T06:33:59+00:00","dateModified":"2018-12-18T18:48:28+00:00","mainEntityOfPage":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/data-management\/integrate-big-data-with-the-arcgis-system-using-a-plug-in-data-source"},"wordCount":12,"publisher":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization"},"keywords":["MongoDB","noSQL"],"articleSection":["Data Management"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/data-management\/integrate-big-data-with-the-arcgis-system-using-a-plug-in-data-source","url":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/data-management\/integrate-big-data-with-the-arcgis-system-using-a-plug-in-data-source","name":"Integrate big data with the ArcGIS System using a plug-in data source","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#website"},"datePublished":"2012-07-17T06:33:59+00:00","dateModified":"2018-12-18T18:48:28+00:00","breadcrumb":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/data-management\/integrate-big-data-with-the-arcgis-system-using-a-plug-in-data-source#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/data-management\/integrate-big-data-with-the-arcgis-system-using-a-plug-in-data-source"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/data-management\/integrate-big-data-with-the-arcgis-system-using-a-plug-in-data-source#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.esri.com\/arcgis-blog\/"},{"@type":"ListItem","position":2,"name":"Integrate big data with the ArcGIS System using a plug-in data source"}]},{"@type":"WebSite","@id":"https:\/\/www.esri.com\/arcgis-blog\/#website","url":"https:\/\/www.esri.com\/arcgis-blog\/","name":"ArcGIS Blog","description":"Get insider info from Esri product teams","publisher":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.esri.com\/arcgis-blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization","name":"Esri","url":"https:\/\/www.esri.com\/arcgis-blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png","contentUrl":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png","width":400,"height":400,"caption":"Esri"},"image":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/esrigis\/","https:\/\/x.com\/ESRI","https:\/\/www.linkedin.com\/company\/5311\/"]},{"@type":"Person","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/768c204be6aabc306f484e93645aecf5","name":"Brent Pierce","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/8a80bfd164202461376948d1020034f21d202312f0fba8f7e904a128e29ba421?s=96&d=blank&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/8a80bfd164202461376948d1020034f21d202312f0fba8f7e904a128e29ba421?s=96&d=blank&r=g","caption":"Brent Pierce"},"description":"Brent is a Product Engineering Lead on the ArcGIS Flight team, focused on meeting the needs of the ever expanding mobile GIS community. When he is not nerding out with drones and mobile technology he can usually be found on a pair of skis or a mountain bike depending on the amount of snow on the ground.","sameAs":["https:\/\/www.linkedin.com\/in\/brent-a-pierce\/"],"gender":"male","knowsAbout":["Drones","Mobile Applications"],"knowsLanguage":["English"],"jobTitle":"Senior Principal Product Engineer, Product Engineering Lead","worksFor":"Esri","url":"https:\/\/www.esri.com\/arcgis-blog\/author\/brentardenpierce"}]}},"text_date":"July 16, 2012","author_name":"Brent Pierce","author_page":"https:\/\/www.esri.com\/arcgis-blog\/author\/brentardenpierce","custom_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/08\/Newsroom-Keyart-Wide-1920-x-1080.jpg","primary_product":"ArcMap","tag_data":[{"term_id":77141,"name":"MongoDB","slug":"mongodb","term_group":0,"term_taxonomy_id":77141,"taxonomy":"post_tag","description":"","parent":0,"count":2,"filter":"raw"},{"term_id":77131,"name":"noSQL","slug":"nosql","term_group":0,"term_taxonomy_id":77131,"taxonomy":"post_tag","description":"","parent":0,"count":2,"filter":"raw"}],"category_data":[{"term_id":23851,"name":"Data Management","slug":"data-management","term_group":0,"term_taxonomy_id":23851,"taxonomy":"category","description":"","parent":0,"count":920,"filter":"raw"}],"product_data":[{"term_id":36991,"name":"ArcMap","slug":"arcgis-desktop","term_group":0,"term_taxonomy_id":36991,"taxonomy":"product","description":"","parent":36981,"count":325,"filter":"raw"},{"term_id":36601,"name":"Developers","slug":"developers","term_group":0,"term_taxonomy_id":36601,"taxonomy":"product","description":"","parent":0,"count":763,"filter":"raw"}],"primary_product_link":"https:\/\/www.esri.com\/arcgis-blog\/?s=#&products=arcgis-desktop","_links":{"self":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/179211","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog"}],"about":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/types\/blog"}],"author":[{"embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/users\/3971"}],"replies":[{"embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/comments?post=179211"}],"version-history":[{"count":0,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/179211\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/media?parent=179211"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/categories?post=179211"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/tags?post=179211"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/industry?post=179211"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/product?post=179211"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}