<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Engineering Community</title>
	<atom:link href="http://engcommunity.org/blog/index.php/feed/" rel="self" type="application/rss+xml" />
	<link>http://engcommunity.org/blog</link>
	<description>Helping  by Sharing Information</description>
	<lastBuildDate>Wed, 09 Nov 2011 14:50:49 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Communication protocols in computer networks</title>
		<link>http://engcommunity.org/blog/index.php/2011/11/communication-protocols-in-computer-networks/</link>
		<comments>http://engcommunity.org/blog/index.php/2011/11/communication-protocols-in-computer-networks/#comments</comments>
		<pubDate>Sun, 06 Nov 2011 18:14:52 +0000</pubDate>
		<dc:creator>Sanket Mahapatra</dc:creator>
				<category><![CDATA[Computer Engineering]]></category>
		<category><![CDATA[Engineering Branches]]></category>
		<category><![CDATA[network protocol]]></category>

		<guid isPermaLink="false">http://engcommunity.org/blog/?p=450</guid>
		<description><![CDATA[A protocol means the rules that are applicable for a network. Protocol defines standardized formats for packet data, techniques for detecting and correcting errors and so on. To understand the concept of a communication protocol,let us assume that A and B need to talk to one another. They want to exchange their ideas. But it [...]]]></description>
			<content:encoded><![CDATA[<p>A protocol means the rules that are applicable for a network. Protocol defines standardized formats for packet data, techniques for detecting and correcting errors and so on.</p>
<p>To understand the concept of a communication protocol,let us assume that A and B need to talk to one another. They want to exchange their ideas. But it turns out that,both,A and B are egoists. They start talking again simultaneously,then pause for breath simultaneously,and then start talking again. Now imagine the confusion and chaos. To avoid it,they must follow a set of rules while talking. For instance,say first A must talk,then he/she must give B a chance to put forward his/her ideas,and so on. This common set of rules would be known as communication protocol for A and B.</p>
<p>A protocol is &#8220;a formal description of message formats and the rules that two or more machines must follow to exchange those messages.&#8221; We need protocols every time we want to do something on a network printer we need protocols. Every time we want to save our work on disk,we don&#8217;t need protocols-unless the disk is on a network file server. Usually multiple protocols will be in use simultaneously. For one thing,computers usually do Â several things at once,and often for several people at once. Therefore, most protocols support multitasking. Also,one operation can involve several protocols. For example,consider the NFS(Network File System) protocol. A write to a file is performed with an NFS operation,that uses another protocol to deliver a datagram on an Ethernet,and so on.</p>
<p><strong>HTTP (Hypertext transfer protocol)-Â </strong></p>
<p>The hypertext transfer protocol (HTTP) is an application level protocol with the lightness and speed necessary for distributed, collaborative, hypermedia information systems. It is a generic, stateless, object oriented protocol which can be used for many tasks, such as name servers and distributed object management systems, through extension of its request methods (commands). A feature of HTTP is the typing of data being transferred. HTTP has been in use by the world wide web global information intitiative since 1990.</p>
<p>Practical information systems requires more functionality than simple retrieval, including search, front-end update, and annotation. HTTP allows an open-ended set of methods to be used to indicate the purpose of a request. It builds on the disciple of reference provided by the uniform resource identifier as a location (URL) or name (URN), for indicating the resource on which a method is to be applied. Messages are passed to HTTP in a format similar to that used by internet mail and Multipurpose Internet Mail Extensions (MIME). HTTP is also used as a generic protocol for communication between user agents and proxies/gateways to other internet protocols, such as SMTP, NNTP, FTP, gopher and WAIS, allowing basic hypermedia access to resources available from diverse applications and simplifying the implementation of user agents.</p>
<p>The HTTP protocol consists of two fairly ditinct items: the set of requests from browsers to servers and the set of responses going back the other way. Although HTTP was designed for use in the web, it has been intentionally made more general than necessary with an eye to future object oriented applications.</p>
<p>The HTTP has various built in request methods with allow users to read a web page, or to read a web page&#8217;s header, or to store a webpage, or to connect two existing resources or to break an existing connection between two resources.</p>
<p><strong>FTP (File transfer protocol)-</strong></p>
<p>One of the original services on the internet was designed to allow for transferring files from one system to another. It goes by the name ftp. Files of any type can be transferred, although you may have to specify whether the file is an ASCII or binary file. They can be transferred to any system on the internetm provided that permissions are set accordingly. FTP offers these advantages:</p>
<p>(i)Its very useful to transfer files from one network in an organization to another.<br />
(ii)Its an effective way to get geographically dispersed group to co-operate on a project.<br />
(iii)Its a potent and popular way to share information over the internet.</p>
<p>FTP isn&#8217;t just the name of the protocol; its also the name of a program or command. Issue the command by typing ftp, followed by the address of another site, and press enter.</p>
<p>FTP acts as a client server process. You give the command ftp using a remote address such as the following:</p>
<p>FTP newday.horizon.com</p>
<p>The FTP running on your system is client to an FTP process that acts as server on newday.horizon.com. You issue commands to the ftp process at newday, and it responds appropriately. The protocol is mainly concerned with transfer of file.</p>
<p>The objectives of FTP are-</p>
<ul>
<li>To promote sharing of files</li>
<li>To encourage indirect or implicit use of remote computers</li>
<li>To shield a user from variations in file storage systems among hosts</li>
<li>To transfer data reliably and efficiently. FTP, though usable directly by a user at a terminal, is designed mainly for use by programs.</li>
</ul>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://engcommunity.org/blog/index.php/2011/11/communication-protocols-in-computer-networks/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Common network devices and their working</title>
		<link>http://engcommunity.org/blog/index.php/2011/10/common-network-devices-and-their-working/</link>
		<comments>http://engcommunity.org/blog/index.php/2011/10/common-network-devices-and-their-working/#comments</comments>
		<pubDate>Sun, 30 Oct 2011 05:50:22 +0000</pubDate>
		<dc:creator>Sanket Mahapatra</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://engcommunity.org/blog/?p=440</guid>
		<description><![CDATA[In the smooth functioning of networks, many devices play important roles. Â In this articles i&#8217;m going to discuss about a few of such devices. Lets begin our discussion with a device that is most probably sitting atop your computer table right now i.e, Modem. Modem-A modem is a computer peripheral that allows you to connect [...]]]></description>
			<content:encoded><![CDATA[<p>In the smooth functioning of networks, many devices play important roles. Â In this articles i&#8217;m going to discuss about a few of such devices. Lets begin our discussion with a device that is most probably sitting atop your computer table right now i.e, Modem. <strong>Modem-</strong>A modem is a computer peripheral that allows you to connect and communicate with other computers via telephone lines. Modems allow you to combine the power of your computer with the global reach of the telephone system. Because ordinary telephone lines can&#8217;t carry digital information, a modem changes the digital data from you computer into analog data, a format that can be carried by telephone lines. In a similar manner, the modem receiving the call then changes the analog signal back into digital data that the computer can digest. This shift of digital data into analog data and back again, allows two computers to &#8216;speak&#8217; with one another. Called modulation/demodulation, this transformation of signals is how the modem received its name. With a modem and a standard telephone line, you can send faxes to the office or important customers without leaving your computer. And with an internet connection, you can share recipes with fellow gournets Â catch up on the latest news, view a weather map from Thailand, keep in touch with a distant friend via email, the worldwide web and much more. Modem converts digital signal to A/F (Audio Frequency) tones which are in the frequency range that the telephone lines can transmit and also it can convert transmitted tones back to digital information. Modems come in two types-</p>
<ul>
<li>Internal modems are the modems that are fixed within the computer.</li>
<li>External modems are the modems that are connected externally to a computer as other peripherals are connected.</li>
</ul>
<p><strong>RJ-45-</strong> RJ-45 is short for registered jack. Its an eight wire connector, which is commonly used to connect computers on Local Area Networks (LAN), especially ethernet. Â The RJ-45 connector looks very similar to standard telephone connector (RJ-11) , but its wider than RJ-11, because it houses 8 wires instead of 4. RJ-45 connectors are used to connect computers in Ethernet LANs. <strong>Ethernet Card-</strong> The computers that are part of Ethernet, have to install a special card called ethernet card. Â An ethernet card contains connections for either coaxial or twisted pair cables (or both). If it is designed Â for twisted pair, it will have a RJ-45 connection. Some ethernet cards also have AUI connector. Â This can be used to attach coaxial, twisted pair, or fiber optics cable to an ethernet card. When this connection is used, there is always an external transceiver attached to the workstation. <strong>Hub-</strong> A hub is a hardware device used to connect several computers together. A hub that contains multiple independent but connected modules of network and inter-networked equipment. A similar term is concentrator. A concentrator is a device that provides a central connection point for cables from workstations, servers and peripherals. In a star topology, twisted pair wire os run from each workstation to a central concentrator. Basically hubs are multi-slot concentrators into which a number of multi-port cards can be plugged to provide additional access as the network grows in size . Hubs can be either active or passive. Â Active hubs electrically amplify the signal as it moves from one connected device to another. Active concentrators are used like repeaters to extend the length of the network. Passive hubs allow the signal to pass from one computer to another without any change. Hubs usually support 8,12, or 24 RJ-45 ports. These are often used in star or star wired ring topology and require specialized software for port management. Hubs are simple devices that interconnect groups of users. Hubs forward any data packets-including email, word processing documents, graphics, print requests- they receive over one port from one workstation to all of their remaining ports. All users connected to a single hub or stack of connected hubs are in the same segment, sharing Â the hubs bandwidth or data carrying capacity. As more users are added to a segment, they compete for a finite amount of bandwidth devoted to that segment. To understand how a hub serves a network, imagine a hotel with just one phone line available to all guests. Lets say one guest wants to call another. She picks up her phone and the phone rings in all rooms. All the other guests have to answer the phone and determine whether or not the call is intended for them. Then, as long as the conversation lasts, no one else can use the line. With a few guests, this system is marginally acceptable. However at peak times of the day- say, when everyone returns to his or her room in the evening, it becomes difficult to communicate. The phone line is always busy.</p>
<p><strong>Switch-</strong> A switch is a device that is used to segment networks into different subnetworks called subnets or LAN segments. Segmenting the network into smaller subnets, prevents traffic overloading in a network. A switch is responsible for filtering i.e., transforming data in a specific way and for forwarding packets (a piece of message being transmitted) between LAN segments. Switch support any packet Â protocol.Â LANs that are segmented through switches are called Switched LANs. In the case of Ethernet LANs, they are called Switched Ethernet LANs.</p>
<p>HOW A SWITCH FUNCTIONS- To insulate the transmission from the other ports, the switch establishes a temporary connection between the source and destination, and then terminates the connection once the conversation is done. A switch would be like a phone system with private lines in place of the hub&#8217;s party line. For instance, Meira Sen at the Maurya Hotel callsIbrahim Soz in another room, and the operator or phone switch connects the two of them on a dedicated line. This allows more conversations at any one time thereby allowing more guests to communicate.</p>
<p><strong>Repeater-</strong></p>
<p>A repeater is a device that amplifies a signal being transmitted on the network. Its used in long network lines, which exceed the maximum rated distance for a single run. Over distance, the cables connecting a network lose the signal transmitted. If the signal degrades too much, it fails to reach the destination. Or, if it does arrive, the degradation of the message makes it useless. Repeaters can be installe along the way to ensure that data packets reach their destination. Â Repeaters are of two kinds- amplifier and signal repeater. The first merely amplifies noise. The second type collects the inbound packet and then retransmits the packet as if it were starting from the source station.</p>
<p><strong>Bridge-</strong></p>
<p>A bridge is a device that lets you link two networks together. Bridges are smart enough to know which computers are on which side of the bridge, so they only allow those messages that need to get to the other side to cross the bridge. This improves performance on both sides of the bridge. As a packet arrives at the bridge, the bridge examines the physical destination address of the packet. The bridge then decides whether or not let the packet cross. A bridge is a network device that establishes an intelligent connection between two local networks with the same standard but with different types of cables.</p>
<p><strong>Router-</strong></p>
<p>A device that works like a bridge but can handle different protocols, is known as a router. For example. a router can link ethernet to a mainframe. If the destination is unknown to a router it sends the traffic (bound to unknown destination) to another router (using logical addresses) which knows the destination. A router differs from a bridge in a way that former uses logical addresses and the latter uses physical addresses. A router is a network device that is used to separate different segments in a network to improve performance and reliability. A router works like a bridge, but can handle different protocols.</p>
<p>HOW A ROUTER FUNCTIONS-</p>
<p>Compared to hubs and switches,routers are smarter still. Routers use a more complete packet address to determine which router or workstation shouldÂ receive each packet next. Based on a network road map called a routing table,routers can help ensure that packets are travelling the most efficient paths toÂ their destinations. If a link between two routers fails,the sending router can determine an alternate route keep traffic moving.</p>
<p>To understand routing,imagine the Maurya Hotel and all the fellow hotels in its chain have trained their operators to be more efficient. When guest Meira Sen at the Maurya Hotel calls guest Ishaan Kapoor at the Shereton Hotel,the operator at the Maurya Hotel knows the best way to patch that call through even in the case when direct linking to Shereton Hotel is not possible for a while .He sends the call to the local operator of the MS hotel,who passes it to the Shereton Hotel. If there&#8217;s ever a problem with the switch board at the MS Hotel,the operator at the Maurya can use a alternate route to get the call through-for example,by routing it to another hotel&#8217;s switch board,which,in turn,sends the call to the Shereton.</p>
<p>Gateway:</p>
<p>A gateway is a device that connects dissimilar networks. A gateway is a device that connects dissimilar networks. A gateway operates at the highest layer of network abstraction. It expands the functionality of routers by performing data Â translation and protocol conversion. It is needed to convert Ethernet traffic from the LAN,to SNA10 (Systems Network Architecture) traffic on the legacy system. It then routes the SNA traffic to the mainframe. When the mainframe answers,the reverse process occurs.</p>
<p>A gateway is actually a node on a network that serves as an entrance to another network. In enterprises,the gateway is the computer that routes the traffic from a workstation to the outside network that is serving web pages. In homes,the gateway is the ISP that connects the user to the Internet.</p>
<p>In enterprises,the gateway node often acts as a proxy server and a firewall. The gateway is also associated with both a router,which uses headers and forwarding tables to determine where packets are sent,and a switch,which provides the actual path for the packet in and out of the gateway.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://engcommunity.org/blog/index.php/2011/10/common-network-devices-and-their-working/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Elementary terminology of computer network</title>
		<link>http://engcommunity.org/blog/index.php/2011/10/elementary-terminology-of-computer-network/</link>
		<comments>http://engcommunity.org/blog/index.php/2011/10/elementary-terminology-of-computer-network/#comments</comments>
		<pubDate>Sun, 23 Oct 2011 20:15:51 +0000</pubDate>
		<dc:creator>Sanket Mahapatra</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://engcommunity.org/blog/?p=427</guid>
		<description><![CDATA[Whenever we talk about a network, it includes the hardware and the software that make up the network. Now lets have a look at some typical hardware components of network. Nodes (Workstations)- The term nodes refers to the computers that are attached to a network and are seeking to share the resources of the network. [...]]]></description>
			<content:encoded><![CDATA[<p>Whenever we talk about a network, it includes the hardware and the software that make up the network. Now lets have a look at some typical hardware components of network.</p>
<p><strong>Nodes (Workstations)-</strong></p>
<p>The term nodes refers to the computers that are attached to a network and are seeking to share the resources of the network. Ofcourse, if there were no nodes (also called workstations), there would be no network at all.</p>
<p><strong>Server-</strong></p>
<p>A computer that facilitates the sharing of data, software, and hardware resources on the network is termed as a Server. On small networks, sometimes all the shareable stuff (like files, data, software etc) is stored on the server. A network can have more than one server also. Each server has a unique name on the network and all users of network identify the server by its unique name.</p>
<p>Servers can be of two types-</p>
<ul>
<li>Non-dedicated servers- On small networks, a workstation that can double up as a server is known as non-dedicated server since its not completely dedicated to the cause of serving. Such servers can facilitate the resource sharing among workstations on a proportionally smaller scale. Since one computer works as a workstation as well as a server, its slower and requires more memory. The small networks using such a server are known as PEER-TO-PEER networks.</li>
<li>Dedicated servers- On bigger network installations, there is a computer reserved for server&#8217;s job and its only job is to help workstations access data, software and hardware resources. It doesn&#8217;t double up as a workstation and such a server is known as dedicated server. The networks using such a server are known as MASTER-SLAVE networks.</li>
</ul>
<p>On a network there maybe many servers that allow workstations to share specific resources. For example, there may be a server exclusively for serving files-related requests like storing files, deciding about their access privileges and regulating the amount of space allowed for each user. This server is known as file server. Similarly, there may be printer server and modem server. The printer server takes care of the printing requirements of a number of workstations and the modem server helps a group of network users use a modem to transmit long distance messages.</p>
<p><strong>Network Interface Unit (NIU)-</strong></p>
<p>A network interface unit is an interpreter that helps establish communication between the server and the workstations. A standalone computer lives in its own world and carries out its tasks with its own inbuilt resources. But as soon as it becomes a workstation, it needs an interface to help establish a connection with the shared network because without this, the workstations will not be able to share network resources.</p>
<p>The network-interface-unit is a device that is attached to each of the workstations and the server, and helps the workstation establish the all important connection with the network. Each network-interface-unit that is attached to a workstation has a unique number identifying it which is known as the node address. The NIU is also called Terminal Access Point (TAP). Different manufacturers have different names for the interface. The NIU is also called NIC- Network Interface Card. The NIC manufacturer assigns a unique physical address to each NIC card; this physical address is known as MAC address.</p>
<p><strong>SWITCHING TECHNIQUES-</strong></p>
<p>One major purpose and use of networks is the sharing or transfer of data and information. Do you know how data are transmitted across networks? Well, for this various switching techniques are used.</p>
<p>Different types of switching techniques are employed to provide communication between two computers. These are: circuit switching, message switching and packet switching.</p>
<p><em><strong>CIRCUIT SWITCHING-</strong></em></p>
<p>In this technique, first the complete physical connection between two computers is established and then data are transmitted from the source computer to the destination computer. That is, when a computer places a telephone call,the switching equipment withing the telephone system seeks out a physical copper path all the way from sender telephone to the receiver&#8217;s telephone. The important property of this switching is to setup an end-to-end path between computer before any data can be sent.</p>
<p><em><strong>MESSAGE SWITCHING-</strong></em></p>
<p>In this technique, the source computer sends data or the message to the switching office first, which stores the data in its buffer. It then looks for a free link to another switching office and then sends the data to this office. The process is continued until the data are delivered to the destination computers,. Owing to its working principle, its also know as store and forward. That is, store first, forward later, one jump at a time.</p>
<p><em><strong>PACKET SWITCHING-</strong></em></p>
<p>With message switching, there is not limit on the block size, in contrast, packet switching places a tight upper limit on block size. A fixed size of packet which can be transmitted across the network is specified. Another point of its difference from message switching is that packets are stored on the disk in message switching, whereas in packet switching, all the packets of fixed size are stored in the main memory. This improves the performance as the access time (time taken to access a data packet) is reduced, thus, the throughput (measure of performance) of the network is improved.</p>
<p><strong>TRANSMISSION MEDIA-Â </strong></p>
<p>By transmission media or communication channels of network, its meant that the connecting cable or connecting media are being talked about. The cables that connect two or more workstations are the communication channels. In LAN&#8217;s many different types of media are in use. Copper conductors in the form of twisted pair or co-axial are by far the most common. More recently, very serious consideration has been given to the use of optical fiber technology in LANs. Other media, e.g microwave transmission, infrared, telephone line etc are also used. We can group the communication media in two categories- guided media and unguided media. The guided media includes cables and unguided media includes waves through air, water or vacuum. The basic types of cables, are being discussed below. The unguided media are also being discussed.</p>
<p><strong>Twisted pair cable-</strong></p>
<p>The most common form of wiring in data communication application is the twisted pair cable. As a voice grade medium(VGM), its the basis for most internal office telephone wiring. It consists of two identical wires wrapped together in a double helix.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://engcommunity.org/blog/index.php/2011/10/elementary-terminology-of-computer-network/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Communication and network concepts</title>
		<link>http://engcommunity.org/blog/index.php/2011/10/communication-and-network-concepts/</link>
		<comments>http://engcommunity.org/blog/index.php/2011/10/communication-and-network-concepts/#comments</comments>
		<pubDate>Sat, 22 Oct 2011 13:53:33 +0000</pubDate>
		<dc:creator>Sanket Mahapatra</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://engcommunity.org/blog/?p=419</guid>
		<description><![CDATA[INTRODUCTION- During the twentieth century, the key technology has been information gathering, processing and distribution. Among other developments, we have seen the installation of worldwide telephone networks, the birth and unexpected growth of computer industry, and the launching of communication satellites. As we have entered the 21st century, these areas are rapidly converging. The merging [...]]]></description>
			<content:encoded><![CDATA[<p><strong>INTRODUCTION-</strong></p>
<p>During the twentieth century, the key technology has been information gathering, processing and distribution. Among other developments, we have seen the installation of worldwide telephone networks, the birth and unexpected growth of computer industry, and the launching of communication satellites.</p>
<p>As we have entered the 21st century, these areas are rapidly converging. The merging of computers and communications had a deep influence on the way computer systems are organized. The old model of a single computer serving all of the organizational needs, is rapidly being replaced by one in which a large number of separate but interconnected computers do Â the job. These systems are called computer networks.</p>
<p><strong>What is a network?</strong></p>
<p>A network is an interconnected collection of autonomous computers. Two computers are said to be interconnected if they are capable of exchanging information. Central to this definition is the fact that the computers are autonomous. This means that no computer on the network can start, stop or control another.</p>
<p><strong>Need for networking</strong></p>
<p>Before getting into the technical details of computer networks, we must find out why people are interested in it and what makes it necessary for the survival of any organization in this competitive era.</p>
<p><strong>Network goals</strong></p>
<p>Many organizations already have a substantial number of computers, often located far apart. For example, a company with many offices may have computers at each location to keep track of customer orders, monitor sales, and do the local payroll. Previously, each of these computers may have worked in isolation with others but at some point, management decided to connect them to gather information about entire company. In general we can refer to it as-</p>
<ul>
<li><strong>Resource sharing</strong>- The aim is to make all programs, data and peripherals available Â to anyone on the network, irrespective of the physical locations of the resources and the user.</li>
<li><strong>Reliability</strong>- A file can have copies on two or three different machines, so if one of them is unavailable (hardware crash), the other copies could be used. For military, banking, air reservation and many other applications it is of great importance.</li>
<li><strong>Cost factor</strong>- Personal computers have better price/performance ratio than micro computers. So its better to have PCs one per user, with data stored on one shared file server machine.</li>
<li><strong>Communication medium</strong>- Using a network, its possible for managers, working far apart, to prepare financial Â report of the company. The changes at one end can be immediately noticed at another and hence it speeds up the co-operation among them.</li>
</ul>
<p><strong>Application of networks-</strong></p>
<p>Computer networks have made a major impact on the society as a whole but we will discuss only of the important ones.</p>
<p>1.SHARING- The potential advantage of network is to provide an easy and flexible means of sharing. There are three distinct types of sharing:</p>
<p>(a) Peripherals- These are often expensive. Its impractical for each computer on the network to have both its laser printer and dot-matrix printer. A main frame may have one of each connected to it allowing all users controlled access in a cost effective manner.</p>
<p>(b) User of Â a multiuser system can share and exchange information in a number of Â ways. Example are- sending electronic mail or having controlled access to the some files or data base.</p>
<p>(c) In a traditional time sharing system, all control is performed centrally; if the processor fails then the entire system fails. In a network system, this need not be the case. The failure of one node should not have a domain effect on the rest. This is called distributed control and is a very lively area of research at present.</p>
<p>2. ACCESS TO REMOTE DATABASE-Another major area of network use is access to remote database. Its easy for the average person sitting at his PC to make reservation for airplanes, trains, hotels and so on anywhere in the world with instant confirmation.</p>
<p>3. COMMUNICATION FACILITIES- A third category of potential widespread network use is as a communication medium. It is possible for everyone, not just people in the computer business, to send and receive electronic mail. This mail is also able to contain digital voice, still pictures and videos.</p>
<p>Using computer network as a sophisticated communication system may reduce the amount of travelling done, thus saving energy. The information revolution is expected to change society as much as the industrial revolution did.</p>
<p><strong>EVOLUTION OF NETWORKING-</strong></p>
<p>Evolution of networking started way back in 1969 by the development of first network called ARPANET, which led to the development of Internet. Lets learn how first network evolved to change society as much as the industrial revolution did.</p>
<p>ARPANET-</p>
<p>The seeds of today&#8217;s internet were planted in 1969, when US Department of Defense sponsored a project named ARPANET( Advanced research projects agency network). The goal of this project was to connect computers at different universities ans US defense. Soon engineers, scientists, students, and researchers who were part of the system, began exchanging data and messages on it. The users of this system were also able to play long distance games and socialize with people who shared their interests. ARPANET started with a handful of computers but it expanded rapidly. In mid 80&#8242;s, another federal agency, the National Science Foundation, created a new, high capacity network called NSFnet, which was more capable than ARPANET.<br />
NSFnet allowed only the academic research on its network and not any kind of private business on it. So many private companies built their own networks, which were later interconnected along with ARPANET and NSFnet to form Internet. Â It was inter networking i.e., the linking of these two and some other network (i.e., the ARPANET, NSFnet and some private networks) that was named internet. The original ARPANET was shut down in 1990, and the government funding for NSFnet discontinued in 1995. But the commercial internet services came into picture, which are still running internet.</p>
<p><em><strong>THE INTERNET- Â </strong></em></p>
<p>The internet is a worldwide network of computer networks that evolved from the first network ARPAnet (Advanced Research Projects Agency Network). The internet is made up of many networks each run by a different company and interconnected at peering points. Its an interconnection of large and small networks around the globe. The common use of internet standards allows users connected to one network to communicate with users on another network.</p>
<p>The internet is a super-network. It connects many smaller networks together and allows all the computers to exchange information with each other. To accomplish this all the computers on the Internet have to use a common set of rules for communication. Those rules are called protocols, and the internet uses a set of protocols called TCP/IP (Transmission control protocol/ Internet Protocol).</p>
<p><strong>How does the internet work? Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â </strong></p>
<p>In internet, most computers are not connected directly to the internet. Rather they are connected to smaller networks, which in turn are connected through gateways to the internet backbone. A gateway is a device that connects dissimilar networks. A backbone is central interconnecting structure that connects one or more networks just like the trunk of a tree or the spine of a human being.</p>
<p>Lets now see how the internet functions:</p>
<ul>
<li>At the source computer, the message or the file/document to be sent to another computer is firstly divided Â into very small parts called Packets. A packet generally contains some information.</li>
<li>Each packet is given a number serial wise e.g., 1,2,3.</li>
<li>All these packets are then sent to the address of destination computer.</li>
<li>The destination computer receives the packets in random manner. If a packet is garbled or lost, its demanded again.</li>
<li>The packets are reassembled in the order of their number and the original message/file/document is obtained.</li>
</ul>
<p>Lets now see what all helps internet in doing so-</p>
<p><strong>Internet functioning-</strong></p>
<p>The reason that the internet works at all is that every computer connected to it uses the same set of rules for communication. The set of rules, as i have written before, is called protocol. The communication protocol used by internet is TCP/IP. The TCP part is responsible dividing the file/message into packets on the source computer. It (TCP) is also responsible for reassembling the received packets at the destination or recipient computer. The IP part is responsible for handling the address of destination computer so that each packet is routed (sent) to its proper destination.</p>
]]></content:encoded>
			<wfw:commentRss>http://engcommunity.org/blog/index.php/2011/10/communication-and-network-concepts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Advanced concepts of Database Management System</title>
		<link>http://engcommunity.org/blog/index.php/2011/10/advanced-concepts-of-database-management-system/</link>
		<comments>http://engcommunity.org/blog/index.php/2011/10/advanced-concepts-of-database-management-system/#comments</comments>
		<pubDate>Thu, 13 Oct 2011 16:00:07 +0000</pubDate>
		<dc:creator>Sanket Mahapatra</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://engcommunity.org/blog/?p=392</guid>
		<description><![CDATA[Much advancement has been done in database manage systems. Complex details of analysis and design of an enterprise have resulted in building a data warehouse involving wide decision making. A data warehouse is a collection of data marts representing historical data from different operations in the enterprise. This data is stored in a structure optimized [...]]]></description>
			<content:encoded><![CDATA[<p>Much advancement has been done in database manage systems. Complex details of analysis and design of an enterprise have resulted in building a data warehouse involving wide decision making. A data warehouse is a collection of data marts representing historical data from different operations in the enterprise. This data is stored in a structure optimized for querying and data analysis as a data warehouse. Dimensional modelling can be used to design effective and usable data warehouse so that reports or queries across the data warehouse are consistent. A data warehouse can also be viewed as a database for historical data from different functions within a company. In data warehousing field, we can have two paradigm as may be seen below-</p>
<ul>
<li>Bill Inmon&#8217;s Paradigm- Data warehouse is one part of the overall business intelligence system. An enterprise has one data warehouse, and data marts source their information from the data warehouse. In the data warehouse, information is stored in 3rd normal form.</li>
<li>Ralph Kimball&#8217;s paradigm-Data warehouse is the conglomerate of all data marts within the enterprise. Information is always stored in the dimensional model.</li>
</ul>
<p>There is no right or wrong between these two ideas,as they represent different data warehousing philosophies. In reality,the data warehouse in most enterprises are closer to Ralph Kimball&#8217;s idea. This is because most data warehouses started out as a departmental effort,and hence they originated as a data mart. Only when more data marts are built later do they evolve into a data warehouse.</p>
<p><strong>Â THE DATA WAREHOUSE LIFE CYCLE Â :</strong></p>
<p>Any data warehouse project involves the idea of designing a database that would act as Analytical storage system,with the capabilities for data mining ,OLAP(On-line Analytical Processing),data analysis and basic reports. The key factor for the success of the project is dependent on the capabilities of the extent of data mining.</p>
<p>Data warehouse contains data that is consolidated from many operational databases. The size of data warehouse ranges from hundreds of gigabytes to terabytes in size. The steps followed in designing such data warehouses requires a clear cut process which is different from the traditional approach. A typical data warehouse project has the following phases:</p>
<p><strong> Â &gt;Requirements and Analysis phase</strong></p>
<ul>
<li>Â  Â  Â  Â  Â  Â  -User requirements of data</li>
<li>Â  Â  Â  Â  Â  Â -Tool identification phase</li>
</ul>
<p><strong> &gt;Design Phase</strong></p>
<p>Design of database with operational and analytical data</p>
<ul>
<li>Â  Â  Â  Â  Â  Â -Interface design phase</li>
<li>Â  Â  Â  Â  Â  Â -Reports (and OLAP) design</li>
</ul>
<p><strong> Â  Â &gt;Build Phase</strong></p>
<ul>
<li>Â  Â  Â  Â  Â  Â  -Database build phase</li>
<li>Â  Â  Â  Â  Â  Â  -Report build phase</li>
</ul>
<p><strong>Â  &gt;Testing Phase</strong></p>
<ul>
<li>Â  Â  Â  Â  Â  Â  -Interface and (or) data testing</li>
<li>Â  Â  Â  Â  Â  Â  -Report testing migration</li>
</ul>
<p>Data warehouses are designed to perform well with aggregate queries running on large amounts of data. The structure of data warehouse is easier for end users to navigate,understand and query against unlike the relational databases primarily designed to handle lots of transactions. Data warehouses enable queries that cut across different segments of a company&#8217;s operation, e.g. production data could be compared against inventory data even if they were originally stored in different databases with different structures. Queries that would be complex in very normalized database would be easier to build and maintain in data warehouses, decreasing the workload on transaction systems. Data warehousing is an efficient way to manage and report on data that is from a variety of sources, non uniform and scattered throughout a company. It is an efficient way to manage demand for lots of information from lots of users. It provides the capability to analyze large amounts of historical data for nuggets of wisdom that can provide an organization with competitive advantage.</p>
<p>Understanding of how to leverage information technology for their organization&#8217;s success has been in high use in recent times. Successful companies are benefiting from these technologies, what they learned and what the results of their efforts were.</p>
<p><strong>REQUIREMENT FINDING-</strong></p>
<p><strong></strong>The first thing that the project team should engage in is gathering requirements from end users. Because end users are typically not familiar with the data warehousing process or concept, the help of the business sponsor is essential. Requirement gathering can happen as one-to-one meetings or as Joint Application Development (JAD) sessions, where multiple people are talking about the project scope in the same meeting.<br />
The primary goal of this phase is to identify what constitutes as a success for this particular phase of data warehouse project. In particular, end user reporting/analysis requirements are identified and the project team will spend the remaining period of time trying to satisfy these requirements. User requirements for the data warehouse are classified in two categories- (i) Data requirements and (ii) Report requirements. Some of the typical user requirements would be as follows-</p>
<ul>
<li>Consistent, accurate and latest data to be available</li>
<li>Central storage for all the data required</li>
<li>Eliminate manual entry and manipulation of data by users</li>
<li>Friendly and advanced reporting and query tool. Eliminate offline reporting</li>
<li>Eliminate data redundancy</li>
<li>Seamless integration with the existing operational/transactional systems</li>
</ul>
<p>Associated with the identification of user requirements is a more concrete definition of other details such as hardware sizing information, training requirements, data source identification, and most importantly, a concrete project plan indicating the finishing date of the warehousing project.</p>
<p>Based on the information gathered above, a disaster recovery plan needs to be developed so that the data warehousing system can recover from accidents that disable the system. Without an effecting backup and restore strategy, the system will only last until the first major disaster, and, as many data warehousing DBAs will attest, this can happen very quickly after after the project goes live. A time frame of 2 to 8 weeks may be given for this purpose. TheÂ deliverableÂ are as follows-</p>
<ul>
<li>A list of reports/cubes to be delivered to the end users by the end of this current phase</li>
<li>An updated project plan that clearly identifies resource loads and milestone delivery dates</li>
</ul>
<p><strong>REPORTING TOOLS-Â </strong></p>
<p>Streamlining and storing of data in data warehouse is not sufficient to make it effective, since it demands the users to be more technical in nature. To eliminate this difficulty, the needs of reporting tool are required with capabilities o data analysis (slice, dice, pivot, drill-down etc.,) and data reporting. Some of the issues and requirements around report requirements are- <em>offline-online reporting system</em> and <em>user friendly OLAP tool.</em></p>
<p><em></em>Also there are different other approaches to gather the requirements and match them to obtain technical requirements. This also brings the fact of various tool studies and the approach taken to finalize on reporting tool. Some of the approaches are-</p>
<ul>
<li>Enhance Model- Add new data elements to existing data warehouse system; Automate existing interfaces;add new reporting querying tool to existing data warehouse system; and define new report templates.</li>
<li>Mirror model-Create new data warehouse system;mirror all interface of old system into new system.</li>
<li>Data source model-Create new data warehouse system; Define interfaces from available data sources for the new system; No interface from old system marked; and identify all report requirements of users in the new system.</li>
</ul>
<p>Depending on the approach, we are taking the direction of requirements gathering from business users and subsequently to derive the technical requirements can be defined.</p>
<p><strong>DATA MODELLING-Â </strong></p>
<p>All the user requirements are documented and they are understood. If there is an existing system of data warehouse, then these requirements are matched to understand the existing technical architecture. All the business requirements of data summarization, reports, data analytic requirements and data mining requirements are segregated into various components.<br />
After data summarization and data mining requirements are gathered, they are used to define the logical database. All the key business concepts are captured and their relationships are built (E-R relationships are most commonly used to capture this view).<br />
There are three levels of data modelling. They are &#8211; conceptual, logical and physical. We will now discuss the difference among the three, the order with which each one is created and how to go from one level to the other.</p>
<p><strong>Conceptual Data Model-Â </strong></p>
<p>Features of conceptual data model include the following-</p>
<ul>
<li>Includes the important entities and the relationships among them.</li>
<li>No attribute key is specified.</li>
<li>No primary key is specified.</li>
<li>At this level, the data modeler attempts to identity the highest level relationships among different entities.</li>
</ul>
<p><strong>Logical Data Model-Â </strong></p>
<p>Features of logical data model include the following</p>
<ul>
<li>Includes all entities and relationships among them.</li>
<li>All attributes for each entry are specified.</li>
<li>The primary key for each entity specified.</li>
<li>Foreign keys (keys identifying the relationship between different entities) are specified.</li>
<li>Normalization occurs at this level.</li>
</ul>
<p>At this level, the data modeler attempts to describe the data in as much detail as possible, without regard to how they will be physically implemented in the database.</p>
<p>In data warehousing, Â it is common for the conceptual data model and the logical data model to be combined into a single step (deliverable). The steps for designing the logical data model are as follows:</p>
<ul>
<li>Identify all entities</li>
<li>Specify primary keys for all entities</li>
<li>Find the relationships between different entities</li>
<li>Find all attributes for each entity</li>
<li>Resolve many-to-many relationships</li>
<li>Normalization</li>
</ul>
<p>If there is an existing data warehouse, then all the entities of that database are captured and converted for logical database design. Once this is captured, they are compared with the user data requirement and required modifications are made.<br />
Based on summarized data, the transactional data elements are identified and are appended into the database design. After the entities are identified, the relationships are re-built with the whole database in mind. The data elements that evolve from data mining and reporting requirements need not be worked through logical database design, as these elements will be captured in physical design. The key factors in logical design are to capture the data summarization and related transactional data elements.</p>
<p><strong>Physical Data Model-</strong></p>
<p>Logical database design and report requirements are considered key elements to define physical database design. Once logical design is defined, then each business entity is extracted from logical and would be analysed to define the physical table. The source transactional items are analysed to understand the data that is stored and then the elements in the table are defined in the physical design.</p>
<ul>
<li><strong>Transactional tables-</strong> The existing transactional database will identity the key field required to capture certain data related to a business entity. These keys are captured and the tables are appropriately designed in the data warehouse. The same process would be repeated for all the transactional business elements captured in logical e.g. all the transactions related to either security transactions or order transactions depending on financial or distribution corporations.</li>
<li><strong>Summarized/Fact tables-</strong> Once the transactional tables and their fields are identified, the primary keys for summarized tables are identified and the data fields captured.</li>
<li><strong>Normalization-</strong> Data is verified for redundancy and the level of data mining required in the normalization process. This process will result in dimension tables for data warehouse apart from normalizing the required tables.</li>
<li><strong>Referential integrity-</strong> Once all the tables are defined, the referential integrity is defined.</li>
</ul>
<p>Features of physical data model include the following-</p>
<ul>
<li>Specification all tables and columns</li>
<li>Foreign keys are used to identify relationships between tables</li>
<li>De-normalization Â may occur based on user requirements</li>
<li>Physical consideration may cause the physical data model to be quite different from the logical data model</li>
</ul>
<p>At this model, the data modeler will specify how the logical data model will be realized in the database schema. The steps for physical data model design are as follows-</p>
<ul>
<li>Convert entities into tables</li>
<li>Convert relationships into foreign keys</li>
<li>Convert attributes into columns</li>
<li>Modify the physical data model based on physical constraints/requirements</li>
</ul>
<p><strong>Database build-</strong></p>
<p>If this is an enhance model, then a document will be prepared, by identifying the source element for each of the element in our data warehouse database. This exercise brings out the rules and exceptions that are required to build the conversion programs. This would be the program specification for the program that would bring the data from source system to target system. Following is the process followed here.</p>
<ul>
<li>Identify a source field for all data warehouse fields.</li>
<li>Define the conversion methodology i.e, the process of Extract-Transformation-Load (ETL)</li>
<li>ETL process-This is an industry wise standard process that defines the movement of data from source system to the expected target system.</li>
<li>A transformation program is defined or the extract data is loaded into an extract file (the good practice is to have them in spreadsheet for manual files)</li>
<li>All the data that is rejected to be loaded would be stored in exceptional tables that are specifically designed for this purpose. Users will analyze the data at a later point and define the strategy to bring the relevant data into the main database. Automated routines can be built to fix them, if a pattern for rejected rows can be found in the build process, then reapply them in the transformation program.</li>
</ul>
<p><strong>Report Development-</strong></p>
<p>We have various types of reports that need to be designed and developed based on the functional usage of those. Some of them are-</p>
<p>(a) Canned reports<br />
(b) Query reports<br />
(c) Web reports and<br />
(d) OLAP reports</p>
<p>Apart from just designing the reports, security design and implementation plays a key part in development and usage of reports that are designed.</p>
<p><strong>Performance Testing-Â </strong></p>
<p>Performance takes high priority after data and report testing. Most of the time, the performance of degradation happens due to long run interfaces holding the system as non-usable. This is a very critical piece of data warehouse, if people in multiple geographical locations with time difference use this. The time the database can be non-usable reduces depending on the spread of users and their work timings. Time is also an important factor in determining the reporting tool and the data presentation. The lesser time the tool takes to show the data, the more acceptable the tool would be.</p>
<p>The criteria of calculations to be done in reporting tool or stored in database would depend on Â the performance of reporting tool. This would result in creating of new views in database that would reduce the time on reporting tool.</p>
<p>This criteria of using a load utility or a load application program in interfaces would also depend on the performance of the interface processing.</p>
<p><strong>Operational vs Informational Systems-</strong></p>
<p>Perhaps the most important concept that has come out of the data Warehouse movement is the recognition that there are two fundamentally different types of information systems in all organizations: operational system and informational system.<br />
Operational systems are just what their name implies; they are the systems that help us run the enterprise operation day-to-day. These are the backbone systems of any enterprise, our &#8216;order entry&#8217;, &#8216;inventory&#8217;, &#8216;manufacturing&#8217;. &#8216;payroll&#8217;, and &#8216;accounting&#8217; systems. Because of their importance to the organization, operational systems were almost always the first parts of the enterprise to be computerized. Â Over the years, these operational systems have been extended and re-written, enhanced and maintained to the point that they are completely integrated into the organization. Indeed, most large organizations around the world today wouldn&#8217;t operate without their operational systems and the data that these systems maintain.</p>
<p>On the other hand, there are other functions that go within the enterprise that have to do with planning, forecasting and managing the organization. These functions are also critical to the survival of the organization, especially in our current fast paced world. Functions like &#8216;marketing planning&#8217;, &#8216;engineering planning&#8217; and &#8216;financial analysis&#8217; also require information systems to support them. But these functions are different from operational ones, and the types of systems and information required are also different. The knowledge based functions are informational systems.</p>
<p>Informational systems have to do with analyzing the data and making decisions, often major decisions about how the enterprise will operate, now and in the future. And not only do informational systems have a different focus from operational ones, they often have a different scope, where operational data needs are normally focused upon a single area, informational data needs often span a number of different areas and need large amounts of large amounts of related operational data.</p>
<p>In the last few years, data warehousing has grown rapidly from a set of related ideas into an architecture for data delivery for enterprise end-user computing.</p>
<p><strong>DATA WAREHOUSE FAILURES-</strong></p>
<p>Common sources of failure while building data warehouse are as follows:</p>
<ul>
<li>Missing business drivers</li>
<li>Use of wrong architecture</li>
<li>&#8216;Dirty&#8217; source data</li>
<li>Top down development</li>
<li>Neglecting scalability and performance issues</li>
</ul>
<p>The data warehouse should be built to solve a recognized and well defined business problem. Sometimes these business problems are not identified properly. Some examples of such problems are as follows-</p>
<ul>
<li>Customers are moving to competitors</li>
<li>Management has little insight and control over costs</li>
<li>Promotions are failing for unknown reasons</li>
<li>There is a high turnover of goods and high cost of inventory</li>
<li>The organization has an inadequate understanding of consumer needs</li>
</ul>
<p>If the business drivers are missing and the business manager decide to build a DW because the others have it, or an IT manager decided to build a DW hoping the business managers will use it, then such a data warehouse Â project is likely to fail.</p>
<p>Also many data warehouse projects fail due to selection of an architecture that is incapable to meet business requirements. A desire to build a data warehouse (DW) quickly and cheaply often leads to selection of a wrong architecture. There exist architectures that are generally considered to be wrong:</p>
<ul>
<li>&#8216;Virtual&#8217; data warehouse</li>
<li>&#8216;Data Mart in a Box&#8217;</li>
<li>&#8216;Stovepipe data Marts</li>
</ul>
<p>We will discuss some of such architecture in the next section.</p>
<p>Also dirty Read is resulted due to missing of data, erroneous or inconsistent data values. Examples of &#8216;dirty&#8217; data are-</p>
<ul>
<li>Multiple attribute values in one field</li>
<li>One attribute value across two or more fields</li>
<li>different spellings for the same attribute value</li>
<li>inconsistent names for legal entities</li>
<li>incorrect use of codes across records</li>
</ul>
<p>It is generally observed that up to 20% of fields can contain such dirty data.</p>
<p><strong>Data mart-</strong></p>
<p>A data mart (DM) is a segment of data warehouse that can provide data for reporting and analysis on a section, unit, department or operation in the company, e.g., sales, payroll,production. Data marts are sometimes complete individual data warehouses which are usually smaller than the corporate data warehouse.</p>
<p><strong>OLTP vs OLAP- Â  Â </strong></p>
<p>OLTP stands for online transaction processing. It uses normalized tables to quickly record large amounts of transactions while making sure that these updates of data occur in as few places as possible. Consequently OLTP database are designed for recording the daily operations and transactions of a business, E,g, a timecard system that supports a large production environment must record successfully a large number of updates during critical periods like lunch hour, breaks, startup and close of work.</p>
<p>OLAP stands for Online Analytical Processing. It uses database tables (fact and dimension tables ) to enable multidimensional viewing, analysis and querying of large amounts of data e.g., OLAP technology would provide management with fast answers to complex queries on their operational data or enable them to analyze their company&#8217;s historical data for trends and patterns.</p>
<p>The first attempt to provide a definition to OLAP was by Dr. Codd, who proposed 12 rules for OLAP. Later, it was discovered that this particular white paper was sponsored by one of the OLAP tool vendors, thus causing it to lose its objectivity. The OLAP report has proposed the FASMI test, Fast Analysis of Shared Multidimensional Information.</p>
<p>For people on the business side, the key feature out of the above list is &#8216;Multidimensional&#8217; . In other words, the ability to analyze metrics in different dimensions Â such as time, geography, gender, product, etc. For example, sales for the company is up,what region is most responsible for this increase? Which store in this region is most responsible for the increase? What particular product category or categories contribute the most to the increase? Answering these types of questions in order means that we are performing an OLAP analysis.</p>
<p>Depending on the underlying technology used, OLAP can be broadly divided into two different camps: MOLAP and ROLAP. Another hybrid OLAP (HOLAP) refers to technologies that combine MOLAP and ROLAP.</p>
<p><strong>MOLAP- Â  Â  Â  Â </strong></p>
<p>This is the more traditional way of OLAP analysis. In MOLAP, data is stored in a multidimensional cube. The storage is not in the relational databse, but in proprietary formats.</p>
<p>Advantages-</p>
<ul>
<li>Excellent performance- MOLAP cubes are built for fast data retrieval, and is optimal for slicing and dicing operations.</li>
<li>Can perform complex calculations- All calculations have been pre-generated when the cube is created. Hence, complex calculations are not only doable, but they return quickly.</li>
</ul>
<p>Disadvantages-</p>
<ul>
<li>Limited in the amount of data it can handle- Because all calculations are performed when the cube is built, its not possible to include a large amount of data in the cube itself. This is not to say that the data in the cube cannot be derived from a large amount of data. Indeed, this is possible. But in case, only summary-level information will be included in the cube itself.</li>
<li>Requires additional investment- Cube technologies are often proprietary and do not already exist in the organization. Therefore, to adopt MOLAP technology, chances are additional investments in human and capital resources are needed.</li>
</ul>
<p><strong>ROLAP- Â </strong></p>
<p>This methodology relies on manipulating the data stored in the relational database to give the appearance of traditional OLAP&#8217;s slicing and dicing functionality. In essence each action of slicing and dicing is equivalent to adding a &#8216;WHERE&#8217; clause in the SQL statement.</p>
<p>Advantages-</p>
<ul>
<li>Can handle large amounts of data- The data size limitation of ROLAP technology is the limitation on data size of the underlying relational database. In other words, ROLAP itself places no limitation on data amount.</li>
<li>Can leverageÂ functionality inherent in the relational database: Often, relational database already comes with a host of functionality. ROLAP technologies, since they sit on top of the relational database, can therefore leverage these functionality.</li>
</ul>
<p>Disadvantages-</p>
<ul>
<li>Performance can be slow: Â Because each ROLAP report is essentially a SQL query (or multiple SQL queries) in the relational database,the query time can be long if the underlying data size is large.</li>
<li>Limited by SQL functionality- Because ROLAP technology mainly relies on generating SQL statements to query the relational database, and SQL statements do not fit all needs (for example, it is difficult to perform complex calculations using SQL), ROLAP technologies are therefore traditionally limited to what SQL can do. ROLAP vendors have mitigated this risk by building into the tool out of the box complex functions as well as ability to allow users to define their own functions.</li>
</ul>
<p><strong>HOLAP-</strong></p>
<p>Holap technologies attempt to combine the advantages of MOLAP and ROLAP. For summary type information, HOLAP leverages cube technology for faster performance. When detail information is needed, HOLAP can drill through from the cube into the underlying relational data.</p>
<p><strong>A typical OLAP system-</strong></p>
<p>A standard OLAP system contains six common characteristics as give below-</p>
<ul>
<li>Client server architecture</li>
<li>Advanced support to data management</li>
<li>User interface adopted to the user knowledge and needs</li>
<li>Multidimensional data structures</li>
<li>Techniques of multi-dimensional data analysis, and</li>
<li>Metadata repository</li>
</ul>
<p>Client/server architecture is a kind of distributed data processing in which the functions of a user program are assigned to atleast two process which communicate with each other. These two processes are called client process and server process. The client process sends a message to the server process asking for some service and the server process responds to client&#8217;s request by executing the requested task and sending the answer back to the client process.<br />
The client part of the user program is called &#8221;front end&#8221; and the server part is called &#8221;back end&#8221;. A typical client-server distribution of tasks can be as follows-</p>
<ul>
<li>Front end is responsible for user interface issues and very often ,transaction execution .</li>
<li>Back end is responsible for data management</li>
</ul>
<p>Apart from that there are other task distribution as well, e.g., back end is responsible for transaction execution. Therefore lean clients and thick clients exist in such an architecture.</p>
<p>An OLAP system can be implemented by means of the following:</p>
<ul>
<li>Traditional relational database server</li>
<li>Specialized SQL server</li>
<li>ROLAP server, or</li>
<li>MOLAP server</li>
</ul>
<p>Although traditional relational servers are not aimed at efficiently supporting OLAP queries and huge databases of the order of gigabytes, they may be used to accomplish these tasks to some extent.</p>
<p>The objective of a specialized SQL server is to provided an advanced query language and query processing support for OLAP queries over multidimensional structures. SQL is extended with appropriate commands (CUBE, WINDOW, OPTIMIZE,&#8230;)). Query processing engine is enhanced to support and utilize new kinds of indices in an intelligent way.</p>
<p>ROLAP servers are built as intermediate servers between a relational back end server a client front end with OLAP tools. Here relational back end stores and manage data. ROLAP server is used to optimize OLAP specific queries for relational back end by-</p>
<ul>
<li>Identifying views to be materialized</li>
<li>Rephrasing user queries to use materialized views, and</li>
<li>Generating multi-statement SQL for the back end server (e.g., to execute a pivot operation defined by CUBE clause)</li>
</ul>
<p>MOLAP servers directly support multi-dimensional view of data through a multidimensional storage engine. They use arrays to build hyper cubes and execute multidimensional front end queries directly against hyper cubes. MOLAP is a specialized system that efficiently supports:</p>
<ul>
<li>Queries involving aggregate and group by operators,</li>
<li>Complex boolean functions</li>
<li>Varies statistical functions</li>
<li>Time related queries</li>
</ul>
<p>OLAP systems can use data from operational databases to execute data analysis queries, but very often they poses tools for building their own multidimensional Data Warehouse from operational databases. Also, a separate specialized software can be used for data extracting, filtering, and integration of operational data into data warehouse. Also data analysis (against multidimensional and operational data) is done by OLAP front end components.</p>
<p><strong>DIMENSIONAL MODELLING-</strong></p>
<p>Dimensional modeling is the design concept used by many data warehouse designers to build their data warehouse. Dimensional model is underlying data model used by many of the commercial OLAP products available today in the market. In this model, all data is contained in two types of tables called Fact table and Dimension table-</p>
<ul>
<li>Fact Table- In a dimensional model, fact table contains the measurements or metrics or facts of business processes is sales, then a measurement of this business process such as monthly sales number is captured in the fact table. In addition to the measurements, the only other things a fact table contains are foreign keys for the dimension tables.</li>
<li>Dimension table-In a dimension model, context of the measurements is represented in dimension tables. You can also think of the context of Â measurement as the characteristics such as who, what, where, when, how of a measurement (subject). In this business process sales, the characteristics of the monthly sales number measurement can be a location (where), time (when), product sold (what).</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://engcommunity.org/blog/index.php/2011/10/advanced-concepts-of-database-management-system/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A detailed introduction to Structured Query Language (SQL)</title>
		<link>http://engcommunity.org/blog/index.php/2011/10/a-detailed-introduction-to-structured-query-language-sql/</link>
		<comments>http://engcommunity.org/blog/index.php/2011/10/a-detailed-introduction-to-structured-query-language-sql/#comments</comments>
		<pubDate>Tue, 04 Oct 2011 18:53:05 +0000</pubDate>
		<dc:creator>Sanket Mahapatra</dc:creator>
				<category><![CDATA[Computer Engineering]]></category>
		<category><![CDATA[Engineering Branches]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[Structured query language]]></category>

		<guid isPermaLink="false">http://engcommunity.org/blog/?p=373</guid>
		<description><![CDATA[Structured Query Language (SQL) was developed in an IBM laboratory in San Jose, California in the late 1970s. SQL is often referred to as &#8216;sequel&#8217; . It was originally developed for IBM&#8217;s DB2 product, a relational database management system (RDBMS) which still is used for various platforms and environments in different organizations. In fact, SQL [...]]]></description>
			<content:encoded><![CDATA[<p>Structured Query Language (SQL) was developed in an IBM laboratory in San Jose, California in the late 1970s. SQL is often referred to as &#8216;sequel&#8217; . It was originally developed for IBM&#8217;s DB2 product, a relational database management system (RDBMS) which still is used for various platforms and environments in different organizations. In fact, SQL makes an RDBMS possible. SQL is a Â non-proceduralÂ language in contrast to the procedural or third generation languages (3GLs), such as COBOL and C that had been created up to that time. Non-procedural explains the use of Â &#8216;what&#8217; rather than &#8216;how&#8217;. For example, Â SQL describes what data to retrieve, delete, or insert rather than how to perform the operation. Â The characteristic that differentiates a DBMS from an RDBMS is that the RDBMS provide a set-oriented database language. For most RDBMSs, this set-oriented database language is SQL. Set-oriented means that SQL processes sets of data in groups.</p>
<p><strong>FOURTH GENERATION LANGUAGE (4GL)-</strong></p>
<p>The varuiys basic concepts Â introduced in SQL can be used in many environments. For example, Microsoft access running on a single user windows application or SQL server running with 100 user connections. One of SQL&#8217;s greatest benefits is that it is truly a cross platform language and a cross product language. Because it is also what programmers refer to as high level or fourth generation language (4GL), a large amount of work can be done higher-level language 4GL (4th generation language) in fewer lines of Â codes.</p>
<p><em><strong>The query language-</strong></em></p>
<p>The term SQL can be confusing. The S stands for structure and L for language, it is fine up to this, but the Q is a little misleading. Q, of course stands for &#8220;Query&#8217;, which if taken literally would restrict the user only to asking the database questions. But SQL does much more than ask questions. SQL can also create tables, add data, delete data, splice data together, trigger actions based on changes to the database and store the queries within the program or database.</p>
<p>SQL is the de facto standard language used to manipulate and retrieve data from these relational Â databases. SQL enables a programmer or database administrator to do the following-</p>
<ul>
<li>Modify a database&#8217;s structure</li>
<li>change system security settings</li>
<li>Add user permissions on databases or tables</li>
<li>Query a database for information</li>
<li>Update the contents of a database</li>
</ul>
<p>The most commonly used statement in SQL is the SELECT statement which can be seen in next section. This select statement retrieves data from the database and returns the data to the user. In addition to the SELECT statement, SQL provides statements for creating new databases, tables, fields, and indexes, as well as statements for inserting and deleting records. ANSI SQL also recommends a core group of data manipulation functions. Many database systems also have tools for ensuring data integrity and enforcing security that enables programmers to stop the execution of a group of commands if a certain condition occurs.</p>
<p><strong>Personal Oracle 7-</strong></p>
<p>Personal oracle 7 is a scaled down version of the full blown oracle 7server product. As the name implies, Personal Oracle 7 allows only single user connections. However, the SQL syntax used on this product is identical to that used on the larger, more expensive versions of Oracle. In addition, the tools used in Personal Oracle 7 have much in common with the oracle 7 product. It demonstrates command line SQL and database management techniques. In command line SQL statements are entered into Oracle&#8217;s SQL *Plus tool. This tool then returns data to the screen for the user to see, or it performs the appropriate action on the database. The oracle RDBMS is distributed with a full complement of development tools. It includes a C++ and visual basic language library that can link an application to a personal oracle database. It also comes with graphical tools for database, user and object administration as well as SQL*Loader utility, which is used to import and export to and from oracle.<br />
Personal Oracle7 RDBMS is a good tool to work with for the following reasons-</p>
<ul>
<li>Â It includes nearly all the tools needed to demonstrate the topics we discussed in this blog post and in the previous post related to RDBMS.</li>
<li>It is available on virtually every platform in use today and is one of the most popular RDBMS products worldwide</li>
<li>A 90 chapter trial copy can be downloaded from Oracle Corporation&#8217;s web server- www.oracle.com</li>
</ul>
<p><strong>Open Database connectivity (ODBC)-</strong></p>
<p>ODBC is a functional library designed to provide a common application programming interface (API) to underlying database systems. It communicates with the database through a library driver just as windows communicates with a printer via a printer driver. Depending on the database being used, a networking driver may be required to connect a remote database. The architecture of the ODBC is illustrated in the following representation-</p>
<p>APPLICATION (call ODBC functions)<br />
|<br />
|<br />
DRIVER MANAGER (loads ODBC driver)<br />
|<br />
|<br />
ODBC DRIVER (processes ODBC calls, submits SQL requests, returns results)<br />
|<br />
|<br />
DATA SOURCE (underlying DBMS)</p>
<p>The unique feature of ODBC (as compared to oracle or sybase libraries) is that none of its functions are database vendor specific. For instance, you can use the same code to perform queries against a Microsoft Access table or an Informix database with little or no modifications. Once again, it should be noted that most vendors add some proprietary extension to the SQL standard, such as Microsoft&#8217;s and Sybase&#8217;s Transact SQL and oracle&#8217;s PL/SQL.</p>
<p>ODBC has developed into a standard adopted into many products, including Visual Basic, Visual C++, FoxPro, Borland Delphi, and PowerBuilder. As always, application developers need to weigh the benefit of using the emerging ODBC standard, which enables you to design code without regard for a specific database, versus the speed gained by using a database specific function library. In other words, using ODBC will be more portable but slower than using Oracle7 or Sybase libraries.</p>
<p><strong>Â SQL in Application Programming-</strong></p>
<p>SQL was originally made an ANSI standard in 1986. The ANSI 1989 standard (often called SQL 89) defines three types of interfacing to SQL within an application program:</p>
<ul>
<li><strong>Module Language</strong>- Uses procedures within programs. These procedures can be called by the application program that can return values to the program via parameter passing.</li>
<li><strong>Embedded SQL</strong>- Uses SQL statements embedded with actual program code. This method often requires the use of pre-compiler to process SQL statements. The standard defines statements for pascal, FORTRAN, COBOL, and PL/1</li>
<li><strong>Direct invocation</strong>- left up to the implementer.</li>
</ul>
<p>Before the concept of dynamic SQL evolved, embedded SQL was the most popular way of using SQL within a program. Embedded SQL, which is still used, uses static SQL, meaning that SQL statements are compiled into the application and cannot be changed at runtime. The principle is much the same as a compiler versus an interpreter. The performance for this type of SQL is good; however, it is not flexible and cannot always meet the needs of today&#8217;s changing business environments. Dynamic SQL is discussed shortly.</p>
<p>The ANSI 1992 standard (SQL-92) extended the language and became an international standard. It defines three levels of SQL compliance: entry, intermediate and full. The new features introduced include the following-</p>
<ul>
<li>Connection to databases</li>
<li>Scroll-ableÂ cursors</li>
<li>Dynamic SQL</li>
<li>Outer Joins</li>
</ul>
<p>Dynamic SQL allows construction of SQL statement at runtime. Although the performance for this type of SQL is not so good as that of embedded SQL, it provides the application developer and user a great degree of Â flexibility. A call-level interface, such as ODBC or Sybase&#8217;s DB-Library is an example of dynamic SQL.</p>
<p>Call level interfces should not be a new concept to application programmers. When using ODBC, for instancem you simply fill a variable with your SQL statement and call the function to send the SQL statement to the database. Errors or results can be returned to the program through the use of other function call designed for those purposes. Results are returned through a process known as the binding of variables.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://engcommunity.org/blog/index.php/2011/10/a-detailed-introduction-to-structured-query-language-sql/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>An introduction to Relational Database Management System</title>
		<link>http://engcommunity.org/blog/index.php/2011/10/an-introduction-to-relational-database-management-system/</link>
		<comments>http://engcommunity.org/blog/index.php/2011/10/an-introduction-to-relational-database-management-system/#comments</comments>
		<pubDate>Sat, 01 Oct 2011 17:25:24 +0000</pubDate>
		<dc:creator>Sanket Mahapatra</dc:creator>
				<category><![CDATA[Computer Engineering]]></category>
		<category><![CDATA[Engineering Branches]]></category>
		<category><![CDATA[RDMS]]></category>

		<guid isPermaLink="false">http://engcommunity.org/blog/?p=358</guid>
		<description><![CDATA[An organisation must have accurate and reliable data for effective decision making. Thus the organization maintains data and records of its various operations electronically. A database is a collection of data typically describing the activities of one or more related departments e.g., a university database might contain the information about the following: entities such as [...]]]></description>
			<content:encoded><![CDATA[<p>An organisation must have accurate and reliable data for effective decision making. Thus the organization maintains data and records of its various operations electronically. A database is a collection of data typically describing the activities of one or more related departments e.g., a university database might contain the information about the following: entities such as students, faculty, courses and classrooms and relationships such as students enrollment in courses, faculty teaching courses and the use of rooms for courses. The organization has to store these data effectively.</p>
<p><strong>Database Management System Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â Â </strong></p>
<p>A database is mechanized, formally defined, centrally controlled collection of data in an organisation. The data records are physically organised and stored so as to promoteÂ shareability, availability, ability to evolve, and integrity, which are some of the important objectives. The database approach is made operational by a database management system on DBMS, a software system which peforms the functions of defining, creating, Â revising and controlling the database. It provides facilities for retrieving data generating reports, revising data definitions, updating data and building applications. Many different end users and a variety of application programs can access the database and it is desirable to have an organisational function to exercise control over the database. This function is known as database administration. The person performing the function is a database administrator.</p>
<p><strong>Three Schema Approach</strong></p>
<p>Data consists of symbols which represent people, objects, events or concepts. Simply stated data are now facts. A data model is an abstract representation of data. It defines the way data items are organised and related. The model can use a variety of representation. Examples are: graphs, tables and mathematical formulas. The complexity of the organisation is organised Â and simplified by mental methods. The mental model describes the data requirements by some type of formal,logical representation. This logical, user oriented description of requirements is mapped into or related to a physical storage model that describes the structure of data for storage. Therefore, there are two major classes of data model: logical and physical data models. The term model is often used as a synonym for view,schema, or diagram. The three major schema related to logical and physical data models are-</p>
<ul>
<li>External schema or user view is the way the user of the data defines the data and data relationships. Also called as sub-schema, since it is one part or one view of the larger conceptual schema.</li>
<li>Conceptual schema is the overall logical view of the database.</li>
<li>Internal schema is the physical storage data model i.e. the way the data is physically organised in storage.</li>
</ul>
<p>Each user of the database is concerned only with a small portion of the database. Each user is interested in only a part of the entities in the database, only part of the attributes of those entities and certain relationships between entities. The external schema is the user&#8217;s schema or user&#8217;s view of the data being used.</p>
<p>The conceptual schema is the logical view of the entire database. It represents as closely as possible the real entities and their relationships. It contains integrity rules and authorization rules, but it does not contain information about how the data items are stored. The internal schema describes how the database is organised for physical storage and access. The internal schema includes information on ordering of records, block sizes, storage indexes, use of pointers and access strategies being used.</p>
<p>A mapping is a translation from one schema to another. In order for a user to access data, the user view of the data as reflected in the external schema must be translated into the overall conceptual schema. This is accomplished through external/conceptual mapping. In the same way, the conceptual/indexed mapping translates logical descriptions of data in the conceptual schema to physical locations and access paths in the internal schema. This is known as three schema approach.</p>
<p><strong>Database</strong></p>
<p>The database is used to store information useful to an organisation. To represent this information modelling is used. The components used in modelling are limited to the objects of interest to the organization and the relationships among these objects. One example of objects in any organisation is its personnel and one relationship and exists within this category of objects is that of suprevisor to employees. The database can be defined as a high levelÂ hierarchy of data in the form of byte as per the definitions given below:</p>
<ul>
<ul>
<li><strong>Byte</strong></li>
</ul>
</ul>
<p>- A byte is an arbitrary set of eight bits that represent a character. It is the smallest addressable unit in today&#8217;s computer.</p>
<ul>
<ul>
<li><strong>Data item(element)</strong>- One or more bytes are combined into a data item to describe an attribute of an object. For example, if the object is a student, one attribute may be roll number, name, age and address. A data item is sometimes referred to as a field. A field is actually a physical space on tape on disk, whereas a data item is the data stored in the field.</li>
<li><strong>Record</strong>- The data representation in storage of each instance of an entity is commonly termed as a record. There is a record key which uniquely identifies a record.</li>
<li><strong>File</strong>- A collection of related records is a file. The site of a file is limited by the size of the memory or the storage medium. For example, the student file will contain maybe 100 records that is for 100 number of students.</li>
<li><strong>Database</strong>- The highest level in he hierarchy is the database. It is a set of interrelated files for real-time progressing. It contains the necessary data for problem solving and can be used by several users accessing data concurrently.</li>
<li>The database maintains certain objectives as mentioned below-</li>
<li><strong>Availability</strong></li>
</ul>
</ul>
<p>- Data should be available for use by applications (both current and future) and by queries.</p>
<ul>
<li><strong>Shareability</strong>- Data items prepared by one application are available to all applications on queries. Â No data items are owned by an application.</li>
<li><strong>Ability to evolve</strong>- The database can evolve as application usage as query needs evolve.</li>
<li><strong>Data independence</strong>- The users of the database establish their view of the data and its structure without regard to the actual physical storage of the data. There are two distinct levels of data independence.</li>
<li><strong>Data integrity</strong>- The database establishes a uniform high level of accuracy and consistency. Validation rules are applied by database management system.</li>
<li><strong>Data security</strong>- This is needed to protect the data from unauthorized access and from accidental damage or destruction.</li>
<li><strong>Reduced Data redundancy</strong>- Data redundancy is storage of the same piece of data in more than one place in the computer system. This should be reduced.</li>
<li><strong>Data relatability</strong>- It is the ability to establish logical relationships between different types of records, usually in different files. For example,price and earning data might be kept in different records in a system, the price data must be updated more frequently than earning. But if a query involves a relationship such as price divided by earnings, both records must be retrieved to create the desired information.</li>
<li><strong>Standardization</strong>- It refers to the need for common definitions of data items in terms of both the precise definition of a data item name and its storage format in the database. Most database management systems provide a data dictionary facility in this regard.</li>
<li><strong>Reduce personnel time and increase productivity</strong>- In any organisation, 80% of programming budget and man hour are utilized in maintaining the conventional file system. This is reduced by database.</li>
</ul>
<p>Moreover simple requests for data handled via query language helps in more easy data retrieval which eventually results in positive effects on the organisation and hence increase in productivity.</p>
<p><strong>Components of Database Management System</strong></p>
<p>A database system involves four major components:</p>
<ul>
<li>Data</li>
<li>Hardware</li>
<li>Software</li>
<li>User</li>
</ul>
<p>1.Data- The database can be though of as a unification of several otherwise distinct files, with any redundancy among those files at least partly eliminated.</p>
<p>2.Hardware- It consists of the secondary storage volumes mostly magnetic disks, which is used to hold the stored data, together with the associated I/O devices, device controller, and I/O channels. The hardware processor and associated main memory are used to support the execution of database system software.</p>
<p>3.Software- Between the physical database layer and the users of the system is a layer of software generally known as DBMS. All requests for access to the database are handled by the DBMS. The other software includes utilities, application, and application development tools, design aids, report writers and the transaction manager.</p>
<p>4.Users- There are three broad classes of users-</p>
<ol>
<li>The application programmer responsible for writing database application programs in some high level programming languages. Such programs access the database by issuing the appropriate request typically on SQL statement to the DBMS.</li>
<li>The user interacts with the system through online workstation or terminals.</li>
<li>The database administrator or DBA is solely responsible for all the activities going on in a database system. The main functions performed by the DBA or his department falls into the following categories:</li>
</ol>
<ul>
<li>Data definition, Standardization andÂ Liaison</li>
<li>Design of data base organisation and techniques performance measurement and improvement software and hardware selection.</li>
<li>Security control.</li>
<li>Daily operational control.</li>
<li>Consultant to programmers, analysts and users.</li>
</ul>
<p>The biggest and most essential of these is the first achieving agreement on common data definitions, representations, and structures. All data-item types are named and a standard schema format is agreed upon for them. With some data-base management systems data item synonyms are permitted so that when same data item has been named or represented differently in different subsystems these different names and representations maybe preserved and equated. Details of all data items and their definitions are documented,preferably by means of an automated data dictionary. A cross reference list stating which programs use which data items, should be maintained. When any changes are proposed, the cross reference list will show who or what programs are affected. The combining of data items into named groups (data aggregates, records, segments, and relations) is agreed upon and the conceptual schema definition is created. The DBA and his staff make any necessary changes to the schema when the data are changed or new data are added. A separate person under the control of DBA Â known as Database Definition Analyst may look after these jobs. Similarly, the design functions in database administration should therefore be handled by a different man who can be termed as Database Design Analyst.</p>
<p>The day to day operations can be handled by the Data Operations Supervisor.</p>
<p>Security Â administration is a separate function from data base administration on many systems in which security is a major concern. The day-to-day security operations may not be the concern of the database administrator. But the overall security responsibility of the database may be looked after a separate person known as Security Officer.</p>
<p>A language called the data definition language (DDL) is used by DBA and by database designer to define schemas. The DBMS will have a DDL compiler whose function is to process the DDL statements. In order to identify description of the schema constructs and to store the schema descriptions in DBMS catalog. Once the database schemas are compiled and the database is populated with data, users much have some means to manipulate the database. Typical manipulation includes retrieval, insertion, deletion and modification of data. The DBMS provides the data manipulation language (DML) for those purposes. A data control language (DCL) is used for all the security and control procedures.</p>
<p><strong>File system versus DBMS-</strong></p>
<p>The earlier file systems of sequential, indexed and relative file organization can be discussed a little bit here in this section. There are the organisations which show the way the data are stored. A comparative study can also be made here. The sequential file organisation can have the following ten points of discussion-</p>
<ul>
<li>Th records are physically stored in the sequence in which they are created.</li>
<li>The file maybe created on any device e.g, sequential like tape or random device like disk.</li>
<li>Only sequential access is permitted giving records in their physical order on the file volume.</li>
<li>No extra storage is needed other than required for storing file records.</li>
<li>Updating of files possible only for disk files. A new updated file must be created on other devices.</li>
<li>Addition at end in EXTEND file function. For addition in between or deletion, a new file must be created.</li>
<li>Organization is well suited for files with high record activity, where percentage of transacted record to the total record is very high. Batching of transaction is actually done to activate this.</li>
<li>The average record processing speed is fast.</li>
<li>The file cannot be accessed by keys of the records.</li>
<li>Blocking of the records is usually employed.</li>
</ul>
<p>The indexed file comparison can be discussed with the following ten comparative points-</p>
<ul>
<li>The records are stored in ascending sequence of primary keys .</li>
<li>The file will be created only on direct access storage devices like disk.</li>
<li>This permits both random and sequence access mode. In sequential access records are given in ascending order of primary key.</li>
<li>Additional space is required to store indexes.</li>
<li>Updating is permitted.</li>
<li>Additions and deletions may be made.</li>
<li>Suitable for low activity files due to random access. Sequential access may be preferred in high activity application.</li>
<li>The speed is comparatively slower.</li>
<li>The file maybe accessed by one or more keys.</li>
<li>Blocking is not permitted (may depend on system)</li>
</ul>
<p>The relative file organisation will similarly be based on the following ten points-</p>
<ul>
<li>The position of record is decided by hashing function.</li>
<li>The file will be created only on direct access storage devices like disk.</li>
<li>Permits both access modes. In sequential access, it may be necessary to check if a position is empty.</li>
<li>A file is generally allocated more resource positions than necessary to get a better performance from hashing procedures.</li>
<li>Updating is permitted.</li>
<li>Addition possible if space is available. Deletions are allowed.</li>
<li>Well suited for low activity files. Applicable for high activity files also.</li>
<li>Speeds range in between those of sequential and indexed files.</li>
<li>The hashing procedures of algorithms, which organize the records are usually based on a single key.</li>
<li>Blocking is not permitted.</li>
</ul>
<p>However, the database has got a different objective mainly centered on standardization, reduced data redundancy, data security and data integrity. The clear advantages of database over the conventional file system can be specified as described below.:</p>
<ul>
<li>In conventional file management system same data is duplicated in more than one application. The redundancy in data storage, if not consistent , is harmful as it projects conflicting picture about facts. But in DBMS redundancy of data is overcome.</li>
<li>A file only contains data values. The descriptions of file contents is available in program e.g, file section of COBOL program. Even this description is lost once the program is compiled in conventional file system.</li>
<li>The design of new programs to obtain new reports required by management is very difficult even when we know that all necessary data are already available in files. This maybe due to incompatible representation of data e.g, a data in one file is decimal, but in another its binary.</li>
<li>It is not possible to write general purpose querying programs for adhoc on-line information needs in conventional file systems. But in DBMS, adhoc queries are possible.</li>
<li>In conventional system, any change in file characteristics changes the record descriptions. For example, if we change a file&#8217;s organisation from sequential to indexed, it is necessary to modify the program and compile it again. As the business application requirements are constantly changing, we have to maintain existing programs, which discourages growth and evolution and requires considerable investment in maintenance of old programs.</li>
<li>Security of file system is not secured in conventional file management system. But in DBMS security is of high respect as the access paths are only open to part pf the database.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://engcommunity.org/blog/index.php/2011/10/an-introduction-to-relational-database-management-system/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Choosing the correct branch while enrolling in Engineering courses</title>
		<link>http://engcommunity.org/blog/index.php/2011/10/choosing-the-correct-branch-while-enrolling-in-engineering-courses/</link>
		<comments>http://engcommunity.org/blog/index.php/2011/10/choosing-the-correct-branch-while-enrolling-in-engineering-courses/#comments</comments>
		<pubDate>Sat, 01 Oct 2011 09:35:21 +0000</pubDate>
		<dc:creator>Sanket Mahapatra</dc:creator>
				<category><![CDATA[Career Guide]]></category>
		<category><![CDATA[career guide]]></category>

		<guid isPermaLink="false">http://engcommunity.org/blog/?p=336</guid>
		<description><![CDATA[Today, there are more than a hundred good engineering colleges in India. Apart from the world-class Indian Institute of Technologies (IIT), every state of the country has a National Institute of technology (NIT). The NITs are also reputed in the country and there is a lot of competition to get enrolled as the seats are [...]]]></description>
			<content:encoded><![CDATA[<p>Today, there are more than a hundred good engineering colleges in India. Apart from the world-class Indian Institute of Technologies (IIT), every state of the country has a National Institute of technology (NIT). The NITs are also reputed in the country and there is a lot of competition to get enrolled as the seats are few and the applicants number in millions. Â In the last few years, students have shown a lot of interest in the field of engineering. There are many factors for this, like-</p>
<ul>
<li>The area of study and work is very interesting and challenging</li>
<li>There is scope for innovating</li>
<li>TheÂ pay scaleÂ is very high when compared with other fields of work</li>
</ul>
<p>Another added incentive is that, the field of engineering has many sub-streams to choose from. Depending on the interests of the students, they can choose their branch. For example, if someone has a strong fundamental knowledge of C programming from high school years, then he/she can opt for Computer Engineering. As the branch specializes in dealing with computers and their functioning, the student will find it very appropriate to study computer science. Â All these factors are responsible for the rise in the number of students enrolling in various engineering course like diplomas, bachelor and masters degrees.</p>
<p>Keeping all that apart, sometimes it also becomes difficult for a student to choose which branch to study and in most cases, parents of the students decide which branch will be most appropriate for their wards. Students, who have just passed out of school or colleges are asked to make a vital decision about their careers and they often get confused under the circumstances. Indian school education system has manyÂ lacuna, one of them is generalizing the topics taught in school. In most of the schools, a student has to study each and every subject, irrespective of his/her interest in it. In place of that, an education system should be devised, in which students, keeping in mind which careers they want to pursue in the future, are allowed to choose what they want to study. That will remove the confusion out of their minds and they will be sure and confident about choosing their career trend.</p>
<p>The core branches in engineering are-</p>
<ul>
<li>Mechanical Engineering</li>
<li>Civil Engineering</li>
<li>Electrical Engineering</li>
</ul>
<p>These three branches are the oldest branches of engineering. Other branches like Computer Engineering, Instrumentation Engineering, Electronics and telecommunications engineering etc are relatively new branches as they bloomed in the last century. It is always advisable to choose a core branch because they are evergreen branches. There is also a scope of finding work for a mechanical, civil or electrical engineer. The current time might be very good for computer and telecom engineers, but there is no guarantee that the future will be bliss too. You might feel i&#8217;m stereotyping things, but this is the hard fact. Now, talking about the other branches like CSE, IT, ECE and EEE (i hope you understand the abbreviations), they have their importance too. No one can deny the role of computers, electronic gadgets and mobile phones in shaping the modern day world. These things are infact, the face of the modern face and if you are passionate about these subjects then no one can stop you from joining these branches. But before choosing any branch, one has to think about the prospect of finding a job in the future. If the demand of the branch is high, then the engineer is very likely to remain employed every time, otherwise there is a risk of loosing the job. For example, due to the recent economic crisis that America, Britain and many other countries experienced, many softwareÂ professionalsÂ lost their jobs. You will never want to end up like that and make it sure that you don&#8217;t, you need to choose your branch very wisely and carefully.</p>
<p>The scope of finding jobs in the future is not the one and only aspect that should affect your decision while choosing an engineering branch. Another important thing that should be weighed before making a decision is your interest and passion for the branch. If you are crazy about studying mechanical engineering then you should only for mechanical engineering. If your parents force you to join computer engineering, then you have to persuade them that mechanical engineering is best for you and nothing else. If you keep on trying, then your parents might have to give up, because in the end of the day it is your career which is at stake. And passion and interest alone cannot drive your charge-You need to have strong fundamental knowledge about the subject too. This make the subsequent study of those topics in the 4 year bachelors course much easier and hassle free.</p>
<p>So, keep in mind all these point before choosing your branch and then no one can stop you from becoming a successful engineer.</p>
<p><a href="http://engcommunity.org/blog/wp-content/uploads/2011/10/engineer1.jpg"><img class="size-full wp-image-349 alignnone" style="border-width: 5px;border-color: black;border-style: solid" src="http://engcommunity.org/blog/wp-content/uploads/2011/10/engineer1.jpg" alt="" width="300" height="200" /></a><a href="http://engcommunity.org/blog/wp-content/uploads/2011/10/engineering2.jpg"><img class="size-full wp-image-350 alignnone" style="margin-left: 10px;margin-right: 10px;border-width: 5px;border-color: black;border-style: solid" src="http://engcommunity.org/blog/wp-content/uploads/2011/10/engineering2.jpg" alt="" width="300" height="200" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://engcommunity.org/blog/index.php/2011/10/choosing-the-correct-branch-while-enrolling-in-engineering-courses/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Kindle Fire vs Ipad which one would you buy?</title>
		<link>http://engcommunity.org/blog/index.php/2011/09/kindle-fire-vs-ipad-which-one-would-you-buy/</link>
		<comments>http://engcommunity.org/blog/index.php/2011/09/kindle-fire-vs-ipad-which-one-would-you-buy/#comments</comments>
		<pubDate>Thu, 29 Sep 2011 00:20:47 +0000</pubDate>
		<dc:creator>Engcommunity</dc:creator>
				<category><![CDATA[Latest News]]></category>

		<guid isPermaLink="false">http://engcommunity.org/blog/?p=334</guid>
		<description><![CDATA[Kindle fire the new toy of Amazon has created lot of buzz being the most worthy competitor. Check it out below The exclusive features and advantages amazon kindle fire has over ipad or other company electronic pads are listed below All the free movies and tv shows from instant video, not only movies but 17 [...]]]></description>
			<content:encoded><![CDATA[<h1>Kindle fire</h1>
<p>the new toy of Amazon has created lot of buzz being the most worthy competitor. Check it out below<br />
<a href="http://www.amazon.com/gp/product/B0051VVOB2/ref=as_li_ss_il?ie=UTF8&amp;tag=saiismorg-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=B0051VVOB2"><img src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL160_&amp;ASIN=B0051VVOB2&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=saiismorg-20&amp;ServiceVersion=20070822" alt="" border="0" /></a><img style="border: none !important; margin: 0px !important;" src="http://www.assoc-amazon.com/e/ir?t=saiismorg-20&amp;l=as2&amp;o=1&amp;a=B0051VVOB2&amp;camp=217145&amp;creative=399373" alt="" width="1" height="1" border="0" /></p>
<p>The exclusive features and advantages amazon kindle fire has over ipad or other company electronic pads are listed below<br />
All the free movies and tv shows from instant video, not only movies but 17 million songs are all accessible through Kindle fire for a very reasonable price. As amazon kindle is mostly meant for eBookâ€™s and reading books amazon kindle fire also has access to all the Kindle books (by the way who donâ€™t know about kindle eBookâ€™s they are much cheaper than paper books).<br />
Not much is known yet by Amazon kindle fire has the Cloud-Accelerated Web Browser called amazon silk. The amazon kindle fire is smaller than ipad which could be beneficial for portability but may not be all purposes that ipad can be used for. For app lovers kindle fire may be little less from itunes apps count but android apps market is growing pretty aggressively and most of the have to have apps are available in both itunes and android market.<br />
<a href="http://www.amazon.com/gp/product/B0051VVOB2/ref=as_li_ss_il?ie=UTF8&amp;tag=saiismorg-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=B0051VVOB2"><img src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL160_&amp;ASIN=B0051VVOB2&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=saiismorg-20&amp;ServiceVersion=20070822" alt="" border="0" /></a><img style="border: none !important; margin: 0px !important;" src="http://www.assoc-amazon.com/e/ir?t=saiismorg-20&amp;l=as2&amp;o=1&amp;a=B0051VVOB2&amp;camp=217145&amp;creative=399373" alt="" width="1" height="1" border="0" /></p>
<p>Amazon kindle fire has Fast, Powerful Dual-Core Processor but anywhere close to the power of ipad2 processed and the screen is a brilliant color touchscreen but may be apple lover might not agree with it. But people with lover budget but who want get onto the ipad bandwagon Amazon kindle fire is the best option and all other competitors(except Apple) are far away from Kindle fire. Hurry up and book your piece as it is first come first serve according to amazon.<br />
<a href="http://www.amazon.com/gp/product/B0051VVOB2/ref=as_li_ss_il?ie=UTF8&amp;tag=saiismorg-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=B0051VVOB2"><img src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL160_&amp;ASIN=B0051VVOB2&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=saiismorg-20&amp;ServiceVersion=20070822" alt="" border="0" /></a><img style="border: none !important; margin: 0px !important;" src="http://www.assoc-amazon.com/e/ir?t=saiismorg-20&amp;l=as2&amp;o=1&amp;a=B0051VVOB2&amp;camp=217145&amp;creative=399373" alt="" width="1" height="1" border="0" /></p>
<p>Please feel free to let us know what you think?</p>
]]></content:encoded>
			<wfw:commentRss>http://engcommunity.org/blog/index.php/2011/09/kindle-fire-vs-ipad-which-one-would-you-buy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Benefits of Modular Programming</title>
		<link>http://engcommunity.org/blog/index.php/2011/09/benefits-of-modular-programming/</link>
		<comments>http://engcommunity.org/blog/index.php/2011/09/benefits-of-modular-programming/#comments</comments>
		<pubDate>Sun, 25 Sep 2011 17:46:45 +0000</pubDate>
		<dc:creator>Sanket Mahapatra</dc:creator>
				<category><![CDATA[Computer Engineering]]></category>
		<category><![CDATA[Engineering Branches]]></category>

		<guid isPermaLink="false">http://engcommunity.org/blog/?p=321</guid>
		<description><![CDATA[In modular programming approach, the program is progressively decomposed into smaller partitions called modules. The programs can be easily written in modular form, thus allowing an overall problem to be decomposed into a sequence of individual sub-problems. Thus, we can consider a module decomposed into successively subordinate module. Conversely, a number of modules can be [...]]]></description>
			<content:encoded><![CDATA[<p>In modular programming approach, the program is progressively decomposed into smaller partitions called modules. The programs can be easily written in modular form, thus allowing an overall problem to be decomposed into a sequence of individual sub-problems. Thus, we can consider a module decomposed into successively subordinate module. Conversely, a number of modules can be combined together to form a superior module.</p>
<p>Sub-modules are located elsewhere in the program and the superior module, whenever necessary, make a reference to subordinate module and call for its execution. This activity on the part of the superior module is known as calling, and this module is referred as calling module and sub module referred to as &#8216;called module&#8217;.</p>
<p>The sub-modules maybe Â sub-programs such as functions or procedures. For example, if a program need initial and boundary conditions, sub-routines are used to set them. Then if someone else wants to compute a different solution using that program , only these sub-routines need to be changed. This is a lot easier than having to read through a program line by line, trying to figure out what each line is supposed to do and whether it needs to be changed. The values passed to the sub-routine are arguements and the variables defined in the sub-routine are parameters. Further, arguments show exactly what information a sub-program is using. That makes it easier to figure out whether it needs to be changed when we are modifying our program. Forgetting to change all occurrences of a variable is a very common source of errors.</p>
<p>Sub-programs make it simpler to figure out how the program operates. If the boundary conditions are implemented using a sub-routine, the program can be searched for this subroutine to find all places where the boundary conditions are used. This might include some unexpected places, such as in the output, or in performing a numerical check on the overall accuracy of the program.</p>
<p>Sub-programs reduce the likelihood of bugs. Because sub-programs can use local variables, there is less chance that the code in the sub-routine interferes with that of the program itself, or with that in other sub-programs. The smaller size of the individual modules also makes it easier to understand the global effects of changing a variable.</p>
<p>Modular approach provides following advantages-</p>
<p><strong><em>1.</em>COMPLEXITY</strong>: Probably the most important reason to produce a module is to reduce the complexity of the problem. By sub dividing the problem into a number of modules,we can hide the information not needed outside the module, and then only concentrate on the specifics of the module inside. If this is still complex, then sub-modules should be created.</p>
<p><strong><em>2.</em></strong> <strong>DUPLICATION</strong>: Avoiding duplicate code is a reason for using modules. The basic fact that the code is in one place means it is easier to maintain, save space, and reduce the complexity and hence reliability of a program.</p>
<p><em><strong>3.</strong></em> <strong>DEBUGGING</strong>: By isolating areas, debugging becomes easier and reliable because we are working with smaller section of thenprogram. Things like hardware dependencies, operating system dependencies, input/output dependencies, laws and business rules, and complex data structures and complex logic are some of the ideal candidates.</p>
<p><strong><em>4.</em> PERFORMANCE</strong>: We can also use modules to create improved performance. Â We can optimize or recode in a limited amount of modules (that are &#8216;hot-spots&#8217;) rather than trying to improve the efficiency of the whole code.</p>
<p><strong><em>5.</em></strong> <strong>HIDING DATA STRUCTURES</strong>: The hiding of data structures, and their use, in modules, form a good use for modules. Complex data structures tend to be very tangled and difficult to understand things and their physical use doesn&#8217;t really translate very well to the problem domain. Therefore the best way to avoid complexity when using these structures is to make modules that do the work, and then call these.</p>
<p><strong><em>6.</em> HIDING GLOBAL DATA</strong>: Global data can also be hidden in modules. That means we can monitor access to the data if necessary, and change the structure of the data without changing the whole program. Quite often putting access to the data in a module means we can find that the data can become local or module level.</p>
<p><em><strong>7.</strong></em> <strong>RE-USABILITY</strong>: Modules can be used in other programs without rewriting rewriting or retesting. This reusability is a very important characteristic of modules.</p>
<p><em><strong>8.</strong></em> <strong>READABILITY</strong>: Programs are more readable because of the modular structure. A readable module is worth a lot, simply because someone might need to understand it to upgrade or remove a bug. We should never underestimate readability.</p>
<p><em><strong>9.</strong></em> <strong>PORTABILITY</strong>: By isolating non-portable sections of code in modules, we can make it easier to move the program to other machines. Such sections include hardware dependencies and operating system dependencies. There are two levels of porting-</p>
<ul>
<li>Porting to a machine with the same processor- Porting to a machine having the same processor is a matter of re-coding the OS differences.</li>
<li>Porting to a machine with a different processor- Porting to a machine having a different processor involves re-coding the hardware and OS differences.</li>
</ul>
<p><strong><em>10.</em> DEVELOPMENT WORK</strong>: Several programmers can work on different modules of a large program relatively independent of one another. Each module can also be tested separately from the rest of the program.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>TO READ MORE ABOUT COMPUTER ENGINEERING, VISIT- <a href="http://engcommunity.org/engineering-branches/computer-engineering.html">Engineering Community</a></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://engcommunity.org/blog/index.php/2011/09/benefits-of-modular-programming/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

