Difference between revisions of "BES Aggregation"

From OPeNDAP Documentation
(How does aggregation work in the BES?)
Line 2: Line 2:
  
 
== How does aggregation work in the BES? ==
 
== How does aggregation work in the BES? ==
A request comes into the BES to reference some containers, create a definition using those containers adding constraints and specifying an aggregation engine to use, and then a get command to grab the containers, constrain them, and then aggregate. The command would look something like this:
+
A request comes into the BES that references some containers, create a definition using those containers adding constraints and specifying an aggregation engine to use and an aggregation command, and then a get command to grab the containers, constrain them, and then aggregate. The command would look something like this:
  
 
<pre>
 
<pre>

Revision as of 20:11, 2 March 2009

By default there are no aggregation engines installed with the BES. But there is a mechanism to register your own aggregation engine. This page will discuss how to go about doing that.

How does aggregation work in the BES?

A request comes into the BES that references some containers, create a definition using those containers adding constraints and specifying an aggregation engine to use and an aggregation command, and then a get command to grab the containers, constrain them, and then aggregate. The command would look something like this:

<?xml version="1.0" encoding="UTF-8"?>
<request reqID="some_unique_value" >
    <setContainer name="c1" space="catalog">/data/nc/fnoc1.nc</setContainer>
    <setContainer name="c2" space="catalog">/data/nc/fnoc2.nc</setContainer>
    <setContainer name="c3" space="catalog">/data/nc/fnoc3.nc</setContainer>
    <setContainer name="c4" space="catalog">/data/nc/fnoc4.nc</setContainer>
    <define name="d">
	<container name="c1">
            <constraint>u</constraint>
        </container>
	<container name="c2">
            <constraint>u</constraint>
        </container>
	<container name="c3">
            <constraint>u</constraint>
        </container>
	<container name="c4">
            <constraint>u</constraint>
        </container>
        <aggregate handler="someHandler" cmd="someCommand" />
    </define>
    <get type="dods" definition="d" />
</request>