Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
CERN ORACLE DEVELOPERS FORUM 5 Nov 2001 Adding Mathematica Software to an ORACLE database Roberto Terenzi CNR-IFSI & INFN CERN Explorer Auriga Nautilus Niobe CERN ORACLE DEVELOPERS FORUM EXPLORER Experiment at Cern EXPLORER Building 171 Geneva 5 Nov 2001 Roberto Terenzi (ROG) Cnr INFN Cern 2 CERN ORACLE DEVELOPERS FORUM Adding Mathematica Software … Explorer 5 Nov 2001 Auriga Nautilus Niobe CERN ORACLE DEVELOPERS FORUM IGEC data at IGEC sites: IGEC= International Gravitational Event Collaboration Gravitational waves events: Amplitude Time Confident time interval (IGEC2000) SNR …….. Geneva 5 Nov 2001 Roberto Terenzi (ROG) Cnr INFN Cern Detectors data: on/off periods sensitivity ……. 4 CERN ORACLE DEVELOPERS FORUM Project Goals Both text and graphic data presentation. No special software requirements on Client-side (WEB Browsers only). Flexible architecture (distributed systems & resources ). Geneva 5 Nov 2001 Roberto Terenzi (ROG) Cnr INFN Cern 5 CERN ORACLE DEVELOPERS FORUM Hardware System Architecture ORACLE Server Middle-Tier Client(s) PC's SUN Ultra 10 CERN 0racle w/s's etc. (CNR-Rome) Server (WORLD) (cern Geneva) Internet internet = Internet connection Geneva 5 Nov 2001 Roberto Terenzi (ROG) Cnr INFN Cern 6 CERN ORACLE DEVELOPERS FORUM Hardware Architecture 3-Tier architecture benefits: – Client • any computer running a WEB Browser ( Netscape, Internet Explorer). – Middle-Tier • To shadow database implementation details to client (tables structure etc.): Client sees physics quantities, not ORACLE tables, columns etc. • To do not overload Oracle server with application software. Geneva 5 Nov 2001 Roberto Terenzi (ROG) Cnr INFN Cern 7 CERN ORACLE DEVELOPERS FORUM Software System Architecture ORACLE Server Middle-Tier Client Communication, Oracle Interface, WEB Browser 0racle Data elaboration & Data formatting HTML FORMS & PAGES = Internet connection Geneva 5 Nov 2001 Roberto Terenzi (ROG) Cnr INFN Cern SQL QUERY & DATA 8 CERN ORACLE DEVELOPERS FORUM Middle-Tier Software Architecture HTML FORMS & PAGES JAVA Servlet classes Methods Override post/get/service WEB Browser Custom Java Java Classes JDBC 0racle Servletrunner Java JLINK SQL QUERY & DATA Mathematica PACKAGES Mathematica Geneva 5 Nov 2001 Roberto Terenzi (ROG) Cnr INFN Cern = Internet connection 9 CERN ORACLE DEVELOPERS FORUM Application 1:Simple data Request (1) HTML FORMS & PAGES JAVA Servlet classes Methods Override post/get/service WEB Browser Custom Java Java Classes JDBC 0racle Servletrunner SQL QUERY & DATA Geneva 5 Nov 2001 Roberto Terenzi (ROG) Cnr INFN Cern = Internet connection 10 CERN ORACLE DEVELOPERS FORUM Application 1:Simple data Request (2) Client – Send HTML FORM for requesting data. – Display HTML page sent back by Middle-Tier. Middle-Tier – – – – Translate Html Form into sql queries . Send queries to Oracle. Get data from Oracle and format them. Send data as an Html page to client. Geneva 5 Nov 2001 Roberto Terenzi (ROG) Cnr INFN Cern 11 CERN ORACLE DEVELOPERS FORUM Why Mathematica? (1) Client Requirements: – Data Presentation (for example graphics) – Data elaboration (for example data filtering) Database administrator requirements: – Do not overload Oracle server with application programs. Geneva 5 Nov 2001 Roberto Terenzi (ROG) Cnr INFN Cern 12 CERN ORACLE DEVELOPERS FORUM Why Mathematica? (2) Client Requirements: – graphical presentation, – data elaboration and data filtering are “easy” using Mathematica. Database administrator requirements: – Mathematica can run outside Oracle server (Middle-Tier). Program Developer: – Application, i.e. Mathematica Package(s), can be developed by client too. Geneva 5 Nov 2001 Roberto Terenzi (ROG) Cnr INFN Cern 13 CERN ORACLE DEVELOPERS FORUM Application 2:Data elaboration (1) CLIENT MIDDLE-TIER HTML FORM HTML Page(GIF) SERVER SQL QUERIES Middle-Tier DATA Software Graphics DATA (GIF) 0racle DATA Mathematica Geneva 5 Nov 2001 Roberto Terenzi (ROG) Cnr INFN Cern 14 CERN ORACLE DEVELOPERS FORUM Application 2:Data elaboration (2) Client: – send HTML FORM to request data. Middle-Tier – translate Html Form into sql queries . – Send queries to Oracle. – get data from Oracle and elaborate them via Mathematica program. – send computed data as an Html page to client (text or GIF images as needed). Geneva 5 Nov 2001 Roberto Terenzi (ROG) Cnr INFN Cern 15 CERN ORACLE DEVELOPERS FORUM Application 2:Data elaboration (3) HTML FORMS & PAGES JAVA Servlet classes Methods Override post/get/service WEB Browser Custom Java Java Classes JDBC 0racle Servletrunner Java JLINK SQL QUERY & DATA Mathematica PACKAGES Mathematica Geneva 5 Nov 2001 Roberto Terenzi (ROG) Cnr INFN Cern = Internet connection 16 CERN ORACLE DEVELOPERS FORUM Mathematica Interface Software //open link to Mathematica: String [ ] args= {“-linkmode”,”launch”,math -mathlink”}; KerneLink ml= MathLinkFactory.createKernelLink(args); ……. JLINK •KerneLink •ml.evaluate(String command) •…... // Now load Mathematica Package(s): …….. ml.evaluate(”<<Graphics`Color`”); /* Standard packages */ ……. ml.evaluate (”<<MyPackage`MyModule`”); /*Custom Packages */ // Now send and get back data byte[ ] imageEX= ml.evaluate(mathCommand,width); Geneva 5 Nov 2001 Roberto Terenzi (ROG) Cnr INFN Cern 17 CERN ORACLE DEVELOPERS FORUM Application 3:Data warehousing (1) CLIENT MIDDLE-TIER (“Power” User) SQL QUERIES HTML FORM HTML Page SERVER Middle-Tier DATA 0racle Software INSERT DATA F(DATA) DATA Mathematica Geneva 5 Nov 2001 Roberto Terenzi (ROG) Cnr INFN Cern 18 CERN ORACLE DEVELOPERS FORUM Application 3:Data warehousing (2) Client (Administrator) send HTML FORM for data elaboration Middle-Tier – translate Html Form into sql queries . – Send queries to Oracle. – get data from Oracle and elaborate them via Mathematica program. – INSERT into Oracle tables computed data . Geneva 5 Nov 2001 Roberto Terenzi (ROG) Cnr INFN Cern 19 CERN ORACLE DEVELOPERS FORUM Scalability Client 1 Client 2 …….. Client_m PC's w/s's etc. Message dispatcher (WORLD) LAN M-T 1 ORACLE Server M-T 2 CERN 0racle ..... Server (cern Geneva) M-T n INTERNET Geneva 5 Nov 2001 Roberto Terenzi (ROG) Cnr INFN Cern 20 CERN ORACLE DEVELOPERS FORUM Adding Mathematica Software … Explorer 5 Nov 2001 Auriga Nautilus Niobe CERN ORACLE DEVELOPERS FORUM Mathematica on client side (1) _____________________ CLIENT ___________________________________ | HTML FORMS & PAGES | JAVA Servlet classes Methods Override post/get/service WEB Browser Custom Java Java Classes JDBC 0racle Servletrunner Java JMLINK SQL QUERY & DATA Mathematica PACKAGES Mathematica Geneva 5 Nov 2001 Roberto Terenzi (ROG) Cnr INFN Cern = Internet connection 22 CERN ORACLE DEVELOPERS FORUM Mathematica on client side (2) Servletrunner JAVA GUI Custom Java Servlet classes Classes Methods Override post/get/service Java JLINK HTML FORMS & Text 0racle Custom Java Classes Mathematica PACKAGES SQL QUERY & DATA Mathematica Java JDBC Geneva 5 Nov 2001 Roberto Terenzi (ROG) Cnr INFN Cern 23 CERN ORACLE DEVELOPERS FORUM Mathematica on client side (3) HTML FORMS & PAGES JAVA Servlet classes Methods Override post/get/service WEB Browser Custom Java Java Classes JDBC 0racle Servletrunner Java JLINK SQL QUERY & DATA Mathematica PACKAGES CLIENT Mathematica Geneva 5 Nov 2001 Roberto Terenzi (ROG) Cnr INFN Cern PACKAGES 24 CERN ORACLE DEVELOPERS FORUM Mathematica on client side (4) Servletrunner JAVA Notebook Custom Java Classes Servlet classes Methods Override post/get/service 0racle Mathematica Java Custom Java JLINK Classes HTML FORMS & TEXT Mathematica “calls” Java SQL QUERY & DATA Java JDBC Geneva 5 Nov 2001 Roberto Terenzi (ROG) Cnr INFN Cern 25