<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de-CH">
	<id>https://giswiki.ch/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Stefan2</id>
	<title>Geometa Lab OST - Benutzerbeiträge [de-ch]</title>
	<link rel="self" type="application/atom+xml" href="https://giswiki.ch/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Stefan2"/>
	<link rel="alternate" type="text/html" href="https://giswiki.ch/Spezial:Beitr%C3%A4ge/Stefan2"/>
	<updated>2026-04-28T02:22:50Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.39.10</generator>
	<entry>
		<id>https://giswiki.ch/index.php?title=HSR_Texas_Geo_Database_Benchmark&amp;diff=25650</id>
		<title>HSR Texas Geo Database Benchmark</title>
		<link rel="alternate" type="text/html" href="https://giswiki.ch/index.php?title=HSR_Texas_Geo_Database_Benchmark&amp;diff=25650"/>
		<updated>2010-01-12T09:34:03Z</updated>

		<summary type="html">&lt;p&gt;Stefan2: /* Datasets */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;The HSR Texas Spatial Database Benchmark&#039;&#039;&#039; - A Proposal&lt;br /&gt;
&lt;br /&gt;
Date of first proposal: December 21, 2009. &lt;br /&gt;
Status: Call for Comments and Call for Participation.&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
[[Bild:HSR_Spatial_Benchmark_Fig1.png|thumb|200px|right|Draft of the benchmark.]]&lt;br /&gt;
&lt;br /&gt;
This is a proposal for a spatial database benchmark from the University of Applied Sciences Rapperswil (HSR). A study of existing database benchmarks revealed that there exists no information publicly available which compares spatial database systems regarding their performance. Spatial &#039;database management systems&#039; (DMBS) typically form the persistence layer of a geographic information system (GIS). &lt;br /&gt;
&lt;br /&gt;
Thus the Institute for Software at the University of Applied Sciences Rapperswil (HSR) decided to propose such a benchmark. This benchmark is being called &#039;The HSR Texas Spatial Database Benchmark&#039; because it was defined from a HSR institute and because data comes from Texas USA. &lt;br /&gt;
&lt;br /&gt;
The benchmark is based on a predefined set of queries. These queries consist of simple spatial queries, defined in the OpenGIS(tm) &#039;Simple Features Interface Standard (SFS)&#039;. The queries are performed on different-sized data sets for monitoring the behavior on various loads as well as on different hardware systems. &lt;br /&gt;
&lt;br /&gt;
In the following sections the methodology, the queries are explained and the used datasets are defined. This proposal concludes with a Call for Comments about the benchmark as well as a Call for Participation to apply and test this benchmark on existing DBMS software.&lt;br /&gt;
&lt;br /&gt;
== Methodology ==&lt;br /&gt;
&lt;br /&gt;
The benchmark follows the below defined rules of engagement.&lt;br /&gt;
* Each test runs three times in a row, the results of the third run are used for the comparison: this benchmark assumes full system caches (&#039;hot&#039; benchmark).&lt;br /&gt;
* Each test takes place on the same machine.&lt;br /&gt;
* All other DBMS are shut down while the tests are running.&lt;br /&gt;
* Each DBMS has the same data which comes from real world data sets (as indicated below). &lt;br /&gt;
* The coordinate reference system used is spherical (geographical). &lt;br /&gt;
* Each test uses bounding box or point variables which are the same for the respective systems in the test. These variables are chosen at random from within the subset space.&lt;br /&gt;
&lt;br /&gt;
Any hardware used needs to be specified according to following points:&lt;br /&gt;
* System Type&lt;br /&gt;
* Model&lt;br /&gt;
* Processor&lt;br /&gt;
* RAM&lt;br /&gt;
* Hard drive&lt;br /&gt;
* Operating system&lt;br /&gt;
&lt;br /&gt;
There are two variants of the test: &amp;quot;No tuning/initial&amp;quot; and &amp;quot;Tuned&amp;quot;. &lt;br /&gt;
# The variant &amp;quot;No tuning/initial&amp;quot; is mandatory in order to make benchmarks more widely applicable. The respective default installation of one DBMS is used.&lt;br /&gt;
# The variant &amp;quot;Tuned&amp;quot; is optional and needs proper documentation of all tuned parameters and activities.&lt;br /&gt;
&lt;br /&gt;
== Queries ==&lt;br /&gt;
&lt;br /&gt;
The following queries are selected from the SQL functions defined by the SFS. The placeholder &#039;{dataset}&#039; will be substituted by the respective table names. The variable @bbox complies with randomly selected rectangular polygons in the geographical range of each data set, but which are the same for every system. The variable @point corresponds to a random point which is located in the area of the subsets. &amp;quot;geo&amp;quot; identifies the table column with geographical data. The following statements are given in pseudo SQL code.&lt;br /&gt;
&lt;br /&gt;
Variable(s) &#039;&#039;&#039;@bbox&#039;&#039;&#039; (tbd.): &lt;br /&gt;
* &#039;Aligned with grid&#039;: &amp;lt;code&amp;gt;POLYGON ((-101.3135 32.026, -101.3135 29.974, -98.7865 29.974, -98.7865 32.026, -101.3135 32.026))&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Variable(s) &#039;&#039;&#039;@point&#039;&#039;&#039; (tbd.): &lt;br /&gt;
* &amp;lt;code&amp;gt;POINT(-101.3135 32.026)&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Query 1. Loading the data === &lt;br /&gt;
Create tiered data subsets by sub-dividing with a given bounding box &#039;@bbox&#039;, creating the indices.&lt;br /&gt;
&lt;br /&gt;
  SELECT * INTO {dataset}&lt;br /&gt;
  FROM {original dataset}&lt;br /&gt;
  WHERE ST_Intersects(@bbox, geo);&lt;br /&gt;
  CREATE SPATIAL INDEX idx ON {dataset} ([geo]);&lt;br /&gt;
&lt;br /&gt;
=== Query 2. A Non-spatial Selection: Count ===&lt;br /&gt;
Count all railroads.&lt;br /&gt;
&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset lines} l &lt;br /&gt;
  WHERE l.roadflg=&#039;Y&#039;;&lt;br /&gt;
&lt;br /&gt;
=== Query 3. Spatial Selection I: Intersect Point, Line and Polygons ===&lt;br /&gt;
Count all a) points, b) lines, c) polygons that intersect with a given bounding box &#039;@bbox&#039;.&lt;br /&gt;
&lt;br /&gt;
  a)&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset points} p&lt;br /&gt;
  WHERE ST_Intersects(@bbox, p.geo);&lt;br /&gt;
&lt;br /&gt;
  b)&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset lines} l &lt;br /&gt;
  WHERE ST_Intersects(@bbox, l.geo);&lt;br /&gt;
&lt;br /&gt;
  c)&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset polygons} pg &lt;br /&gt;
  WHERE ST_Intersects(@bbox, pg.geo);&lt;br /&gt;
&lt;br /&gt;
=== Query 4. Spatial Selection II: Distance within ===&lt;br /&gt;
Count all a) points, b) lines, c) polygons that are within 1000 meters from a given point &#039;@point&#039;. &lt;br /&gt;
&lt;br /&gt;
  a)&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset points} p &lt;br /&gt;
  WHERE ST_Distance(@point, geo) &amp;lt;= 1000;&lt;br /&gt;
&lt;br /&gt;
  b)&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset lines} l &lt;br /&gt;
  WHERE ST_Distance(@point, geo) &amp;lt;= 1000;&lt;br /&gt;
&lt;br /&gt;
  c)&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset polygons} pg &lt;br /&gt;
  WHERE ST_Distance(@point, geo) &amp;lt;= 1000;&lt;br /&gt;
&lt;br /&gt;
=== Query 5. Spatial Selection III: Intersect/Join Lines and Polygons ===&lt;br /&gt;
Count all railroads that intersect with a water area.&lt;br /&gt;
&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset lines} l, areawater_full pg&lt;br /&gt;
  WHERE ST_Intersects(pg.geom, l.geom) = 1 AND l.railflg = &#039;Y&#039;;&lt;br /&gt;
&lt;br /&gt;
== Datasets ==&lt;br /&gt;
&lt;br /&gt;
[[Bild:HSR_Spatial_Benchmark_Fig2.png|thumb|400px|right|Visualization of the Point (left) and polygon (right) data set.]]&lt;br /&gt;
&lt;br /&gt;
At the Free and Open Source Software for Geospatial Conference (FOSS4G) 2009, a &#039;Web Mapping Performance Shoot-out&#039; was performed which compared the open source GIS software products GeoServer and MapServer ([http://2009.foss4g.org/presentations/#presentation_109]). There, PostgreSQL/PostGIS and Oracle have been tested too. Several sets from the TIGER shapefiles of Texas that can be downloaded from the U.S. Census Bureau where used as data basis. D&lt;br /&gt;
&lt;br /&gt;
Download the data from the original site: ftp://ftp2.census.gov/geo/tiger/TIGER2008/ ([http://www.census.gov/geo/www/tiger/]). Note taht there are similar data sets around like [http://wiki.osgeo.org/wiki/Benchmarking_2009#Data here].&lt;br /&gt;
&lt;br /&gt;
This data is proposed to use within this benchmark containing rivers, roads, railroads, Points-of-interest and water areas. The data originate from the following shape files:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Data sets from the TIGER shapefiles&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! Shape file name   || gnis_names09  || edges_merge     || areawater_merge&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| Type              || Point         || Multilinestring || Multipolygon &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| Number of records || 103,000       || Over 5 M        || 380,000 &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| SRID              || EPSG:4326     || EPSG:4326       || EPSG:4326 &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| Source            || GNIS database || TIGER 2008      || TIGER 2008 &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| Description || All line elements (rivers and roads) from the TIGER 2008 dataset for the state of Texas. || All locations and Point of interest for the state of Texas. || The TIGER set of polygons describing water surface for the state of Texas. &lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
These data sets are divided by a bounding-box procedure to subsets. Using these subsets the behavior of the respective DBMS can be observed in different-sized data sets. The figure to the right shows the gnis_names09 data set (left) and the areawater_merge data set (right).&lt;br /&gt;
&lt;br /&gt;
It follows the definition of the (sub-)datasets (coordinates in [[WGS94]]):&lt;br /&gt;
&lt;br /&gt;
=== Point data gnis_names09 ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Shapefile gnis_names09&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! style=&amp;quot;width:12em&amp;quot;| Subset || Number of records  || Bounding box&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_40000           ||style=&amp;quot;text-align:right&amp;quot;|  40,744   || -103.208 33.565,-103.208 28.435,-96.891 28.435,-96.891 33.565&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_60000           ||style=&amp;quot;text-align:right&amp;quot;|  60,051   || -104.006 34.213,-104.006 27.787,-96.093 27.787,-96.093 34.213&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_80000           ||style=&amp;quot;text-align:right&amp;quot;|  80,174   || -104.904 34.942,-104.904 27.058,-95.195 27.058,-95.195 34.942&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_100000          ||style=&amp;quot;text-align:right&amp;quot;| 100,498   || -106.168 35.968,-106.168 26.032,-93.932 26.032,-93.932 35.968&lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multilinestring data edges_merge ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Shapefile edges_merge&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! style=&amp;quot;width:12em&amp;quot;| Subset || Number of records  || Bounding box&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_500000               ||style=&amp;quot;text-align:right&amp;quot;|   500,282 || -102.169 32.720,-102.169 29.279,-97.930 29.279,-97.930 32.720&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_1000000              ||style=&amp;quot;text-align:right&amp;quot;| 1,001,665 || -103.109 33.484,-103.109 28.516,-96.991 28.516,-96.991 33.484&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_1500000              ||style=&amp;quot;text-align:right&amp;quot;| 1,498,936 || -103.518 33.816,-103.518 28.183,-96.581 28.183,-96.581 33.816&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_2000000              ||style=&amp;quot;text-align:right&amp;quot;| 2,007,473 || -104.605 34.699,-104.605 27.301,-95.494 27.301,-95.494 34.699&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_2500000              ||style=&amp;quot;text-align:right&amp;quot;| 2,498,941 || -106.041 35.865,-106.041 26.134,-94.058 26.134,-94.058 35.865&lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multipolygon data areawater_merge ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Shapefile areawater_merge&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! style=&amp;quot;width:12em&amp;quot;| Subset || Number of records  || Bounding box&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| areawater_100000           ||style=&amp;quot;text-align:right&amp;quot;| 100,860   || -102.789 33.224,-102.789 28.775,-97.310 28.775,-97.3102 33.224&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_150000           ||style=&amp;quot;text-align:right&amp;quot;| 150,655   || -103.261 33.608,-103.261 28.391,-96.838 28.391,-96.8380 33.608&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_200000           ||style=&amp;quot;text-align:right&amp;quot;| 200,814   || -103.674 33.943,-103.674 28.057,-96.425 28.057,-96.4257 33.943&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_250000           ||style=&amp;quot;text-align:right&amp;quot;| 249,685   || -104.272 34.429,-104.272 27.571,-95.827 27.571,-95.8272 34.429&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_300000           ||style=&amp;quot;text-align:right&amp;quot;| 299,965   || -104.691 34.769,-104.691 27.230,-95.408 27.230,-95.4083 34.769&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_350000           ||style=&amp;quot;text-align:right&amp;quot;| 350,449   || -105.536 35.455,-105.536 26.545,-94.563 26.545,-94.5637 35.455&lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Call for Comments and Call for Participation ==&lt;br /&gt;
&lt;br /&gt;
The &#039;HSR Texas Spatial Database Benchmark&#039; was conducted and verified by a first time in December 2009 during a Master Seminar by the Institute for Software at HSR. Two database management systems software (DBMS), one commercially available (Microsoft SQL Server 2008 Spatial) an one under an Open Source license (PostgreSQL 8.4.1/PostGIS 1.4.0), have been chosen. The results are currently evaluated and will probably be published in 2010.&lt;br /&gt;
&lt;br /&gt;
Two actions from researchers and volunteers may complement this research:&lt;br /&gt;
* Submit comments on the &#039;HSR Texas Spatial Database Benchmark&#039; itself.&lt;br /&gt;
* Do further experiments on existing DBMS.&lt;br /&gt;
&lt;br /&gt;
We are looking forward for a fruitful discussion!&lt;br /&gt;
&lt;br /&gt;
== Feedback, Discussion and Contact ==&lt;br /&gt;
&lt;br /&gt;
Please direct any comments either to the discussion page, to the [http://lists.osgeo.org/mailman/listinfo/benchmarking OSGEOs benchmarking mailing list] - or directly to [[Benutzer:Stefan|Prof. S. Keller from Institute for Software at HSR]].&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://wiki.osgeo.org/wiki/Benchmarking_2009#Data GeoServer vs. MapServer Benchmark 2009]&lt;br /&gt;
* List of benchmarks and performance tests: http://delicious.com/sfkeller/database+benchmark&lt;/div&gt;</summary>
		<author><name>Stefan2</name></author>
	</entry>
	<entry>
		<id>https://giswiki.ch/index.php?title=HSR_Texas_Geo_Database_Benchmark&amp;diff=25649</id>
		<title>HSR Texas Geo Database Benchmark</title>
		<link rel="alternate" type="text/html" href="https://giswiki.ch/index.php?title=HSR_Texas_Geo_Database_Benchmark&amp;diff=25649"/>
		<updated>2010-01-12T09:27:12Z</updated>

		<summary type="html">&lt;p&gt;Stefan2: /* Queries */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;The HSR Texas Spatial Database Benchmark&#039;&#039;&#039; - A Proposal&lt;br /&gt;
&lt;br /&gt;
Date of first proposal: December 21, 2009. &lt;br /&gt;
Status: Call for Comments and Call for Participation.&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
[[Bild:HSR_Spatial_Benchmark_Fig1.png|thumb|200px|right|Draft of the benchmark.]]&lt;br /&gt;
&lt;br /&gt;
This is a proposal for a spatial database benchmark from the University of Applied Sciences Rapperswil (HSR). A study of existing database benchmarks revealed that there exists no information publicly available which compares spatial database systems regarding their performance. Spatial &#039;database management systems&#039; (DMBS) typically form the persistence layer of a geographic information system (GIS). &lt;br /&gt;
&lt;br /&gt;
Thus the Institute for Software at the University of Applied Sciences Rapperswil (HSR) decided to propose such a benchmark. This benchmark is being called &#039;The HSR Texas Spatial Database Benchmark&#039; because it was defined from a HSR institute and because data comes from Texas USA. &lt;br /&gt;
&lt;br /&gt;
The benchmark is based on a predefined set of queries. These queries consist of simple spatial queries, defined in the OpenGIS(tm) &#039;Simple Features Interface Standard (SFS)&#039;. The queries are performed on different-sized data sets for monitoring the behavior on various loads as well as on different hardware systems. &lt;br /&gt;
&lt;br /&gt;
In the following sections the methodology, the queries are explained and the used datasets are defined. This proposal concludes with a Call for Comments about the benchmark as well as a Call for Participation to apply and test this benchmark on existing DBMS software.&lt;br /&gt;
&lt;br /&gt;
== Methodology ==&lt;br /&gt;
&lt;br /&gt;
The benchmark follows the below defined rules of engagement.&lt;br /&gt;
* Each test runs three times in a row, the results of the third run are used for the comparison: this benchmark assumes full system caches (&#039;hot&#039; benchmark).&lt;br /&gt;
* Each test takes place on the same machine.&lt;br /&gt;
* All other DBMS are shut down while the tests are running.&lt;br /&gt;
* Each DBMS has the same data which comes from real world data sets (as indicated below). &lt;br /&gt;
* The coordinate reference system used is spherical (geographical). &lt;br /&gt;
* Each test uses bounding box or point variables which are the same for the respective systems in the test. These variables are chosen at random from within the subset space.&lt;br /&gt;
&lt;br /&gt;
Any hardware used needs to be specified according to following points:&lt;br /&gt;
* System Type&lt;br /&gt;
* Model&lt;br /&gt;
* Processor&lt;br /&gt;
* RAM&lt;br /&gt;
* Hard drive&lt;br /&gt;
* Operating system&lt;br /&gt;
&lt;br /&gt;
There are two variants of the test: &amp;quot;No tuning/initial&amp;quot; and &amp;quot;Tuned&amp;quot;. &lt;br /&gt;
# The variant &amp;quot;No tuning/initial&amp;quot; is mandatory in order to make benchmarks more widely applicable. The respective default installation of one DBMS is used.&lt;br /&gt;
# The variant &amp;quot;Tuned&amp;quot; is optional and needs proper documentation of all tuned parameters and activities.&lt;br /&gt;
&lt;br /&gt;
== Queries ==&lt;br /&gt;
&lt;br /&gt;
The following queries are selected from the SQL functions defined by the SFS. The placeholder &#039;{dataset}&#039; will be substituted by the respective table names. The variable @bbox complies with randomly selected rectangular polygons in the geographical range of each data set, but which are the same for every system. The variable @point corresponds to a random point which is located in the area of the subsets. &amp;quot;geo&amp;quot; identifies the table column with geographical data. The following statements are given in pseudo SQL code.&lt;br /&gt;
&lt;br /&gt;
Variable(s) &#039;&#039;&#039;@bbox&#039;&#039;&#039; (tbd.): &lt;br /&gt;
* &#039;Aligned with grid&#039;: &amp;lt;code&amp;gt;POLYGON ((-101.3135 32.026, -101.3135 29.974, -98.7865 29.974, -98.7865 32.026, -101.3135 32.026))&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Variable(s) &#039;&#039;&#039;@point&#039;&#039;&#039; (tbd.): &lt;br /&gt;
* &amp;lt;code&amp;gt;POINT(-101.3135 32.026)&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Query 1. Loading the data === &lt;br /&gt;
Create tiered data subsets by sub-dividing with a given bounding box &#039;@bbox&#039;, creating the indices.&lt;br /&gt;
&lt;br /&gt;
  SELECT * INTO {dataset}&lt;br /&gt;
  FROM {original dataset}&lt;br /&gt;
  WHERE ST_Intersects(@bbox, geo);&lt;br /&gt;
  CREATE SPATIAL INDEX idx ON {dataset} ([geo]);&lt;br /&gt;
&lt;br /&gt;
=== Query 2. A Non-spatial Selection: Count ===&lt;br /&gt;
Count all railroads.&lt;br /&gt;
&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset lines} l &lt;br /&gt;
  WHERE l.roadflg=&#039;Y&#039;;&lt;br /&gt;
&lt;br /&gt;
=== Query 3. Spatial Selection I: Intersect Point, Line and Polygons ===&lt;br /&gt;
Count all a) points, b) lines, c) polygons that intersect with a given bounding box &#039;@bbox&#039;.&lt;br /&gt;
&lt;br /&gt;
  a)&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset points} p&lt;br /&gt;
  WHERE ST_Intersects(@bbox, p.geo);&lt;br /&gt;
&lt;br /&gt;
  b)&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset lines} l &lt;br /&gt;
  WHERE ST_Intersects(@bbox, l.geo);&lt;br /&gt;
&lt;br /&gt;
  c)&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset polygons} pg &lt;br /&gt;
  WHERE ST_Intersects(@bbox, pg.geo);&lt;br /&gt;
&lt;br /&gt;
=== Query 4. Spatial Selection II: Distance within ===&lt;br /&gt;
Count all a) points, b) lines, c) polygons that are within 1000 meters from a given point &#039;@point&#039;. &lt;br /&gt;
&lt;br /&gt;
  a)&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset points} p &lt;br /&gt;
  WHERE ST_Distance(@point, geo) &amp;lt;= 1000;&lt;br /&gt;
&lt;br /&gt;
  b)&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset lines} l &lt;br /&gt;
  WHERE ST_Distance(@point, geo) &amp;lt;= 1000;&lt;br /&gt;
&lt;br /&gt;
  c)&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset polygons} pg &lt;br /&gt;
  WHERE ST_Distance(@point, geo) &amp;lt;= 1000;&lt;br /&gt;
&lt;br /&gt;
=== Query 5. Spatial Selection III: Intersect/Join Lines and Polygons ===&lt;br /&gt;
Count all railroads that intersect with a water area.&lt;br /&gt;
&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset lines} l, areawater_full pg&lt;br /&gt;
  WHERE ST_Intersects(pg.geom, l.geom) = 1 AND l.railflg = &#039;Y&#039;;&lt;br /&gt;
&lt;br /&gt;
== Datasets ==&lt;br /&gt;
&lt;br /&gt;
[[Bild:HSR_Spatial_Benchmark_Fig2.png|thumb|400px|right|Visualization of the Point (left) and polygon (right) data set.]]&lt;br /&gt;
&lt;br /&gt;
At the Free and Open Source Software for Geospatial Conference (FOSS4G) 2009, a &#039;Web Mapping Performance Shoot-out&#039; was performed which compared the open source GIS software products GeoServer and MapServer ([http://2009.foss4g.org/presentations/#presentation_109]). There, PostgreSQL/PostGIS and Oracle have been tested too. Several sets from the TIGER shapefiles of Texas that can be downloaded from the U.S. Census Bureau where used as data basis. Download the data from [http://wiki.osgeo.org/wiki/Benchmarking_2009#Data here]or from the original site  ([http://www.census.gov/geo/www/tiger/]).&lt;br /&gt;
&lt;br /&gt;
This data is proposed to use within this benchmark containing rivers, roads, railroads, Points-of-interest and water areas. The data originate from the following shape files:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Data sets from the TIGER shapefiles&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! Shape file name   || gnis_names09  || edges_merge     || areawater_merge&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| Type              || Point         || Multilinestring || Multipolygon &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| Number of records || 103,000       || Over 5 M        || 380,000 &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| SRID              || EPSG:4326     || EPSG:4326       || EPSG:4326 &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| Source            || GNIS database || TIGER 2008      || TIGER 2008 &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| Description || All line elements (rivers and roads) from the TIGER 2008 dataset for the state of Texas. || All locations and Point of interest for the state of Texas. || The TIGER set of polygons describing water surface for the state of Texas. &lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
These data sets are divided by a bounding-box procedure to subsets. Using these subsets the behavior of the respective DBMS can be observed in different-sized data sets. The figure to the right shows the gnis_names09 data set (left) and the areawater_merge data set (right).&lt;br /&gt;
&lt;br /&gt;
It follows the definition of the (sub-)datasets (coordinates in [[WGS94]]):&lt;br /&gt;
&lt;br /&gt;
=== Point data gnis_names09 ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Shapefile gnis_names09&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! style=&amp;quot;width:12em&amp;quot;| Subset || Number of records  || Bounding box&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_40000           ||style=&amp;quot;text-align:right&amp;quot;|  40,744   || -103.208 33.565,-103.208 28.435,-96.891 28.435,-96.891 33.565&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_60000           ||style=&amp;quot;text-align:right&amp;quot;|  60,051   || -104.006 34.213,-104.006 27.787,-96.093 27.787,-96.093 34.213&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_80000           ||style=&amp;quot;text-align:right&amp;quot;|  80,174   || -104.904 34.942,-104.904 27.058,-95.195 27.058,-95.195 34.942&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_100000          ||style=&amp;quot;text-align:right&amp;quot;| 100,498   || -106.168 35.968,-106.168 26.032,-93.932 26.032,-93.932 35.968&lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multilinestring data edges_merge ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Shapefile edges_merge&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! style=&amp;quot;width:12em&amp;quot;| Subset || Number of records  || Bounding box&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_500000               ||style=&amp;quot;text-align:right&amp;quot;|   500,282 || -102.169 32.720,-102.169 29.279,-97.930 29.279,-97.930 32.720&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_1000000              ||style=&amp;quot;text-align:right&amp;quot;| 1,001,665 || -103.109 33.484,-103.109 28.516,-96.991 28.516,-96.991 33.484&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_1500000              ||style=&amp;quot;text-align:right&amp;quot;| 1,498,936 || -103.518 33.816,-103.518 28.183,-96.581 28.183,-96.581 33.816&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_2000000              ||style=&amp;quot;text-align:right&amp;quot;| 2,007,473 || -104.605 34.699,-104.605 27.301,-95.494 27.301,-95.494 34.699&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_2500000              ||style=&amp;quot;text-align:right&amp;quot;| 2,498,941 || -106.041 35.865,-106.041 26.134,-94.058 26.134,-94.058 35.865&lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multipolygon data areawater_merge ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Shapefile areawater_merge&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! style=&amp;quot;width:12em&amp;quot;| Subset || Number of records  || Bounding box&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| areawater_100000           ||style=&amp;quot;text-align:right&amp;quot;| 100,860   || -102.789 33.224,-102.789 28.775,-97.310 28.775,-97.3102 33.224&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_150000           ||style=&amp;quot;text-align:right&amp;quot;| 150,655   || -103.261 33.608,-103.261 28.391,-96.838 28.391,-96.8380 33.608&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_200000           ||style=&amp;quot;text-align:right&amp;quot;| 200,814   || -103.674 33.943,-103.674 28.057,-96.425 28.057,-96.4257 33.943&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_250000           ||style=&amp;quot;text-align:right&amp;quot;| 249,685   || -104.272 34.429,-104.272 27.571,-95.827 27.571,-95.8272 34.429&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_300000           ||style=&amp;quot;text-align:right&amp;quot;| 299,965   || -104.691 34.769,-104.691 27.230,-95.408 27.230,-95.4083 34.769&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_350000           ||style=&amp;quot;text-align:right&amp;quot;| 350,449   || -105.536 35.455,-105.536 26.545,-94.563 26.545,-94.5637 35.455&lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Call for Comments and Call for Participation ==&lt;br /&gt;
&lt;br /&gt;
The &#039;HSR Texas Spatial Database Benchmark&#039; was conducted and verified by a first time in December 2009 during a Master Seminar by the Institute for Software at HSR. Two database management systems software (DBMS), one commercially available (Microsoft SQL Server 2008 Spatial) an one under an Open Source license (PostgreSQL 8.4.1/PostGIS 1.4.0), have been chosen. The results are currently evaluated and will probably be published in 2010.&lt;br /&gt;
&lt;br /&gt;
Two actions from researchers and volunteers may complement this research:&lt;br /&gt;
* Submit comments on the &#039;HSR Texas Spatial Database Benchmark&#039; itself.&lt;br /&gt;
* Do further experiments on existing DBMS.&lt;br /&gt;
&lt;br /&gt;
We are looking forward for a fruitful discussion!&lt;br /&gt;
&lt;br /&gt;
== Feedback, Discussion and Contact ==&lt;br /&gt;
&lt;br /&gt;
Please direct any comments either to the discussion page, to the [http://lists.osgeo.org/mailman/listinfo/benchmarking OSGEOs benchmarking mailing list] - or directly to [[Benutzer:Stefan|Prof. S. Keller from Institute for Software at HSR]].&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://wiki.osgeo.org/wiki/Benchmarking_2009#Data GeoServer vs. MapServer Benchmark 2009]&lt;br /&gt;
* List of benchmarks and performance tests: http://delicious.com/sfkeller/database+benchmark&lt;/div&gt;</summary>
		<author><name>Stefan2</name></author>
	</entry>
	<entry>
		<id>https://giswiki.ch/index.php?title=HSR_Texas_Geo_Database_Benchmark&amp;diff=25648</id>
		<title>HSR Texas Geo Database Benchmark</title>
		<link rel="alternate" type="text/html" href="https://giswiki.ch/index.php?title=HSR_Texas_Geo_Database_Benchmark&amp;diff=25648"/>
		<updated>2010-01-12T09:26:37Z</updated>

		<summary type="html">&lt;p&gt;Stefan2: /* Queries */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;The HSR Texas Spatial Database Benchmark&#039;&#039;&#039; - A Proposal&lt;br /&gt;
&lt;br /&gt;
Date of first proposal: December 21, 2009. &lt;br /&gt;
Status: Call for Comments and Call for Participation.&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
[[Bild:HSR_Spatial_Benchmark_Fig1.png|thumb|200px|right|Draft of the benchmark.]]&lt;br /&gt;
&lt;br /&gt;
This is a proposal for a spatial database benchmark from the University of Applied Sciences Rapperswil (HSR). A study of existing database benchmarks revealed that there exists no information publicly available which compares spatial database systems regarding their performance. Spatial &#039;database management systems&#039; (DMBS) typically form the persistence layer of a geographic information system (GIS). &lt;br /&gt;
&lt;br /&gt;
Thus the Institute for Software at the University of Applied Sciences Rapperswil (HSR) decided to propose such a benchmark. This benchmark is being called &#039;The HSR Texas Spatial Database Benchmark&#039; because it was defined from a HSR institute and because data comes from Texas USA. &lt;br /&gt;
&lt;br /&gt;
The benchmark is based on a predefined set of queries. These queries consist of simple spatial queries, defined in the OpenGIS(tm) &#039;Simple Features Interface Standard (SFS)&#039;. The queries are performed on different-sized data sets for monitoring the behavior on various loads as well as on different hardware systems. &lt;br /&gt;
&lt;br /&gt;
In the following sections the methodology, the queries are explained and the used datasets are defined. This proposal concludes with a Call for Comments about the benchmark as well as a Call for Participation to apply and test this benchmark on existing DBMS software.&lt;br /&gt;
&lt;br /&gt;
== Methodology ==&lt;br /&gt;
&lt;br /&gt;
The benchmark follows the below defined rules of engagement.&lt;br /&gt;
* Each test runs three times in a row, the results of the third run are used for the comparison: this benchmark assumes full system caches (&#039;hot&#039; benchmark).&lt;br /&gt;
* Each test takes place on the same machine.&lt;br /&gt;
* All other DBMS are shut down while the tests are running.&lt;br /&gt;
* Each DBMS has the same data which comes from real world data sets (as indicated below). &lt;br /&gt;
* The coordinate reference system used is spherical (geographical). &lt;br /&gt;
* Each test uses bounding box or point variables which are the same for the respective systems in the test. These variables are chosen at random from within the subset space.&lt;br /&gt;
&lt;br /&gt;
Any hardware used needs to be specified according to following points:&lt;br /&gt;
* System Type&lt;br /&gt;
* Model&lt;br /&gt;
* Processor&lt;br /&gt;
* RAM&lt;br /&gt;
* Hard drive&lt;br /&gt;
* Operating system&lt;br /&gt;
&lt;br /&gt;
There are two variants of the test: &amp;quot;No tuning/initial&amp;quot; and &amp;quot;Tuned&amp;quot;. &lt;br /&gt;
# The variant &amp;quot;No tuning/initial&amp;quot; is mandatory in order to make benchmarks more widely applicable. The respective default installation of one DBMS is used.&lt;br /&gt;
# The variant &amp;quot;Tuned&amp;quot; is optional and needs proper documentation of all tuned parameters and activities.&lt;br /&gt;
&lt;br /&gt;
== Queries ==&lt;br /&gt;
&lt;br /&gt;
The following queries are selected from the SQL functions defined by the SFS. The placeholder &#039;{dataset}&#039; will be substituted by the respective table names. The variable @bbox complies with randomly selected rectangular polygons in the geographical range of each data set, but which are the same for every system. The variable @point corresponds to a random point which is located in the area of the subsets. &amp;quot;geo&amp;quot; identifies the table column with geographical data. The following statements are given in pseudo SQL code.&lt;br /&gt;
&lt;br /&gt;
Variable(s) @bbox (tbd.): &lt;br /&gt;
* &#039;Aligned with grid&#039;: &amp;lt;code&amp;gt;POLYGON ((-101.3135 32.026, -101.3135 29.974, -98.7865 29.974, -98.7865 32.026, -101.3135 32.026))&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Variable(s) @point (tbd.): &lt;br /&gt;
* &amp;lt;code&amp;gt;POINT(-101.3135 32.026)&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Query 1. Loading the data === &lt;br /&gt;
Create tiered data subsets by sub-dividing with a given bounding box &#039;@bbox&#039;, creating the indices.&lt;br /&gt;
&lt;br /&gt;
  SELECT * INTO {dataset}&lt;br /&gt;
  FROM {original dataset}&lt;br /&gt;
  WHERE ST_Intersects(@bbox, geo);&lt;br /&gt;
  CREATE SPATIAL INDEX idx ON {dataset} ([geo]);&lt;br /&gt;
&lt;br /&gt;
=== Query 2. A Non-spatial Selection: Count ===&lt;br /&gt;
Count all railroads.&lt;br /&gt;
&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset lines} l &lt;br /&gt;
  WHERE l.roadflg=&#039;Y&#039;;&lt;br /&gt;
&lt;br /&gt;
=== Query 3. Spatial Selection I: Intersect Point, Line and Polygons ===&lt;br /&gt;
Count all a) points, b) lines, c) polygons that intersect with a given bounding box &#039;@bbox&#039;.&lt;br /&gt;
&lt;br /&gt;
  a)&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset points} p&lt;br /&gt;
  WHERE ST_Intersects(@bbox, p.geo);&lt;br /&gt;
&lt;br /&gt;
  b)&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset lines} l &lt;br /&gt;
  WHERE ST_Intersects(@bbox, l.geo);&lt;br /&gt;
&lt;br /&gt;
  c)&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset polygons} pg &lt;br /&gt;
  WHERE ST_Intersects(@bbox, pg.geo);&lt;br /&gt;
&lt;br /&gt;
=== Query 4. Spatial Selection II: Distance within ===&lt;br /&gt;
Count all a) points, b) lines, c) polygons that are within 1000 meters from a given point &#039;@point&#039;. &lt;br /&gt;
&lt;br /&gt;
  a)&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset points} p &lt;br /&gt;
  WHERE ST_Distance(@point, geo) &amp;lt;= 1000;&lt;br /&gt;
&lt;br /&gt;
  b)&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset lines} l &lt;br /&gt;
  WHERE ST_Distance(@point, geo) &amp;lt;= 1000;&lt;br /&gt;
&lt;br /&gt;
  c)&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset polygons} pg &lt;br /&gt;
  WHERE ST_Distance(@point, geo) &amp;lt;= 1000;&lt;br /&gt;
&lt;br /&gt;
=== Query 5. Spatial Selection III: Intersect/Join Lines and Polygons ===&lt;br /&gt;
Count all railroads that intersect with a water area.&lt;br /&gt;
&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset lines} l, areawater_full pg&lt;br /&gt;
  WHERE ST_Intersects(pg.geom, l.geom) = 1 AND l.railflg = &#039;Y&#039;;&lt;br /&gt;
&lt;br /&gt;
== Datasets ==&lt;br /&gt;
&lt;br /&gt;
[[Bild:HSR_Spatial_Benchmark_Fig2.png|thumb|400px|right|Visualization of the Point (left) and polygon (right) data set.]]&lt;br /&gt;
&lt;br /&gt;
At the Free and Open Source Software for Geospatial Conference (FOSS4G) 2009, a &#039;Web Mapping Performance Shoot-out&#039; was performed which compared the open source GIS software products GeoServer and MapServer ([http://2009.foss4g.org/presentations/#presentation_109]). There, PostgreSQL/PostGIS and Oracle have been tested too. Several sets from the TIGER shapefiles of Texas that can be downloaded from the U.S. Census Bureau where used as data basis. Download the data from [http://wiki.osgeo.org/wiki/Benchmarking_2009#Data here]or from the original site  ([http://www.census.gov/geo/www/tiger/]).&lt;br /&gt;
&lt;br /&gt;
This data is proposed to use within this benchmark containing rivers, roads, railroads, Points-of-interest and water areas. The data originate from the following shape files:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Data sets from the TIGER shapefiles&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! Shape file name   || gnis_names09  || edges_merge     || areawater_merge&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| Type              || Point         || Multilinestring || Multipolygon &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| Number of records || 103,000       || Over 5 M        || 380,000 &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| SRID              || EPSG:4326     || EPSG:4326       || EPSG:4326 &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| Source            || GNIS database || TIGER 2008      || TIGER 2008 &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| Description || All line elements (rivers and roads) from the TIGER 2008 dataset for the state of Texas. || All locations and Point of interest for the state of Texas. || The TIGER set of polygons describing water surface for the state of Texas. &lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
These data sets are divided by a bounding-box procedure to subsets. Using these subsets the behavior of the respective DBMS can be observed in different-sized data sets. The figure to the right shows the gnis_names09 data set (left) and the areawater_merge data set (right).&lt;br /&gt;
&lt;br /&gt;
It follows the definition of the (sub-)datasets (coordinates in [[WGS94]]):&lt;br /&gt;
&lt;br /&gt;
=== Point data gnis_names09 ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Shapefile gnis_names09&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! style=&amp;quot;width:12em&amp;quot;| Subset || Number of records  || Bounding box&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_40000           ||style=&amp;quot;text-align:right&amp;quot;|  40,744   || -103.208 33.565,-103.208 28.435,-96.891 28.435,-96.891 33.565&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_60000           ||style=&amp;quot;text-align:right&amp;quot;|  60,051   || -104.006 34.213,-104.006 27.787,-96.093 27.787,-96.093 34.213&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_80000           ||style=&amp;quot;text-align:right&amp;quot;|  80,174   || -104.904 34.942,-104.904 27.058,-95.195 27.058,-95.195 34.942&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_100000          ||style=&amp;quot;text-align:right&amp;quot;| 100,498   || -106.168 35.968,-106.168 26.032,-93.932 26.032,-93.932 35.968&lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multilinestring data edges_merge ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Shapefile edges_merge&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! style=&amp;quot;width:12em&amp;quot;| Subset || Number of records  || Bounding box&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_500000               ||style=&amp;quot;text-align:right&amp;quot;|   500,282 || -102.169 32.720,-102.169 29.279,-97.930 29.279,-97.930 32.720&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_1000000              ||style=&amp;quot;text-align:right&amp;quot;| 1,001,665 || -103.109 33.484,-103.109 28.516,-96.991 28.516,-96.991 33.484&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_1500000              ||style=&amp;quot;text-align:right&amp;quot;| 1,498,936 || -103.518 33.816,-103.518 28.183,-96.581 28.183,-96.581 33.816&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_2000000              ||style=&amp;quot;text-align:right&amp;quot;| 2,007,473 || -104.605 34.699,-104.605 27.301,-95.494 27.301,-95.494 34.699&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_2500000              ||style=&amp;quot;text-align:right&amp;quot;| 2,498,941 || -106.041 35.865,-106.041 26.134,-94.058 26.134,-94.058 35.865&lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multipolygon data areawater_merge ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Shapefile areawater_merge&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! style=&amp;quot;width:12em&amp;quot;| Subset || Number of records  || Bounding box&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| areawater_100000           ||style=&amp;quot;text-align:right&amp;quot;| 100,860   || -102.789 33.224,-102.789 28.775,-97.310 28.775,-97.3102 33.224&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_150000           ||style=&amp;quot;text-align:right&amp;quot;| 150,655   || -103.261 33.608,-103.261 28.391,-96.838 28.391,-96.8380 33.608&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_200000           ||style=&amp;quot;text-align:right&amp;quot;| 200,814   || -103.674 33.943,-103.674 28.057,-96.425 28.057,-96.4257 33.943&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_250000           ||style=&amp;quot;text-align:right&amp;quot;| 249,685   || -104.272 34.429,-104.272 27.571,-95.827 27.571,-95.8272 34.429&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_300000           ||style=&amp;quot;text-align:right&amp;quot;| 299,965   || -104.691 34.769,-104.691 27.230,-95.408 27.230,-95.4083 34.769&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_350000           ||style=&amp;quot;text-align:right&amp;quot;| 350,449   || -105.536 35.455,-105.536 26.545,-94.563 26.545,-94.5637 35.455&lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Call for Comments and Call for Participation ==&lt;br /&gt;
&lt;br /&gt;
The &#039;HSR Texas Spatial Database Benchmark&#039; was conducted and verified by a first time in December 2009 during a Master Seminar by the Institute for Software at HSR. Two database management systems software (DBMS), one commercially available (Microsoft SQL Server 2008 Spatial) an one under an Open Source license (PostgreSQL 8.4.1/PostGIS 1.4.0), have been chosen. The results are currently evaluated and will probably be published in 2010.&lt;br /&gt;
&lt;br /&gt;
Two actions from researchers and volunteers may complement this research:&lt;br /&gt;
* Submit comments on the &#039;HSR Texas Spatial Database Benchmark&#039; itself.&lt;br /&gt;
* Do further experiments on existing DBMS.&lt;br /&gt;
&lt;br /&gt;
We are looking forward for a fruitful discussion!&lt;br /&gt;
&lt;br /&gt;
== Feedback, Discussion and Contact ==&lt;br /&gt;
&lt;br /&gt;
Please direct any comments either to the discussion page, to the [http://lists.osgeo.org/mailman/listinfo/benchmarking OSGEOs benchmarking mailing list] - or directly to [[Benutzer:Stefan|Prof. S. Keller from Institute for Software at HSR]].&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://wiki.osgeo.org/wiki/Benchmarking_2009#Data GeoServer vs. MapServer Benchmark 2009]&lt;br /&gt;
* List of benchmarks and performance tests: http://delicious.com/sfkeller/database+benchmark&lt;/div&gt;</summary>
		<author><name>Stefan2</name></author>
	</entry>
	<entry>
		<id>https://giswiki.ch/index.php?title=HSR_Texas_Geo_Database_Benchmark&amp;diff=25647</id>
		<title>HSR Texas Geo Database Benchmark</title>
		<link rel="alternate" type="text/html" href="https://giswiki.ch/index.php?title=HSR_Texas_Geo_Database_Benchmark&amp;diff=25647"/>
		<updated>2010-01-12T09:20:53Z</updated>

		<summary type="html">&lt;p&gt;Stefan2: /* Queries */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;The HSR Texas Spatial Database Benchmark&#039;&#039;&#039; - A Proposal&lt;br /&gt;
&lt;br /&gt;
Date of first proposal: December 21, 2009. &lt;br /&gt;
Status: Call for Comments and Call for Participation.&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
[[Bild:HSR_Spatial_Benchmark_Fig1.png|thumb|200px|right|Draft of the benchmark.]]&lt;br /&gt;
&lt;br /&gt;
This is a proposal for a spatial database benchmark from the University of Applied Sciences Rapperswil (HSR). A study of existing database benchmarks revealed that there exists no information publicly available which compares spatial database systems regarding their performance. Spatial &#039;database management systems&#039; (DMBS) typically form the persistence layer of a geographic information system (GIS). &lt;br /&gt;
&lt;br /&gt;
Thus the Institute for Software at the University of Applied Sciences Rapperswil (HSR) decided to propose such a benchmark. This benchmark is being called &#039;The HSR Texas Spatial Database Benchmark&#039; because it was defined from a HSR institute and because data comes from Texas USA. &lt;br /&gt;
&lt;br /&gt;
The benchmark is based on a predefined set of queries. These queries consist of simple spatial queries, defined in the OpenGIS(tm) &#039;Simple Features Interface Standard (SFS)&#039;. The queries are performed on different-sized data sets for monitoring the behavior on various loads as well as on different hardware systems. &lt;br /&gt;
&lt;br /&gt;
In the following sections the methodology, the queries are explained and the used datasets are defined. This proposal concludes with a Call for Comments about the benchmark as well as a Call for Participation to apply and test this benchmark on existing DBMS software.&lt;br /&gt;
&lt;br /&gt;
== Methodology ==&lt;br /&gt;
&lt;br /&gt;
The benchmark follows the below defined rules of engagement.&lt;br /&gt;
* Each test runs three times in a row, the results of the third run are used for the comparison: this benchmark assumes full system caches (&#039;hot&#039; benchmark).&lt;br /&gt;
* Each test takes place on the same machine.&lt;br /&gt;
* All other DBMS are shut down while the tests are running.&lt;br /&gt;
* Each DBMS has the same data which comes from real world data sets (as indicated below). &lt;br /&gt;
* The coordinate reference system used is spherical (geographical). &lt;br /&gt;
* Each test uses bounding box or point variables which are the same for the respective systems in the test. These variables are chosen at random from within the subset space.&lt;br /&gt;
&lt;br /&gt;
Any hardware used needs to be specified according to following points:&lt;br /&gt;
* System Type&lt;br /&gt;
* Model&lt;br /&gt;
* Processor&lt;br /&gt;
* RAM&lt;br /&gt;
* Hard drive&lt;br /&gt;
* Operating system&lt;br /&gt;
&lt;br /&gt;
There are two variants of the test: &amp;quot;No tuning/initial&amp;quot; and &amp;quot;Tuned&amp;quot;. &lt;br /&gt;
# The variant &amp;quot;No tuning/initial&amp;quot; is mandatory in order to make benchmarks more widely applicable. The respective default installation of one DBMS is used.&lt;br /&gt;
# The variant &amp;quot;Tuned&amp;quot; is optional and needs proper documentation of all tuned parameters and activities.&lt;br /&gt;
&lt;br /&gt;
== Queries ==&lt;br /&gt;
&lt;br /&gt;
The following queries are selected from the SQL functions defined by the SFS. The placeholder &#039;{dataset}&#039; will be substituted by the respective table names. The variable @bbox complies with randomly selected rectangular polygons in the geographical range of each data set, but which are the same for every system. The variable @point corresponds to a random point which is located in the area of the subsets. &amp;quot;geo&amp;quot; identifies the table column with geographical data. The following statements are given in pseudo SQL code.&lt;br /&gt;
&lt;br /&gt;
* Variable @bbox (tbd.): &amp;lt;code&amp;gt;POLYGON ((-101.3135 32.026, -101.3135 29.974, -98.7865 29.974, -98.7865 32.026, -101.3135 32.026))&amp;lt;/code&amp;gt;.&lt;br /&gt;
* Variable @point (tbd.): &amp;lt;code&amp;gt;POINT(...)&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Query 1. Loading the data === &lt;br /&gt;
Create tiered data subsets by sub-dividing with a given bounding box &#039;@bbox&#039;, creating the indices.&lt;br /&gt;
&lt;br /&gt;
  SELECT * INTO {dataset}&lt;br /&gt;
  FROM {original dataset}&lt;br /&gt;
  WHERE ST_Intersects(@bbox, geo);&lt;br /&gt;
  CREATE SPATIAL INDEX idx ON {dataset} ([geo]);&lt;br /&gt;
&lt;br /&gt;
=== Query 2. A Non-spatial Selection: Count ===&lt;br /&gt;
Count all railroads.&lt;br /&gt;
&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset lines} l &lt;br /&gt;
  WHERE l.roadflg=&#039;Y&#039;;&lt;br /&gt;
&lt;br /&gt;
=== Query 3. Spatial Selection I: Intersect Point, Line and Polygons ===&lt;br /&gt;
Count all a) points, b) lines, c) polygons that intersect with a given bounding box &#039;@bbox&#039;.&lt;br /&gt;
&lt;br /&gt;
  a)&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset points} p&lt;br /&gt;
  WHERE ST_Intersects(@bbox, p.geo);&lt;br /&gt;
&lt;br /&gt;
  b)&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset lines} l &lt;br /&gt;
  WHERE ST_Intersects(@bbox, l.geo);&lt;br /&gt;
&lt;br /&gt;
  c)&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset polygons} pg &lt;br /&gt;
  WHERE ST_Intersects(@bbox, pg.geo);&lt;br /&gt;
&lt;br /&gt;
=== Query 4. Spatial Selection II: Distance within ===&lt;br /&gt;
Count all a) points, b) lines, c) polygons that are within 1000 meters from a given point &#039;@point&#039;. &lt;br /&gt;
&lt;br /&gt;
  a)&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset points} p &lt;br /&gt;
  WHERE ST_Distance(@point, geo) &amp;lt;= 1000;&lt;br /&gt;
&lt;br /&gt;
  b)&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset lines} l &lt;br /&gt;
  WHERE ST_Distance(@point, geo) &amp;lt;= 1000;&lt;br /&gt;
&lt;br /&gt;
  c)&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset polygons} pg &lt;br /&gt;
  WHERE ST_Distance(@point, geo) &amp;lt;= 1000;&lt;br /&gt;
&lt;br /&gt;
=== Query 5. Spatial Selection III: Intersect/Join Lines and Polygons ===&lt;br /&gt;
Count all railroads that intersect with a water area.&lt;br /&gt;
&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset lines} l, areawater_full pg&lt;br /&gt;
  WHERE ST_Intersects(pg.geom, l.geom) = 1 AND l.railflg = &#039;Y&#039;;&lt;br /&gt;
&lt;br /&gt;
== Datasets ==&lt;br /&gt;
&lt;br /&gt;
[[Bild:HSR_Spatial_Benchmark_Fig2.png|thumb|400px|right|Visualization of the Point (left) and polygon (right) data set.]]&lt;br /&gt;
&lt;br /&gt;
At the Free and Open Source Software for Geospatial Conference (FOSS4G) 2009, a &#039;Web Mapping Performance Shoot-out&#039; was performed which compared the open source GIS software products GeoServer and MapServer ([http://2009.foss4g.org/presentations/#presentation_109]). There, PostgreSQL/PostGIS and Oracle have been tested too. Several sets from the TIGER shapefiles of Texas that can be downloaded from the U.S. Census Bureau where used as data basis. Download the data from [http://wiki.osgeo.org/wiki/Benchmarking_2009#Data here]or from the original site  ([http://www.census.gov/geo/www/tiger/]).&lt;br /&gt;
&lt;br /&gt;
This data is proposed to use within this benchmark containing rivers, roads, railroads, Points-of-interest and water areas. The data originate from the following shape files:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Data sets from the TIGER shapefiles&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! Shape file name   || gnis_names09  || edges_merge     || areawater_merge&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| Type              || Point         || Multilinestring || Multipolygon &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| Number of records || 103,000       || Over 5 M        || 380,000 &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| SRID              || EPSG:4326     || EPSG:4326       || EPSG:4326 &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| Source            || GNIS database || TIGER 2008      || TIGER 2008 &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| Description || All line elements (rivers and roads) from the TIGER 2008 dataset for the state of Texas. || All locations and Point of interest for the state of Texas. || The TIGER set of polygons describing water surface for the state of Texas. &lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
These data sets are divided by a bounding-box procedure to subsets. Using these subsets the behavior of the respective DBMS can be observed in different-sized data sets. The figure to the right shows the gnis_names09 data set (left) and the areawater_merge data set (right).&lt;br /&gt;
&lt;br /&gt;
It follows the definition of the (sub-)datasets (coordinates in [[WGS94]]):&lt;br /&gt;
&lt;br /&gt;
=== Point data gnis_names09 ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Shapefile gnis_names09&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! style=&amp;quot;width:12em&amp;quot;| Subset || Number of records  || Bounding box&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_40000           ||style=&amp;quot;text-align:right&amp;quot;|  40,744   || -103.208 33.565,-103.208 28.435,-96.891 28.435,-96.891 33.565&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_60000           ||style=&amp;quot;text-align:right&amp;quot;|  60,051   || -104.006 34.213,-104.006 27.787,-96.093 27.787,-96.093 34.213&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_80000           ||style=&amp;quot;text-align:right&amp;quot;|  80,174   || -104.904 34.942,-104.904 27.058,-95.195 27.058,-95.195 34.942&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_100000          ||style=&amp;quot;text-align:right&amp;quot;| 100,498   || -106.168 35.968,-106.168 26.032,-93.932 26.032,-93.932 35.968&lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multilinestring data edges_merge ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Shapefile edges_merge&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! style=&amp;quot;width:12em&amp;quot;| Subset || Number of records  || Bounding box&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_500000               ||style=&amp;quot;text-align:right&amp;quot;|   500,282 || -102.169 32.720,-102.169 29.279,-97.930 29.279,-97.930 32.720&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_1000000              ||style=&amp;quot;text-align:right&amp;quot;| 1,001,665 || -103.109 33.484,-103.109 28.516,-96.991 28.516,-96.991 33.484&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_1500000              ||style=&amp;quot;text-align:right&amp;quot;| 1,498,936 || -103.518 33.816,-103.518 28.183,-96.581 28.183,-96.581 33.816&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_2000000              ||style=&amp;quot;text-align:right&amp;quot;| 2,007,473 || -104.605 34.699,-104.605 27.301,-95.494 27.301,-95.494 34.699&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_2500000              ||style=&amp;quot;text-align:right&amp;quot;| 2,498,941 || -106.041 35.865,-106.041 26.134,-94.058 26.134,-94.058 35.865&lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multipolygon data areawater_merge ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Shapefile areawater_merge&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! style=&amp;quot;width:12em&amp;quot;| Subset || Number of records  || Bounding box&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| areawater_100000           ||style=&amp;quot;text-align:right&amp;quot;| 100,860   || -102.789 33.224,-102.789 28.775,-97.310 28.775,-97.3102 33.224&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_150000           ||style=&amp;quot;text-align:right&amp;quot;| 150,655   || -103.261 33.608,-103.261 28.391,-96.838 28.391,-96.8380 33.608&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_200000           ||style=&amp;quot;text-align:right&amp;quot;| 200,814   || -103.674 33.943,-103.674 28.057,-96.425 28.057,-96.4257 33.943&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_250000           ||style=&amp;quot;text-align:right&amp;quot;| 249,685   || -104.272 34.429,-104.272 27.571,-95.827 27.571,-95.8272 34.429&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_300000           ||style=&amp;quot;text-align:right&amp;quot;| 299,965   || -104.691 34.769,-104.691 27.230,-95.408 27.230,-95.4083 34.769&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_350000           ||style=&amp;quot;text-align:right&amp;quot;| 350,449   || -105.536 35.455,-105.536 26.545,-94.563 26.545,-94.5637 35.455&lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Call for Comments and Call for Participation ==&lt;br /&gt;
&lt;br /&gt;
The &#039;HSR Texas Spatial Database Benchmark&#039; was conducted and verified by a first time in December 2009 during a Master Seminar by the Institute for Software at HSR. Two database management systems software (DBMS), one commercially available (Microsoft SQL Server 2008 Spatial) an one under an Open Source license (PostgreSQL 8.4.1/PostGIS 1.4.0), have been chosen. The results are currently evaluated and will probably be published in 2010.&lt;br /&gt;
&lt;br /&gt;
Two actions from researchers and volunteers may complement this research:&lt;br /&gt;
* Submit comments on the &#039;HSR Texas Spatial Database Benchmark&#039; itself.&lt;br /&gt;
* Do further experiments on existing DBMS.&lt;br /&gt;
&lt;br /&gt;
We are looking forward for a fruitful discussion!&lt;br /&gt;
&lt;br /&gt;
== Feedback, Discussion and Contact ==&lt;br /&gt;
&lt;br /&gt;
Please direct any comments either to the discussion page, to the [http://lists.osgeo.org/mailman/listinfo/benchmarking OSGEOs benchmarking mailing list] - or directly to [[Benutzer:Stefan|Prof. S. Keller from Institute for Software at HSR]].&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://wiki.osgeo.org/wiki/Benchmarking_2009#Data GeoServer vs. MapServer Benchmark 2009]&lt;br /&gt;
* List of benchmarks and performance tests: http://delicious.com/sfkeller/database+benchmark&lt;/div&gt;</summary>
		<author><name>Stefan2</name></author>
	</entry>
	<entry>
		<id>https://giswiki.ch/index.php?title=HSR_Texas_Geo_Database_Benchmark&amp;diff=25646</id>
		<title>HSR Texas Geo Database Benchmark</title>
		<link rel="alternate" type="text/html" href="https://giswiki.ch/index.php?title=HSR_Texas_Geo_Database_Benchmark&amp;diff=25646"/>
		<updated>2010-01-12T09:12:31Z</updated>

		<summary type="html">&lt;p&gt;Stefan2: /* Queries */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;The HSR Texas Spatial Database Benchmark&#039;&#039;&#039; - A Proposal&lt;br /&gt;
&lt;br /&gt;
Date of first proposal: December 21, 2009. &lt;br /&gt;
Status: Call for Comments and Call for Participation.&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
[[Bild:HSR_Spatial_Benchmark_Fig1.png|thumb|200px|right|Draft of the benchmark.]]&lt;br /&gt;
&lt;br /&gt;
This is a proposal for a spatial database benchmark from the University of Applied Sciences Rapperswil (HSR). A study of existing database benchmarks revealed that there exists no information publicly available which compares spatial database systems regarding their performance. Spatial &#039;database management systems&#039; (DMBS) typically form the persistence layer of a geographic information system (GIS). &lt;br /&gt;
&lt;br /&gt;
Thus the Institute for Software at the University of Applied Sciences Rapperswil (HSR) decided to propose such a benchmark. This benchmark is being called &#039;The HSR Texas Spatial Database Benchmark&#039; because it was defined from a HSR institute and because data comes from Texas USA. &lt;br /&gt;
&lt;br /&gt;
The benchmark is based on a predefined set of queries. These queries consist of simple spatial queries, defined in the OpenGIS(tm) &#039;Simple Features Interface Standard (SFS)&#039;. The queries are performed on different-sized data sets for monitoring the behavior on various loads as well as on different hardware systems. &lt;br /&gt;
&lt;br /&gt;
In the following sections the methodology, the queries are explained and the used datasets are defined. This proposal concludes with a Call for Comments about the benchmark as well as a Call for Participation to apply and test this benchmark on existing DBMS software.&lt;br /&gt;
&lt;br /&gt;
== Methodology ==&lt;br /&gt;
&lt;br /&gt;
The benchmark follows the below defined rules of engagement.&lt;br /&gt;
* Each test runs three times in a row, the results of the third run are used for the comparison: this benchmark assumes full system caches (&#039;hot&#039; benchmark).&lt;br /&gt;
* Each test takes place on the same machine.&lt;br /&gt;
* All other DBMS are shut down while the tests are running.&lt;br /&gt;
* Each DBMS has the same data which comes from real world data sets (as indicated below). &lt;br /&gt;
* The coordinate reference system used is spherical (geographical). &lt;br /&gt;
* Each test uses bounding box or point variables which are the same for the respective systems in the test. These variables are chosen at random from within the subset space.&lt;br /&gt;
&lt;br /&gt;
Any hardware used needs to be specified according to following points:&lt;br /&gt;
* System Type&lt;br /&gt;
* Model&lt;br /&gt;
* Processor&lt;br /&gt;
* RAM&lt;br /&gt;
* Hard drive&lt;br /&gt;
* Operating system&lt;br /&gt;
&lt;br /&gt;
There are two variants of the test: &amp;quot;No tuning/initial&amp;quot; and &amp;quot;Tuned&amp;quot;. &lt;br /&gt;
# The variant &amp;quot;No tuning/initial&amp;quot; is mandatory in order to make benchmarks more widely applicable. The respective default installation of one DBMS is used.&lt;br /&gt;
# The variant &amp;quot;Tuned&amp;quot; is optional and needs proper documentation of all tuned parameters and activities.&lt;br /&gt;
&lt;br /&gt;
== Queries ==&lt;br /&gt;
&lt;br /&gt;
The following queries are selected from the SQL functions defined by the SFS. The placeholder &#039;{dataset}&#039; will be substituted by the respective table names. The variable @bbox complies with randomly selected rectangular polygons in the geographical range of each data set, but which are the same for every system. The variable @point corresponds to a random point which is located in the area of the subsets. &amp;quot;geo&amp;quot; identifies the table column with geographical data. The following statements are given in pseudo SQL code.&lt;br /&gt;
&lt;br /&gt;
* Variable @bbox (tbd.): &amp;lt;code&amp;gt;POLYGON(...)&amp;lt;code&amp;gt;.&lt;br /&gt;
* Variable @point (tbd.): &amp;lt;code&amp;gt;POINT(...)&amp;lt;code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Query 1. Loading the data === &lt;br /&gt;
Create tiered data subsets by sub-dividing with a given bounding box &#039;@bbox&#039;, creating the indices.&lt;br /&gt;
&lt;br /&gt;
  SELECT * INTO {dataset}&lt;br /&gt;
  FROM {original dataset}&lt;br /&gt;
  WHERE ST_Intersects(@bbox, geo);&lt;br /&gt;
  CREATE SPATIAL INDEX idx ON {dataset} ([geo]);&lt;br /&gt;
&lt;br /&gt;
=== Query 2. A Non-spatial Selection: Count ===&lt;br /&gt;
Count all railroads.&lt;br /&gt;
&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset lines} l &lt;br /&gt;
  WHERE l.roadflg=&#039;Y&#039;;&lt;br /&gt;
&lt;br /&gt;
=== Query 3. Spatial Selection I: Intersect Point, Line and Polygons ===&lt;br /&gt;
Count all a) points, b) lines, c) polygons that intersect with a given bounding box &#039;@bbox&#039;.&lt;br /&gt;
&lt;br /&gt;
  a)&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset points} p&lt;br /&gt;
  WHERE ST_Intersects(@bbox, p.geo);&lt;br /&gt;
&lt;br /&gt;
  b)&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset lines} l &lt;br /&gt;
  WHERE ST_Intersects(@bbox, l.geo);&lt;br /&gt;
&lt;br /&gt;
  c)&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset polygons} pg &lt;br /&gt;
  WHERE ST_Intersects(@bbox, pg.geo);&lt;br /&gt;
&lt;br /&gt;
=== Query 4. Spatial Selection II: Distance within ===&lt;br /&gt;
Count all a) points, b) lines, c) polygons that are within 1000 meters from a given point &#039;@point&#039;. &lt;br /&gt;
&lt;br /&gt;
  a)&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset points} p &lt;br /&gt;
  WHERE ST_Distance(@point, geo) &amp;lt;= 1000;&lt;br /&gt;
&lt;br /&gt;
  b)&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset lines} l &lt;br /&gt;
  WHERE ST_Distance(@point, geo) &amp;lt;= 1000;&lt;br /&gt;
&lt;br /&gt;
  c)&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset polygons} pg &lt;br /&gt;
  WHERE ST_Distance(@point, geo) &amp;lt;= 1000;&lt;br /&gt;
&lt;br /&gt;
=== Query 5. Spatial Selection III: Intersect/Join Lines and Polygons ===&lt;br /&gt;
Count all railroads that intersect with a water area.&lt;br /&gt;
&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset lines} l, areawater_full pg&lt;br /&gt;
  WHERE ST_Intersects(pg.geom, l.geom) = 1 AND l.railflg = &#039;Y&#039;;&lt;br /&gt;
&lt;br /&gt;
== Datasets ==&lt;br /&gt;
&lt;br /&gt;
[[Bild:HSR_Spatial_Benchmark_Fig2.png|thumb|400px|right|Visualization of the Point (left) and polygon (right) data set.]]&lt;br /&gt;
&lt;br /&gt;
At the Free and Open Source Software for Geospatial Conference (FOSS4G) 2009, a &#039;Web Mapping Performance Shoot-out&#039; was performed which compared the open source GIS software products GeoServer and MapServer ([http://2009.foss4g.org/presentations/#presentation_109]). There, PostgreSQL/PostGIS and Oracle have been tested too. Several sets from the TIGER shapefiles of Texas that can be downloaded from the U.S. Census Bureau where used as data basis. Download the data from [http://wiki.osgeo.org/wiki/Benchmarking_2009#Data here]or from the original site  ([http://www.census.gov/geo/www/tiger/]).&lt;br /&gt;
&lt;br /&gt;
This data is proposed to use within this benchmark containing rivers, roads, railroads, Points-of-interest and water areas. The data originate from the following shape files:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Data sets from the TIGER shapefiles&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! Shape file name   || gnis_names09  || edges_merge     || areawater_merge&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| Type              || Point         || Multilinestring || Multipolygon &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| Number of records || 103,000       || Over 5 M        || 380,000 &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| SRID              || EPSG:4326     || EPSG:4326       || EPSG:4326 &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| Source            || GNIS database || TIGER 2008      || TIGER 2008 &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| Description || All line elements (rivers and roads) from the TIGER 2008 dataset for the state of Texas. || All locations and Point of interest for the state of Texas. || The TIGER set of polygons describing water surface for the state of Texas. &lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
These data sets are divided by a bounding-box procedure to subsets. Using these subsets the behavior of the respective DBMS can be observed in different-sized data sets. The figure to the right shows the gnis_names09 data set (left) and the areawater_merge data set (right).&lt;br /&gt;
&lt;br /&gt;
It follows the definition of the (sub-)datasets (coordinates in [[WGS94]]):&lt;br /&gt;
&lt;br /&gt;
=== Point data gnis_names09 ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Shapefile gnis_names09&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! style=&amp;quot;width:12em&amp;quot;| Subset || Number of records  || Bounding box&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_40000           ||style=&amp;quot;text-align:right&amp;quot;|  40,744   || -103.208 33.565,-103.208 28.435,-96.891 28.435,-96.891 33.565&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_60000           ||style=&amp;quot;text-align:right&amp;quot;|  60,051   || -104.006 34.213,-104.006 27.787,-96.093 27.787,-96.093 34.213&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_80000           ||style=&amp;quot;text-align:right&amp;quot;|  80,174   || -104.904 34.942,-104.904 27.058,-95.195 27.058,-95.195 34.942&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_100000          ||style=&amp;quot;text-align:right&amp;quot;| 100,498   || -106.168 35.968,-106.168 26.032,-93.932 26.032,-93.932 35.968&lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multilinestring data edges_merge ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Shapefile edges_merge&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! style=&amp;quot;width:12em&amp;quot;| Subset || Number of records  || Bounding box&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_500000               ||style=&amp;quot;text-align:right&amp;quot;|   500,282 || -102.169 32.720,-102.169 29.279,-97.930 29.279,-97.930 32.720&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_1000000              ||style=&amp;quot;text-align:right&amp;quot;| 1,001,665 || -103.109 33.484,-103.109 28.516,-96.991 28.516,-96.991 33.484&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_1500000              ||style=&amp;quot;text-align:right&amp;quot;| 1,498,936 || -103.518 33.816,-103.518 28.183,-96.581 28.183,-96.581 33.816&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_2000000              ||style=&amp;quot;text-align:right&amp;quot;| 2,007,473 || -104.605 34.699,-104.605 27.301,-95.494 27.301,-95.494 34.699&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_2500000              ||style=&amp;quot;text-align:right&amp;quot;| 2,498,941 || -106.041 35.865,-106.041 26.134,-94.058 26.134,-94.058 35.865&lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multipolygon data areawater_merge ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Shapefile areawater_merge&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! style=&amp;quot;width:12em&amp;quot;| Subset || Number of records  || Bounding box&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| areawater_100000           ||style=&amp;quot;text-align:right&amp;quot;| 100,860   || -102.789 33.224,-102.789 28.775,-97.310 28.775,-97.3102 33.224&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_150000           ||style=&amp;quot;text-align:right&amp;quot;| 150,655   || -103.261 33.608,-103.261 28.391,-96.838 28.391,-96.8380 33.608&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_200000           ||style=&amp;quot;text-align:right&amp;quot;| 200,814   || -103.674 33.943,-103.674 28.057,-96.425 28.057,-96.4257 33.943&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_250000           ||style=&amp;quot;text-align:right&amp;quot;| 249,685   || -104.272 34.429,-104.272 27.571,-95.827 27.571,-95.8272 34.429&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_300000           ||style=&amp;quot;text-align:right&amp;quot;| 299,965   || -104.691 34.769,-104.691 27.230,-95.408 27.230,-95.4083 34.769&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_350000           ||style=&amp;quot;text-align:right&amp;quot;| 350,449   || -105.536 35.455,-105.536 26.545,-94.563 26.545,-94.5637 35.455&lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Call for Comments and Call for Participation ==&lt;br /&gt;
&lt;br /&gt;
The &#039;HSR Texas Spatial Database Benchmark&#039; was conducted and verified by a first time in December 2009 during a Master Seminar by the Institute for Software at HSR. Two database management systems software (DBMS), one commercially available (Microsoft SQL Server 2008 Spatial) an one under an Open Source license (PostgreSQL 8.4.1/PostGIS 1.4.0), have been chosen. The results are currently evaluated and will probably be published in 2010.&lt;br /&gt;
&lt;br /&gt;
Two actions from researchers and volunteers may complement this research:&lt;br /&gt;
* Submit comments on the &#039;HSR Texas Spatial Database Benchmark&#039; itself.&lt;br /&gt;
* Do further experiments on existing DBMS.&lt;br /&gt;
&lt;br /&gt;
We are looking forward for a fruitful discussion!&lt;br /&gt;
&lt;br /&gt;
== Feedback, Discussion and Contact ==&lt;br /&gt;
&lt;br /&gt;
Please direct any comments either to the discussion page, to the [http://lists.osgeo.org/mailman/listinfo/benchmarking OSGEOs benchmarking mailing list] - or directly to [[Benutzer:Stefan|Prof. S. Keller from Institute for Software at HSR]].&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://wiki.osgeo.org/wiki/Benchmarking_2009#Data GeoServer vs. MapServer Benchmark 2009]&lt;br /&gt;
* List of benchmarks and performance tests: http://delicious.com/sfkeller/database+benchmark&lt;/div&gt;</summary>
		<author><name>Stefan2</name></author>
	</entry>
	<entry>
		<id>https://giswiki.ch/index.php?title=HSR_Texas_Geo_Database_Benchmark&amp;diff=25645</id>
		<title>HSR Texas Geo Database Benchmark</title>
		<link rel="alternate" type="text/html" href="https://giswiki.ch/index.php?title=HSR_Texas_Geo_Database_Benchmark&amp;diff=25645"/>
		<updated>2010-01-12T09:11:07Z</updated>

		<summary type="html">&lt;p&gt;Stefan2: /* Queries */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;The HSR Texas Spatial Database Benchmark&#039;&#039;&#039; - A Proposal&lt;br /&gt;
&lt;br /&gt;
Date of first proposal: December 21, 2009. &lt;br /&gt;
Status: Call for Comments and Call for Participation.&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
[[Bild:HSR_Spatial_Benchmark_Fig1.png|thumb|200px|right|Draft of the benchmark.]]&lt;br /&gt;
&lt;br /&gt;
This is a proposal for a spatial database benchmark from the University of Applied Sciences Rapperswil (HSR). A study of existing database benchmarks revealed that there exists no information publicly available which compares spatial database systems regarding their performance. Spatial &#039;database management systems&#039; (DMBS) typically form the persistence layer of a geographic information system (GIS). &lt;br /&gt;
&lt;br /&gt;
Thus the Institute for Software at the University of Applied Sciences Rapperswil (HSR) decided to propose such a benchmark. This benchmark is being called &#039;The HSR Texas Spatial Database Benchmark&#039; because it was defined from a HSR institute and because data comes from Texas USA. &lt;br /&gt;
&lt;br /&gt;
The benchmark is based on a predefined set of queries. These queries consist of simple spatial queries, defined in the OpenGIS(tm) &#039;Simple Features Interface Standard (SFS)&#039;. The queries are performed on different-sized data sets for monitoring the behavior on various loads as well as on different hardware systems. &lt;br /&gt;
&lt;br /&gt;
In the following sections the methodology, the queries are explained and the used datasets are defined. This proposal concludes with a Call for Comments about the benchmark as well as a Call for Participation to apply and test this benchmark on existing DBMS software.&lt;br /&gt;
&lt;br /&gt;
== Methodology ==&lt;br /&gt;
&lt;br /&gt;
The benchmark follows the below defined rules of engagement.&lt;br /&gt;
* Each test runs three times in a row, the results of the third run are used for the comparison: this benchmark assumes full system caches (&#039;hot&#039; benchmark).&lt;br /&gt;
* Each test takes place on the same machine.&lt;br /&gt;
* All other DBMS are shut down while the tests are running.&lt;br /&gt;
* Each DBMS has the same data which comes from real world data sets (as indicated below). &lt;br /&gt;
* The coordinate reference system used is spherical (geographical). &lt;br /&gt;
* Each test uses bounding box or point variables which are the same for the respective systems in the test. These variables are chosen at random from within the subset space.&lt;br /&gt;
&lt;br /&gt;
Any hardware used needs to be specified according to following points:&lt;br /&gt;
* System Type&lt;br /&gt;
* Model&lt;br /&gt;
* Processor&lt;br /&gt;
* RAM&lt;br /&gt;
* Hard drive&lt;br /&gt;
* Operating system&lt;br /&gt;
&lt;br /&gt;
There are two variants of the test: &amp;quot;No tuning/initial&amp;quot; and &amp;quot;Tuned&amp;quot;. &lt;br /&gt;
# The variant &amp;quot;No tuning/initial&amp;quot; is mandatory in order to make benchmarks more widely applicable. The respective default installation of one DBMS is used.&lt;br /&gt;
# The variant &amp;quot;Tuned&amp;quot; is optional and needs proper documentation of all tuned parameters and activities.&lt;br /&gt;
&lt;br /&gt;
== Queries ==&lt;br /&gt;
&lt;br /&gt;
The following queries are selected from the SQL functions defined by the SFS. The placeholder &#039;{dataset}&#039; will be substituted by the respective table names. The variable @bbox complies with randomly selected rectangular polygons in the geographical range of each data set, but which are the same for every system. The variable @point corresponds to a random point which is located in the area of the subsets. &amp;quot;geo&amp;quot; identifies the table column with geographical data. The following statements are given in pseudo SQL code.&lt;br /&gt;
&lt;br /&gt;
Variable @bbox (tbd.):&lt;br /&gt;
  nnn.nnn&lt;br /&gt;
  nnn.nnn&lt;br /&gt;
&lt;br /&gt;
Variable @point (tbd.):&lt;br /&gt;
  nnn.nnn&lt;br /&gt;
  nnn.nnn&lt;br /&gt;
&lt;br /&gt;
=== Query 1. Loading the data === &lt;br /&gt;
Create tiered data subsets by sub-dividing with a given bounding box &#039;@bbox&#039;, creating the indices.&lt;br /&gt;
&lt;br /&gt;
  SELECT * INTO {dataset}&lt;br /&gt;
  FROM {original dataset}&lt;br /&gt;
  WHERE ST_Intersects(@bbox, geo);&lt;br /&gt;
  CREATE SPATIAL INDEX idx ON {dataset} ([geo]);&lt;br /&gt;
&lt;br /&gt;
=== Query 2. A Non-spatial Selection: Count ===&lt;br /&gt;
Count all railroads.&lt;br /&gt;
&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset lines} l &lt;br /&gt;
  WHERE l.roadflg=&#039;Y&#039;;&lt;br /&gt;
&lt;br /&gt;
=== Query 3. Spatial Selection I: Intersect Point, Line and Polygons ===&lt;br /&gt;
Count all a) points, b) lines, c) polygons that intersect with a given bounding box &#039;@bbox&#039;.&lt;br /&gt;
&lt;br /&gt;
  a)&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset points} p&lt;br /&gt;
  WHERE ST_Intersects(@bbox, p.geo);&lt;br /&gt;
&lt;br /&gt;
  b)&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset lines} l &lt;br /&gt;
  WHERE ST_Intersects(@bbox, l.geo);&lt;br /&gt;
&lt;br /&gt;
  c)&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset polygons} pg &lt;br /&gt;
  WHERE ST_Intersects(@bbox, pg.geo);&lt;br /&gt;
&lt;br /&gt;
=== Query 4. Spatial Selection II: Distance within ===&lt;br /&gt;
Count all a) points, b) lines, c) polygons that are within 1000 meters from a given point &#039;@point&#039;. &lt;br /&gt;
&lt;br /&gt;
  a)&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset points} p &lt;br /&gt;
  WHERE ST_Distance(@point, geo) &amp;lt;= 1000;&lt;br /&gt;
&lt;br /&gt;
  b)&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset lines} l &lt;br /&gt;
  WHERE ST_Distance(@point, geo) &amp;lt;= 1000;&lt;br /&gt;
&lt;br /&gt;
  c)&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset polygons} pg &lt;br /&gt;
  WHERE ST_Distance(@point, geo) &amp;lt;= 1000;&lt;br /&gt;
&lt;br /&gt;
=== Query 5. Spatial Selection III: Intersect/Join Lines and Polygons ===&lt;br /&gt;
Count all railroads that intersect with a water area.&lt;br /&gt;
&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset lines} l, areawater_full pg&lt;br /&gt;
  WHERE ST_Intersects(pg.geom, l.geom) = 1 AND l.railflg = &#039;Y&#039;;&lt;br /&gt;
&lt;br /&gt;
== Datasets ==&lt;br /&gt;
&lt;br /&gt;
[[Bild:HSR_Spatial_Benchmark_Fig2.png|thumb|400px|right|Visualization of the Point (left) and polygon (right) data set.]]&lt;br /&gt;
&lt;br /&gt;
At the Free and Open Source Software for Geospatial Conference (FOSS4G) 2009, a &#039;Web Mapping Performance Shoot-out&#039; was performed which compared the open source GIS software products GeoServer and MapServer ([http://2009.foss4g.org/presentations/#presentation_109]). There, PostgreSQL/PostGIS and Oracle have been tested too. Several sets from the TIGER shapefiles of Texas that can be downloaded from the U.S. Census Bureau where used as data basis. Download the data from [http://wiki.osgeo.org/wiki/Benchmarking_2009#Data here]or from the original site  ([http://www.census.gov/geo/www/tiger/]).&lt;br /&gt;
&lt;br /&gt;
This data is proposed to use within this benchmark containing rivers, roads, railroads, Points-of-interest and water areas. The data originate from the following shape files:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Data sets from the TIGER shapefiles&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! Shape file name   || gnis_names09  || edges_merge     || areawater_merge&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| Type              || Point         || Multilinestring || Multipolygon &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| Number of records || 103,000       || Over 5 M        || 380,000 &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| SRID              || EPSG:4326     || EPSG:4326       || EPSG:4326 &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| Source            || GNIS database || TIGER 2008      || TIGER 2008 &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| Description || All line elements (rivers and roads) from the TIGER 2008 dataset for the state of Texas. || All locations and Point of interest for the state of Texas. || The TIGER set of polygons describing water surface for the state of Texas. &lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
These data sets are divided by a bounding-box procedure to subsets. Using these subsets the behavior of the respective DBMS can be observed in different-sized data sets. The figure to the right shows the gnis_names09 data set (left) and the areawater_merge data set (right).&lt;br /&gt;
&lt;br /&gt;
It follows the definition of the (sub-)datasets (coordinates in [[WGS94]]):&lt;br /&gt;
&lt;br /&gt;
=== Point data gnis_names09 ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Shapefile gnis_names09&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! style=&amp;quot;width:12em&amp;quot;| Subset || Number of records  || Bounding box&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_40000           ||style=&amp;quot;text-align:right&amp;quot;|  40,744   || -103.208 33.565,-103.208 28.435,-96.891 28.435,-96.891 33.565&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_60000           ||style=&amp;quot;text-align:right&amp;quot;|  60,051   || -104.006 34.213,-104.006 27.787,-96.093 27.787,-96.093 34.213&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_80000           ||style=&amp;quot;text-align:right&amp;quot;|  80,174   || -104.904 34.942,-104.904 27.058,-95.195 27.058,-95.195 34.942&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_100000          ||style=&amp;quot;text-align:right&amp;quot;| 100,498   || -106.168 35.968,-106.168 26.032,-93.932 26.032,-93.932 35.968&lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multilinestring data edges_merge ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Shapefile edges_merge&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! style=&amp;quot;width:12em&amp;quot;| Subset || Number of records  || Bounding box&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_500000               ||style=&amp;quot;text-align:right&amp;quot;|   500,282 || -102.169 32.720,-102.169 29.279,-97.930 29.279,-97.930 32.720&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_1000000              ||style=&amp;quot;text-align:right&amp;quot;| 1,001,665 || -103.109 33.484,-103.109 28.516,-96.991 28.516,-96.991 33.484&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_1500000              ||style=&amp;quot;text-align:right&amp;quot;| 1,498,936 || -103.518 33.816,-103.518 28.183,-96.581 28.183,-96.581 33.816&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_2000000              ||style=&amp;quot;text-align:right&amp;quot;| 2,007,473 || -104.605 34.699,-104.605 27.301,-95.494 27.301,-95.494 34.699&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_2500000              ||style=&amp;quot;text-align:right&amp;quot;| 2,498,941 || -106.041 35.865,-106.041 26.134,-94.058 26.134,-94.058 35.865&lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multipolygon data areawater_merge ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Shapefile areawater_merge&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! style=&amp;quot;width:12em&amp;quot;| Subset || Number of records  || Bounding box&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| areawater_100000           ||style=&amp;quot;text-align:right&amp;quot;| 100,860   || -102.789 33.224,-102.789 28.775,-97.310 28.775,-97.3102 33.224&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_150000           ||style=&amp;quot;text-align:right&amp;quot;| 150,655   || -103.261 33.608,-103.261 28.391,-96.838 28.391,-96.8380 33.608&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_200000           ||style=&amp;quot;text-align:right&amp;quot;| 200,814   || -103.674 33.943,-103.674 28.057,-96.425 28.057,-96.4257 33.943&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_250000           ||style=&amp;quot;text-align:right&amp;quot;| 249,685   || -104.272 34.429,-104.272 27.571,-95.827 27.571,-95.8272 34.429&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_300000           ||style=&amp;quot;text-align:right&amp;quot;| 299,965   || -104.691 34.769,-104.691 27.230,-95.408 27.230,-95.4083 34.769&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_350000           ||style=&amp;quot;text-align:right&amp;quot;| 350,449   || -105.536 35.455,-105.536 26.545,-94.563 26.545,-94.5637 35.455&lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Call for Comments and Call for Participation ==&lt;br /&gt;
&lt;br /&gt;
The &#039;HSR Texas Spatial Database Benchmark&#039; was conducted and verified by a first time in December 2009 during a Master Seminar by the Institute for Software at HSR. Two database management systems software (DBMS), one commercially available (Microsoft SQL Server 2008 Spatial) an one under an Open Source license (PostgreSQL 8.4.1/PostGIS 1.4.0), have been chosen. The results are currently evaluated and will probably be published in 2010.&lt;br /&gt;
&lt;br /&gt;
Two actions from researchers and volunteers may complement this research:&lt;br /&gt;
* Submit comments on the &#039;HSR Texas Spatial Database Benchmark&#039; itself.&lt;br /&gt;
* Do further experiments on existing DBMS.&lt;br /&gt;
&lt;br /&gt;
We are looking forward for a fruitful discussion!&lt;br /&gt;
&lt;br /&gt;
== Feedback, Discussion and Contact ==&lt;br /&gt;
&lt;br /&gt;
Please direct any comments either to the discussion page, to the [http://lists.osgeo.org/mailman/listinfo/benchmarking OSGEOs benchmarking mailing list] - or directly to [[Benutzer:Stefan|Prof. S. Keller from Institute for Software at HSR]].&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://wiki.osgeo.org/wiki/Benchmarking_2009#Data GeoServer vs. MapServer Benchmark 2009]&lt;br /&gt;
* List of benchmarks and performance tests: http://delicious.com/sfkeller/database+benchmark&lt;/div&gt;</summary>
		<author><name>Stefan2</name></author>
	</entry>
	<entry>
		<id>https://giswiki.ch/index.php?title=HSR_Texas_Geo_Database_Benchmark&amp;diff=25644</id>
		<title>HSR Texas Geo Database Benchmark</title>
		<link rel="alternate" type="text/html" href="https://giswiki.ch/index.php?title=HSR_Texas_Geo_Database_Benchmark&amp;diff=25644"/>
		<updated>2010-01-12T09:05:05Z</updated>

		<summary type="html">&lt;p&gt;Stefan2: /* Query 4. Spatial Selection II: Distance within */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;The HSR Texas Spatial Database Benchmark&#039;&#039;&#039; - A Proposal&lt;br /&gt;
&lt;br /&gt;
Date of first proposal: December 21, 2009. &lt;br /&gt;
Status: Call for Comments and Call for Participation.&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
[[Bild:HSR_Spatial_Benchmark_Fig1.png|thumb|200px|right|Draft of the benchmark.]]&lt;br /&gt;
&lt;br /&gt;
This is a proposal for a spatial database benchmark from the University of Applied Sciences Rapperswil (HSR). A study of existing database benchmarks revealed that there exists no information publicly available which compares spatial database systems regarding their performance. Spatial &#039;database management systems&#039; (DMBS) typically form the persistence layer of a geographic information system (GIS). &lt;br /&gt;
&lt;br /&gt;
Thus the Institute for Software at the University of Applied Sciences Rapperswil (HSR) decided to propose such a benchmark. This benchmark is being called &#039;The HSR Texas Spatial Database Benchmark&#039; because it was defined from a HSR institute and because data comes from Texas USA. &lt;br /&gt;
&lt;br /&gt;
The benchmark is based on a predefined set of queries. These queries consist of simple spatial queries, defined in the OpenGIS(tm) &#039;Simple Features Interface Standard (SFS)&#039;. The queries are performed on different-sized data sets for monitoring the behavior on various loads as well as on different hardware systems. &lt;br /&gt;
&lt;br /&gt;
In the following sections the methodology, the queries are explained and the used datasets are defined. This proposal concludes with a Call for Comments about the benchmark as well as a Call for Participation to apply and test this benchmark on existing DBMS software.&lt;br /&gt;
&lt;br /&gt;
== Methodology ==&lt;br /&gt;
&lt;br /&gt;
The benchmark follows the below defined rules of engagement.&lt;br /&gt;
* Each test runs three times in a row, the results of the third run are used for the comparison: this benchmark assumes full system caches (&#039;hot&#039; benchmark).&lt;br /&gt;
* Each test takes place on the same machine.&lt;br /&gt;
* All other DBMS are shut down while the tests are running.&lt;br /&gt;
* Each DBMS has the same data which comes from real world data sets (as indicated below). &lt;br /&gt;
* The coordinate reference system used is spherical (geographical). &lt;br /&gt;
* Each test uses bounding box or point variables which are the same for the respective systems in the test. These variables are chosen at random from within the subset space.&lt;br /&gt;
&lt;br /&gt;
Any hardware used needs to be specified according to following points:&lt;br /&gt;
* System Type&lt;br /&gt;
* Model&lt;br /&gt;
* Processor&lt;br /&gt;
* RAM&lt;br /&gt;
* Hard drive&lt;br /&gt;
* Operating system&lt;br /&gt;
&lt;br /&gt;
There are two variants of the test: &amp;quot;No tuning/initial&amp;quot; and &amp;quot;Tuned&amp;quot;. &lt;br /&gt;
# The variant &amp;quot;No tuning/initial&amp;quot; is mandatory in order to make benchmarks more widely applicable. The respective default installation of one DBMS is used.&lt;br /&gt;
# The variant &amp;quot;Tuned&amp;quot; is optional and needs proper documentation of all tuned parameters and activities.&lt;br /&gt;
&lt;br /&gt;
== Queries ==&lt;br /&gt;
&lt;br /&gt;
The following queries are selected from the SQL functions defined by the SFS. The placeholder &#039;{dataset}&#039; will be substituted by the respective table names. The variable @bbox complies with randomly selected rectangular polygons in the geographical range of each data set, but which are the same for every system. The variable @point corresponds to a random point which is located in the area of the subsets. &amp;quot;geo&amp;quot; identifies the table column with geographical data. The statements are given in pseudo SQL code.&lt;br /&gt;
&lt;br /&gt;
=== Query 1. Loading the data === &lt;br /&gt;
Create tiered data subsets by sub-dividing with a given bounding box &#039;@bbox&#039;, creating the indices.&lt;br /&gt;
&lt;br /&gt;
  SELECT * INTO {dataset}&lt;br /&gt;
  FROM {original dataset}&lt;br /&gt;
  WHERE ST_Intersects(@bbox, geo);&lt;br /&gt;
  CREATE SPATIAL INDEX idx ON {dataset} ([geo]);&lt;br /&gt;
&lt;br /&gt;
=== Query 2. A Non-spatial Selection: Count ===&lt;br /&gt;
Count all railroads.&lt;br /&gt;
&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset lines} l &lt;br /&gt;
  WHERE l.roadflg=&#039;Y&#039;;&lt;br /&gt;
&lt;br /&gt;
=== Query 3. Spatial Selection I: Intersect Point, Line and Polygons ===&lt;br /&gt;
Count all a) points, b) lines, c) polygons that intersect with a given bounding box &#039;@bbox&#039;.&lt;br /&gt;
&lt;br /&gt;
  a)&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset points} p&lt;br /&gt;
  WHERE ST_Intersects(@bbox, p.geo);&lt;br /&gt;
&lt;br /&gt;
  b)&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset lines} l &lt;br /&gt;
  WHERE ST_Intersects(@bbox, l.geo);&lt;br /&gt;
&lt;br /&gt;
  c)&lt;br /&gt;
  SELECT Count(*)&lt;br /&gt;
  FROM {dataset polygons} pg &lt;br /&gt;
  WHERE ST_Intersects(@bbox, pg.geo);&lt;br /&gt;
&lt;br /&gt;
=== Query 4. Spatial Selection II: Distance within ===&lt;br /&gt;
Count all a) points, b) lines, c) polygons that are within 1000 meters from a given point &#039;@point&#039;. &lt;br /&gt;
&lt;br /&gt;
  a)&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset points} p &lt;br /&gt;
  WHERE ST_Distance(@point, geo) &amp;lt;= 1000;&lt;br /&gt;
&lt;br /&gt;
  b)&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset lines} l &lt;br /&gt;
  WHERE ST_Distance(@point, geo) &amp;lt;= 1000;&lt;br /&gt;
&lt;br /&gt;
  c)&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset polygons} pg &lt;br /&gt;
  WHERE ST_Distance(@point, geo) &amp;lt;= 1000;&lt;br /&gt;
&lt;br /&gt;
=== Query 5. Spatial Selection III: Intersect/Join Lines and Polygons ===&lt;br /&gt;
Count all railroads that intersect with a water area.&lt;br /&gt;
&lt;br /&gt;
  SELECT COUNT(*)&lt;br /&gt;
  FROM {dataset lines} l, areawater_full pg&lt;br /&gt;
  WHERE ST_Intersects(pg.geom, l.geom) = 1 AND l.railflg = &#039;Y&#039;;&lt;br /&gt;
&lt;br /&gt;
== Datasets ==&lt;br /&gt;
&lt;br /&gt;
[[Bild:HSR_Spatial_Benchmark_Fig2.png|thumb|400px|right|Visualization of the Point (left) and polygon (right) data set.]]&lt;br /&gt;
&lt;br /&gt;
At the Free and Open Source Software for Geospatial Conference (FOSS4G) 2009, a &#039;Web Mapping Performance Shoot-out&#039; was performed which compared the open source GIS software products GeoServer and MapServer ([http://2009.foss4g.org/presentations/#presentation_109]). There, PostgreSQL/PostGIS and Oracle have been tested too. Several sets from the TIGER shapefiles of Texas that can be downloaded from the U.S. Census Bureau where used as data basis. Download the data from [http://wiki.osgeo.org/wiki/Benchmarking_2009#Data here]or from the original site  ([http://www.census.gov/geo/www/tiger/]).&lt;br /&gt;
&lt;br /&gt;
This data is proposed to use within this benchmark containing rivers, roads, railroads, Points-of-interest and water areas. The data originate from the following shape files:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Data sets from the TIGER shapefiles&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! Shape file name   || gnis_names09  || edges_merge     || areawater_merge&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| Type              || Point         || Multilinestring || Multipolygon &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| Number of records || 103,000       || Over 5 M        || 380,000 &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| SRID              || EPSG:4326     || EPSG:4326       || EPSG:4326 &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| Source            || GNIS database || TIGER 2008      || TIGER 2008 &lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| Description || All line elements (rivers and roads) from the TIGER 2008 dataset for the state of Texas. || All locations and Point of interest for the state of Texas. || The TIGER set of polygons describing water surface for the state of Texas. &lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
These data sets are divided by a bounding-box procedure to subsets. Using these subsets the behavior of the respective DBMS can be observed in different-sized data sets. The figure to the right shows the gnis_names09 data set (left) and the areawater_merge data set (right).&lt;br /&gt;
&lt;br /&gt;
It follows the definition of the (sub-)datasets (coordinates in [[WGS94]]):&lt;br /&gt;
&lt;br /&gt;
=== Point data gnis_names09 ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Shapefile gnis_names09&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! style=&amp;quot;width:12em&amp;quot;| Subset || Number of records  || Bounding box&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_40000           ||style=&amp;quot;text-align:right&amp;quot;|  40,744   || -103.208 33.565,-103.208 28.435,-96.891 28.435,-96.891 33.565&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_60000           ||style=&amp;quot;text-align:right&amp;quot;|  60,051   || -104.006 34.213,-104.006 27.787,-96.093 27.787,-96.093 34.213&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_80000           ||style=&amp;quot;text-align:right&amp;quot;|  80,174   || -104.904 34.942,-104.904 27.058,-95.195 27.058,-95.195 34.942&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| gnis_names_100000          ||style=&amp;quot;text-align:right&amp;quot;| 100,498   || -106.168 35.968,-106.168 26.032,-93.932 26.032,-93.932 35.968&lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multilinestring data edges_merge ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Shapefile edges_merge&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! style=&amp;quot;width:12em&amp;quot;| Subset || Number of records  || Bounding box&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_500000               ||style=&amp;quot;text-align:right&amp;quot;|   500,282 || -102.169 32.720,-102.169 29.279,-97.930 29.279,-97.930 32.720&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_1000000              ||style=&amp;quot;text-align:right&amp;quot;| 1,001,665 || -103.109 33.484,-103.109 28.516,-96.991 28.516,-96.991 33.484&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_1500000              ||style=&amp;quot;text-align:right&amp;quot;| 1,498,936 || -103.518 33.816,-103.518 28.183,-96.581 28.183,-96.581 33.816&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_2000000              ||style=&amp;quot;text-align:right&amp;quot;| 2,007,473 || -104.605 34.699,-104.605 27.301,-95.494 27.301,-95.494 34.699&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| edges_2500000              ||style=&amp;quot;text-align:right&amp;quot;| 2,498,941 || -106.041 35.865,-106.041 26.134,-94.058 26.134,-94.058 35.865&lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multipolygon data areawater_merge ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|+ style=&amp;quot;padding-bottom:1em;&amp;quot; | &#039;&#039;&#039;Table: Shapefile areawater_merge&#039;&#039;&#039;&lt;br /&gt;
|- bgcolor=&amp;quot;#e0e0e0&amp;quot;&lt;br /&gt;
! style=&amp;quot;width:12em&amp;quot;| Subset || Number of records  || Bounding box&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot;&lt;br /&gt;
| areawater_100000           ||style=&amp;quot;text-align:right&amp;quot;| 100,860   || -102.789 33.224,-102.789 28.775,-97.310 28.775,-97.3102 33.224&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_150000           ||style=&amp;quot;text-align:right&amp;quot;| 150,655   || -103.261 33.608,-103.261 28.391,-96.838 28.391,-96.8380 33.608&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_200000           ||style=&amp;quot;text-align:right&amp;quot;| 200,814   || -103.674 33.943,-103.674 28.057,-96.425 28.057,-96.4257 33.943&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_250000           ||style=&amp;quot;text-align:right&amp;quot;| 249,685   || -104.272 34.429,-104.272 27.571,-95.827 27.571,-95.8272 34.429&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_300000           ||style=&amp;quot;text-align:right&amp;quot;| 299,965   || -104.691 34.769,-104.691 27.230,-95.408 27.230,-95.4083 34.769&lt;br /&gt;
|- bgcolor=&amp;quot;#eeeeee&amp;quot; &lt;br /&gt;
| areawater_350000           ||style=&amp;quot;text-align:right&amp;quot;| 350,449   || -105.536 35.455,-105.536 26.545,-94.563 26.545,-94.5637 35.455&lt;br /&gt;
|- &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Call for Comments and Call for Participation ==&lt;br /&gt;
&lt;br /&gt;
The &#039;HSR Texas Spatial Database Benchmark&#039; was conducted and verified by a first time in December 2009 during a Master Seminar by the Institute for Software at HSR. Two database management systems software (DBMS), one commercially available (Microsoft SQL Server 2008 Spatial) an one under an Open Source license (PostgreSQL 8.4.1/PostGIS 1.4.0), have been chosen. The results are currently evaluated and will probably be published in 2010.&lt;br /&gt;
&lt;br /&gt;
Two actions from researchers and volunteers may complement this research:&lt;br /&gt;
* Submit comments on the &#039;HSR Texas Spatial Database Benchmark&#039; itself.&lt;br /&gt;
* Do further experiments on existing DBMS.&lt;br /&gt;
&lt;br /&gt;
We are looking forward for a fruitful discussion!&lt;br /&gt;
&lt;br /&gt;
== Feedback, Discussion and Contact ==&lt;br /&gt;
&lt;br /&gt;
Please direct any comments either to the discussion page, to the [http://lists.osgeo.org/mailman/listinfo/benchmarking OSGEOs benchmarking mailing list] - or directly to [[Benutzer:Stefan|Prof. S. Keller from Institute for Software at HSR]].&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://wiki.osgeo.org/wiki/Benchmarking_2009#Data GeoServer vs. MapServer Benchmark 2009]&lt;br /&gt;
* List of benchmarks and performance tests: http://delicious.com/sfkeller/database+benchmark&lt;/div&gt;</summary>
		<author><name>Stefan2</name></author>
	</entry>
	<entry>
		<id>https://giswiki.ch/index.php?title=Diskussion:RainAlarm&amp;diff=25643</id>
		<title>Diskussion:RainAlarm</title>
		<link rel="alternate" type="text/html" href="https://giswiki.ch/index.php?title=Diskussion:RainAlarm&amp;diff=25643"/>
		<updated>2010-01-12T09:01:53Z</updated>

		<summary type="html">&lt;p&gt;Stefan2: /* SB To Do */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== SB To Do ==&lt;br /&gt;
&lt;br /&gt;
To Do App.:&lt;br /&gt;
* Erkennen von &amp;quot;No Data&amp;quot; (&amp;quot;Fehlende Daten beim Bundesamt&amp;quot;) des Inputs (z.B. bei Betriebsausfall vom Monte Lama). Siehe z.B. die Abbildung rechts. [[Bild:Zppi_20090909_1310.png|thumb|200px|right| hier]]&lt;br /&gt;
* Ggf. Übernehmen der Klassifikation der Regen- und der Schneeintensität (auch wenn&#039;s nur ein mittlerer Wert pro Ellipse/&#039;niederschlags-Zelle&#039; ist)&lt;br /&gt;
* Filtern von kleinsten Pixelgruppen&lt;br /&gt;
* Erzeugen eines animierten GIFs, vom Web her zugänglich&lt;br /&gt;
* Anpassen des Response-Texts mit Datum/Zeit und (NEU, vgl. unten)&lt;br /&gt;
* Berücksichtigung von Grössenveränderung, Rotation/Richtungsänderung sowie Beschleunigung/Verlangsamung&lt;br /&gt;
* Die Koordinaten müssen innerhalb der Schweiz liegen, also zwischen 45 und 48 Grad Nord und zwischen 4 und 11 Grad Ost.&lt;br /&gt;
* Woher die Ausreisser, bei denen plötzlich kommt &amp;quot;Niederschlag unwahrscheinlich in den nächsten zwei Stunden!&amp;quot;??&lt;br /&gt;
&lt;br /&gt;
Unklar:&lt;br /&gt;
* RegionForecast.changePosition =&amp;gt; ?&lt;br /&gt;
* RainAlarm.java =&amp;gt; Texte anpassen: Siehe unten.&lt;br /&gt;
* Refactoring: MrGimoList?&lt;br /&gt;
* Ev. Weglassen der Kategorie &amp;quot;&amp;lt; 1.0 mm/h&amp;quot; im Radarbild (bedeutet kaum Regen) durch Bildvorverarbeitung (Schwellwert dunkler?).&lt;br /&gt;
&lt;br /&gt;
== Ausgabe-Texte ==&lt;br /&gt;
Texte (zusammengesetzt):&lt;br /&gt;
* Niederschlag unwahrscheinlich in den nächsten zwei Stunden! (2010-12-31 17:05+01:00)&lt;br /&gt;
* Niederschlag möglich in ca. 56 Min.; er dauert voraussichtlich ca. 40 Min.! (2010-12-31 17:05+01:00)&lt;br /&gt;
* Niederschlag möglich in ca. 56 Min.; er dauert voraussichtlich über zwei Stunden! (2010-12-31 17:05+01:00)&lt;br /&gt;
* Aktuell Niederschlag; er dauert voraussichtlich noch ca. 23 Min.! (2010-12-31 17:05+01:00)&lt;br /&gt;
* Aktuell Niederschlag; er dauert voraussichtlich noch über zwei Stunden! (2010-12-31 17:05+01:00)&lt;br /&gt;
... gefolgt von &amp;quot;RainAlarm by http://labs.geometa.info/rainalarm (Quellen: SF Meteo und !MeteoSchweiz)&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Ausnahme-Texte:&lt;br /&gt;
* Und bei Problemen: Es ist ein Problem aufgetreten. Bitte versuchen Sie es später noch einmal.&lt;br /&gt;
* falls ausser Betrieb: Service zurzeit nicht in Betrieb. Versuchen Sie es später noch einmal.&lt;br /&gt;
* falls falsche oder fehlende Koordinaten: Koordinaten fehlen oder falsch. Siehe http://www.gis.hsr.ch/wiki/RainAlarm.&lt;br /&gt;
&lt;br /&gt;
== JSON ==&lt;br /&gt;
&lt;br /&gt;
Auruf: GET &amp;lt;URL&amp;gt;&amp;amp;format=json&lt;br /&gt;
&lt;br /&gt;
=== Beispiel: ===&lt;br /&gt;
&lt;br /&gt;
  {&lt;br /&gt;
    &amp;quot;message&amp;quot;:&amp;quot;Niederschlag unwahrscheinlich in den nächsten zwei Stunden!&amp;quot;, &lt;br /&gt;
    &amp;quot;raining&amp;quot;:false,&lt;br /&gt;
    &amp;quot;rainStart&amp;quot;:-1,&lt;br /&gt;
    &amp;quot;rainStop&amp;quot;:-1&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
=== JSON-Attributes: ===&lt;br /&gt;
&lt;br /&gt;
message: string&lt;br /&gt;
* &amp;quot;text&amp;quot; =&amp;gt; enthält die Informationen in Textform&lt;br /&gt;
&lt;br /&gt;
raining: boolean&lt;br /&gt;
* true =&amp;gt; es regnet&lt;br /&gt;
* false =&amp;gt; es regnet nicht&lt;br /&gt;
&lt;br /&gt;
rainStart: integer&lt;br /&gt;
* -1 =&amp;gt; start unbekannt&lt;br /&gt;
* 0 =&amp;gt; zurzeit Niederschlag&lt;br /&gt;
* 1... max =&amp;gt; start in x min&lt;br /&gt;
&lt;br /&gt;
rainStop: integer&lt;br /&gt;
* -1 =&amp;gt; stop Unbekannt&lt;br /&gt;
* 0... max =&amp;gt; stop in x min&lt;br /&gt;
&lt;br /&gt;
== RainAlarm.java ==&lt;br /&gt;
&lt;br /&gt;
Folgende Ausgabe gibt es (abhängig von start und stop):&lt;br /&gt;
* Kein arrivalNowcast (start): &amp;quot;Niederschlag unwahrscheinlich in den nächsten zwei Stunden!&amp;quot; (start = -1)&lt;br /&gt;
* arrivalNowcast (start):&lt;br /&gt;
** 1. &amp;quot;Aktuell Niederschlag.&amp;quot; (start = 0)&lt;br /&gt;
** 2. &amp;quot;Niederschlag möglich in ca. xx Min.&amp;quot; (start &amp;gt; 0)&lt;br /&gt;
* durationNowcast (stop):&lt;br /&gt;
** 1. &amp;quot;Er dauert voraussichtlich ca. yy Min.!&amp;quot; (stop &amp;gt; start)&lt;br /&gt;
** 2. &amp;quot;Er dauert voraussichtlich mehr als zwei Stunden!&amp;quot; (stop = -1)&lt;br /&gt;
&lt;br /&gt;
http://dev.ifs.hsr.ch/rainalarm/browser/trunk/rainalarm/src/ch/hsr/ifs/rainalarm/&lt;br /&gt;
&lt;br /&gt;
Die aktuelle Revision 76, Zeile 48 ff. sieht so aus:&lt;br /&gt;
    private String createSMS(int[] startStopRain) {&lt;br /&gt;
        int start = startStopRain[0];&lt;br /&gt;
        int stop = startStopRain[1];&lt;br /&gt;
        String duration = &amp;quot;&amp;quot;;&lt;br /&gt;
         &lt;br /&gt;
        if (start == -1)&lt;br /&gt;
            return &amp;quot;Kaum Niederschlag innert 2h.&amp;quot;;&lt;br /&gt;
        if (stop == -1)&lt;br /&gt;
            duration = &amp;quot;lÃ€nger als &amp;quot; + (120 - start) + &amp;quot; Min&amp;quot;;&lt;br /&gt;
        else&lt;br /&gt;
            duration = (stop - start) + &amp;quot;Min.&amp;quot;;&lt;br /&gt;
        if (start == 0)&lt;br /&gt;
            return &amp;quot;Es regnet(schneit) voraussichtlich noch &amp;quot; + duration + SUFFIX;&lt;br /&gt;
        &lt;br /&gt;
        return &amp;quot;Niederschlag mÃ¶glich in ca. &amp;quot; + start + &amp;quot; Min, dauert voraussichtlich &amp;quot; + duration + SUFFIX;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
Hier sollte 1. von Niederschlag die Rede sein und 2. sollte start (besser: arrivalNowcast) und stop (besser durationNowcast) angegeben werden - auch im Antwort-Text. Daher Neu, Zeile 48 ff. :&lt;br /&gt;
&lt;br /&gt;
    final int MAXFORECASTDURATION = 120;&lt;br /&gt;
    private String createSMS(int[] startStopRain) {&lt;br /&gt;
        int start = startStopRain[0];&lt;br /&gt;
        int stop = startStopRain[1];&lt;br /&gt;
        String durationText = &amp;quot;&amp;quot;;&lt;br /&gt;
        String text = &amp;quot;&amp;quot;;&lt;br /&gt;
        final int NODATA = -1;&lt;br /&gt;
        &lt;br /&gt;
        // Kein Niederschlag in Sicht&lt;br /&gt;
        if (start == NODATA)&lt;br /&gt;
            return &amp;quot;Niederschlag unwahrscheinlich in den nächsten zwei Stunden!&amp;quot;;&lt;br /&gt;
        &lt;br /&gt;
        // Niederschlag ins Sicht (mit Dauer) oder Niederschlag dauert an (noch Dauer...).&lt;br /&gt;
        if (stop == NODATA || (stop - start) &amp;gt;= MAXFORECASTDURATION) &lt;br /&gt;
            durationText = &amp;quot;; er dauert voraussichtlich lÃ€nger als&amp;quot; + (MAXFORECASTDURATION - start) + &amp;quot; Min.!&amp;quot;;&lt;br /&gt;
        else &lt;br /&gt;
            durationText = &amp;quot;; er dauert voraussichtlich ca. &amp;quot; + (stop - start) + &amp;quot; Min.!&amp;quot;;&lt;br /&gt;
        &lt;br /&gt;
        if (start == 0)&lt;br /&gt;
            text = &amp;quot;Aktuell Niederschlag&amp;quot; + durationText;&lt;br /&gt;
        else &lt;br /&gt;
            text = &amp;quot;Niederschlag mÃ¶glich in ca. &amp;quot; + start + &amp;quot; Min.&amp;quot; + durationText;&lt;br /&gt;
                    &lt;br /&gt;
        return text + SUFFIX;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
== Ideen ==&lt;br /&gt;
&lt;br /&gt;
Website:&lt;br /&gt;
* http://dev.ifs.hsr.ch/rainalarm/browser/trunk/rainalarm-website/src/ch/hsr/ifs/rainalarm/web/QueryHandler.java: 15: &amp;quot;Service zurzeit nicht in Dini Mueter Betrieb...&amp;quot; :-&amp;gt;&lt;br /&gt;
* SMS-Service  =&amp;gt; Reicht das noch dazu? &amp;quot;wenigstens&amp;quot; die standard-signature anpassen zu &amp;quot;www.gis.hsr.ch ,&amp;quot; (anstelle von &amp;quot;http://www.hsr.ch,&amp;quot; =&amp;gt; beachte auch das Komma)&lt;/div&gt;</summary>
		<author><name>Stefan2</name></author>
	</entry>
</feed>