Read file geodatabase from a stream

2898
6
03-12-2016 03:13 AM
PederHusom
New Contributor

I can't seem to find a way to open a file geodatabase from a .Net Stream - is it possible in the current version? If not; is it on the roadmap?

I need this, and probably others to, to open a file geodatabase from things like Azure Blob.

My current solution, which I haven't tried yet, is to write the file to my WebApp local storage and open it from there. This is a hassle and I can't see why the SDK shouldn't be able to just take a Stream.

0 Kudos
6 Replies
MichaelBranscomb
Esri Frequent Contributor

Hi,

Are you specifically looking for support for the esri File Geodatabase format, or are you referring more generically to support for opening any esri file format, such as the mobile geodatabase (.geodatabase) from a stream?

Cheers

Mike

0 Kudos
PederHusom
New Contributor

Hi.

Generally it would be nice to be able to have support for passing in Stream instead of a string path, especially in Azure. There are sometimes easier to just keep things in-memory in Azure, and the solution at the moment feels very “clumsy”; write to file and then read it. Instead of just passing in a memory stream.

The File Geodatabase format was just an example as that is what we mostly use when sending map-data to “heaven”.

Regards,

Peder Husom

Powel

AlbertChu
New Contributor

I have the exact same scenario on azure.  Did the local storage work for you?

0 Kudos
dotMorten_esri
Esri Frequent Contributor

The runtime geodatabase format is based on SQLite, and will not support streams. You will be better off downloading it and opening it - believe me that'll be faster than doing a bunch of small reads to stream up to the cloud

0 Kudos
AlbertChu
New Contributor

Just to elaborate a bit more, we have a use case where file geodatabases (smallish) are being uploaded via our web application (azure website).  After the file is uploaded we would like to process information from the file (again inside the web application).  Initially we were thinking to save the file to a cloud storage service (azure blob) and then open it via a stream.

I believe this is a similar situation to the original post.

0 Kudos
SalieghAziz
New Contributor II

If you have access to an ArcGIS for Server, write an SOE to process the file and send the information back to your web app

0 Kudos