Database: Difference between revisions

Content deleted Content added
m Reverted edits by 182.72.174.38 (talk) to last version by 96.45.203.162
Line 35:
===General-purpose and special-purpose DBMSs===
 
A DBMS has evolved into a complex software system and its development typically requires thousands of person-years of development effort.<ref>{{cite web|url=http://www.ibmpressbooks.com/articles/article.asp?p=1163083 |title=Introduction to DB2 |date=3 July 2008 |accessdateaccess date=17 March 2013|author=Raul F. Chong, Michael Dang, Dwaine R. Snow, Xiaomei Wang}}. This article quotes a development time of 5 years involving 750 people for DB2 release 9 alone</ref> Some general-purpose DBMSs such as [[Adabas]], [[Oracle Corporation|Oracle]] and DB2 have been undergoing upgrades since the 1970s. General-purpose DBMSsDBMS aim to meet the needs of as many applications as possible, which adds to the complexity. However, the fact that their development cost can be spread over a large number of users means that they are often the most cost-effective approach. However, a general-purpose DBMS is not always the optimal solution: in some cases a general-purpose DBMS may introduce unnecessary overhead. Therefore, there are many examples of systems that use special-purpose databases. A common example is an [[email]] system: email systems are designed to optimize the handling of email messages, and do not need significant portions of a general-purpose DBMS functionality.
 
Many databases have [[application software]] that accesses the database on behalf of end-users, without exposing the DBMS interface directly. Application programmers may use a [[wire protocol]] directly, or more likely through an [[application programming interface]]. Database designers and database administrators interact with the DBMS through dedicated interfaces to build and maintain the applications' databases, and thus need some more knowledge and understanding about how DBMSsDBMS operate and the DBMSsDBMS' external interfaces and tuning parameters.
 
General-purpose databases are usually developed by one organization or community of programmers, while a different group builds the applications that use it. In many companies, specialized [[database administrator]]s maintain databases, run reports, and may work on code that runs on the databases themselves (rather than in the client application).