LISTSERV mailing list manager LISTSERV 16.5

Help for QSERV-L Archives


QSERV-L Archives

QSERV-L Archives


QSERV-L@LISTSERV.SLAC.STANFORD.EDU


View:

Message:

[

First

|

Previous

|

Next

|

Last

]

By Topic:

[

First

|

Previous

|

Next

|

Last

]

By Author:

[

First

|

Previous

|

Next

|

Last

]

Font:

Proportional Font

LISTSERV Archives

LISTSERV Archives

QSERV-L Home

QSERV-L Home

QSERV-L  October 2013

QSERV-L October 2013

Subject:

notes from qserv mtg (Oct 15)

From:

Jacek Becla <[log in to unmask]>

Reply-To:

General discussion for qserv (LSST prototype baseline catalog)

Date:

Tue, 15 Oct 2013 13:14:53 -0700

Content-Type:

text/plain

Parts/Attachments:

Parts/Attachments

text/plain (146 lines)

[we skipped the mtg last Thursday, this was a replacement]

Present: Fabrice, Douglas, Bill, Serge, Jacek



Bill/logging
  - main uses of logging?
    - Debugging
    - Probably won't be doing heavy analytics as
      companies typically do
    - access patterns captured through mysql query log
      - which should probably be integrated into
        the new central logging:
         - eg, mysql can write to to file instead of table,
           and logging will take it from there
  - don't overdesign logging now!
  - avoid strong coupling with qserv, will make it easier
    to migrate in the future if we need to


Douglas
  - started looking at zookeeper, reading docs
    and installing
  - not clear yet what it could be used for
  - document all lessons learned, in 2 trac pages:
    dev log and summary
  - btw, kafka uses zookeeper


Fabrice
  - implemented start/stop service for qserv, (a.la. init.d)
  - have script that loads metadata, handy for testing,
    now can test only metadata loading. This all used
    to be hardcoded
  - working on W13 test data set, loaded metadata,
    trying which queries not working
  - automated testing is working, but many queries broken
    - Daniel working on fixing some of them in the parser
    - should easily work with buildbot
     - need to check with Robyn (but she is busy with FDR now)


Serge
  - is taking one more pass on the big parser ticket
  - looking into getting rid of config file for
    partitioner and duplicator, (custom config file
    format, probably better to swig c++/python, and
    talk to qms from python, it will be all simpler)
- next: applying fixes for concurrency
- and after than: getting rid of subchunks

- 2 layers of code that execute sql, probably related
   to the new shared scan code



Redesign (qserv core)
---------------------
  - lot of old, unused code in qserv, need to clean up
  - but also need to look at higher level class redesign
  - and even higher. Some of the key open questions:
    - how smart/dumb a worker should be?
       - perhaps a little smarter?
       - What are cons of having smarter worker?
           - want workers to be easily disposable
           - as we increase interface complexity,
             debugging gets harder

Things to redesign on the worker:
  - class redesign probably needed, eg queries are tracked
    by hash, there no hash collision strategy, nothing ever
    gets deleted, interractions for 2 queries that start at
    ~the same time might get mixed up
  - perhaps premerge on worker instead of sending individual
    chunk results to master
  - perhaps instead of sending individual queries to each
    subchunk, send simple template to worker, and worker
    distributes to subchunks (this increases worker complexity..)

modularity
  - master/worker separation is clean, but
    beyond that it quickly gets very murky
  - modules we thought would be useful to define:
    - query rewriting (this is on master only)
    - parsing logic (this is on master only)
    - thread pooling (this is needed both on M and W,
      probably will need one common module, plus two
      implementations: one for M and one for W, but
      this needs more thinking)
    - sql execution (mainly worker, but there are some
      things happening on the master too. Potentially
      the logic could be structured similarly to thread
      pooling: common plus 2 implementations)
    - xrootd glue layer
    - merging logic
    - c++ geometry (on master, could be used on worker)
    - logging (small module, eg for things like turning
      to json, the actual logging is called from everywhere)
    - metadata interface
    - chunk mapping

  - perhaps put each module in separate name space and
    subdirectory?
  - each module should have its own unit testing (perhaps
    its own directory for tests)

  - look at each class in the source code and try to assign
    it to module(s)
    --> action item: Bill will look into that, will have
        something that we can be used to drive discussion
        at the next meeting (this Thursday)
      - capture in trac page
        - definition of module, where it belongs (m/w/both), etc


Redesign (qserv installation/administration)
--------------------------------------------

  - two big things that need attention:
    a) packaging
    b) use of scons
    - modularity is not bad

Packaging
  - action item: evaluate eups, makes most sense if Fabrice/Emmanuel
    do that. Document in trac

Scons
  - evaluate use of scons, it is now heavily used in install,
    (and for building qserv)
  - scons-based build system for qserv needs major rework
  - it would be good to get some advice from some experts
    outside of qserv team
  - action item: write down what scons is doing / what we
    want from scons (Fabrice)
  - also, need to get rid of perl scripts

Jacek

########################################################################
Use REPLY-ALL to reply to list

To unsubscribe from the QSERV-L list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=QSERV-L&A=1

Top of Message | Previous Page | Permalink

Advanced Options


Options

Log In

Log In

Get Password

Get Password


Search Archives

Search Archives


Subscribe or Unsubscribe

Subscribe or Unsubscribe


Archives

March 2018
February 2018
January 2018
December 2017
August 2017
December 2016
November 2016
October 2016
September 2016
August 2016
July 2016
June 2016
May 2016
April 2016
March 2016
February 2016
January 2016
December 2015
November 2015
October 2015
September 2015
August 2015
July 2015
June 2015
May 2015
April 2015
March 2015
February 2015
January 2015
December 2014
November 2014
October 2014
September 2014
August 2014
July 2014
June 2014
May 2014
April 2014
March 2014
February 2014
January 2014
December 2013
November 2013
October 2013
September 2013
August 2013
July 2013
June 2013
May 2013
April 2013
March 2013
February 2013
January 2013
December 2012

ATOM RSS1 RSS2



LISTSERV.SLAC.STANFORD.EDU

Secured by F-Secure Anti-Virus CataList Email List Search Powered by the LISTSERV Email List Manager

Privacy Notice, Security Notice and Terms of Use