Print

Print


Hi Artem,

We will look into your suggestion as well.

One advantage using xrootd for now is that I set up a custom xrootd/ 
ibp server that any root client can use, with no configuration from  
the user.  This may just be a temporary demo until root speaks SRM,  
then maybe root can directly read from any SRM server. At this point,  
its still a demonstration and learning exercise, so we will look into  
a root plugin solution as well.

Thanks,
Dan

On Oct 24, 2006, at 3:16 AM, Artem Trunov wrote:

> Hi, Dan!
>
> Perhaps I am late with a comment, but it seems you could get away with
> just adding L-Store/IBP plug-in to ROOT itself, and open files in a  
> native
> mode of your storage. Which will be presumably more efficient than
> streaming a data first to xrootd then to a client. ROOT can already  
> talk many
> protocols, not just root.
>
> artem.
>
> On Thu, 19 Oct 2006, Daniel Engh wrote:
>
>>
>> On Oct 19, 2006, at 10:09 AM, Pavel Jakl wrote:
>>
>>> Hi guys,
>>>
>>> I am not sure that this is what Dan is trying to find. He would
>>> like to integrate his IBP into xrootd, not xrootd into IBP. What I
>>> understand from his email is to have a
>> yes IBP into xrootd
>>> IBP as a underlying file system. I am not quite sure, why he is
>>> trying to do it ? If he would like to take an advantage of the load
>>> balancing, aggregation or something else, what is done in xrootd in
>>> very efficient way.
>>> Dan, can you tell us what are your expectations from it ?
>>>
>> IBP with L-Store promises convenient and efficient access to large
>> amounts of distributed storage:
>> L-Store/IBP provides the option for replacing local disks with
>> efficient networking.
>> if interested check out:   http://www.lstore.org/mwiki/index.php/
>> Main_Page
>>
>> we are looking at hosting CMS data on distributed IBP depots and we
>> would like to provide a service
>> so root users can stream data directly from IBP into an interactive
>> root session.
>>
>> ibp load balancing or similar network-usage optimization will
>> eventuallly be handled by the l-store layer,  so xrootd+ibp+lors/ 
>> lstore
>> is only being used (initially) as a point to gather ibp data and
>> serve it via protocols root can understand.
>>
>> the other SRM work may also be a separate pathway for connecting root
>> to ibp and we'll look into other things as well
>> my understanding is that currently these SRM interface projects are
>> not yet ready for testing, or are just becoming available.
>>
>> thanks,
>> Dan
>>
>>> There was a recent work of integrating Berkeley SRM (at this time,
>>> just HRM) as a backend storage and I think, this what he would like
>>> to see.  Client has posix functions, but server not or I am not
>>> sure about them.
>>> You can take a look at Andy's recent presentation at CERN of
>>> integrating SRM into xrootd. There are slides explaining what you
>>> need to do, what to extend etc.
>>>
>>> http://indico.cern.ch/materialDisplay.py?
>>> contribId=s0t1&sessionId=s0&materialId=0&confId=a062357
>>>
>>> In other words, you would like to extend server's side oss layer
>>> and instead of file system calls, call your IBP io commands.
>>> You cannot see the Berkeley SRM work on the latest version of
>>> server which is available at the website.
>>>
>>> As I said, I am not sure that this is what you are trying to do.
>>> So, maybe, I am totally out of topic :-)
>>>
>>> Cheers
>>> Pavel
>>>
>>>
>>> Fabrizio Furano wrote:
>>>> Hi,
>>>>
>>>>  what JY says is correct, the only thing I want to add is that,
>>>> since you are writing C/C++ code (it seems) you may directly use
>>>> xrdclient, avoiding the posix wrappers which are built on it. Just
>>>> have a look at XrdClient.hh for the public interface.
>>>>
>>>> Fabrizio
>>>>
>>>>
>>>> Jean-Yves Nief wrote:
>>>>> hello Dan,
>>>>>
>>>>> Daniel Engh wrote:
>>>>>> Hi,
>>>>>>
>>>>>> I am from Vanderbilt University trying to hook up the Vanderbilt/
>>>>>> UT-Knoxville  L-Store/IBP storage backend to xrootd.
>>>>>>
>>>>>> basically IBP is a bit-torrent like distributed data-storage
>>>>>> system, LORS adds some file-system functionality analogous to
>>>>>> inodes,  and the new Vanderbilt L-Store is an SRM complient meta-
>>>>>> data layer on top of IBP.
>>>>>>
>>>>>> I have been playing with the latest development version of
>>>>>> xrootd downloadable from the web:
>>>>>> xrootd-20060523-1741.src.tgz
>>>>>>
>>>>>> I initially want to do a very simple file streaming test  of a
>>>>>> root file on ibp.  I'm not an expert on posix i/o but I think I
>>>>>> need only
>>>>>> use my posix-complient methods:
>>>>>>   int fd = xio_open(my_uri, O_RDONLY);
>>>>>> and
>>>>>>   xio_read(fd, buffer, bufsize)
>>>>>>
>>>>>> I need then 2 things from xrootd:
>>>>>> 1. location of the posix i/o calls I should modify
>>>>>> ie.  where is an xrootd posix open() call I can replace with
>>>>>> xio_open()
>>>>>> ie.  and then and xrootd posix  read() call I can replace with
>>>>>> xio_read()
>>>>>> 2. how do I launch xrootd to use my modified xrootd module
>>>>>> 3. how do I use root to call this xrootd/ibp streamed file.
>>>>>>
>>>>>> I've tested my lors/ibp libs with a simple c++ Hello IBP-world
>>>>>> program.
>>>>>> And I can compile IBP libs into xrootd and get things like an
>>>>>> xrootd init() call
>>>>>> to call xio_open() xio_read() and print out a hello-ibp message.
>>>>> on the client side, the Xrootd POSIX functions are for example:
>>>>> XrdPosix_Open, XrdPosix_Lseek, XrdPosix_Read etc...
>>>>> don't forget to include:
>>>>> XrdPosix/XrdPosix.hh
>>>>> you might take a look at the XrdPosix package in any case
>>>>> (README, etc...). You will find instructions on how to build the
>>>>> file URL in order to open it through xrootd, compile etc... If
>>>>> you wish, I can send you some sample code to use the posix
>>>>> clients + the make file.
>>>>> one other possibility (providing you are using the regular unix
>>>>> calls: open, read, write, but that is not your case at the
>>>>> moment) is to use the preload library. In that case, you can talk
>>>>> to a xrootd server without changing any single line of code (and
>>>>> without recompiling): the unix calls are redirected to the
>>>>> xrootd calls. It is a pretty nice feature, we have an experiment
>>>>> which is using it here (it has some little disadvantages).
>>>>> hope this help,
>>>>> JY
>>>>>>
>>>>>> Now I just need the correct place in xrootd to put in my ibp io
>>>>>> commands.
>>>>>>
>>>>>> Eventually I'd like to make xrootd recognize a couple of
>>>>>> protocols named:
>>>>>> lors://  and lstore://  but for now I can masquerade as some
>>>>>> other protocol
>>>>>> and just set up an xrootd service that is hard-coded to only
>>>>>> look into its IBP setup.
>>>>>>
>>>>>> thanks for any suggestions on how to get the latest code and
>>>>>> trying some things out,
>>>>>> Dan
>>>>>>
>>>
>>
>>