[RUS-WG] query and wsen

Xiaoyu Chen Xiaoyu.Chen at brunel.ac.uk
Thu Jul 12 22:37:20 CDT 2007


  

First of all, i would like to clarify and extend requirements on RUS query operation a little bit by classification of RUS operations in more generic way. 

The RUS operations can be roughly classifed by two main criteria:

1) Batch processing vs. Atomic Processing

Most of RUS operations are being defined targetting at batch processing on multiple usage record instances. However, this never stops the implementation put restrictions on atomic processing on single usage record per transaction. 

2) Synchronous vs. Asynchronous processing Being conformative to WS-I profile, the RUS operations are essentially stateless and only allow synchronous processing. There are potential problems for implementations, in paritcular for querying large amount of usage records/data. Then asynchronous processing is introduced for this porblem specifically. 

_But essentially, the potential issue can happen to any RUS operations._ 

for example, the RUS::insertUsageRecords allowing batch insertion of multiple usage records, which could be huge as well. The WS-enumeration specification does not do any good for insertion as well as other operations like update and deletion. Luckily there is not really any meaningful output for these operations. But the client-side does expect operation results and "RUSRecordIdList" as defined in current spec (version 1.7). We can easily add another status code, PENDING, within _RUS:operationResult_ and a session id within _RUSRecordIdList_ element corresponding to each usage record sequence as immediate returns for insert, update, deletion operations. Then we might need another operation to get the real execution status back to the client, _RUS::getOperationResult_ ?

Then coming back to WS-Enumeration and RUS query operations.

I basically agree on what Gilbert proposed solution by introducing WS-Enumeration operations quoted from Gilbert's message: >To sum up I want to suggest the following:

>1. Replace the extractUsageRecords operation >with the <wsen:Enumerate> method.

Would it be better to keep _RUS::extractUsageRecords operation (you mean version 1.9? because in version 1.7 is "RUS::extractRUSUsageRecords) for synchronous query, while using _wsen:Enumerate_ and _wsen:Pull_ for asynchrous query???? 

>2. State the servers SHOULD implement the ><wsman:OptimizeEnumeration> extension.

I looked the WS-management document, which covers many aspects on related specifications inculding ws-enumeration. I don't whether this document is approved or draft. But it would be easier to narrow specification dependencies for RUS specification? since the _RUS::extractUsageRecords_ does work on returning small number of usage records. 

>3. State the client MUST understand the result of a ><wsman:OptimizeEnumeration> extension if they >used this extension in their request. If leaving ws-management out scope, this point is not useful any more (see comments 2). 

(traker: http://forge.ogf.org/sf/go/artf5887?nav=1) <https://owa1.brunel.ac.uk/exchweb/bin/redir.asp?URL=http://forge.ogf.org/sf/go/artf5887?nav=1)> 

cheers! 

 


More information about the rus-wg mailing list