Minor improvements to GEQO documentation.
authorNeil Conway
Sun, 22 Jan 2006 03:56:58 +0000 (03:56 +0000)
committerNeil Conway
Sun, 22 Jan 2006 03:56:58 +0000 (03:56 +0000)
doc/src/sgml/geqo.sgml

index 35bb36f22af6ee85a32189686340b6c8ecd45a41..a723f4411addbf5012fefbf6e183f3b70c2b4bba 100644 (file)
@@ -1,5 +1,5 @@
 
 
@@ -46,8 +46,8 @@ Genetic Optimizer
    
     Among all relational operators the most difficult one to process
     and optimize is the join. The number of
-    alternative plans to answer a query grows exponentially with the
-    number of joins included in it. Further optimization effort is
+    possible query plans grows exponentially with the
+    number of joins in the query. Further optimization effort is
     caused by the support of a variety of join
     methods (e.g., nested loop, hash join, merge join in
     PostgreSQL) to process individual joins
@@ -57,34 +57,30 @@ Genetic Optimizer
    
 
    
-    The current PostgreSQL optimizer
-    implementation performs a near-exhaustive
-    search over the space of alternative strategies. This
-    algorithm, first introduced in the System R
-    database, produces a near-optimal join order, but can take an
-    enormous amount of time and memory space when the number of joins
-    in the query grows large. This makes the ordinary
+    The normal PostgreSQL query optimizer
+    performs a near-exhaustive search over the
+    space of alternative strategies. This algorithm, first introduced
+    in IBM's System R database, produces a near-optimal join order,
+    but can take an enormous amount of time and memory space when the
+    number of joins in the query grows large. This makes the ordinary
     PostgreSQL query optimizer
     inappropriate for queries that join a large number of tables.
    
 
    
     The Institute of Automatic Control at the University of Mining and
-    Technology, in Freiberg, Germany, encountered the described problems as its
-    folks wanted to take the PostgreSQL DBMS as the backend for a decision
-    support knowledge based system for the maintenance of an electrical
-    power grid. The DBMS needed to handle large join queries for the
-    inference machine of the knowledge based system.
-   
-
-   
-    Performance difficulties in exploring the space of possible query
-    plans created the demand for a new optimization technique to be developed.
+    Technology, in Freiberg, Germany, encountered some problems when
+    it wanted to use PostgreSQL as the
+    backend for a decision support knowledge based system for the
+    maintenance of an electrical power grid. The DBMS needed to handle
+    large join queries for the inference machine of the knowledge
+    based system. The number of joins in these queries made using the
+    normal query optimizer infeasible.
    
 
    
     In the following we describe the implementation of a
-    Genetic Algorithm to solve the join
+    genetic algorithm to solve the join
     ordering problem in a manner that is efficient for queries
     involving large numbers of joins.