[Chinook] Re: Chinook
smontgom at bcgsc.ca
smontgom at bcgsc.ca
Wed Feb 9 10:26:43 PST 2005
Hi Vadim -
I'd recommend upgrading if possible. The new install has a GUI that will
help you add new services. (Try it out through one of the installers).
It will also have the job cacheing but will not have the SSL yet (as I'm
still working on that part).
The Perl Engine doesn't care whether the server is running in Web Services
or RMI mode. The Perl Engine is just a way that a Perl script talks to a
Chinook Client. It is the Chinook Client code that contacts servers.
>From before, I think you were mentioning that your two services talked to
each other and you need them to run in parallel. A wrapper then could be
written in any language. It would just kick-off both utilities in the
expected way on the command-line. For instance, say I wanted to run a
repeatmasked alignment.
1) I could repeat mask the sequences then send them to the desired
alignment algorithm or,
2) (The wrapper solution) I could also create a service called
repeat-masked aligner which is basically a wrapper that invokes
RepeatMasker then invokes an aligner like ClustalW, then returns the
result. So it is essentially one request.
Since one of your services is a web service. You could invoke it using
SOAP::Lite in perl then have the Chinook Server call that script. It
unfortunately adds another tier to the software - I'd like to be able to
do what Taverna does and allow you to just point at different web
service's URIs in addition to the Chinook thing of turning your arbitrary
utilities into web services. But this is fundamentally a very loose way
of operating unless, as my understanding, web services operate in either a
standard way or a way that users can easily interpret.
just integrating an arbitrary web service interface into chinook without
well-defined input/output relationships and a clear understanding of the
functionality being invoked would be useless for the majority of users.
i.e. imagine exporting a web service function of the form
String interpretDNA(String dna)
it would be useless from a client perspective because there is no way of
interpretting what it does... whereas, if a web service looked like this
PairwiseAlignment alignDNAUsingClustalW(Version version, DNASequence dna1,
DNASequence dna2, Parameters parameters)
it is in a form that the user may understand and be able to successfully
invoke.
Just to note though, this is something that I do want to integrate at a
later point by seeing if Chinook can adopt one of the data type ontologies
(like that provided by BioMoby, MyGrid or maybe ComparaGrid). Right now
though the schema of adding a service to Chinook is standardized in web
service format so it also guarantees a large amount of information about
the service that can be extracted by the client (version, developer,
input, output, etc. etc.) which would, I'm hoping, also be available from
integrated web services at some future point.
Right now though, I view commandline bioinformatics utilities more as
functional units then any application methods as exported from web
services; the latter not having as well-defined utility on their own. I
could later be proven wrong about that though... In theory there could be
no difference between the two - but in reality there definitely is, I
think it could be that web services don't enforce the one entry point to a
functional unit whereas, you are frequently guaranteed that any
bioinformatics utility on the commandline has well defined purpose and one
direct way of utilizing it.
Cheers,
Stephen
> Hi Stephen.
> I am using Chinook that I download in Desember and I did some custom
> changes to fit our needs. Do you think I should download latest version
> to be able to use connect/disconect (job chashing) and SSL ?
>
> By the way, is it possible to run Chinook Client as a Web Service for
> the Perl Engine? ( I see that Chinook Server can be deployed as Web
> Service).
>
> Also, I am trying to add couple new services to Chinook. I have one web
> service and one socket server. They were developed by someone. You
> mentioned before that I will need to write a wrapper for that kinde of
> services.
> What classes/modules would be the best place in Chinook to put htese
> wrappers ?
>
> Thank you for support.
>
> Vadim.
>
>>Hi Vadim -
>>
>>You will not be able to see jobs submitted with other GUIs but you can
>> see
>>all Perl jobs submitted through the Perl Engine attached to your instance
>>of the Chinook Client GUI.
>>
>>Basically, Perl scripts have to define a ChinookManager object that talks
>>to the instance of your Chinook Client (Perl Engine). They do this my
>>specifying a machine name and port. If you ensure that all incoming
>>requests go through your machine you can actually see the state of all
>> the
>>jobs.
>>
>>I have been working on some stuff that will give server adminstrators
>> more
>>info and control as to what is happening on servers. It is probably a
>>month off though. It will come out with the remote service administrator
>>which is about 50% done. (For configuring services on remote Chinook
>>servers - uses SSL/JAAS authentication on the server-side)
>>
>>Cheers,
>>Stephen
>>
>>
>>
>>
>>> Hi Stephen.
>>>I just realize that I didn't clear understand one thing.
>>>You said :
>>>
>>>
>>>
>>>>The only way you can see the status of the jobs submitted from the Perl
>>>>modules is to start the Perl Engine/Chinook Client with the parameter
>>>>-batch instead of the parameter -batch -nogui
>>>>This will start the client gui AND the perl engine. Any jobs submitted
>>>>
>>>>
>>>>from Perl scripts will show up in the client and can be monitored.
>>>
>>>
>>>>
>>>>
>>>My intention was to use Chinook Client as a manager of submitted jobs. I
>>>am going to keep it running all the time and I want to see all jobs
>>>submitted by different people using Perl Engine and the client (manager)
>>>that I started.
>>>If I will start Perl Engine and Chinook Client with -batch and then
>>>someone will start process -batch -nogui but using same peer node that
>>>run Chinook client. Can I see its jobs.
>>>So to be short, can I use Chinook client as a manager ?
>>>
>>>Vadim.
>>>
>>>
>>>
>>
>>
>>
>
>
More information about the chinook
mailing list