Download Java Developer

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Distributed operating system wikipedia , lookup

IEEE 1355 wikipedia , lookup

Airborne Networking wikipedia , lookup

Peer-to-peer wikipedia , lookup

Transcript
2 Java Developers Needed
I. Implementing a View Selection Algorithm for P2P Data Warehousing
I.1 Job Description
Data warehouse is a specialized database that provides data for analytical processing and
decision making. Selecting an appropriate set of materialized views to speed up the
queries is one of the most important design decisions in the data warehouse design
process. Your job is to implement and simulate a view selection algorithm a peer-to-peer
data warehousing environment using Java. The algorithm will be given to you. The
simulator should create as many peers as needed and the network topology should be an
arbitrary one or some special one. After the P2P network is created, you can implement
and simulate the process of global views selection in the P2P data warehousing system.
I.2 Required Skills





Proficient Java programming skills with good knowledge of core Java API.
Strong knowledge of Object-Oriented Programming.
Good understanding of data structures, especially graphs and trees.
Self-motivated, hardworking and flexible with an ability to learn quickly.
Good concepts of database, data warehouse, and distributed computing.
More details will be provided during developing phase.
II. Simulating Networks of Peer Database Systems
II.1 General Description
peer-to-peer system is a dynamic environment which may consist of a very large
number of nodes such as millions of nodes, which typically join and leave the system
continuously. In the past few years, a number of P2P simulation software’s have been
developed such as NeuroGrid, PeerSim, SeeraPis, and Freenet etc. However, these
simulators are not convenient to simulate a network of peer database systems (PDBSs).
To simulate the latter, we not only need creating the nodes and topology of the network,
but we also need to support several database related features. For example, we need to
automatically create a peer database for each node on the network, to populate these peer
databases with dummy data, and to create random mapping tables for establishing
acquaintances between the created peer databases. Once such a network has been
generated, it can serve as test bed for developing algorithms for query propagating among
A
peers, update propagation, advanced transaction processing, and distributed trigger
processing.
II.2 Required Skills





Proficient Java programming skills with good knowledge of core Java API.
Strong knowledge of Object-Oriented Programming.
Good understanding of data structures.
Self-motivated, hardworking and flexible with an ability to learn quickly.
Good concepts of database and distributed computing.
II.3 Technical requirements







The simulator should create as many peers as needed.
The network topology should be built either arbitrarily or in a specific way.
Each peer should be equipped with a database containing 1-3 tables.
The simulator should populate the peer database with dummy data.
Based on the generated topology, mappings tables should be created along the
acquaintance lines.
Any engine (query, update, transaction, etc ) can be plugged into each peer.
The simulator should provide a rich interface for collecting different
measurements.
More details will be provided during developing phase. Notice that this job is also
worth a master thesis.
Anyone interested should contact me ([email protected]) ASAP. The programming
job must start immediately.
Iluju Kiringa
613 5625800 ext 2123
http://www.site.uottawa.ca/~kiringa