1,165 research outputs found
Middleware-based Database Replication: The Gaps between Theory and Practice
The need for high availability and performance in data management systems has
been fueling a long running interest in database replication from both academia
and industry. However, academic groups often attack replication problems in
isolation, overlooking the need for completeness in their solutions, while
commercial teams take a holistic approach that often misses opportunities for
fundamental innovation. This has created over time a gap between academic
research and industrial practice.
This paper aims to characterize the gap along three axes: performance,
availability, and administration. We build on our own experience developing and
deploying replication systems in commercial and academic settings, as well as
on a large body of prior related work. We sift through representative examples
from the last decade of open-source, academic, and commercial database
replication systems and combine this material with case studies from real
systems deployed at Fortune 500 customers. We propose two agendas, one for
academic research and one for industrial R&D, which we believe can bridge the
gap within 5-10 years. This way, we hope to both motivate and help researchers
in making the theory and practice of middleware-based database replication more
relevant to each other.Comment: 14 pages. Appears in Proc. ACM SIGMOD International Conference on
Management of Data, Vancouver, Canada, June 200
Apache Calcite: A Foundational Framework for Optimized Query Processing Over Heterogeneous Data Sources
Apache Calcite is a foundational software framework that provides query
processing, optimization, and query language support to many popular
open-source data processing systems such as Apache Hive, Apache Storm, Apache
Flink, Druid, and MapD. Calcite's architecture consists of a modular and
extensible query optimizer with hundreds of built-in optimization rules, a
query processor capable of processing a variety of query languages, an adapter
architecture designed for extensibility, and support for heterogeneous data
models and stores (relational, semi-structured, streaming, and geospatial).
This flexible, embeddable, and extensible architecture is what makes Calcite an
attractive choice for adoption in big-data frameworks. It is an active project
that continues to introduce support for the new types of data sources, query
languages, and approaches to query processing and optimization.Comment: SIGMOD'1
File Transfer Web Application
Aim is to develop a web application using java web framework.
Description: Develop a web application in 3 tier architecture involving user interface, controller and database. The user interface will be a web page hosted on a server. The web page consists of both static and dynamic content. All the data required for the application is stored in database tables. Controller accesses the data from the database and provides it to the user through user interface (web page). Web page: The webpage serves as user interface to the application. Web page is developed using Jsp, HTML, Java Script and Ajax. Controller: The controller serves as the communicating interface between web page and database. Controller serves the data to the user based on the user request. Controller is developed using Java 7, Java Servlets, and JDBC. Database: Database is used to store all the required data for the application. Database tables are designed according to requirement and developed using SQL. Server: Server is used to host the application. The developed web application is deployed onto server. Apache Tomcat is the application server for the application.
Environment: Java 7, HTML, Java Script, JDBC, Ajax, Apache Tomcat, Derby Database, SQL
The Design and Implementation of Database-Access Middleware for Live Object-Oriented Programming
We describe middleware and programming environment tools (JPie/qt) that allow programmers to access relational databases in an object-oriented way. Building on top of the JDBC API and leveraging live dynamic class creation and modification in JPie, the JPie/qt middleware presents the user with a simple interactive mechanism for creating object-oriented applications that access databases. Classes are generated mirroring the database schema and programmers deal directly with these classes. Objects of these classes can be database-bound, so reads and writes to their fields are reflected in the relational database immediately. Database transactions are supported by connecting commit and rollback to Java exception semantics
The Design and Implementation of Database-Access Middleware for Live Object-Oriented Programming
We describe middleware and programming environment tools (JPie/qt) that allow programmers to access relational databases in an object-oriented way. Building on top of the JDBC API and leveraging live dynamic class creation and modification in JPie, the JPie/qt middleware presents the user with a simple interactive mechanism for creating object-oriented applications that access databases. Classes are generated mirroring the database schema and programmers deal directly with these classes. Objects of these classes can be database-bound, so reads and writes to their fields are reflected in the relational database immediately. Database transactions are supported by connecting commit and rollback to Java exception semantics
Scala Server Faces
Progress in the Java language has been slow over the last few years. Scala is emerging as one of the probable successors for Java with features such as type inference, higher order functions, closure support and sequence comprehensions. This allows object-oriented yet concise code to be written using Scala. While Java based MVC frameworks are still prevalent, Scala based frameworks along with Ruby on Rails, Django and PHP are emerging as competitors. Scala has a web framework called Lift which has made an attempt to borrow the advantages of other frameworks while keeping code concise. Since Sun’s MVC framework, Java Server Faces 2.0 and its future versions seem to be heading in a reasonably progressive direction; I have developed a framework which attempts to overcome its limitations. I call such a framework ―Scala Server Faces‖. This framework provides a way of writing Java EE applications in Scala yet borrow from the concept of ―convention over configuration‖ followed by rival web frameworks. Again, an Eclipse tool is provided to make the programmer\u27s task of writing code on the popular Eclipse platform. Scala Server Faces, the framework and the tool allows the programmer to write enterprise web applications in Scala by providing features such as templating support, CRUD screen generation for database model objects, an Ant script to help deployment and integration with the Glassfish Application Server
Distributed Object Medical Imaging Model
Abstract- Digital medical informatics and images are commonly used in hospitals today,. Because of the interrelatedness of the radiology department and other departments, especially the intensive care unit and emergency department, the transmission and sharing of medical images has become a critical issue. Our research group has developed a Java-based Distributed Object Medical Imaging Model(DOMIM) to facilitate the rapid development and deployment of medical imaging applications in a distributed environment that can be shared and used by related departments and mobile physiciansDOMIM is a unique suite of multimedia telemedicine applications developed for the use by medical related organizations. The applications support realtime patients’ data, image files, audio and video diagnosis annotation exchanges. The DOMIM enables joint collaboration between radiologists and physicians while they are at distant geographical locations. The DOMIM environment consists of heterogeneous, autonomous, and legacy resources. The Common Object Request Broker Architecture (CORBA), Java Database Connectivity (JDBC), and Java language provide the capability to combine the DOMIM resources into an integrated, interoperable, and scalable system. The underneath technology, including IDL ORB, Event Service, IIOP JDBC/ODBC, legacy system wrapping and Java implementation are explored. This paper explores a distributed collaborative CORBA/JDBC based framework that will enhance medical information management requirements and development. It encompasses a new paradigm for the delivery of health services that requires process reengineering, cultural changes, as well as organizational changes
Fast Nearest Neighbor Search with Keywords
Conventional spatial queries, such as range search and nearest neighbor retrieval, involve only conditions on objects’ geometric properties. Today, many modern applications call for novel forms of queries that aim to find objects satisfying both a spatial predicate, and a predicate on their associated texts. For example, instead of considering all the restaurants, a nearest neighbor query would instead ask for the restaurant that is the closest among those whose menus contain “steak, spaghetti, brandy” all at the same time. Currently the best solution to such queries is based on the IR2-tree, which, as shown in this paper, has a few deficiencies that seriously impact its efficiency. Motivated by this, we develop a new access method called the spatial inverted index that extends the conventional inverted index to cope with multidimensional data, and comes with algorithms that can answer nearest neighbor queries with keywords in real time. As verified by experiments, the proposed techniques outperform the IR2-tree in query response time significantly, often by a factor of orders of magnitude
Towards quality programming in the automated testing of distributed applications
PhD ThesisSoftware testing is a very time-consuming and tedious activity and accounts for over 25% of
the cost of software development. In addition to its high cost, manual testing is unpopular and
often inconsistently executed. Software Testing Environments (STEs) overcome the deficiencies
of manual testing through automating the test process and integrating testing tools to support a
wide range of test capabilities.
Most prior work on testing is in single-thread applications. This thesis is a contribution to testing
of distributed applications, which has not been well explored. To address two crucial issues in
testing, when to stop testing and how good the software is after testing, a statistics-based
integrated test environment which is an extension of the testing concept in Quality Programming
for distributed applications is presented. It provides automatic support for test execution by the
Test Driver, test development by the SMAD Tree Editor and the Test Data Generator, test failure
analysis by the Test Results Validator and the Test Paths Tracer, test measurement by the Quality
Analyst, test management by the Test Manager and test planning by the Modeller. These tools
are integrated around a public, shared data model describing the data entities and relationships
which are manipulable by these tools. It enables early entry of the test process into the life cycle
due to the definition of the quality planning and message-flow routings in the modelling. After
well-prepared modelling and requirements specification are undertaken, the test process and the
software design and implementation can proceed concurrently.
A simple banking application written using Java Remote Method Invocation (RMI) and Java
DataBase Connectivity (JDBC) shows the testing process of fitting it into the integrated test
environment. The concept of the automated test execution through mobile agents across multiple
platforms is also illustrated on this 3-tier client/server application.The National Science Council, Taiwan:
The Ministry of National Defense, Taiwan
- …