kikita & Maps

GIS,spatial and artificial intellegence learning and share

An image service of ArcGIS Server provides access to raster data through a web service. ArcGIS Image Server is required to share a mosaic dataset. This testing reporting indicates workflows and issues of sharing Image Service which is basing on a mosaic dataset referencing the raster dataset on a cloud storage.

Local Testing Environment

  • Latest Esri Technologies
    • ArcMap 10.6.1 ( both final release version and early adopter version)
    • ArcGIS Enterprise 10.6.1 with ArcGIS Image Server 10.6.1
  • Windows 10 Pro 64 bit English Version

Huawei Cloud

Steps

  1. Create Huawei Cloud connection file (√)

  2. Add raster to a local mosaic dataset referencing the connection file (√)

  3. Share the mosaic dataset as an image service (√)

  4. Consume this service in various client browsers (√)

Alibaba Cloud

Steps

  1. Create Huawei Cloud connection file (√)
  2. Add raster to a local mosaic dataset referencing the connection file (√)
  3. Share the mosaic dataset as an image service (√)
  4. Consume this service in various client browsers (×)

Explanation

Read more »

For the purpose of assisting and sharing , I will try to write in English.

The new tool Create Cloud Storage Connection File is first introduced to ArcGIS Desktop 10.6.1 which is the latest version until now. The Create Cloud Storage Connection File tool creates a connection file (***.acs**) for ArcGIS-supported cloud storage. It allows existing raster geoprocessing tools to write cloud raster format (CRF) datasets into the cloud storage bucket or read raster datasets (not limited to CRF) stored in the cloud storage as input.

This is an amazing new feature of ArcGIS Desktop, including ArcMap 10.6.1 and ArcGIS Pro 2.2. The stuff from one of our partners and I are doing some researching on the new capability. This article is something about the testing report, which indicates the feasibility of various workflows for adding raster datasets to mosaic dataset.


Local Testing Environment

  • Latest Esri Technologies

    • ArcMap 10.6.1

    • ArcGIS Pro 2.2.1

  • Windows 10 Pro 64 bit English Version



Huawei Cloud

ArcMap

Read more »

为什么会有这个需求和想法呢?还是源自于 局部更新矢量切片 的想法,当我们遭遇一个海量矢量数据的矢量切片创建更新任务时,希望尽可能少且尽可能准确地更新受影响的bundle,而不是全局,那么了解bundle的范围是十分必要的。在写上一篇《紧凑型缓存技术小结》的时候,目的在于在其基础之上探索矢量切片的bundle。

为了确保单个bundle文件的矢量切片数据的完整性,每级每次至少需要更新一个bundle文件。当矢量切片的数据量不显著的时候,可能每级本身也就一个或几个bundle,那局部更新体现不出它的优势; 当某些等级(例如LOD比较大的级别)矢量切片bundle非常多的时候,如果更新的范围只影响了其中一个,或者几个文件时,局部更新是有必要的。

结论

参照栅格切片的 帮助文档 中明确说明的,  “A bundle contains up to 16,384 tiles. ” 那就是 128 × 128 的关系,照搬到矢量切片是否适用呢? 通过验证,确实如此。

先上结论,第N级的矢量切片的bundle范围刚好是第N-7级的切片范围,如下图,红线是 level 6 的切片索引,刚好可以作为level 13 的bundle范围:

示例

为了做验证和测试,我用了美国大选的区块数据做实验,这个面数据包含182895条记录,节点较多,很适合做矢量切片。假设,需要更新的切片范围仅仅是密歇根湖的一角:

PS:上图是完全由 ArcGIS Pro 制作导出的,使用到了 Layout , Extent Indicator; 从制图角度来说,ArcGIS Pro 是个非常好的桌面端应用,可以继承和超越ArcMap。

Read more »

Tiling Scheme

每个缓存服务的切片目录中都会包含一个 Conf.xml,也是就是tile scheme 文件了。

这个文件包含了很多有关切片设置的信息:

  • Spatial reference information
  • Tile origin
  • Tile width/height
  • DPI
  • LODs (Levels of detail - scales)
  • Tile Image format
  • Compression quality
  • Antialiasing settings
  • Storage method

Version Issue

紧凑型缓存的存储格式为**.bundle** 。但有时我们会看到缓存目录中包含**.bundlx** 这样的文件,这说明这些缓存是ArcGIS 10.2.2 或以下版本创建的。从 ArcGIS 10.3 开始,紧凑型缓存做了些改进, .bundlx(tile index information) 文件被包含到了 .bundle 文件中 ,从而进一步降低了文件的数量。

你可以在缓存服务的tiling scheme “Conf.xml“ 中查看确认:

10.3 or later (Compact cache V1)

1
2
3
4
<CacheStorageInfo xsi:type='typens:CacheStorageInfo'>
<StorageFormat>esriMapCacheStorageModeCompact</StorageFormat>
<PacketSize>128</PacketSize>
</CacheStorageInfo>

10.2.2 or former (Compact cache V2)

Read more »

这是一篇日记。

最近,终于把年初我和马老师的脑洞项目 局部更新矢量切片 放在了大型程序员G友交流社区,开始出 release了……

在项目的开始,这个需求来自于用户的真实需求,如下是正经的背景信息:

矢量切片是Esri在新版本中推出的一项亮点新技术,通过ArcGIS Pro中的Create Vector Tile Service工具生成切片包,再通过Portal发布成 Vector Tile Service,在前端支持各种应用,采用统一的接口进行调用,实现了一体化的平台应用解决方案。矢量切片技术充分利用GPU的渲染能力,以全新方式在设备、浏览器中以矢量的方式展现缓存地图。这项技术解决了传统基于栅格缓存切片展现地图存在的诸多问题:如设备分辨率对地图渲染效果的影响,缓存创建后无法再动态更改样式,生成缓存切片的周期过长,对硬件的需求过大等等。

众所周知,矢量切片包的生成速度相对于传统的栅格切片包具有指数极的性能提升,这也是体现矢量切片优越性的一个重要方面。对于一个常规数据量在100MB-10GB级的数据,全部生成一次矢量切片包的速度在分钟级。可能正是因为这个原因,截至目前最新版本(ArcGIS Pro 2.2),Esri仍未提供局部更新矢量切片包的功能。虽然矢量切片生成速度很快,但是到了TB级别的大数据来说,生成一次完整的切片包也是需要相当长的时间的,如果仅是更新了局部的小范围数据,那基于更新范围自动化更新矢量切片就是一个非常有实际应用价值的需求。 正是在这样的背景下,我们发起了创建自动化局部更新矢量切片工具的项目。

—— @马老师

既然是两个人的项目,又会涉及很多版本的更新同步问题,Why not Github

我们一共设计了5个Python工具,用于扩展ArcGIS Pro的功能,分别实现原始矢量切片包的创建,局部矢量切片包的创建,以及矢量切片包的更新,矢量切片服务的更新,托管在阿里云平台的矢量切片服务的更新。

截止到今天的版本 Partially Upate ArcGIS Vector Tiles Toolbox 1.1.0

Mark:

后续还有很多有待优化的关键点:

  • Bundle空间范围的精确计算
  • LOD值的自动计算
Read more »
0%