Tag Info

Hot answers tagged

19

If your dataset is added to and updated often, then INSERT, DELETE and UPDATE statements which cause the index to be rebuilt may slow the database down. For bulk inserts, such as loading the entire OSM dataset into a database, it may be quicker to drop the indices and create them again afterwards. If it is more efficient to ignore an index (for example ...


8

I see them as separate activities. Geocoding is the process of taking coded location information (such as addresses or grids) and turning it into explicit location information (X and Y coordinates, usually). Reverse geocoding is the opposite, taking XY data and locating the nearest address, grid, etc. Georeferencing is the process of taking a raster image ...


7

To easily understand these terms, let's use example of an online mapping service (say Google maps, Mapquest etc.) When you type an address or a placename in the searchbox and in return the map shows a marker at the place. The process of associating an address or a placename with coordinates on the map is called Geocoding. In a spatial database this is done ...


7

mapoholic, Generally speaking, there isn't a reason to do a spatial query without a spatial index unless you are dealing with really small tables. Still though you would use the ST_ which don't use an index but do have the && indexable short circuit box operators. the functions that start with _ST are not meant to be used by end users. The reason ...


6

What you are looking for is a Spatial-View, now the only major issue you will see here is that you need to be careful with the fields you are joining on. This is a pretty nice process, I use it all over the place where I have generalized my DB to talk with thin spatial data. sdetable -o create_view -T emp_region_view -t "employees,world.regions" -c ...


6

I think this is implied, but I would NOT use a spatial index for a query when I had a non-spatial index that I could use instead. For example, I have 2,113,450 points that span the United States loaded into a table. If I wanted to pull all of the points that were within the state of Alaska, I could either do a spatial query that used the GIST index on the ...


5

Oracle Spatial has functions in SDO_UTIL-package which you can use to export sdo_geometry as GML, WKT etc. in your select statements.


5

I realize this is an old thread, but I would start with this excellent pdf for the conceptual aspects: Getting Started with Oracle Spatial by Tim Armitage http://download.oracle.com/otndocs/products/spatial/pdf/au_melbourne06_start.pdf Then move onto the dev guide (11gR2 here, about 900 pages worth): Oracle® Spatial Developer's Guide 11g Release 2 (11.2) ...


4

There are various functions you can use to get the minimum bounding rectangle in Oracle Spatial: SDO_GEOM.SDO_MBR SDO_MIN_MBR_ORDINATE SDO_MAX_MBR_ORDINATE There are lots of examples here: http://www.spatialdbadvisor.com/oracle_spatial_tips_tricks/55/oracle-locator-vs-enterprise-licensing-the-sdogeom-package in section 2, which hopefully will help. It ...


4

The UNION ALL does not perform the same as what you want to achieve. Like the manual says, it is really an alternative to a combined mask. For example, the "+" in expression "MASK=INSIDE+COVEREDBY" stands for an inclusive OR, and so can be replaced by a UNION ALL, that also represents an inclusive OR. But you want to do something else: you want to find out ...


4

Based on the SQL present in your query, you may want to change the spatial function you're using. In the past, the SDO_TUNE.EXTENT_OF('TABLE_NAME', 'SPATIAL_COLUMN') has given us better performance and, according to the below link (assuming the documentation has been kept up-to-date), that is the proper way to get the MBR for a table in the specified ...


3

My abbreviated take: Georeferencing involves fitting an image to the Earth based on matching up visual features of the image with their known location. Input: Imagery, Image control points, Matching geospatial control points Output: Image with data attached showing how it fits onto the globe Geocoding involves converting some human placename or label ...


3

When creating a view/table, or any other object for that matter, in Oracle it is best not to use double quotes around identifiers because that tells Oracle that the name is case sensitive. Oracle by default is not case sensitive (even for username/passwords, if I recall correctly). So, when in Oracle and Postgres you name an object (table, column, etc) with ...


3

At least two things can cause this - maybe more. The views should be added to Oracle's own spatial metadata catalog. This has been discussed a few times on MapInfo-L, see http://groups.google.com/group/mapinfo-l/browse_thread/thread/8088c4afeadeb1c6?pli=1. The other problem could be that you don't have a primary key in your view. For MapInfo Pro to be able ...


3

'Yes' is the short answer. The way you do it depends on what you want to use the data for. The simplest way is to re-project your data into a Lat/Lon coordinate system using ST_Transform() (I think it is just 'Transform()' in SpatiaLite and something weird in Oracle). Alternatively, follow one of these recipes, perhaps using Proj4. Once you have ...


3

Spatial databases provides services to store and manipulate geometries, generally positioned in a geodetic system. The importance of the spacial database behind your GIS will mostly depend on the usage, but generally speaking, you can hardly talk of GIS if you don't have a proper spatial database for data storage. Due to the fact that computers can only ...


3

sdo_relate or sdo_intersection? It has been a while since I have used spatial. This might be a place to start. otn spatial forum


3

One thing I see missing is a unique integer column that ArcObjects can use for the object ID. Try creating a single sequence that will maintain unique values for this id column. Then create insert triggers on each of the tables to populate the id column with the sequence.nextval. In your sdelayer -o register command, be sure to set the -C flag to your ...


3

I had this (and similar problems) in the past. It always came down to two things: The spatial table had some corrupt/invalid geometries. Problem with ArcMap is that as soon as it finds an invalid geometry it would stop rendering. The layer registration is incorrect. What I also found is that the sdelayer -o register doesn't always work correctly and you ...


3

Creating a view joining parcels and permits is advisable. You can use it in other situations as well (data querying etc.). See a sample of doing so in Joining spatial and not spatial table in oracle.


3

Esri has no control over Oracle licensing policy, they just allow you to use the SDO_GEOMETRY datatype, as provided by Oracle. Some of the SDO accessor functions require more than just Locator. Your determination of what is sufficient should really be based on what SQL manipulation you require, since Esri doesn't use more than SDO_FILTER.


3

Yes, absolutely, you can do that. The principle is to define a function-based index. The steps are like this: Assume I have a table like this: create table customers ( id number primary key, name varchar2(30), longitude number, latitude number ); 1) Define a function that transforms the long and lat columns into a geometry. Note that should any ...


3

To begin with you might consider using ST_DWithin instead of creating a buffer and using ST_Intersects. It will be faster and simpler. That being said, to get all the points that are in one buffer but not in both buffers you need to get the symmetric difference of both sets. Symmetric differences look something like this: (a EXCEPT b) UNION (b EXCEPT ...


2

In my experience, when a layer isn't displaying in Arc, it's because the spatial index is missing. Views use the spatial index of the source table, but it looks like you are creating a spatial index for the view in your registration statement. Do either of the source tables have spatial indexes? If not, try creating them in Oracle and re-registering the ...


2

Please try to run following command: sdelayer -o alter -l [-S ] [-k ] [-i | | ] [-s ] [-D ] -E calc -u [-p ]


2

Spatial Database Management Systems are very important in GIS (just look at this site for proof). An emphasis has always been placed on spatial databases that are based on the relational model. However, there are numerous examples of different data models, and processing approaches that can be used: Raster data uses structures based on matrices. Spatial ...


2

I don't have as thorough an answer as Valise, but I think that there is future in using Graph (NoSQL) databases for the storage and retrieval of spatial data. The graph structure is used already quite extensively in GIS data (think of nodes and arcs). There are some efforts already but I haven't used them. See Neo4j spatial for example: ...


2

I use the term "georeferencing" when I am referring to applying geographic information to data. Such as "georeferencing an image" so it will align with the rest of my data. I'll use "geocoding" when I have address/post code information and I want to georeference them. Geocoding on Wikipedia Georeferencing on Wikipedia But you probably read those anyway. ...


2

There is the big difference between SDO_GEOM.RELATE and SDO_RELATE. The first argument of SDO_RELATE specifies a geometry column in a table. So, at least one geometry object must be located in a table. It is the limitation. On the other hand SDO_RELATE can use the spatial index, so it works fast. SDO_GEOM.RELATE doesn’t care about the geometry location. ...


2

In Oracle the geometry type can be declared only as a metadata of the spatial index, evidently the import tool did not do so. Another option is to setup a geometry metadata table, please consult the geoserver documentation for details.



Only top voted, non community-wiki answers of a minimum length are eligible