Exforsys

Online Training

hierarchail & network

This is a discussion on hierarchail & network within the Oracle Tutorials forums, part of the Articles and Tutorials category; hi can any one give an example for hierarchial and networrk databases...


Go Back   Exforsys > Articles and Tutorials > Oracle Tutorials

Register FAQ Members List Calendar Search Today's Posts Mark Forums Read
  #1 (permalink)  
Old 05-01-2005, 01:31 AM
Junior Member
 
Join Date: Oct 2004
Posts: 2
kisshug
Exclamation hierarchail & network

hi can any one give an example for hierarchial and networrk databases
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #2 (permalink)  
Old 05-01-2005, 05:16 PM
Senior Member
 
Join Date: Mar 2005
Posts: 910
techguru is on a distinguished road
Database Types

Designers developed three different types of database structures: hierarchical, network, and relational. Hierarchical and network were first developed but relational has become dominant. While the relational design is dominant, the older databases have not been dropped. Companies that installed a hierarchical system such as IMS in the 1970s will be using and maintaining these databases for years to come even though new development is being done on relational systems. These older systems are often referred to as legacy systems.

Hierarchical and Network DBMSs

The original DBMSs (DataBase Management Systems) defined hierarchical databases as those that stored data in groups called segments. These segments were linked together through pointers according to a hierarchy. Each database started with a root segment, and all the other segments were dependent on the root. A diagram of a hierarchical database looks very much like an organizational chart, with the corporate president on the top (representing the root) and a number of vice presidents directly beneath, with the reporting structure for each vice president providing a further breakdown. In order to work with hierarchical databases, programmers needed to know this physical structure, and write statements that defined where in the hierarchy the data segment they needed existed. This resulted in very inflexible systems. One constant (or as is often stated, the only constant) in the IT world is change, and database structures often have to change. A payroll database could have several segments for taxes – one for federal, one for FICA, one for state, one for unemployment. If a city decided to impose a city employment tax, a new segment would have to be added. The addition of this new segment could require many programming changes to reflect the addition of a new segment in the hierarchy, as physically a new segment would be added in the middle of the structure. Network databases have a different design that requires sets to be built that define the linkage of the data groups. Groups can be linked across elements, not just down a hierarchy, and this provides more flexibility. It still, however, requires knowledge of the physical database as the sets must be recreated if a new group is added. Each DBMS has its own access languages, and only programmers trained in the specific DBMS and appropriate access language(s) can work with the databases.
Relational Databases (RDBMS)
Relational structure is dominant and many commercial RDBMSs (Relational DataBase Management Systems) are available including Oracle, Sybase, Informix, and DB2. In a relational design, all data exists in tables with rows and columns, and data is represented conceptually. Programmers do not have to know the physical structure of the database, nor do relational databases have specific access languages. In fact, one of the most important plusses in using relational databases is that SQL (Structured Query Language) can be used as a standard access language with all of them. SQL, unlike access languages used with hierarchical and network databases, does not require knowledge of the links, or pointers, between data groups in order to access data. Because data is retrieved by specifying access criteria, such as "all employees making over $30,000," writing SQL is not difficult. In fact, SQL statements to retrieve data are often generated by development tools including software development kits and application development environments such as Visual Basic and Forte. SQL2 (also referred to as SQL92) has been accepted as the standard for relational database access.

Relational databases have introduced new technology and new processing capabilities. Referential integrity and normalization are terms used to describe associated activity. Referential integrity refers to the DBMS processes that insure that records cannot be deleted if dependent records exist. In other words, a customer record could not be deleted if an open invoice for that customer was still unpaid. Normalization is the process that breaks data down into record groups to determine the most efficient processing. Stored procedures is the technique of storing programs within the database itself. These programs can execute based on triggers, or on schedules. A stored program could total all invoices every Friday – according to a schedule. Or, a stored program could send a message when items-on-hand fall below minimum-stock-number – this is a trigger. A trigger is an event that, when it occurs, causes a stored procedure to execute.


Relational databases are organized into two dimensional tables with rows and columns.
Relational databases are used on all platforms, from desktops to mainframes, and in all types of systems. They are, in fact, a requirement for client/server systems. Because of the use of SQL, which can access any relational database, front-end systems can be built with any number of development tools. In addition, Object-Relational DataBase Management Systems (ORDBMSs) exist to allow object-oriented systems to access the data stored in RDBMSs.

Object-Relational Databases (ORDBMS)
ORDBMSs (Object-Relational DataBase Management Systems) extend existing relational technology, making it easy to convert legacy data and systems to new object-relational databases. Data from relational databases can still be accessed through SQL statements, and an object-relational database handles both objects and data. They use relational table structures and some kind of extension to hold objects, thus providing support for nontraditional data types (text, graphics, sound, video, spatial data, etc.) and for object-oriented concepts, such as ADTs (Abstract Data Types), UDTs (User Defined Types), classes and inheritance.

Object-relational databases support object-oriented languages such as C++ and Java, and SQL3 is defined as an SQL standard for object-relational databases. ORDBMSs are written by the major database vendors and are also called universal databases (UDBs), or universal servers. Each vendor has its own extensions to handles objects. These extensions, Informix's DataBlades, Oracle's Cartridges, Sybase's Plug-Ins, and IBM's DB2 Extenders, are all versions of SQL3, which has many subsets for varying definitions. Some extensions are provided by the vendors themselves and others are written by third parties.

Object-Oriented Databases (ODBMS)
ODBMSs (Object-Oriented DataBase Management Systems) are collections of objects with each object including the definition of relationships to other objects. Objects can be complex data types, including audio, video, fingerprints, and user-defined data types. While there is no accepted standard, many of these systems support OQL (Object Query Language) and ODL (Object Definition Language), which are part of the Object Data Management Group (ODMG) standard. ODL is used to determine the structure of a database, or the database schema. The schema defines collections of objects, relationships between objects, object attributes, operations that can be applied to the objects, and exceptions that can be caused by these operations. ODL is neutral to programming languages (though follows the C++ syntax). OQL is used to retrieve data from an object base, and does not manipulate or update. While ODL and OQL have been defined, they are not in common use and the OQL definition is imprecise and prone to errors. Standard object-oriented languages are used with ODBMSs.

Multidimensional Databases (MDDB)
Most multidimensional databases are really complete development environments and include not only data and a database server, or engine, but also tools to perform complex queries against the data. The front-end application tools are usually used by non-technical people, and all layers can be queried. In a multidimensional database, data is stored in cells that exist in multiple layers with a hierarchical structure, ~e.g., shampoo is part of health & beauty products, which is part of consumer goods. By storing the data in a hierarchy, data can be viewed in three or more dimensions such as time, place, and product. These structures, called "datacubes," are hard to visualize, but are relatively easily accessed by defining values for the dimensions. Current technology supports around ten dimensions (which is really hard to picture).

Multi-dimensional, or OLAP, databases and/or views of relational data are part of all business intelligence systems. A multidimensional approach is one that handles data in multiple dimensions, or attributes, such as product line, time, cost, region, etc. Data can be permanently stored this way in multi-dimensional databases and is referred to as MOLAP data. An alternative is to store data in relational databases and have the BI (Business Intelligence) software build a multidimensional view of the data when accessed – a process called ROLAP. This methodology of data storage and access provides both "slice-and-dice" and "drill down" capabilities. Slice-and-dice processing allows users to view data across any combination of attributes, and drill down allows users to start with summaries of information and move through layers of increasingly detailed information.

They also include aggregates, which are summaries of the data. These summaries are pre-computed and saved in the database as new data. If regular processing shows that average monthly sales are often asked for, the averages would be automatically computed each month and saved as new data. This means that later queries can retrieve the aggregate (the quarterly sales) instead of summarizing the detail data again.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #3 (permalink)  
Old 05-01-2005, 05:17 PM
Senior Member
 
Join Date: Mar 2005
Posts: 910
techguru is on a distinguished road
here is a sample chapter you can read.... with schema screen shots..


http://news.dcn-asu.ru/BOOKS/Oracle....0003-0006.html
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



All times are GMT -4. The time now is 07:18 PM.


Powered by vBulletin® Version 3.7.3
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.1.0
Copyright 2004 - 2007 Exforsys Inc. All rights reserved.