Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
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