Print

Print


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
> >>>>
> >
>
>