SamGrid Technical Assessment of SQL Builder (TEMPLATE v2.0) 5/17/04 Version 2.0 Participating for SamGrid: Rob Kennedy and Sinisa Veseli Participating for SQL Builder: Randy Herber 1) Project (and Related) Documentation a) http://d0db-dev.fnal.gov:8518/ChainsAndLinks/ b) SAM Design meeting presentations: 15 Jan 2004 c) Technical discussion in "An Updated Chains and Links Document" e-mail from Carmenita Moore, located in the sam-design archive at http://listserv.fnal.gov/scripts/wa.exe?A1=ind0312&L=sam-design#2 d) Dimension Grammar syntax: http://projects.fnal.gov/samgrid/randy/dim.html e) Documentation for AMI: http://isnpx1158.in2p3.fr:8180/AMI/index.html http://larbookkeeping.in2p3.fr/ 2) Project Overview: a few sentences on each. a) Problem Statement b) Project Definition/Mission Statement This project aims at replacing the existing db server functionality for resolving dimensions with something that is more flexible and maintainable. c) Project Organization - personnel, type of group involved, etc. Randy is the sole developer on this project at the moment. We need another person to work on this under Randy's supervision. d) Deliverables and Time-table (a short, simple list) Deliverables: 1) Re-implement the existing db server functionality related to dimensions 2) Avoid having to restart the server when there are changes to the dimension information. 3) Provide a more flexible language to specify things like "parents_of" or "children_of" 4) Return something other than a list of file names in response to the criteria. e.g. list of request_ids defined by a specific user." Time-table: None yet. e) Support Plan for Deliverables, Code Packages, and Documentation (short, simple description) No plan yet. 3) Project Plan in Detail: a chart of milestones, personnel, schedules. Here are the main tasks from the C&L web page by Carmenita. For more details on these, see the web page (item 1a). (1) C & L schema: done (2) Load of C&L tables with join info (3) Load of existing dimensions info (4) SQL Builder code: about 1 FTE month of Randy, 6 FTE months of a new developer (5) Parser: done (6) SAM db_server code mods (7) Documentation: language of new parser, SQL Builder Randy proposes that the first implementation of the SQL Builder be done in a way similar to the existing dimensions code, using nested SQL statements. Critical queries can be that optimized separately by hand. Randy would also like to see the SQL Builder to be separated from the db server and made into another service which communicates with the db_server via CORBA. This is so that its implementation language is not Python and could be either Java or C++. This however brings up issues like performance that need to be discussed. Project will be considered complete once the SQL Builder fully replaces the existing db server functionality related to dimensions. 4) Project Risk Assessment, Critical Path Items, Impact, and Fall-back Plans Needs to be revised once the project plans are finalized. It is critical that another developer joins the project as soon as possible. 5) Project Control a) Comparison to last assessment Since the original assessment there has been no progress on this project due to Randy's involvement in the CDF DFC Migration, and loss of Carmenita. b) Next assessment: when and who will conduct it The next assessment should be done once new developer starts working on the project, and we have finalized deliverables, milestones, etc. 6) Comments This project is considered to be the alternative to the SBIR II Enth implementation, which has licensing issues for use outside of Fermilab. Cfr: James P. Lewis, Fundamentals of Project Management, pages 26-27. .the end.