<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>OpenText Analytics Database 26.2.x – Geospatial analytics</title>
    <link>/en/data-analysis/geospatial-analytics/</link>
    <description>Recent content in Geospatial analytics on OpenText Analytics Database 26.2.x</description>
    <generator>Hugo -- gohugo.io</generator>
    
	  <atom:link href="/en/data-analysis/geospatial-analytics/index.xml" rel="self" type="application/rss+xml" />
    
    
      
        
      
    
    
    <item>
      <title>Data-Analysis: Best practices for geospatial analytics</title>
      <link>/en/data-analysis/geospatial-analytics/best-practices-geospatial-analytics/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/en/data-analysis/geospatial-analytics/best-practices-geospatial-analytics/</guid>
      <description>
        
        
        &lt;p&gt;OpenText recommends the following best practices when performing geospatial analytics.&lt;/p&gt;
&lt;h2 id=&#34;performance-optimization&#34;&gt;Performance optimization&lt;/h2&gt;

&lt;table class=&#34;table table-bordered&#34; &gt;



&lt;tr&gt; 

&lt;th &gt;
Recommendation&lt;/th&gt; 

&lt;th &gt;
Details&lt;/th&gt;&lt;/tr&gt;

&lt;tr&gt; 

&lt;td &gt;
Use the minimum column size for spatial data.&lt;/td&gt; 

&lt;td &gt;
Performance degrades as column widths increase. When creating columns for your spatial data, use the smallest size column that can accommodate your data. For example, use GEOMETRY(85) for point data.&lt;/td&gt;&lt;/tr&gt;

&lt;tr&gt; 

&lt;td &gt;
Use GEOMETRY types where possible.&lt;/td&gt; 

&lt;td &gt;
Performance of functions on GEOGRAPHY types is slower than functions that support GEOMETRY types. Use GEOMETRY types where possible.&lt;/td&gt;&lt;/tr&gt;

&lt;tr&gt; 

&lt;td &gt;










&lt;p&gt;To improve the performance of the following functions, sort projections on spatial columns:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;STV_Intersect scalar function&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;ST_Distance&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;ST_Area&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;ST_Length&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt; 

&lt;td &gt;


You may improve the pruning efficiency of these functions by sorting the projection on the GEOMETRY column. However, sorting on a large GEOMETRY column may slow down data load.&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;h2 id=&#34;spatial-joins-with-points-and-polygons&#34;&gt;Spatial joins with points and polygons&lt;/h2&gt;
&lt;p&gt;OpenText™ Analytics Database provides two ways to identify whether a set of points intersect with a set of polygons. Depending on the size of your data set, choose the approach that gives the best performance.&lt;/p&gt;
&lt;p&gt;For a detailed example of best practices with spatial joins, see &lt;a href=&#34;../../../en/data-analysis/geospatial-analytics/working-with-spatial-objects-tables/spatial-joins-with-st-intersects-and-stv-intersect/best-practices-spatial-joins/#&#34;&gt;Best practices for spatial joins&lt;/a&gt;.

&lt;table class=&#34;table table-bordered&#34; &gt;



&lt;tr&gt; 

&lt;th &gt;
Recommendation&lt;/th&gt; 

&lt;th &gt;
Details&lt;/th&gt;&lt;/tr&gt;

&lt;tr&gt; 

&lt;td &gt;


Use ST_Intersects to intersect a constant geometry with a set of geometries.&lt;/td&gt; 

&lt;td &gt;







&lt;p&gt;When you intersect a set of geometries with a geometry, use the ST_Intersects function. Express the constant geometry argument as a WKT or WKB. For example:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;ST_Intersects(geom,ST_GeomFromText(  &#39;POLYGON((43.1 50.1,43.1 59.0,  48.9 59.0,43.1 50.1))&#39;))&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;For more information, see &lt;a href=&#34;../../../en/data-analysis/geospatial-analytics/working-with-spatial-objects-tables/spatial-joins-with-st-intersects-and-stv-intersect/when-to-use-st-intersects-vs-stv-intersect/performing-spatial-joins-with-st-intersects/#&#34;&gt;Performing spatial joins with ST_Intersects&lt;/a&gt;.&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;

&lt;tr&gt; 

&lt;td &gt;
Create a spatial index only when performing spatial joins with STV_Intersect.&lt;/td&gt; 

&lt;td &gt;
Spatial indexes should only be used with STV_Intersect. Creating a spatial index and then performing spatial joins with ST_Intersects will not improve performance.&lt;/td&gt;&lt;/tr&gt;

&lt;tr&gt; 

&lt;td &gt;
Use the STV_Intersect function when you intersect a set of points with a set of polygons.&lt;/td&gt; 

&lt;td &gt;




&lt;p&gt;Determine if a set of points intersects with a set of polygons in a medium to large data set. First, create a spatial index using STV_Create_Index. Then, use one of the STV_Intersect functions to return the set of pairs that intersect.&lt;/p&gt;
&lt;p&gt;Spatial indexes provide the best performance for accessing a large number of polygons.&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;

&lt;tr&gt; 

&lt;td &gt;
When using the STV_Intersect transform function, partition the data and use an OVER(PARTITION BEST) clause.&lt;/td&gt; 

&lt;td &gt;
The &lt;a href=&#34;../../../en/sql-reference/functions/geospatial-functions/stv-intersect-transform-function/#&#34;&gt;STV_Intersect transform function&lt;/a&gt; does not require that you partition the data. However, you may improve performance by partitioning the data and using an OVER(PARTITION BEST) clause.&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/p&gt;
&lt;h2 id=&#34;spatial-indexes&#34;&gt;Spatial indexes&lt;/h2&gt;
&lt;p&gt;The STV_Create_Index function can consume large amounts of processing time and memory. When you index new data for the first time, monitor memory usage to be sure it stays within safe limits. Memory usage depends on:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Number of polygons&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Number of vertices&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Amount of overlap among polygons&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;table class=&#34;table table-bordered&#34; &gt;



&lt;tr&gt; 

&lt;th &gt;
Recommendation&lt;/th&gt; 

&lt;th &gt;
Details&lt;/th&gt;&lt;/tr&gt;

&lt;tr&gt; 

&lt;td &gt;
Segment polygon data when a table contains a large number of polygons.&lt;/td&gt; 

&lt;td &gt;
Segmenting the data allows the index creation process to run in parallel. This is advantageous because sometimes STV_Create_Index tasks cannot be completed when large tables that are not segmented prior to index creation.&lt;/td&gt;&lt;/tr&gt;

&lt;tr&gt; 

&lt;td &gt;
Adjust STV_Create_Index parameters as needed for memory allocation and CPU usage.&lt;/td&gt; 

&lt;td &gt;






&lt;p&gt;The &lt;code&gt;max_mem_mb&lt;/code&gt; parameter can affect the resource usage of STV_Create_Index. &lt;code&gt;max_mem_mb&lt;/code&gt; assigns a limit to the amount of memory that STV_Create_Index can allocate.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Default:&lt;/strong&gt; 256&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Valid values:&lt;/strong&gt; Any value less than or equal to the amount of memory in the GENERAL resource pool. Assigning a higher value results in an error.&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;

&lt;tr&gt; 

&lt;td &gt;
Make changes if STV_Create_Index cannot allocate 300 MB memory.&lt;/td&gt; 

&lt;td &gt;








&lt;p&gt;Before STV_Create_Index starts creating the index, it tries to allocate about 300 MB of memory. If that much memory is not available, the function fails. If you get a failure message, try these solutions:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Create the index at a time of less load on the system.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Avoid concurrent index creation.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Add more memory to your system.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;

&lt;tr&gt; 

&lt;td &gt;
Create misplaced indexes again, if needed.&lt;/td&gt; 

&lt;td &gt;
When you back up your database, spatial index files are not included. If you misplace an index, use STV_Create_Index to re-create it.&lt;/td&gt;&lt;/tr&gt;

&lt;tr&gt; 

&lt;td &gt;
Use STV_Refresh_Index to add new or updated polygons to an existing index.&lt;/td&gt; 

&lt;td &gt;
Instead of rebuilding your spatial index each time you add new or updated polygons to a table, you can use STV_Refresh_Index to append the polygons to your existing spatial index.&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;h2 id=&#34;checking-polygon-validity&#34;&gt;Checking polygon validity&lt;/h2&gt;

&lt;table class=&#34;table table-bordered&#34; &gt;



&lt;tr&gt; 

&lt;th &gt;
Recommendation&lt;/th&gt; 

&lt;th &gt;
Details&lt;/th&gt;&lt;/tr&gt;

&lt;tr&gt; 

&lt;td &gt;
Run ST_IsValid to check if polygons are valid.&lt;/td&gt; 

&lt;td &gt;








&lt;p&gt;Many spatial functions do not check the validity of polygons.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Run &lt;a href=&#34;../../../en/sql-reference/functions/geospatial-functions/st-isvalid/#&#34;&gt;ST_IsValid&lt;/a&gt; on all polygons to determine if they are valid.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If your object is not valid, run &lt;a href=&#34;../../../en/sql-reference/functions/geospatial-functions/stv-isvalidreason/#&#34;&gt;STV_IsValidReason&lt;/a&gt; to get information about the location of the invalid polygon.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information, see &lt;a href=&#34;../../../en/data-analysis/geospatial-analytics/working-with-spatial-objects-tables/spatial-joins-with-st-intersects-and-stv-intersect/ensuring-polygon-validity-before-creating-or-refreshing-an-index/#&#34;&gt;Ensuring polygon validity before creating or refreshing an index&lt;/a&gt;.&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;


      </description>
    </item>
    
    <item>
      <title>Data-Analysis: Spatial objects</title>
      <link>/en/data-analysis/geospatial-analytics/spatial-objects/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/en/data-analysis/geospatial-analytics/spatial-objects/</guid>
      <description>
        
        
        &lt;p&gt;OpenText™ Analytics Database implements several data types for storing spatial objects, Well-Known Text (WKT) strings, and Well-Known Binary (WKB) representations. These data types include:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;a href=&#34;../../../en/data-analysis/geospatial-analytics/spatial-objects/supported-spatial-objects/#&#34;&gt;Supported spatial objects&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href=&#34;../../../en/data-analysis/geospatial-analytics/spatial-objects/spatial-reference-identifiers-srids/#&#34;&gt;Spatial reference identifiers (SRIDs)&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Data-Analysis: Working with spatial objects in tables</title>
      <link>/en/data-analysis/geospatial-analytics/working-with-spatial-objects-tables/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/en/data-analysis/geospatial-analytics/working-with-spatial-objects-tables/</guid>
      <description>
        
        
        &lt;ul&gt;
&lt;li&gt;
&lt;a href=&#34;../../../en/data-analysis/geospatial-analytics/working-with-spatial-objects-tables/defining-table-columns-spatial-data/#&#34;&gt;Defining table columns for spatial data&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href=&#34;../../../en/data-analysis/geospatial-analytics/working-with-spatial-objects-tables/exporting-spatial-data-from-table/#&#34;&gt;Exporting spatial data from a table&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href=&#34;../../../en/data-analysis/geospatial-analytics/working-with-spatial-objects-tables/identifying-null-spatial-objects/#&#34;&gt;Identifying null spatial objects&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href=&#34;../../../en/data-analysis/geospatial-analytics/working-with-spatial-objects-tables/loading-spatial-data-from-shapefiles/#&#34;&gt;Loading spatial data from shapefiles&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href=&#34;../../../en/data-analysis/geospatial-analytics/working-with-spatial-objects-tables/loading-spatial-data-into-tables-using-copy/#&#34;&gt;Loading spatial data into tables using COPY&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href=&#34;../../../en/data-analysis/geospatial-analytics/working-with-spatial-objects-tables/retrieving-spatial-data-from-table-as-well-known-text-wkt/#&#34;&gt;Retrieving spatial data from a table as well-known text (WKT)&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Data-Analysis: Working with spatial objects from client applications</title>
      <link>/en/data-analysis/geospatial-analytics/working-with-spatial-objects-from-clients/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/en/data-analysis/geospatial-analytics/working-with-spatial-objects-from-clients/</guid>
      <description>
        
        
        &lt;p&gt;The OpenText™ Analytics Database client driver libraries provide interfaces for connecting your client applications to your database. The drivers simplify exchanging data for loading, report generation, and other common database tasks.&lt;/p&gt;
&lt;p&gt;There are three separate client drivers:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Open Database Connectivity (ODBC)—The most commonly-used interface for third-party applications and clients written in C, Python, PHP, Perl, and most other languages.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Java Database Connectivity (JDBC)—Used by clients written in the Java programming language.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;ActiveX Data Objects for .NET (ADO.NET)—Used by clients developed using Microsoft&#39;s .NET Framework and written in C#, Visual Basic .NET, and other .NET languages.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Place supports the following new data types:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;LONG VARCHAR&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;LONG VARBINARY&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;GEOMETRY&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;GEOGRAPHY&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The client driver libraries support these data types; the following sections describe that support and provide examples.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Data-Analysis: OGC spatial definitions</title>
      <link>/en/data-analysis/geospatial-analytics/ogc-spatial-definitions/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/en/data-analysis/geospatial-analytics/ogc-spatial-definitions/</guid>
      <description>
        
        
        &lt;p&gt;Using OpenText™ Analytics Database requires an understanding of the Open Geospatial Consortium (OGC) concepts and capabilities. For more information, see the &lt;a href=&#34;http://www.opengeospatial.org/standards/sfa&#34;&gt;OGC Simple Feature Access Part 1 - Common Architecture&lt;/a&gt; specification.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Data-Analysis: Spatial data type support limitations</title>
      <link>/en/data-analysis/geospatial-analytics/spatial-data-type-support-limitations/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/en/data-analysis/geospatial-analytics/spatial-data-type-support-limitations/</guid>
      <description>
        
        
        &lt;p&gt;OpenText™ Analytics Database does not support all types of GEOMETRY and GEOGRAPHY objects. See the respective function page for a list of objects that function supports. Spherical geometry is generally more complex than Euclidean geometry. Thus, there are fewer spatial functions that support the GEOGRAPHY data type.&lt;/p&gt;
&lt;p&gt;Limitations of spatial data type support:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;A non-WGS84 GEOGRAPHY object is a spatial object defined on the surface of a perfect sphere of radius 6371 kilometers. This sphere approximates the shape of the earth. Other spatial programs may use an ellipsoid to model the earth, resulting in slightly different data.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;You cannot modify the size or data type of a GEOMETRY or GEOGRAPHY column after creation.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;You cannot import data to or export data from tables that contain spatial data from another database.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;You can only use the STV_Intersect functions with points and polygons.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;GEOGRAPHY objects of type GEOMETRYCOLLECTION are not supported.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Values for longitude must be between -180 and +180 degrees. Values for latitude must be between –90 and +90 degrees. The geospatial functions do not validate these values.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;GEOMETRYCOLLECTION objects cannot contain empty objects. For example, you cannot specify &lt;code&gt;GEOMETRYCOLLECTION (LINESTRING(1 2, 3 4), POINT(5 6)&lt;/code&gt;,  &lt;code&gt;POINT EMPTY)&lt;/code&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you pass a spatial function a NULL geometry, the function returns NULL, unless otherwise specified. A result of NULL has no value.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Polymorphic functions, such as &lt;code&gt;NVL&lt;/code&gt; and &lt;code&gt;GREATEST&lt;/code&gt;, do not accept GEOMETRY and GEOGRAPHY arguments.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
  </channel>
</rss>
