Describe analysis of access paths, Database Management System

Assignment Help:

Describe analysis of access paths

To describe analysis of access paths, consider an example of the design of a company's employee skills database. A part of the object model from analysis phase is shown in Figure. The operation Company:: find-skill returns a group of persons in company with a given skill. Like, we may ask for data of all employees who speak Japanese.

2350_Chain of associations between objects.png

                                                               Figure: Chain of associations between objects

 

For this example, suppose that company has 1000 employees, each of one has 10 skills on average. A simple nested loop will traverse Employs 1000 times and has-skill 10,000 times. If only 5 employees in fact speak Japanese, then test-to-hit ratio is 2000. 

Now, let us check whether this figure can be improved or not. Actually, we could make many possible improvements in this Figure. First, Has-skill need not to be implemented as an unordered list a hashed set. The hashing can be performed during fixed interval of time so that cost of testing whether a person speaks Japanese is constant or not, provided a unique skill object represents speaks Japanese. This rearrangement decreases number of tests from 10,000 to 1,000, or one per employee.

For those cases where number of hits from a query is less (since only a fraction of objects satisfy test) we can build the index to improve access to objects which must be frequently retrieved. For instance, we can add a qualified association Speaks language from Company to Employee, where qualifier is the language spoken. This permits us to straight away access all employees who speak particular language with no wasted accesses. But there is a cost to index: "It requires extra memory and it must be updated every time base associations are updated". The object designer should select that when it is useful to build the indexes. Here, we have to consider case where most queries return all of objects in search path, then an index really does not save much since test-to-hit ratio in this case is very close to 1.

 

173_Index for personal skills database.png

Figure: Index for personal skills database


Related Discussions:- Describe analysis of access paths

Explain domain-oriented relational calculus?, How does Tuple-oriented relat...

How does Tuple-oriented relational calculus vary from domain-oriented relational calculus? The tuple-oriented calculus uses a tuple variables i.e., variable whose only allowed

What is relational calculus, What is Relational calculus? Relational c...

What is Relational calculus? Relational calculus is a Non- Procedural language.

Develop network database ipad app, I want an iPad app that is a simple 1 pa...

I want an iPad app that is a simple 1 page form to complete with text. The Objective is to allow a few dozen people of the same organization (they're all on iPad) to open the app,

single products ordered, For Colorado customers calculate the number of si...

For Colorado customers calculate the number of single products ordered. If a product is purchased on multiple orders, it should be counted only single time. The result should conta

What is data storage, What is Data Storage? The storage structures and ...

What is Data Storage? The storage structures and access methods used by database system are specified by a set of explanation in a special type of DDL called data storage-defin

Explain the term - control as concurrent tasks, Explain the term - Control ...

Explain the term - Control as Concurrent Tasks As we know, any object can be implemented as a task in programming language or operating system. This is the most general approa

Control as a state machine engine, Control as a State Machine Engine F...

Control as a State Machine Engine First let us define the state machine: "the state machine is a machine which is an object but not an application object. It is a part of lang

Large Project, Can you help me with the following: Drop statements for all...

Can you help me with the following: Drop statements for all objects in the lab project. Create statements for all objects of the lab project Create indexes for foreign keys Cre

Using literal character string-data manipulation language, Using Literal Ch...

Using Literal Character String Example: To print IS A as one string with column name employee SELECT ENAME || ' IS A ' || JOB AS "EMPLOYEE" FROM EMP;

Define an operator that a relational algebra does not have, Define an opera...

Define an operator that a Relational Algebra does not have Ans: Relational Algebra does not have Aggregation operators.

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd