AN ARCHITECTURE FOR FAST AJAX ENABLED WEB FORMS. Bryon Chan

Size: px
Start display at page:

Download "AN ARCHITECTURE FOR FAST AJAX ENABLED WEB FORMS. Bryon Chan"

Transcription

1 AN ARCHITECTURE FOR FAST AJAX ENABLED WEB FORMS Bryon Chan Department of Electrical and Computer Engineering University of Auckland, Auckland, New Zealand Abstract This project aims to improve the usability of online forms by creating a framework that will facilitate text field input validation before the form is submitted. This is achieved by creating a lightweight combo box component that can be updated dynamically by the server using a database as the data store. A key characteristic of the advanced combo box is the ability to dynamically change the menu according to text input. The emerging web technology AJAX will be used as the technology behind this. This particular implementation will include full text search functionality of the list and also auto-complete for the text field. The combo box must integrate easily with current online form systems and require minimal setup and maintenance by a web developer. At the backend, a search system was implemented that enabled fast information retrieval style searches to be performed on database data. Using the architecture presented, a Google Suggest-like application can be implemented. 1. Introduction HTML forms are used throughout the computing world to collect information in a structured way. Not only are they used throughout the World Wide Web, but also by many enterprise systems which use browser user interfaces as the primary mode of access to the system. Many of these systems require a higher degree of correctness in the information collected than can be achieved by simply relying on the user to fill in the form correctly. Therefore UI designers use a number of tactics to guide a user to enter valid information, e.g. flashing a red label beside a text field to indicate an error, popping up a tool tip describing the error that was made. Web developers however are limited in their options, because the traditional submit response model of HTTP means that a user has to submit the form before the error is detected. This usually means that the user will have to wait for the new page to load, return to where he made the mistake, fix it and submit again. Most Internet users would have experienced the frustration or at least inconvenience of having to interact with a form in this way. Intuitively, immediate validation and feedback of user input would be a better solution. This paper presents a system that enables dynamic (i.e. pre-submit) validation of user input. The system will make use of the XMLHTTPRequest object in JavaScript, which are the two main technologies used in AJAX, which means that the only browser requirements are support for XMLHTTPRequest and that JavaScript is turned on. This means that over 80% of users will meet the requirements without having to download plugins, or applets, etc. A key deliverable for this project is the advanced combo box. A combo box combines a text field and a dropdown menu and functionally subsumes the INPUT and SELECT components. Other HTML form components such as TEXTAREA and RADIO buttons were out of the scope of the project, because the focus was single-line text input fields. The advanced combo box will enable dynamic validation through AJAX, i.e. validate as the user types, and also allow non-trivial validation by connecting to the server. The responsiveness and therefore usability of the combo box was a major focus of the project. To meet the client s (Peace Software) particular needs, the project team decided to focus on search field input validation, which would be used in Peace s customer search module. Search field input validation can be described as giving a user feedback about their query, e.g. possible completions, similar terms, spelling mistakes and number of documents that match, before the user actually conducts the search. This project focuses on returning possible completions. A recent example of this type of search field input validation is Google Suggest, which gives users feedback on their query, while they are typing. Google Suggest is described in more detail in Section 2. The evolution of this project over it s course has led to a clear separation of it s components. That is, the outputs of this project can be separated into two parts: which we call the interface and the architecture. The interface is the combo box component written in JavaScript that uses the XMLHTTPRequest object to communicate with the server. This enables page updates to occur without needing to refresh the entire page, which is a significant usability improvement over the traditional submit-response interaction style. The architecture is a database search system, which enables data from a database to be searched using an IR style keyword search. These parts are combined to make a database search system with a combo box interface,

2 which essentially searches as you type. However, the reason for highlighting this separation is to highlight the reusability and modularity that has been built into these parts. For example, taken on it s own, the architecture is a fully functional database search system. At the same time, the combo box is a fully modularised website development component that can be used and extended independently of the search system. For example, the combo box can be used to deliver error messages as part of a form field validation system that does not use a database as a backend, as shown in Fig Example Applications A search system based on the architecture presented could be used in several applications to improve performance and usability Customer search One example is to use it in customer search applications. The search system would be used in place of the existing customer search form. This application of the system would enable a customer service representative to locate customer data faster. This is the intended application that led to interest in the project from Peace Software Google Suggest Google Suggest 1 presents a standard Google search interface with the addition of an auto-completing function. The auto-complete returns a list of suggested completions of what the user has typed, while they are typing. Additionally, the suggestions are ordered by overall popularity of those queries. The architecture presented allows such an application to be built using a database as the data store, combining the capabilities of a database system with fast IR search speeds and an interactive interface. Figure 2 Google Suggest 3. Outline of paper Section 4 describes related work in the fields of web form field validation, web combo boxes and keyword searching in databases. Section 5 discusses the results of the investigation into appropriate search technologies to conduct fast prefix searching. Section 6 describes the architecture. Section 7 describes the interface. Section 8 describes the background of the technologies used, including AJAX, information retrieval and ETL. Finally, conclusions are presented in Section Related Work This section describes the related work done in the three main fields of interest: form field validation, web combo boxes and database keyword searching Form field validation There are two ways of validating user input, from the client side, commonly by using JavaScript [1, 2], or from the server side, which occurs after submission. JavaScript gives fast, dynamic but trivial validation. For example, checking that an address only has symbol. Server side validation is usually slower, requiring a post back and is less usable for a user (e.g. having to backtrack to where he made a mistake after the error page is returned). In addition to this, client side validation can be easily circumvented and hence requires back-up server side validation. In any case, server side validation is needed for users who choose to switch off JavaScript. Given the current problem of slow server side validation, this project provides a form field validation system that provides immediate feedback and support to the user based on data in a database. Figure 1 Using the combo box to deliver error messages. 1 Google Suggest -

3 4.2. Web combo boxes JavaScript combo boxes A combo box is a combination of a text field and a dropdown menu. This gives users the freedom of inputting text themselves or selecting from a static list of pre-defined options from the dropdown menu. There is no native HTML combo box, however web developers have used JavaScript to couple an INPUT element and a SELECT element to achieve the same functionality AJAX Enabled combo boxes The most advanced example of an existing AJAX enabled combo box is the Web ComboBox 2 made by EBA. Key features of the Web ComboBox include autocomplete, paging, events and data binding for easy development. The advanced combo box that was developed for this project is different because the focus was on the backend search speed Database keyword searching Recent work has been done by researchers who recognize that the need for knowledge of the database schema and knowledge of the querying language represent a barrier to any user that has an interest in the data, but without the expertise to access it. The traditional solution is to implement search forms. However for a large number of relations, this can be cumbersome and expensive to implement. Systems such as DISCOVER [3], DBXplorer [4] and BANKS [5] enables keyword searches over an entire collection of tables. They share a similar approach: given a set of keywords, find the set of tuples from the tables where one or more keywords exist. These tuples become the nodes of a graph and primary to foreign key relationships between the tables (where the tuples were located) become the edges, so that all subgraphs that contain a set of nodes where all the keywords are present is a search hit. [6] presents improvements to DISCOVER s relevance ranking and performance by exploiting the IR characteristic that generally only the most relevant matches need to be processed. These approaches avoid creating redundancy in the database and performance is not the main concern as in our approach. Several databases include a special full text indexing option, so that textual data can be searched in an IR style. Examples are Oracle Text [7], MySQL 1 JavaScript combo boxes EBA Web ComboBox V3 - webdevelopment/codeandcomponents/ebawebcombov3/defaul t.htm FULLTEXT, SQL Server Full Text Indexing [8]. IR functionality includes stop words, relevance rankings, phrase searching and proximity searching. These built in full text indexes have the advantage of being closely integrated to the data. In fact, queries are specified using extensions to SQL. [9] makes use of these built in index engines to index data offline to enable fast keyword searches in a system called EKSO. The approach is similar to the one described in this paper, however our approach takes processing outside of the database and handles the synchronisation required, whereas EKSO uses the database vendor s integrated text search tool. We discuss the advantages of our approach in section Search Technology To successfully implement the search field functionality of the advanced combo box, an appropriate search technology must be found. This section describes the evaluation of search technologies, which enables search speeds that are sufficiently fast to facilitate search field input validation. To be more specific, the problem is that of prefix searching, i.e. given an input string: find all words that start with the input string. Two candidate data structures were shortlisted, these were: inverted indexes and tries Inverted indexes An inverted index is very similar to the index that one can find in the back of books. In such indexes, words that are determined to be important are listed in alphabetical order with the page number where the words are found. Instead of writing new code to implement an inverted index, Lucene, a suitable open source library was used. Lucene is a full featured searching and indexing library hosted by Apache. Lucene implements the prefix-searching feature as a pre-processing stage that rewrites the query to include all the expansions of the prefix. E.g. pat* will expand to patrick OR patricia OR patterson, etc. In a previous project, it was observed that prefix searches in Lucene was particularly slow, not meeting the performance requirement for that project. To improve this performance a prefix-indexing technique was used. For example, to index the word AJAX : instead of just indexing AJAX, the prefixes A, AJ, AJA were indexed as well. The results of a preliminary experiment show that a performance gain is achieved by a space-time trade-off, i.e. the result is a larger index, but faster search times Tries The idea of using tries came from initial work done on suffix trees. Suffix trees [10] store every suffix (i.e. a substring starting from any position of the string to the

4 end of the string) of a string in a tree. Search complexity is proportional to the length of the query. Tree building is proportional to the length of the string. However, use of a suffix tree in our application would be inefficient as we assume the user to search from the beginning of the search term. E.g. when searching for christopher, a user would type from the beginning of the word, not in the middle, i.e. chris.., not tophe... The need to reduce the inefficiency of storing every suffix lead the research towards a data structure called a trie. A trie is a tree structure where each node is a prefix or a word and each edge is a letter. Therefore every word in a subtree has the same prefix. Fig. 3 illustrates this. This option was initially considered because a tree structure is intuitively well matched to prefix searching. Imagine each letter typed as traversing from the root down the tree, narrowing the search space down logarithmically. Inverted indexes on the other hand, treat each search as a new search through the index. Tries are fast data structures, however the obstacle to efficient implementations is the large space requirement. Techniques exist to increase space efficiency, including ternary search trees [11] and PATRICIA trees [12]. The prototype developed used ternary search trees to get acceptable space efficiency; however using a PATRICIA tree could have saved more space. individual searches, but produced unacceptably high search times when put under load Chosen search technology: Lucene Lucene was chosen for two main reasons: First, superior search performance in a multithreaded environment. Second, there are many functional requirements that would take too long to implement on the trie prototype that has already been implemented in Lucene, including thread safety, delete operations and sorting/ranking of results. Time (ms) Trie versus Lucene performance (10 search threads, "people", 20 searches/second) Trie Lucene Search Figure 4 Lucene vs. Trie search performance Figure 3 A trie containing the words ajax, arch, arc and art Lucene vs. Trie performance A trie-based search prototype was developed to compare against Lucene as the search implementation for the search system. Lucene started with some high search times on initialisation, but stayed below the desired 100ms threshold for the rest of the searches. The trie prototype performed faster than Lucene with 6. Architecture One of the challenges of implementing database systems is maintaining satisfactory query performance while tending to other database issues at the same time, e.g. transaction management, data integrity, security. A tactic frequently used where performance is needed, is to trade space with time, e.g. by combining fields from different tables into a single table to avoid joins. Another tactic is to perform some query processing in advance, e.g. by using database indexes to pre-sort on certain fields. Lucene s inverted index combines both tactics by creating a full text index that exists outside of the DBMS, which allows search performance that is largely unhindered by other database operations. This solution allows speeds that facilitate search field input validation. The development of Lucene s prefix searching independently of the database illustrates the advantage of implementing an IR access layer on top of a database that can be tuned for specific requirements without needing to consider possible effects on the operational database. The transformation of structured data into flat text for the purpose of searching may seem counterintuitive: consider the query nelson as opposed to

5 firstname= nelson. The user s knowledge that nelson is a first name cannot be expressed in an IR query. In an ideal world, searches on structured data are best handled by a structured query language. However, this structure can come at the cost of performance. Consider any query that requires a join between multiple tables. As datasets get larger and searches increase in frequency, the load imposed on the database becomes a risk not just to the performance of that query, but also to the overall performance of the database. Another reason such an approach would seem unreasonable is due to the problems associated with synchronizing an external index to data in a database. We discuss ways to manage synchronization that is event driven, as opposed to a periodic scanning method, such as those employed by IR crawlers. The system architecture is shown in Fig. 5. Simply put, the back-end is responsible for creating and updating the full text index and the front-end is responsible for allowing multiple users to search the index in an IR-style. The back-end is comprised of the database and an Extract, Transform and Load 1 layer (ETL), which has an IR indexing service. The front end is made up of the index structure created by the indexing service and a search application that searches over it Indexing Service Figure 6 Address relations The Indexing Service is a full text indexer that initially builds and subsequently synchronises the Full Text Index to the database. The Indexing Service is implemented as a transformation process in the ETL layer. Aside from adding records to the index, this service also has the responsibility of transforming the normalised data into a flat form suitable for IR indexing. For example, given a set of relations containing address data as shown in Fig. 6. The Indexing Service can be configured to extract the information, by using a SELECT query as shown in Fig. 7. Each row in the result set is added to the index as a document, which is analogous to GOOGLE crawling and indexing a webpage on the Internet. Each document has a corresponding record in the result set, so the key is also indexed. Using the same Internet analogy, this is the URL, which enables searchers to actually navigate to the original data. Figure 5 Architecture for fast database search 6.1. Back-end architecture The back-end architecture proposed is an Extract, Transform and Load (ETL) solution. ETL is a wellknown data warehousing technology. By integrating ETL into our architecture, we are leveraging existing ETL tools and ideas in order to enhance our architecture. ETL extracts information from the database, then transforms the information so that it can be loaded into the destination, in this case the index. ETL is designed to be able to extract data from multiple databases, which could be using different systems, e.g. Oracle, SQL Server. 1 The ETA on ETL www2.cio.com/analyst/report2218.htm Figure 7 Transformation of a record into a document. Indexing the entire desired dataset is a time and resource consuming process. To minimise this, the

6 Indexing Service should be able to index incrementally, i.e. adding or removing a document from the index without rebuilding the entire index again, some indexing tools allow two indexes to be merged, allowing the current index to be merged with an index of subsequent changes at a smaller cost than an entire rebuild. This is one of the reasons Lucene was chosen ahead of other full text indexers Synchronisation The major issue of implementing external indexes of database data is how to handle updates to the source data. A solution is needed that keeps the data in the index identical to the database data, without using too many database resources. For example, consider a customer whose details had just been inserted into the database, and who soon after makes a call to the call centre. The call centre personnel need access to this customer s records immediately. The information that is required by the Indexing Service to reflect the changes to the index are: For an insert, The values of the new record. For an update or a delete, The key, as described in the previous subsection. The procedure that updates the index simply deletes the document that matches the key and re-indexes the document. Therefore, the Indexing Service handles updating the index and the only thing the backend is responsible for is passing the required information on, whenever a change to data is made. Another important requirement is that synchronisation does not negatively impact on normal database operation. Three distinct ways of achieving this are identified. These are logs, triggers and by using events and listeners in the data access code. Database logs contain information about all updates to a database. Most DBMSs already have logs for backup and recovery and for auditing purposes. The disadvantage of using logs is that they are not accessible immediately after a database change and they are database specific. Triggers are database event driven procedures that are often used to enforce business rules and maintain data integrity in DBMSs. Triggers are configured to execute whenever an insert, delete or update operation is done on a table. A trigger has access to all the information needed to update the index. Finally, using events and listeners in code. This approach is exemplified by the use of Hibernate. Hibernate maps relational database tables onto Java objects. In other words, the database becomes just a persistence layer. In this case, the information needed to update the index can be obtained as part of the object oriented code, whenever a customer object is being inserted, or deleted or updated Front-end The Search Engine allows users to search the data using an IR style query. This means the user can include any piece of relevant information into a single field without having to qualify it with the type of the information. The advanced combo box was implemented as the front end to this search system. This allowed real time, search-as-you-type access to the database. This is described in more detail in section Advantages of external indexes The architecture allows multiple Search Engines to be deployed. This means that search load can be spread out onto as many Search Engines as are needed to meet performance requirements. Also, multiple Search Engines can be deployed at locations geographically separate from the central data repository, e.g. call centres. This would further improve search times by eliminating delays caused by network latency. Lastly, a significant load is taken off the database, allowing the rest of the system to speed up. Figure 8 Implementation of the architecture using open source tools and applied to a typical system architecture 6.6. Implementation in a typical architecture A typical architecture is shown in Fig. 8 with the implementation of our search system using open source software. The initial creation of the index is handled by

7 Clover. Once the Index is built, the Hibernate objects will fire an event when data is changed. The event contains information such as what type of change and which document was changed. Clover uses this event as the input for an index-updating transformation, which goes on to update the Lucene index. While the update is occurring, Lucene allows users to still search on the same index. However, for changes to be visible, users will need to get a new IndexSearcher object, this is a small inconvenience as several IndexSearchers are instantiated and destroyed over the course of a search, e.g. every time a user refreshes the search page. Fig. 8 also shows the separation of the Search Engine from the database. One of the advantages of this is the ability to modify and extend the Search Engine without worrying about negative consequences to other systems. In this case, the Search Engine has been extended to include search-as-you-type interface, i.e. the advanced combo box. 7. Interface This section describes the advanced combo box, which is the interface component of the project. The solution we present uses data from a database to evaluate a query. The most common use of this would be to autocomplete queries, e.g. if a user types an, the system would return possible completions like andrew, andrea, annie, etc. A combo box is an input component that allows the user to fill in a text field either by typing in directly or by choosing an option from the menu. There is currently no native combo box component in HTML, however there are many combo boxes that use JavaScript to combine the INPUT and SELECT components to achieve the same functionality. The menu is static, i.e. it s contents are hardcoded in the page source. The advanced combo box is a web component written in JavaScript. It is AJAX enabled, which gives it the ability to dynamically update the information that it presents, i.e. without requiring a page reload. This improves interaction by allowing behind the scenes calls to the server. The subsequent updating of specific page content is far more unobtrusive and more usable than an entire page reload. The features of the advanced combo box include: Results displayed in a database like table Auto-complete Hit highlighting Number of results Paging Mouse and keyboard navigation Client side cache of search results Time out mechanism to minimise server calls Figure 9 Features of the advanced combo box AJAX 8. Background of Technologies AJAX stands for Asynchronous JavaScript and XML. It is a description of a web development technique that makes use of the XMLHTTPRequest object to improve user interaction on a web page. Applications that have been built on AJAX and contributed to the current interest in AJAX are Gmail and Google Suggest. Fig. 10 shows the way AJAX works. The user causes an event on the web page, for example, a key press or a button press, which executes the Javascript code that gets an XMLHTTPRequest object and sends an HTTP request to a server object. The HTTP request contains the parameters of the request, e.g. in the case of the advanced combo box, the query is sent. The server object then returns data, which doesn t necessarily have to be XML, which is processed using JavaScript and changes are made to the original web page as necessary. The important thing to note is the server does not respond with a new page that the browser displays, instead the server returns data, that is used to change the original page. AJAX has some disadvantages, primarily lack of support from browsers. However, browser makers recognise AJAX as an important technology those who have not already supporting AJAX are doing so in future versions of their software. Figure 10 How AJAX works

8 8.2. Information Retrieval The goal of information retrieval is to enable people to find information that they are looking for. The information may be stored on a page in a book or on a page in a website. In turn the book may be in a library and the website may be on the World Wide Web. If the library was well organised and relatively small, a good librarian could find all the books that were relevant to your spoken query. But on a larger scale, vast quantities of information can become searchable only by harnessing the power of computers Apache Lucene Lucene 1 is part of the Apache Open Source project. It is a Java library for full text searching functionality. This refers to the fact that Lucene only provides functionality to index Lucene Documents. When the index has been built, it provides an API that returns references to matching Documents. Lucene has an inbuilt query syntax that allows many features including Boolean search, wildcard searching, fuzzy searching, range searching, proximity searching etc. It is up to the user to convert their information into Lucene Documents and display the results ETL The backend is based on an ETL application. ETL is a data integration technology. It is a response to the fact that valuable data can be located in different sources and combining the data into one destination, will facilitate data analysis. Therefore ETL tools are designed to extract, clean and prepare data from multiple sources, then load them into the destination usually a database. Two ETL tools, Clover.ETL and Enhydra Octopus were evaluated. Clover was chosen because of the quality of coding compared to Octopus. This made it easier to understand and therefore extend. 9. Conclusions In this paper we presented an architecture for providing search-as-you-type access to database data. This was achieved by having a fast database search system based on information retrieval technology. The interface built on top of this system, the advanced combo box, made use of the speed to provide real time feedback to users, in the form of a dynamically updated menu showing the results. This represents a significant usability improvement to current database search forms, which is our main aim. The advanced combo box contributes to the more general problem of form field validation by providing a convenient way of receiving data from the input field and displaying the server response in the menu. The technology behind the advanced combo box, AJAX is likely to remain popular and become more widely accepted in the future. Acknowledgements The student would like to thank the project partner Jason Flaherty and the supervisor Dr. Gerald Weber for their parts in making this project successful. Also, thank you to the second supervisor Ms. Su Tang for her feedback during the project. 10. References [1] W. Bontrager. JavaScript Form Input Validation and Correction. Retrieved May 6, 2005 from ipt/javascript-form-validation-correction /page1.html, [2] Form Validation. Retrieved May 6, 2005 from dation.html, [3] V. Hristidis and Y. Papakonstantinou. DISCOVER: Keyword search in relational databases. In Proc. of VLDB, [4] S. Agrawal, S. Chaudhuri, and G. Das. DBXplorer: A system for keyword-based search over relational databases. In Proc. of ICDE, [5] Bhalotia, A. Hulgeri, C. Nakhe, S. Chakrabarti, and S. Sudarshan. Keyword searching and browsing in databases using BANKS. In Proc. of ICDE, [6] V. Hristidis, L. Gravano, and Y. Papakonstantinou. Efficient IR-style keyword search over relational Databases. In Proc. of VLDB, [7] P. Dixon. Basics of Oracle Text retrieval. IEEE Data Engineering Bulletin, 24(4), [8] J. Hamilton and T. Nayak. Microsoft SQL Server full-text search. IEEE Data Engineering Bulletin, 24(4), [9] Q. Su, J. Widom. Indexing relational database content offline for efficient keyword-based search. In Proc. of IDEAS, [10] P. Weiner. Linear Pattern Matching Algorithms. Proc. 14th IEEE Annual Symp. on Switching and Automata Theory, pp1-11, [11] J. Bentley and R. Sedgewick. Fast algorithms for sorting and searching strings. In Eighth Annual ACM-SIAM Symposium on Discrete Algorithms (1997), SIAM Pres, [12] D. R. Morrison. PATRICIA - Practical Algorithm to Retrieve Information Coded in Alphanumeric. Jrnl. of the ACM, 15(4) pp , Oct Apache Lucene -

9 Department of Electrical & Computer Engineering Part 4 Project Report 2005 An Architecture for Fast AJAX enabled Web Forms Final Report Author: Bryon Chan Date: 11 th September 2005 Project Partner: Jason Flaherty Supervisor: Dr. Gerald Weber

10 Declaration of Originality This report is my own unaided work and was not copied from nor written in collaboration with any other person. Signature:

Supporting Fuzzy Keyword Search in Databases

Supporting Fuzzy Keyword Search in Databases I J C T A, 9(24), 2016, pp. 385-391 International Science Press Supporting Fuzzy Keyword Search in Databases Jayavarthini C.* and Priya S. ABSTRACT An efficient keyword search system computes answers as

More information

EXTRACTION OF RELEVANT WEB PAGES USING DATA MINING

EXTRACTION OF RELEVANT WEB PAGES USING DATA MINING Chapter 3 EXTRACTION OF RELEVANT WEB PAGES USING DATA MINING 3.1 INTRODUCTION Generally web pages are retrieved with the help of search engines which deploy crawlers for downloading purpose. Given a query,

More information

Web Application with AJAX. Kateb, Faris; Ahmed, Mohammed; Alzahrani, Omar. University of Colorado, Colorado Springs

Web Application with AJAX. Kateb, Faris; Ahmed, Mohammed; Alzahrani, Omar. University of Colorado, Colorado Springs Web Application with AJAX Kateb, Faris; Ahmed, Mohammed; Alzahrani, Omar University of Colorado, Colorado Springs CS 526 Advanced Internet and Web Systems Abstract Asynchronous JavaScript and XML or Ajax

More information

Effective Keyword Search in Relational Databases for Lyrics

Effective Keyword Search in Relational Databases for Lyrics Effective Keyword Search in Relational Databases for Lyrics Navin Kumar Trivedi Assist. Professor, Department of Computer Science & Information Technology Divya Singh B.Tech (CSe) Scholar Pooja Pandey

More information

Keyword search in relational databases. By SO Tsz Yan Amanda & HON Ka Lam Ethan

Keyword search in relational databases. By SO Tsz Yan Amanda & HON Ka Lam Ethan Keyword search in relational databases By SO Tsz Yan Amanda & HON Ka Lam Ethan 1 Introduction Ubiquitous relational databases Need to know SQL and database structure Hard to define an object 2 Query representation

More information

20480C: Programming in HTML5 with JavaScript and CSS3. Course Code: 20480C; Duration: 5 days; Instructor-led. JavaScript code.

20480C: Programming in HTML5 with JavaScript and CSS3. Course Code: 20480C; Duration: 5 days; Instructor-led. JavaScript code. 20480C: Programming in HTML5 with JavaScript and CSS3 Course Code: 20480C; Duration: 5 days; Instructor-led WHAT YOU WILL LEARN This course provides an introduction to HTML5, CSS3, and JavaScript. This

More information

Project Title REPRESENTATION OF ELECTRICAL NETWORK USING GOOGLE MAP API. Submitted by: Submitted to: SEMANTA RAJ NEUPANE, Research Assistant,

Project Title REPRESENTATION OF ELECTRICAL NETWORK USING GOOGLE MAP API. Submitted by: Submitted to: SEMANTA RAJ NEUPANE, Research Assistant, - 1 - Project Title REPRESENTATION OF ELECTRICAL NETWORK USING GOOGLE MAP API Submitted by: SEMANTA RAJ NEUPANE, Research Assistant, Department of Electrical Energy Engineering, Tampere University of Technology

More information

Top-k Keyword Search Over Graphs Based On Backward Search

Top-k Keyword Search Over Graphs Based On Backward Search Top-k Keyword Search Over Graphs Based On Backward Search Jia-Hui Zeng, Jiu-Ming Huang, Shu-Qiang Yang 1College of Computer National University of Defense Technology, Changsha, China 2College of Computer

More information

Etanova Enterprise Solutions

Etanova Enterprise Solutions Etanova Enterprise Solutions Front End Development» 2018-09-23 http://www.etanova.com/technologies/front-end-development Contents HTML 5... 6 Rich Internet Applications... 6 Web Browser Hardware Acceleration...

More information

DATABASE SYSTEMS. Database programming in a web environment. Database System Course, 2016

DATABASE SYSTEMS. Database programming in a web environment. Database System Course, 2016 DATABASE SYSTEMS Database programming in a web environment Database System Course, 2016 AGENDA FOR TODAY Advanced Mysql More than just SELECT Creating tables MySQL optimizations: Storage engines, indexing.

More information

Modern and Responsive Mobile-enabled Web Applications

Modern and Responsive Mobile-enabled Web Applications Available online at www.sciencedirect.com ScienceDirect Procedia Computer Science 110 (2017) 410 415 The 12th International Conference on Future Networks and Communications (FNC-2017) Modern and Responsive

More information

INTERNATIONAL JOURNAL OF RESEARCH IN COMPUTER APPLICATIONS AND ROBOTICS ISSN EFFECTIVE KEYWORD SEARCH OF FUZZY TYPE IN XML

INTERNATIONAL JOURNAL OF RESEARCH IN COMPUTER APPLICATIONS AND ROBOTICS ISSN EFFECTIVE KEYWORD SEARCH OF FUZZY TYPE IN XML INTERNATIONAL JOURNAL OF RESEARCH IN COMPUTER APPLICATIONS AND ROBOTICS ISSN 2320-7345 EFFECTIVE KEYWORD SEARCH OF FUZZY TYPE IN XML Mr. Mohammed Tariq Alam 1,Mrs.Shanila Mahreen 2 Assistant Professor

More information

Implementing a Numerical Data Access Service

Implementing a Numerical Data Access Service Implementing a Numerical Data Access Service Andrew Cooke October 2008 Abstract This paper describes the implementation of a J2EE Web Server that presents numerical data, stored in a database, in various

More information

CRAWLING THE CLIENT-SIDE HIDDEN WEB

CRAWLING THE CLIENT-SIDE HIDDEN WEB CRAWLING THE CLIENT-SIDE HIDDEN WEB Manuel Álvarez, Alberto Pan, Juan Raposo, Ángel Viña Department of Information and Communications Technologies University of A Coruña.- 15071 A Coruña - Spain e-mail

More information

Product Release Notes Alderstone cmt 2.0

Product Release Notes Alderstone cmt 2.0 Alderstone cmt product release notes Product Release Notes Alderstone cmt 2.0 Alderstone Consulting is a technology company headquartered in the UK and established in 2008. A BMC Technology Alliance Premier

More information

How APEXBlogs was built

How APEXBlogs was built How APEXBlogs was built By Dimitri Gielis, APEX Evangelists Copyright 2011 Apex Evangelists apex-evangelists.com How APEXBlogs was built By Dimitri Gielis This article describes how and why APEXBlogs was

More information

DbSurfer: A Search and Navigation Tool for Relational Databases

DbSurfer: A Search and Navigation Tool for Relational Databases DbSurfer: A Search and Navigation Tool for Relational Databases Richard Wheeldon, Mark Levene and Kevin Keenoy School of Computer Science and Information Systems Birkbeck University of London Malet St,

More information

Create-A-Page Design Documentation

Create-A-Page Design Documentation Create-A-Page Design Documentation Group 9 C r e a t e - A - P a g e This document contains a description of all development tools utilized by Create-A-Page, as well as sequence diagrams, the entity-relationship

More information

AJAX Programming Overview. Introduction. Overview

AJAX Programming Overview. Introduction. Overview AJAX Programming Overview Introduction Overview In the world of Web programming, AJAX stands for Asynchronous JavaScript and XML, which is a technique for developing more efficient interactive Web applications.

More information

Enterprise Java Unit 1- Chapter 3 Prof. Sujata Rizal Introduction to Servlets

Enterprise Java Unit 1- Chapter 3 Prof. Sujata Rizal Introduction to Servlets 1. Introduction How do the pages you're reading in your favorite Web browser show up there? When you log into your favorite Web site, how does the Web site know that you're you? And how do Web retailers

More information

Enhanced OpenID Protocol in Identity Management

Enhanced OpenID Protocol in Identity Management Enhanced OpenID Protocol in Identity Management Ronak R. Patel 1, Bhavesh Oza 2 1 PG Student, Department of Computer Engg, L.D.College of Engineering, Gujarat Technological University, Ahmedabad 2 Associate

More information

Le nouveau Morfik est arrivé (The new Morfik has arrived)

Le nouveau Morfik est arrivé (The new Morfik has arrived) Le nouveau Morfik est arrivé (The new Morfik has arrived) Michaël Van Canneyt April 7, 2008 Abstract Soon, it will be 2 years ago since the first review of Morfik in this magazine. When the current issue

More information

B.H.GARDI COLLEGE OF MASTER OF COMPUTER APPLICATION. Ch. 1 :- Introduction Database Management System - 1

B.H.GARDI COLLEGE OF MASTER OF COMPUTER APPLICATION. Ch. 1 :- Introduction Database Management System - 1 Basic Concepts :- 1. What is Data? Data is a collection of facts from which conclusion may be drawn. In computer science, data is anything in a form suitable for use with a computer. Data is often distinguished

More information

5/9/2014. Recall the design process. Lecture 1. Establishing the overall structureof a software system. Topics covered

5/9/2014. Recall the design process. Lecture 1. Establishing the overall structureof a software system. Topics covered Topics covered Chapter 6 Architectural Design Architectural design decisions Architectural views Architectural patterns Application architectures Lecture 1 1 2 Software architecture The design process

More information

Lecture 1. Chapter 6 Architectural design

Lecture 1. Chapter 6 Architectural design Chapter 6 Architectural Design Lecture 1 1 Topics covered Architectural design decisions Architectural views Architectural patterns Application architectures 2 Software architecture The design process

More information

Distributed KIDS Labs 1

Distributed KIDS Labs 1 Distributed Databases @ KIDS Labs 1 Distributed Database System A distributed database system consists of loosely coupled sites that share no physical component Appears to user as a single system Database

More information

<Insert Picture Here>

<Insert Picture Here> Oracle Forms Modernization with Oracle Application Express Marc Sewtz Software Development Manager Oracle Application Express Oracle USA Inc. 540 Madison Avenue,

More information

Active Server Pages: Technology for Creating Dynamic Web Pages and Webenabled

Active Server Pages: Technology for Creating Dynamic Web Pages and Webenabled Workshop on Multimedia and Internet Technologies 26 th -28 th February, 2001 DRTC, Bangalore Active Server Pages: Technology for Creating Dynamic Web Pages and Webenabled Databases Documentation Research

More information

Introduction to Web Application Development Using JEE, Frameworks, Web Services and AJAX

Introduction to Web Application Development Using JEE, Frameworks, Web Services and AJAX Introduction to Web Application Development Using JEE, Frameworks, Web Services and AJAX Duration: 5 Days US Price: $2795 UK Price: 1,995 *Prices are subject to VAT CA Price: CDN$3,275 *Prices are subject

More information

DRACULA. CSM Turner Connor Taylor, Trevor Worth June 18th, 2015

DRACULA. CSM Turner Connor Taylor, Trevor Worth June 18th, 2015 DRACULA CSM Turner Connor Taylor, Trevor Worth June 18th, 2015 Acknowledgments Support for this work was provided by the National Science Foundation Award No. CMMI-1304383 and CMMI-1234859. Any opinions,

More information

Checklist for Testing of Web Application

Checklist for Testing of Web Application Checklist for Testing of Web Application Web Testing in simple terms is checking your web application for potential bugs before its made live or before code is moved into the production environment. During

More information

Active Endpoints. ActiveVOS Platform Architecture Active Endpoints

Active Endpoints. ActiveVOS Platform Architecture Active Endpoints Active Endpoints ActiveVOS Platform Architecture ActiveVOS Unique process automation platforms to develop, integrate, and deploy business process applications quickly User Experience Easy to learn, use

More information

CorreLog. SQL Table Monitor Adapter Users Manual

CorreLog. SQL Table Monitor Adapter Users Manual CorreLog SQL Table Monitor Adapter Users Manual http://www.correlog.com mailto:support@correlog.com CorreLog, SQL Table Monitor Users Manual Copyright 2008-2018, CorreLog, Inc. All rights reserved. No

More information

Chapter 6 Architectural Design. Lecture 1. Chapter 6 Architectural design

Chapter 6 Architectural Design. Lecture 1. Chapter 6 Architectural design Chapter 6 Architectural Design Lecture 1 1 Topics covered ² Architectural design decisions ² Architectural views ² Architectural patterns ² Application architectures 2 Software architecture ² The design

More information

Talend Open Studio for MDM Web User Interface. User Guide 5.6.2

Talend Open Studio for MDM Web User Interface. User Guide 5.6.2 Talend Open Studio for MDM Web User Interface User Guide 5.6.2 Talend Open Studio for MDM Web User Interface Adapted for v5.6.2. Supersedes previous releases. Publication date: May 12, 2015 Copyleft This

More information

Software Requirements Specification for the Names project prototype

Software Requirements Specification for the Names project prototype Software Requirements Specification for the Names project prototype Prepared for the JISC Names Project by Daniel Needham, Amanda Hill, Alan Danskin & Stephen Andrews April 2008 1 Table of Contents 1.

More information

File Structures and Indexing

File Structures and Indexing File Structures and Indexing CPS352: Database Systems Simon Miner Gordon College Last Revised: 10/11/12 Agenda Check-in Database File Structures Indexing Database Design Tips Check-in Database File Structures

More information

Chapter 27 Introduction to Information Retrieval and Web Search

Chapter 27 Introduction to Information Retrieval and Web Search Chapter 27 Introduction to Information Retrieval and Web Search Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 27 Outline Information Retrieval (IR) Concepts Retrieval

More information

Information Retrieval

Information Retrieval Multimedia Computing: Algorithms, Systems, and Applications: Information Retrieval and Search Engine By Dr. Yu Cao Department of Computer Science The University of Massachusetts Lowell Lowell, MA 01854,

More information

The Seven Steps to Implement DataOps

The Seven Steps to Implement DataOps The Seven Steps to Implement Ops ABSTRACT analytics teams challenged by inflexibility and poor quality have found that Ops can address these and many other obstacles. Ops includes tools and process improvements

More information

CS50 Quiz Review. November 13, 2017

CS50 Quiz Review. November 13, 2017 CS50 Quiz Review November 13, 2017 Info http://docs.cs50.net/2017/fall/quiz/about.html 48-hour window in which to take the quiz. You should require much less than that; expect an appropriately-scaled down

More information

A SEMANTIC MATCHMAKER SERVICE ON THE GRID

A SEMANTIC MATCHMAKER SERVICE ON THE GRID DERI DIGITAL ENTERPRISE RESEARCH INSTITUTE A SEMANTIC MATCHMAKER SERVICE ON THE GRID Andreas Harth Yu He Hongsuda Tangmunarunkit Stefan Decker Carl Kesselman DERI TECHNICAL REPORT 2004-05-18 MAY 2004 DERI

More information

Fast Track Model Based Design and Development with Oracle9i Designer. An Oracle White Paper August 2002

Fast Track Model Based Design and Development with Oracle9i Designer. An Oracle White Paper August 2002 Fast Track Model Based Design and Development with Oracle9i Designer An Oracle White Paper August 2002 Fast Track Model Based Design and Development with Oracle9i Designer Executive Overivew... 3 Introduction...

More information

Appendix A - Glossary(of OO software term s)

Appendix A - Glossary(of OO software term s) Appendix A - Glossary(of OO software term s) Abstract Class A class that does not supply an implementation for its entire interface, and so consequently, cannot be instantiated. ActiveX Microsoft s component

More information

Search Engine Optimisation Basics for Government Agencies

Search Engine Optimisation Basics for Government Agencies Search Engine Optimisation Basics for Government Agencies Prepared for State Services Commission by Catalyst IT Neil Bertram May 11, 2007 Abstract This document is intended as a guide for New Zealand government

More information

REVEL 3.0 Keyboard Accessibility Documentation for Students REVEL 3.0

REVEL 3.0 Keyboard Accessibility Documentation for Students REVEL 3.0 REVEL 3.0 Keyboard Accessibility Documentation for Students REVEL 3.0 Email: info@barrierbreak.com Page 1 of 7 Contents REVEL 3.0 Keyboard Accessibility Documentation for Students... 1 1. General Introduction...

More information

Data Curation Profile Human Genomics

Data Curation Profile Human Genomics Data Curation Profile Human Genomics Profile Author Profile Author Institution Name Contact J. Carlson N. Brown Purdue University J. Carlson, jrcarlso@purdue.edu Date of Creation October 27, 2009 Date

More information

CHAPTER. Oracle Database 11g Architecture Options

CHAPTER. Oracle Database 11g Architecture Options CHAPTER 1 Oracle Database 11g Architecture Options 3 4 Part I: Critical Database Concepts Oracle Database 11g is a significant upgrade from prior releases of Oracle. New features give developers, database

More information

Northern Arizona University. Project Requirements. Bit Tag. Temitope Alaga, John Dance, Josh Frampton, Jun Rao CS 476. Version 1.0

Northern Arizona University. Project Requirements. Bit Tag. Temitope Alaga, John Dance, Josh Frampton, Jun Rao CS 476. Version 1.0 Northern Arizona University Project Requirements Bit Tag Temitope Alaga, John Dance, Josh Frampton, Jun Rao CS 476 Version 1.0 Table of Contents Table of Contents Introduction Problem and Solution Statement

More information

STARCOUNTER. Technical Overview

STARCOUNTER. Technical Overview STARCOUNTER Technical Overview Summary 3 Introduction 4 Scope 5 Audience 5 Prerequisite Knowledge 5 Virtual Machine Database Management System 6 Weaver 7 Shared Memory 8 Atomicity 8 Consistency 9 Isolation

More information

CLIENT SERVER ARCHITECTURE:

CLIENT SERVER ARCHITECTURE: CLIENT SERVER ARCHITECTURE: Client-Server architecture is an architectural deployment style that describe the separation of functionality into layers with each segment being a tier that can be located

More information

Web Engineering (CC 552)

Web Engineering (CC 552) Web Engineering (CC 552) Introduction Dr. Mohamed Magdy mohamedmagdy@gmail.com Room 405 (CCIT) Course Goals n A general understanding of the fundamentals of the Internet programming n Knowledge and experience

More information

Full Stack Web Developer Nanodegree Syllabus

Full Stack Web Developer Nanodegree Syllabus Full Stack Web Developer Nanodegree Syllabus Build Complex Web Applications Before You Start Thank you for your interest in the Full Stack Web Developer Nanodegree! In order to succeed in this program,

More information

Aculab licence activation server system

Aculab licence activation server system Aculab licence activation server system User guide APB0277 Issue 5.0 PROPRIETARY INFORMATION The information contained in this document is the property of Aculab plc and may be the subject of patents pending

More information

Creating Enterprise and WorkGroup Applications with 4D ODBC

Creating Enterprise and WorkGroup Applications with 4D ODBC Creating Enterprise and WorkGroup Applications with 4D ODBC Page 1 EXECUTIVE SUMMARY 4D ODBC is an application development tool specifically designed to address the unique requirements of the client/server

More information

Module7: AJAX. Click, wait, and refresh user interaction. Synchronous request/response communication model. Page-driven: Workflow is based on pages

Module7: AJAX. Click, wait, and refresh user interaction. Synchronous request/response communication model. Page-driven: Workflow is based on pages INTERNET & WEB APPLICATION DEVELOPMENT SWE 444 Fall Semester 2008-2009 (081) Module7: Objectives/Outline Objectives Outline Understand the role of Learn how to use in your web applications Rich User Experience

More information

DQpowersuite. Superior Architecture. A Complete Data Integration Package

DQpowersuite. Superior Architecture. A Complete Data Integration Package DQpowersuite Superior Architecture Since its first release in 1995, DQpowersuite has made it easy to access and join distributed enterprise data. DQpowersuite provides an easy-toimplement architecture

More information

We aren t getting enough orders on our Web site, storms the CEO.

We aren t getting enough orders on our Web site, storms the CEO. In This Chapter Introducing how Ajax works Chapter 1 Ajax 101 Seeing Ajax at work in live searches, chat, shopping carts, and more We aren t getting enough orders on our Web site, storms the CEO. People

More information

3. WWW and HTTP. Fig.3.1 Architecture of WWW

3. WWW and HTTP. Fig.3.1 Architecture of WWW 3. WWW and HTTP The World Wide Web (WWW) is a repository of information linked together from points all over the world. The WWW has a unique combination of flexibility, portability, and user-friendly features

More information

VINEPILOT. Project Design Specification. v2.0 - The Savvy-gnon Team

VINEPILOT. Project Design Specification. v2.0 - The Savvy-gnon Team VINEPILOT Project Design Specification v2.0 - The Savvy-gnon Team Amy Chen hsuanchen@umail.ucsb.edu Iris Eleni Moridis iriselenimoridis@gmail.com Richard Waltman rtwaltman@umail.ucsb.edu Chien Wang chienkaiwang0827@gmail.com

More information

A B2B Search Engine. Abstract. Motivation. Challenges. Technical Report

A B2B Search Engine. Abstract. Motivation. Challenges. Technical Report Technical Report A B2B Search Engine Abstract In this report, we describe a business-to-business search engine that allows searching for potential customers with highly-specific queries. Currently over

More information

Simile Tools Workshop Summary MacKenzie Smith, MIT Libraries

Simile Tools Workshop Summary MacKenzie Smith, MIT Libraries Simile Tools Workshop Summary MacKenzie Smith, MIT Libraries Intro On June 10 th and 11 th, 2010 a group of Simile Exhibit users, software developers and architects met in Washington D.C. to discuss the

More information

Technical Overview. Access control lists define the users, groups, and roles that can access content as well as the operations that can be performed.

Technical Overview. Access control lists define the users, groups, and roles that can access content as well as the operations that can be performed. Technical Overview Technical Overview Standards based Architecture Scalable Secure Entirely Web Based Browser Independent Document Format independent LDAP integration Distributed Architecture Multiple

More information

Chapter 2. Architecture of a Search Engine

Chapter 2. Architecture of a Search Engine Chapter 2 Architecture of a Search Engine Search Engine Architecture A software architecture consists of software components, the interfaces provided by those components and the relationships between them

More information

Unobtrusive Data Collection for Web-Based Social Navigation

Unobtrusive Data Collection for Web-Based Social Navigation Unobtrusive Data Collection for Web-Based Social Navigation Katja Hofmann 1, Catherine Reed 2, Hilary Holz 2 California State University, East Bay 25800 Carlos Bee Boulevard Hayward, CA 94542 1 katja.hofmann@gmail.com

More information

Home Page. Title Page. Page 1 of 14. Go Back. Full Screen. Close. Quit

Home Page. Title Page. Page 1 of 14. Go Back. Full Screen. Close. Quit Page 1 of 14 Retrieving Information from the Web Database and Information Retrieval (IR) Systems both manage data! The data of an IR system is a collection of documents (or pages) User tasks: Browsing

More information

Fall Semester (081) Module7: AJAX

Fall Semester (081) Module7: AJAX INTERNET & WEB APPLICATION DEVELOPMENT SWE 444 Fall Semester 2008-2009 (081) Module7: AJAX Dr. El-Sayed El-Alfy Computer Science Department King Fahd University of Petroleum and Minerals alfy@kfupm.edu.sa

More information

Database Optimization

Database Optimization Database Optimization June 9 2009 A brief overview of database optimization techniques for the database developer. Database optimization techniques include RDBMS query execution strategies, cost estimation,

More information

Architectural Design. Architectural Design. Software Architecture. Architectural Models

Architectural Design. Architectural Design. Software Architecture. Architectural Models Architectural Design Architectural Design Chapter 6 Architectural Design: -the design the desig process for identifying: - the subsystems making up a system and - the relationships between the subsystems

More information

Chapter 6 Architectural Design. Chapter 6 Architectural design

Chapter 6 Architectural Design. Chapter 6 Architectural design Chapter 6 Architectural Design 1 Topics covered Architectural design decisions Architectural views Architectural patterns Application architectures 2 Software architecture The design process for identifying

More information

Reference Requirements for Records and Documents Management

Reference Requirements for Records and Documents Management Reference Requirements for Records and Documents Management Ricardo Jorge Seno Martins ricardosenomartins@gmail.com Instituto Superior Técnico, Lisboa, Portugal May 2015 Abstract When information systems

More information

Information Retrieval

Information Retrieval Information Retrieval CSC 375, Fall 2016 An information retrieval system will tend not to be used whenever it is more painful and troublesome for a customer to have information than for him not to have

More information

Remote Health Service System based on Struts2 and Hibernate

Remote Health Service System based on Struts2 and Hibernate St. Cloud State University therepository at St. Cloud State Culminating Projects in Computer Science and Information Technology Department of Computer Science and Information Technology 5-2017 Remote Health

More information

The functions performed by a typical DBMS are the following:

The functions performed by a typical DBMS are the following: MODULE NAME: Database Management TOPIC: Introduction to Basic Database Concepts LECTURE 2 Functions of a DBMS The functions performed by a typical DBMS are the following: Data Definition The DBMS provides

More information

SQL Tuning Reading Recent Data Fast

SQL Tuning Reading Recent Data Fast SQL Tuning Reading Recent Data Fast Dan Tow singingsql.com Introduction Time is the key to SQL tuning, in two respects: Query execution time is the key measure of a tuned query, the only measure that matters

More information

Site Audit Boeing

Site Audit Boeing Site Audit 217 Boeing Site Audit: Issues Total Score Crawled Pages 48 % 13533 Healthy (3181) Broken (231) Have issues (9271) Redirected (812) Errors Warnings Notices 15266 41538 38 2k 5k 4 k 11 Jan k 11

More information

Web Programming Paper Solution (Chapter wise)

Web Programming Paper Solution (Chapter wise) Introduction to web technology Three tier/ n-tier architecture of web multitier architecture (often referred to as n-tier architecture) is a client server architecture in which presentation, application

More information

Chapter Outline. Chapter 2 Distributed Information Systems Architecture. Distributed transactions (quick refresh) Layers of an information system

Chapter Outline. Chapter 2 Distributed Information Systems Architecture. Distributed transactions (quick refresh) Layers of an information system Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Chapter 2 Distributed Information Systems Architecture Chapter Outline

More information

1 Preface and overview Functional enhancements Improvements, enhancements and cancellation System support...

1 Preface and overview Functional enhancements Improvements, enhancements and cancellation System support... Contents Contents 1 Preface and overview... 3 2 Functional enhancements... 6 2.1 "Amazonification" of the application... 6 2.2 Complete integration of Apache Solr... 7 2.2.1 Powerful full text search...

More information

Integrated Usage of Heterogeneous Databases for Novice Users

Integrated Usage of Heterogeneous Databases for Novice Users International Journal of Networked and Distributed Computing, Vol. 3, No. 2 (April 2015), 109-118 Integrated Usage of Heterogeneous Databases for Novice Users Ayano Terakawa Dept. of Information Science,

More information

ABSTRACT I. INTRODUCTION

ABSTRACT I. INTRODUCTION 2015 IJSRSET Volume 1 Issue 2 Print ISSN : 2395-1990 Online ISSN : 2394-4099 Themed Section: Engineering and Technology ABSTRACT Database Traversal to Support Search Enhance Technique using SQL Sivakumar

More information

Software Architecture

Software Architecture Software Architecture Mestrado em Engenharia Informática e de Computadores COMPANION TO THE FIRST EXAM ON JANUARY 8TH, 2016 VERSION: A (You do not need to turn in this set of pages with your exam) 1. Consider

More information

sforce Web Services Enterprise API sforce Object Query Language sforce Custom Objects... 40

sforce Web Services Enterprise API sforce Object Query Language sforce Custom Objects... 40 Release Notes Winter 04 Major Announcements Dashboards... 2 Workflow Automation... 8 Advanced Page Layout Wizard... 12 Dynamic Page Layouts and Field-Level Security... 14 Team-Based Account Management...

More information

Perfect Timing. Alejandra Pardo : Manager Andrew Emrazian : Testing Brant Nielsen : Design Eric Budd : Documentation

Perfect Timing. Alejandra Pardo : Manager Andrew Emrazian : Testing Brant Nielsen : Design Eric Budd : Documentation Perfect Timing Alejandra Pardo : Manager Andrew Emrazian : Testing Brant Nielsen : Design Eric Budd : Documentation Problem & Solution College students do their best to plan out their daily tasks, but

More information

AJAX Workshop. Karen A. Coombs University of Houston Libraries Jason A. Clark Montana State University Libraries

AJAX Workshop. Karen A. Coombs University of Houston Libraries Jason A. Clark Montana State University Libraries AJAX Workshop Karen A. Coombs University of Houston Libraries Jason A. Clark Montana State University Libraries Outline 1. What you re in for 2. What s AJAX? 3. Why AJAX? 4. Look at some AJAX examples

More information

Indexing and Searching

Indexing and Searching Indexing and Searching Berlin Chen Department of Computer Science & Information Engineering National Taiwan Normal University References: 1. Modern Information Retrieval, chapter 9 2. Information Retrieval:

More information

java -jar Xmx2048mb /Applications/burpsuite_pro_v1.5.jar

java -jar Xmx2048mb /Applications/burpsuite_pro_v1.5.jar Training: An Introduction to Burp Suite Part One By Mike Sheward Burp suite provides a solid platform for launching a web application security assessment. In this guide we re going to introduce the features

More information

Chapter 6: ISAR Systems: Functions and Design

Chapter 6: ISAR Systems: Functions and Design Chapter 6: ISAR Systems: Functions and Design Information Search And Retrieval is a system which allow end users to communicate with the system. Every one will use the ISAR system in a different way. Each

More information

Speaker Pages For CoMeT System

Speaker Pages For CoMeT System Speaker Pages For CoMeT System Independent Study Report 2930 spring 2013 Name: Yu Xia Supervisors: Dr. Peter Brusilovsky Chirayu Wongchokprasitti The goal for the independent study The website is a talk-

More information

ImageNow eforms. Getting Started Guide. ImageNow Version: 6.7. x

ImageNow eforms. Getting Started Guide. ImageNow Version: 6.7. x ImageNow eforms Getting Started Guide ImageNow Version: 6.7. x Written by: Product Documentation, R&D Date: September 2016 2014 Perceptive Software. All rights reserved CaptureNow, ImageNow, Interact,

More information

Design Recovery & Rebuild with X-Analysis

Design Recovery & Rebuild with X-Analysis MANAGEMENT OVERVIEW A GUIDE TO THE BENEFITS OF USING DESIGN RECOVERY & REBUILD Design Recovery & Rebuild with X-Analysis Databorough Ltd. 66 York Road Weybridge UK info@databorough.com Phone +44 (0)1932

More information

Oracle Warehouse Builder 10g Release 2 Integrating Packaged Applications Data

Oracle Warehouse Builder 10g Release 2 Integrating Packaged Applications Data Oracle Warehouse Builder 10g Release 2 Integrating Packaged Applications Data June 2006 Note: This document is for informational purposes. It is not a commitment to deliver any material, code, or functionality,

More information

Chapter 1: The Cochrane Library Search Tour

Chapter 1: The Cochrane Library Search Tour Chapter : The Cochrane Library Search Tour Chapter : The Cochrane Library Search Tour This chapter will provide an overview of The Cochrane Library Search: Learn how The Cochrane Library new search feature

More information

VIRGINIA TECH. FlickrIDR. A web-based multimodal search interface based on the SuperIDR

VIRGINIA TECH. FlickrIDR. A web-based multimodal search interface based on the SuperIDR VIRGINIA TECH FlickrIDR A web-based multimodal search interface based on the SuperIDR Client: Uma Murthy Class: CS4624 University: Virginia Tech City: Blacksburg, VA Kaslin Fields, James Kaplan, Martin

More information

MAXQDA and Chapter 9 Coding Schemes

MAXQDA and Chapter 9 Coding Schemes MAXQDA and Chapter 9 Coding Schemes Chapter 9 discusses how the structures of coding schemes, alternate groupings are key to moving forward with analysis. The nature and structures of the coding scheme

More information

MASTER-DETAIL FORMS. In this Chapter, you will learn about: Master-Detail Forms Page 108

MASTER-DETAIL FORMS. In this Chapter, you will learn about: Master-Detail Forms Page 108 CHAPTER 4 MASTER-DETAIL FORMS CHAPTER OBJECTIVES In this Chapter, you will learn about: Master-Detail Forms Page 108 In the previous Chapters, you created and worked with forms that had only one base-table

More information

Advanced Topics in WebSphere Portal Development Graham Harper Application Architect IBM Software Services for Collaboration

Advanced Topics in WebSphere Portal Development Graham Harper Application Architect IBM Software Services for Collaboration Advanced Topics in WebSphere Portal Development Graham Harper Application Architect IBM Software Services for Collaboration 2012 IBM Corporation Ideas behind this session Broaden the discussion when considering

More information

Execution Architecture

Execution Architecture Execution Architecture Software Architecture VO (706.706) Roman Kern Institute for Interactive Systems and Data Science, TU Graz 2018-11-07 Roman Kern (ISDS, TU Graz) Execution Architecture 2018-11-07

More information

Information Management (IM)

Information Management (IM) 1 2 3 4 5 6 7 8 9 Information Management (IM) Information Management (IM) is primarily concerned with the capture, digitization, representation, organization, transformation, and presentation of information;

More information

Critiquing technological strengths and limitations

Critiquing technological strengths and limitations http://www.scientificcomputing.com/selecting-the-right-lims.aspx Selecting the Right LIMS Critiquing technological strengths and limitations Keith M. O'Leary For many organizations, their Laboratory Information

More information