Take the 2-minute tour ×
Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

I am trying to learn more about Mosaic Datasets and specifically how they interact with ArcSDE (SQL Server 2008). I read in How raster data is stored in a geodatabase that "...In the case of the mosaic dataset, this table remains empty, since the raster data for a mosaic dataset is not stored in the DBMS; instead, the raster data is referenced from an image file..."

Presumably this means that if I perform the Mosaic Dataset -> Add Rasters operation using files on the same machine as SDE then a file location is inserted into the murky depths of SDE. However, what if I connect to SDE remotely and Add Rasters from a different machine? I can only assume that SDE has a default directory to which the files are copied but I can't find anything about it, even in Mosaic datasets in a geodatabase in SQL Server.

I did find a table named <schema>.AMD_<mosaic name>_CAT which includes a field Uri ("A serialized Uniform Resource Identifier (URI) that is used to re-create the raster dataset") but it means nothing to me.

The test server in this case just has a single partition, but what if I wanted SDE to store mosaic dataset images on a separate drive for performance? How would I go about changing the default location, or even finding out what it is?

Any input very much appreciated.

share|improve this question
    
Your title question says "imported" images...do you mean "added" instead, as in added to the Mosaic Dataset via the Add Rasters to Mosaic Dataset tool? –  Chad Cooper Jan 25 '12 at 3:31
add comment

2 Answers

up vote 2 down vote accepted
+50

Brad has this one right on. I'll try to clarify though. A Mosaic Datasets does not store imagery in the geodatabase, it simply provides pointers to the imagery and consists of:

  • A catalog that provides the source of the pixels and footprints of the rasters
  • A feature class that defines the boundary
  • A set of mosaicking rules that are used to dynamically mosaic the rasters
  • A set of properties used to control the mosaicking and any image extraction
  • A table for logging during data loading and other operations
  • Optionally, a seamline feature class for seamline mosaicking
  • Optionally, a color correction table that defines the color mapping for each raster in the raster catalog

From the help:

When you add raster data to a mosaic dataset, a pointer to the location of the data is stored within the mosaic dataset. The actual raster data is not transferred to or stored within the mosaic dataset.

In other words, the imagery does not get put into your geodatabase, it lives where ever you say, still in its native format, and gets referenced by the Mosaic Dataset at that location.

If you want to have imagery stored in it's native format (let's say you have some .img files) on a server or share that is separate from your SDE server, you will have to setup a network share for that directory and make it available to SDE (not sure exactly how to set that up, might require database-level permissions for user accounts to be able to access the share). As far as a "default location" for Mosaic Dataset rasters, I don't think there is one. When you create the Mosaic Dataset, it's just empty at that point. You have to add the rasters using the Add Rasters to Mosaic Dataset tool (which it sounds like you have used that already). This explicitly "tells" the Mosaic Dataset where the rasters live and where it can find them. If that path gets broken or changed, your rasters will no longer display and you will have to fix the path(s) with the Repair Raster Catalog Paths tool.

share|improve this answer
    
so, basically, if I add rasters to a mosaic from a non-shared location, SDE will quite happily let me do this and then just break when someone tries to view them? –  tomfumb Jan 25 '12 at 16:57
    
@tomfumb - That's one thing I'm not sure about, and I don't have an environment to test that in, unfortunately. –  Chad Cooper Jan 25 '12 at 17:53
add comment

I think by design that is the beauty of mosaic datasets.
Load all your imagery and manage many aspects of them
Including foootprints, searching, Date series, etc.
The dataset doesn't care from where the data comes.

So, (If I am correct) you need to load imagery to sde or the location you plan to serve it from.
See this esri help Creating a mosaic dataset

Mosaic datasets do not manage the raster data, meaning they do not move or alter the source files. They contain links to the source data.

If you want to serve your imagery from sde you need to load the data to sde.
See this esri help for information on the tablespace requirements and recommendations. Loading Larger Raster Datasets into SDE

There are a lot of locations in the help to find info on these subjects. List follows.
I believe raster catalogs are a bit redundant (with mosaic datasets) but here is that link
RasterToGeoDatabase Tool
Adding data to Mosaic Datasets
Importing or Loading
Creating a Mosaic Dataset (more)

share|improve this answer
    
OK thanks, but now I'm confused. I added rasters to a mosaic on a remote server using local ArcCatalog. The files are not shared so SDE has no way of referencing them from source. Surely in this scenario either 1) SDE would reject the rasters on the basis that they cannot be accessed, or 2) SDE would create a local copy of the rasters. Option 2 seems the most likely as option 1 didn't happen –  tomfumb Jan 5 '12 at 17:01
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.