X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=doc%2Fvirt_db.xml;h=52f578e45fd28cbb3f5e1b36ae190472b0e403bd;hb=259a989d5f7d9c966caa44f2bffc08ee3798e3a5;hp=41b4a5e78a0fd04d22588e67135defe363feeeaa;hpb=271eaaa60ec419d64669cf0e9b5753d05365b798;p=metaproxy-moved-to-github.git diff --git a/doc/virt_db.xml b/doc/virt_db.xml index 41b4a5e..52f578e 100644 --- a/doc/virt_db.xml +++ b/doc/virt_db.xml @@ -1,30 +1,81 @@ - + + %idcommon; ]> - - + + + Metaproxy + Index Data + + virt_db 3mp - Metaproxy Module - - + Metaproxy Module + + virt_db - virtual database(s) + Metaproxy Virtual Databases Module - + DESCRIPTION This filter allows one Z39.50 database to be me mapped to - another target; or even multiple targets.. + another target; or even multiple targets. + + + The configuration of virt_db consists of zero or more + <virtual> elements each describing the + Z39.50 virtual database recognized. + The name of the database is the text content of the + <database> element which should be + first element inside the virtual section. + + + For Metaproxy 1.0.20 and later, the database is treated as a glob pattern. + This allows operators * (any number of any character) and + ? (any single character). The virtual sections are inspected in + the order given. The first matching virtual database is used. + + + Following that is one or more <target> + elements with the identifier of each target that the virtual database + maps to. If a database is given for a target (following a slash), that + database name is used as Z39.50 database for this target. If the + database is omitted for the target, the original (virtual) database + is used as Z39.50 database. + + + If multiple targets are given that has special meaning depending on the + filter following virt_db. If the following filter is load_balance, then + the load_balance filter will load balance between the targets given + (assuming they serve same content). If the following filter is multi, + then results will be merged from all targets instead. + + + The z3950_filter, on the other hand, does not support multiple targets. + + + For <virtual> a route may be given as + an attribute. This will make Metaproxy route traffic to the route + given. Note that virtual databases may not be combined if all + databases do not result in the same routing. - + + SCHEMA + + + + EXAMPLES - A typical configuration looks like this: + Consider this virt_db configuration: @@ -33,19 +84,36 @@ db2 - indexdata.dk/gils + z3950.indexdata.com/gils combined - indexdata.dk/gils + z3950.indexdata.com/gils localhost:9999/Default + + db3 + z3950.indexdata.com/special + + + * + localhost:9999<-- database not altered --> + ]]> + This will offer 4 databases, db1, + db2, combined and + db3. If a Z39.50 specifies db1 + and db2 that will have same effect as specifying + the single database combined. + + + Since db3 routes differently from the other databases, + this database may not be combined with the others. - - + + SEE ALSO @@ -58,15 +126,19 @@ multi 3mp + + load_balance + 3mp + - + ©right; - -