Generic Database Explorer Xunyang Shen Demetrios Dimatos Madhujith Hapuarachchi.

Slides:



Advertisements
Similar presentations
1 CS 446 – Tutorial 6 Frid. Nov. 6 th, 2009 Implementation Tutorial.
Advertisements

The Collections Keeper A collections management system Brian J. Mullen.
NMD202 Web Scripting Week5. What we will cover today PHPmyAdmin Debugging – using print_r Modifying Data PHP (cont.) 4D Methodology File and IO operations.
SOFTWARE PRESENTATION ODMS (OPEN SOURCE DOCUMENT MANAGEMENT SYSTEM)
Toolbox Mirror -Overview Effective Distributed Learning.
Server-Side vs. Client-Side Scripting Languages
Concepts of Version Control A Technology-Independent View.
CS414 Project Team 7 Steve Culver Kevin Gorski Jenny Harris Tim Hunt Leon Organ Katie Overton Arin Sarros.
Basic concept Technologies we have used The Design Problems, challenges & solutions Educational Gain.
An Open Source ILS Independent OPAC Jackie Wrosch, Systems Librarian Eastern Michigan University.
11 3 / 12 CHAPTER Databases MIS105 Lec14 Irfan Ahmed Ilyas.
U of R eXtensible Catalog Team MetaCat. Problem Domain.
(NHA) The Laboratory of Computer Communication and Networking Network Host Analyzer.
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
Chapter 1 Introduction to Databases
Source Control Repositories for Enabling Team Working Svetlin Nakov Telerik Corporation
Database Management Systems (DBMS)
SubVersioN – the new Central Service at DESY by Marian Gawron.
By Steven Campbell and Erik Boone.  Sharing projects by putting them into a central repository.  Checking out copies of projects from the repository.
C o n f i d e n t i a l Developed By Nitendra NextHome Subject Name: Data Structure Using C Title: Overview of Data Structure.
Task Manager Software Engineering: CS 673 Spring 2009 John Spencer, Parag Shah, Rich Moffitt, Hassan Sobhie May 4, 2009.
October 30, 2008 Extensible Workflow Management for Simmod ESUG32, Frankfurt, Oct 30, 2008 Alexander Scharnweber (DLR) October 30, 2008 Slide 1 > Extensible.
8 Chapter Eight Server-side Scripts. 8 Chapter Objectives Create dynamic Web pages that retrieve and display database data using Active Server Pages Process.
Working With Large Datasets in Corporate Settings Ed Bassin
About Dynamic Sites (Front End / Back End Implementations) by Janssen & Associates Affordable Website Solutions for Individuals and Small Businesses.
Tutorial 10 Adding Spry Elements and Database Functionality Dreamweaver CS3 Tutorial 101.
XP New Perspectives on Microsoft Office Access 2003 Tutorial 12 1 Microsoft Office Access 2003 Tutorial 12 – Managing and Securing a Database.
Codeigniter is an open source web application. It occupies a very small amount of space in the memory and is most useful for developers who aim to develop.
U:/msu/course/cse/103 Day 10, Slide 1 CSE 103 Students: Your BTs have been graded. See Erica or Jo with questions or stay.
Web Server Administration Chapter 7 Installing and Testing a Programming Environment.
Central Reconstruction System on the RHIC Linux Farm in Brookhaven Laboratory HEPIX - BNL October 19, 2004 Tomasz Wlodek - BNL.
Configuration Management (CM)
MyRx seeks to solve the problem that pharmacists and doctors experience when there is a lack of easy, instant, paperless communication between the two.
Chapter 15 Relational Implementation with DB2 David M. Kroenke Database Processing © 2000 Prentice Hall.
Lesson 1: Exploring Access Learning Objectives After studying this lesson, you will be able to: Start Access and identify elements of the application.
Syllabus Management System. The Problem There is need for a management system for syllabi that: Provides a simple and effective user interface Allows.
Creating PHPs to Insert, Update, and Delete Data CS 320.
Query – One of the objects in Microsoft Access – It can help users extract data, which meets the criteria defined by them, from a database file. – It must.
CERN-PH-SFT-SPI August Ernesto Rivera Contents Context Automation Results To Do…
DDM Monitoring David Cameron Pedro Salgado Ricardo Rocha.
Database Concepts Track 3: Managing Information using Database.
Copyright © 2006 Pilothouse Consulting Inc. All rights reserved. Search Overview Search Features: WSS and Office Search Architecture Content Sources and.
SRM Monitoring 12 th April 2007 Mirco Ciriello INFN-Pisa.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Slide 1 Use Case Packets.
NMD202 Web Scripting Week5. What we will cover today PHP & MySQL Displaying Dynamic Pages Exercises Modifying Data PHP Exercises Assignment 1.
D. Heynderickx DH Consultancy, Leuven, Belgium 22 April 2010EuroPlanet, London, UK.
Implementing and Using the SIRWEB Interface Setup of the CGI script and web procfile Connecting to your database using HTML Retrieving data using the CGI.
Web Design and Development. World Wide Web  World Wide Web (WWW or W3), collection of globally distributed text and multimedia documents and files 
Printing at CERN Rafal Otto, Juraj Sucik, CERN IT Department CHEP 2007 International Conference on Computing.
PERFORMANCE AND ANALYSIS WORKFLOW ISSUES US ATLAS Distributed Facility Workshop November 2012, Santa Cruz.
"Data sources index" a web application to list projects in Hadoop Luca Menichetti.
Accelerating PHP Applications Ilia Alshanetsky O’Reilly Open Source Convention August 3rd, 2005.
Our MP3 Search Engine Crawler –Searching for Artist Name –Searching for Song Title Website Difficulties Looking Back.
DB Current Status Polenkevich Irina. The general requirements on DB Access through the Internet; DB backup to do automatically (once per week);
SPI NIGHTLIES Alex Hodgkins. SPI nightlies  Build and test various software projects each night  Provide a nightlies summary page that displays all.
Engineering Projects In Community Service Matt Mooney Community Based Research University of Notre Dame.
3 Copyright © 2007, Oracle. All rights reserved. Using the RMAN Recovery Catalog.
Level 1-2 Trigger Data Base development Current status and overview Myron Campbell, Alexei Varganov, Stephen Miller University of Michigan August 17, 2000.
2.0 PROJECT INITIATION AND PLANNING The initiating and planning are the phase where process or workflow to develop the system will identify and planning.
Advanced Databases COMP3017 Dr Nicholas Gibbins
 Project Team: Suzana Vaserman David Fleish Moran Zafir Tzvika Stein  Academic adviser: Dr. Mayer Goldberg  Technical adviser: Mr. Guy Wiener.
  ONLINE DORMITORY RESERVATION SYSTEM By RAMYA VAKITY KOUSHIK KUMAR SURAGONI MOTHE ADITHYA    GRADUATE CAPSTONE SEMINAR PROJECT    Submitted in partial.
Source Control Repositories for Enabling Team Working Doncho Minkov Telerik Corporation
Christopher Seeley, Ralph Mattiaccio Ken Bodzak, Will Abeel, Danielle Maginnis.
INTRODUCTION TO DATABASES (MICROSOFT ACCESS)
JavaScript and Ajax (Ajax Tutorial)
Introduction What is a Database?.
Design and Programming
Database administration
Presentation transcript:

Generic Database Explorer Xunyang Shen Demetrios Dimatos Madhujith Hapuarachchi

Project Overview ► Original version of BDAP  Homepage with description Homepage  Generic Database Explorer ► Enhancements  Pending Queue  User Cached Results  Baby Databases ► Team work  Do work individually with interdependency  SVN, Weekly meeting, testing after mergence

Control Structure

Baby Databases ► Basic idea: to generate a smaller database characterizing the full database so that queries can be run on it very fast. ► Approach:  Load/configure a database  Generate histogram info  Generate baby database ► Statistic Information ► Latest Interface Latest Interface Latest Interface

Baby Database Development Process ► Design document Design document Design document ► Difficulties  Algorithm to generate baby databases;  The major logic path of query.php;  The pending queue has some dependencies on baby databases;  Easy to trig conflicts in SVN, since everybody needs to revise query.php & function.lib.php;  Testing is slow for big databases.

Baby Database Code ► Estimate total code lines: 850 ► Files created or changed:  configDB.php configDB.php  setDB.php setDB.php  loadDB.php loadDB.php  viewStats.php viewStats.php  generateBDB.php generateBDB.php  babyDB.php babyDB.php  query.php query.php  function.lib.php function.lib.php

Pending Queue Previous State : In the previous version of software, once a query was submitted to the database, it was run to completion and no other queries can even be submitted from the page. Enhanced State: Each submitted query is stored in a data structure that acts as a FIFO queue. The users no longer have to wait for a query to end before they can submit another.

Pending Queue Development Process ► Attempting the run the queries on the database while collecting the submitted queries tp a queue using the single control point was difficult. This was solved by extracting the query execution part in to independent PHP script that infinitely ran as a background process, initiated by the administrator.. ► Estimating the time for each query that would be run on the full database was obtained by manipulating the sizes of the full database, the baby database and the time consumed for querying the baby database. ► Coding while learning PHP and MySql, presented difficulties but COSI books, google and friends were always a savior.

Pending Queue Code ► query.php query.php ► function.lib.php (All functions of BDAP) function.lib.php ► Execute_query.php (Independent PHP query) Execute_query.php ► display_pending_queue.php (Global Pending Queue) display_pending_queue.php ► display_personal_queue.php (User Pending Queue) display_personal_queue.php

Implemented Features and Restrictions ► Once a query has been selected to be sent to the full database, it will arrive at the pending queue. Unless the exact query is not already present in the queue table, it will wait to be executed. ► Links in the navigation bar will display the pending queue for all users as well as all the queue for the current logged in user. ► The users may delete their queries from their pending queue.

User Cached Queries ► Store all user queries  Every submitted query after running on the baby database is stored in the user cache.  Allows for users to share cached queries ► Fast retrieval  Queries stored as serialized data  Recreate the table from the serialized data

User Cached Queries ► Manageable cache size  Administrator can specify each user's maximum cache size.  Automated garbage collection occurs when a user has used more then their space allowance. Deletion of the oldest viewed query. ► View and delete cached queries  Users can view only their own cached queries as well as delete them.

User Cache Development Process

Using Version Control ► Managing files  Occasional conflicts  SVN merging of source code  Rollback  Subversion Subversion

The End.