1

I have an oracle database namely xe which I have spatially enabled. using the Create Enterprise Geodatabase geoprocessing tool.

The application I am going to implement has an already created database/schema containing entitities which have gps data. For example it contains stations that I Have to project on the map.

I want my the application to use, through the arcSDE, this non spatial information, as well as spatial information, layers, geometries, etc.

I have also created an sde and one schema-user (owner of a geodatabase).

How will I integrate these two schemas? should I create my non spatial enterprise schema inside of the schema-user schema and connect them with a sort of foreign keys? Or use the CREATE DATABASE LINK, CREATE MATERIALIZED VIEW, and CREATE VIEW privildges provided to the schema-user?

I am trying to understand the mentality behind the use of a geodatabase in accordance with a non spatial database.

  • Please edit the question to specify which versions of ArcGIS and Oracle you are using – Vince Oct 2 '14 at 22:57
2

I think your proposed solution may be too complicated. I don't think there really is any such thing as a "non-spatial database". In my view, there's just data, some of which happens to have geometry, and some of which doesn't happen to have direct relationship to geometry (in the end, most data is at least somewhat spatial).

Best practice for integration is to actually integrate the data. This means doing a full database design that lets geometry columns fall where they logically belong, avoiding trivial joins to parallel tables for the sole purpose keeping the data apart.

The principal issue with doing cross-database (and even cross-user) joins is that they're slow. I had the misfortune to have an application where we needed to join a million rows across instances and the performance was hideous. The impact is not as great with small tables, but it is still measurable.

  • So you would suggest creating a schema-user(owner of a geodatabase) who would have tables relative to geometry, layers etc. In turn integrate this schema tables with my application tables, in a spatial geodatabase.?? – Smalis Oct 3 '14 at 6:59
  • With simple words..Supposing I have a database about train stations. How would this database could be used from arcGis so as to recognise that the the train stations are spatial features and use their x-y so as to project it on a map. – Smalis Oct 3 '14 at 7:45
  • Your question indicated that you already have tables, but these comments put this in doubt. Actually implementing a database design isn't something that can be done in comments. If the tables have geometries, rendering them is trivial. – Vince Oct 3 '14 at 10:26
  • I know that a database design cannot be done with comments. However I am trying to understand the general approach when creating an application that does a plethora of functionalities irrelevant to arcgis and projecting stuff. on a map. Should I keep my information in different schemas? or I have to create a geodatabase where everything should be put inside this. Also how could I say that an element of a table which has X and Y coords is a Point geomery for example. – Smalis Oct 3 '14 at 11:48
  • You can place tables under different ownership if the design indicates this makes good business sense. A table with X and Y columns doesn't have point geometry unless it has a geometry column as well. ArcGIS can render an event table, but it's not the most efficient protocol (no spatial index). – Vince Oct 3 '14 at 13:08
0

You can connect to Non-Spatial data in an Oracle or other Database Type by using an OLE DB Connection. This functionality is no longer visible on the ArcCatalogue menu without turning it on.

Instructions to turn it on can be found here: http://support.esri.com/de/knowledgebase/techarticles/detail/39961

-1

Web Services...

SOA - Service Oriented Architecture

http://en.wikipedia.org/wiki/Service-oriented_architecture

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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