Sie sind auf Seite 1von 36

IMPLEMENTAION OF VOTERS ID DATABASE

ABSTRACT The voters id database which we have implemented is slightly different from the current system. The whole theme is the computerization of collection of voters details .This system is yet to be implemented but this system can provide better results. We have used visual basic 6.0 as front end and oracle 11g as back end. The database connectivity feature has provided better results. This database contains basic information about the voters in addition with professional details of the voter so it becomes easier for verifying the authenticity of the voter. Once the voters details have been collected the voter is given with a unique id for identifying the voter. Since all the essential details are available in various government websites say birth certificate etc it will be easier for verification of the voter simultaneously while entering the voters data. This is the main advantage of the system. Everything becomes easier once the collection of voters details is computerized this saves man power time etc.

THE EXISTING SYSTEM:


In the existing the government authorized people collect information about the voter by reaching each and every persons home. Even though it is helpful in finding out the authenticity of the information but it leads to the wastage of man power, time and processing the data. These are the pros and cons of present or existing system.

THE PROPOSED SYSTEM:


In the proposed system the whole voters details collection is computerized. Since the computerization lessens human work load and saves time. Each and every user is provided with a unique identity number. Since this system is a computerized one we can link it with other government run websites to verify the authenticity of the voters. We can also check for the permanent address with the help of main corporation website depending upon the city. Two separate forms are created one to collect information about educational details and one to collect information about professional details. So the system is sophisticated and the authenticity factor is also not compromised.

FRONT END USED :VISUAL BASIC 6.0


The concept of computer programming Before we begin Visual Basic 6 programming, let us understand some basic concepts of programming. According to Webopedia, a computer program is an organized list of instructions that, when executed, causes the computer to behave in a predetermined manner. Without programs, computers are useless. Therefore, programming means designing or creating a set of instructions to ask the computer to carry out certain jobs which normally are very much faster than human beings can do. Many people think that computer is very intelligent, but in actual fact it is dumb and can't do anything without human assistance. The microchips of a CPU can only understand two distinct electrical states, namely, the on and off states, or 0 and 1 in the binary system. So, the CPU only understands a combinations of 0 and 1 code, a language which we called machine language. Machine language is extremely difficult to learn and it is not for us to master it easily. Fortunately , we have many smart programmers who wrote interpreters and compilers that can translate human languagelike programs such as BASIC into machine language so that the computer can carry out the instructions entered by the users. Machine language is known as the primitive language while Interpreters and compilers like Visual Basic are called high-level language. Some of the high level computer languages beside Visual Basic are Fortran, Cobol, Java, C, C++, Turbo Pascal, and etc .

Introduction to the Visual Basic Programming Language Visual basic 6.0 Other Versions 256 out of 372 rated this helpful Rate this topic Microsoft Visual Basic 6.0 is a fast and easy way to create programs for Microsoft Windows. Even if you are new to Windows programming, with Visual Basic you have a complete set of tools to simplify development.

So what is Visual Basic? "Visual" refers to the method used to create what the user sees the graphical user interface, or GUI. "Basic" refers to the BASIC (Beginners All-Purpose Symbolic Instruction Code) programming language, a language used by more programmers than any other language in the history of computing.is a high level programming language which evolved from the earlier DOS version called BASIC. BASIC means Beginners' All-purpose Symbolic Instruction Code. It is a relatively easy programming language to learn. BASIC is a VISUAL and events driven Programming Language. These are the main divergence from the old BASIC. In BASIC, programming is done in a text-only environment and the program is executed sequentially. In VB, programming is done in a graphical environment. In the old BASIC, you have to write program code for each graphical object you wish to display it on screen, including its position and its color. However, In VB , you just need to drag and drop any graphical object anywhere on the form, and you can change its color any time using the properties window. The Visual Basic 6 Integrated Development Environment

Before you can program in VB 6, you need to install Visual Basic 6 in your computer.

Visual Basic (VB) is a third-generation event-driven programming language and integrated development environment (IDE) from Microsoft for its COM programming model first released in 1991. Visual Basic is designed to be relatively easy to learn and use.[1][2] Visual Basic was derived from BASIC and enables the rapid application development (RAD) of graphical user interface (GUI) applications, access to databases using Data Access Objects, Remote Data Objects, or ActiveX Data Objects, and creation of ActiveX controls and objects. Scripting languages such as VBA and VBScript are syntactically similar to Visual Basic, but perform differently. A programmer can put together an application using the components provided with Visual Basic itself. Programs written in Visual Basic can also use the Windows API, but doing so requires external function declarations. Though the program has received criticism for its perceived faults,[3] from version 3 Visual Basic was a runaway commercial success,[4] and many companies offered third party controls greatly extending its functionality. The final release was version 6 in 1998. Microsoft's extended support ended in March 2008 and the designated successor was Visual Basic .NET (now known simply as Visual Basic).

Contents
[hide]

1 Language features 2 Characteristics 3 History o 3.1 Timeline 4 Derivative languages 5 Performance and other issues 6 Legacy development and support 7 Example code 8 See also

9 References 10 External links

[edit] Language features


Like the BASIC programming language, Visual Basic was designed to be easily learned and used by beginner programmers. The language not only allows programmers to create simple GUI applications, but can also develop complex applications. Programming in VB is a combination of visually arranging components or controls on a form, specifying attributes and actions of those components, and writing additional lines of code for more functionality. Since default attributes and actions are defined for the components, a simple program can be created without the programmer having to write many lines of code. Performance problems were experienced by earlier versions, but with faster computers and native code compilation this has become less of an issue. Although programs can be compiled into native code executables from version 5 onwards, they still require the presence of runtime libraries of approximately 1 MB in size. This runtime is included by default in Windows 2000 and later, but for earlier versions of Windows like 95/98/NT it must be distributed together with the executable. Forms are created using drag-and-drop techniques. A tool is used to place controls (e.g., text boxes, buttons, etc.) on the form (window). Controls have attributes and event handlers associated with them. Default values are provided when the control is created, but may be changed by the programmer. Many attribute values can be modified during run time based on user actions or changes in the environment, providing a dynamic application. For example, code can be inserted into the form resize event handler to reposition a control so that it remains centered on the form, expands to fill up the form, etc. By inserting code into the event handler for a keypress in a text box, the program can automatically translate the case of the text being entered, or even prevent certain characters from being inserted. Visual Basic can create executables (EXE files), ActiveX controls, or DLL files, but is primarily used to develop Windows applications and to interface database systems. Dialog boxes with less functionality can be used to provide pop-up capabilities. Controls provide the basic functionality of the application, while programmers can insert additional logic within the appropriate event handlers. For example, a drop-down combination box will automatically display its list and allow the user to select any element. An event handler is called when an item is selected, which can then execute additional code created by the programmer to perform some action based on which element was selected, such as populating a related list.

Alternatively, a Visual Basic component can have no user interface, and instead provide ActiveX objects to other programs via Component Object Model (COM). This allows for server-side processing or an add-in module. The runtime recovers unused memory using reference counting which depends on variables passing out of scope or being set to "Nothing", resulting in the very common problem of memory leaks. There is a large library of utility objects, and the language provides basic object oriented support. Unlike many other programming languages, Visual Basic is generally not case sensitive, although it will transform keywords into a standard case configuration and force the case of variable names to conform to the case of the entry within the symbol table. String comparisons are case sensitive by default. The Visual Basic compiler is shared with other Visual Studio languages (C, C++), but restrictions in the IDE do not allow the creation of some targets (Windows model DLLs) and threading models.

[edit] Characteristics
Visual Basic has the following traits which differ from C-derived languages:

Statements tend to be terminated with keywords such as "End If", instead of using "{}"s to group statements. Multiple variable assignment is not possible. A = B = C does not imply that the values of A, B and C are equal. The boolean result of "Is B = C?" is stored in A. The result stored in A would therefore be either false or true. Boolean constant True has numeric value 1.[5] This is because the Boolean data type is stored as a 16-bit signed integer. In this construct 1 evaluates to 16 binary 1s (the Boolean value True), and 0 as 16 0s (the Boolean value False). This is apparent when performing a Not operation on a 16 bit signed integer value 0 which will return the integer value 1, in other words True = Not False. This inherent functionality becomes especially useful when performing logical operations on the individual bits of an integer such as And, Or, Xor and Not.[6] This definition of True is also consistent with BASIC since the early 1970s Microsoft BASIC implementation and is also related to the characteristics of CPU instructions at the time. Logical and bitwise operators are unified. This is unlike some C-derived languages (such as Perl), which have separate logical and bitwise operators. This again is a traditional feature of BASIC. Variable array base. Arrays are declared by specifying the upper and lower bounds in a way similar to Pascal and Fortran. It is also possible to use the Option Base statement to set the default lower bound. Use of the Option Base statement can lead to confusion when reading Visual Basic code and is best avoided by always explicitly specifying the lower bound of the array.

This lower bound is not limited to 0 or 1, because it can also be set by declaration. In this way, both the lower and upper bounds are programmable. In more subscript-limited languages, the lower bound of the array is not variable. This uncommon trait does exist inVisual Basic .NET but not in VBScript. was introduced by ANSI, with the standard for ANSI Minimal BASIC in the late 1970s.
OPTION BASE

Relatively strong integration with the Windows operating system and the Component Object Model. The native types for strings and arrays are the dedicated COM types, BSTR and SAFEARRAY. Banker's rounding as the default behavior when converting real numbers to integers with the Round function.[7] ? Round(2.5, 0) gives 2, ? Round(3.5, 0) gives 4. Integers are automatically promoted to reals in expressions involving the normal division operator (/) so that division of one integer by another produces the intuitively correct result. There is a specific integer divide operator (\) which does truncate. By default, if a variable has not been declared or if no type declaration character is specified, the variable is of type Variant. However this can be changed with Deftype statements such as DefInt, DefBool,DefVar, DefObj, DefStr. There are 12 Deftype statements in total offered by Visual Basic 6.0. The default type may be overridden for a specific declaration by using a special suffix character on the variable name (# for Double, ! for Single, & for Long, % for Integer, $ for String, and @ for Currency) or using the key phrase As (type). VB can also be set in a mode that only explicitly declared variables can be used with the command Option Explicit.

[edit] History
VB 1.0 was introduced in 1991. The drag and drop design for creating the user interface is derived from a prototype form generator developed by Alan Cooper and his company called Tripod. Microsoft contracted with Cooper and his associates to develop Tripod into a programmable form system for Windows 3.0, under the code name Ruby (no relation to the Ruby programming language). Tripod did not include a programming language at all. Microsoft decided to combine Ruby with the Basic language to create Visual Basic. The Ruby interface generator provided the "visual" part of Visual Basic and this was combined with the "EB" Embedded BASIC engine designed for Microsoft's abandoned "Omega" database system. Ruby also provided the ability to

load dynamic link libraries containing additional controls (then called "gizmos"), which later became the VBX interface.[8] [edit] Timeline

Project 'Thunder' was initiated Visual Basic 1.0 (May 1991) was released for Windows at the Comdex/Windows World trade show in Atlanta, Georgia. Visual Basic 1.0 for DOS was released in September 1992. The language itself was not quite compatible with Visual Basic for Windows, as it was actually the next version of Microsoft's DOS-based BASIC compilers, QuickBASIC and BASIC Professional Development System. The interface used a Text user interface, using extended ASCII characters to simulate the appearance of a GUI.

Visual Basic for MS-DOS

Visual Basic 2.0 was released in November 1992. The programming environment was easier to use, and its speed was improved. Notably, forms became instantiable objects, thus laying the foundational concepts of class modules as were later offered in VB4. Visual Basic 3.0 was released in the summer of 1993 and came in Standard and Professional versions. VB3 included version 1.1 of the Microsoft Jet Database Engine that could read and write Jet (or Access) 1.x databases. Visual Basic 4.0 (August 1995) was the first version that could create 32bit as well as 16-bit Windows programs. It has three editions; Standard, Professional, and Enterprise. It also introduced the ability to write non-GUI classes in Visual Basic. Incompatibilities between different releases of VB4 caused installation and operation problems. While previous versions of Visual Basic had used VBX controls, Visual Basic now used OLE controls (with files names ending in .OCX) instead. These were later to be named ActiveX controls. With version 5.0 (February 1997), Microsoft released Visual Basic exclusively for 32-bit versions of Windows. Programmers who preferred to write 16-bit programs were able to import programs written in Visual Basic

4.0 to Visual Basic 5.0, and Visual Basic 5.0 programs can easily be converted with Visual Basic 4.0. Visual Basic 5.0 also introduced the ability to create custom user controls, as well as the ability to compile to native Windows executable code, speeding up calculation-intensive code execution. A free, downloadable Control Creation Edition was also released for creation of ActiveX controls. It was also used as an introductory form of Visual Basic: a regular .exe project could be created and run in the IDE, but not compiled. Visual Basic 6.0 (Mid 1998) improved in a number of areas [9] including the ability to create web-based applications. VB6 has entered Microsoft's "nonsupported phase" as of March 2008. Although the Visual Basic 6.0 development environment is no longer supported, the runtime is supported on Windows Vista, Windows Server 2008 and Windows 7.[10] Mainstream Support for Microsoft Visual Basic 6.0 ended on March 31, 2005. Extended support ended in March 2008.[11] In response, the Visual Basic user community expressed its grave concern and lobbied users to sign a petition to keep the product alive.[12] Microsoft has so far refused to change their position on the matter. (but see [13]) Ironically, around this time (2005), it was exposed that Microsoft's new anti-spyware offering, Microsoft AntiSpyware (part of the GIANT Company Software purchase), was coded in Visual Basic 6.0.[14] Its replacement, Windows Defender, was rewritten as C++ code.

VB DOS icon

Derivative languages
Microsoft has developed derivatives of Visual Basic for use in scripting. Visual Basic itself is derived heavily from BASIC, and subsequently has been replaced with a .NET platform version. Some of the derived languages are:

Visual Basic for Applications (VBA) is included in many Microsoft applications (Microsoft Office), and also in many third-party products like SolidWorks, AutoCAD, WordPerfect Office 2002, ArcGIS, Sage Accpac ERP, and Business Objects Desktop Intelligence. There are small inconsistencies in the way VBA is implemented in different applications, but it is largely the same language as VB6 and uses the same runtime library.

VBScript is the default language for Active Server Pages. It can be used in Windows scripting and client-side web page scripting. Although it resembles VB in syntax, it is a separate language and it is executed by vbscript.dll as opposed to the VB runtime. ASP and VBScript should not be confused with ASP.NET which uses the .NET Framework for compiled web pages. Visual Basic .NET is Microsoft's designated successor to Visual Basic 6.0, and is part of Microsoft's .NET platform. Visual Basic.Net compiles and runs using the .NET Framework. It is not backwards compatiblewith VB6. An automated conversion tool exists, but fully automated conversion for most projects is impossible.[16] StarOffice Basic is a Visual Basic compatible interpreter included in StarOffice suite, developed by Sun Microsystems. Gambas is a Visual Basic inspired free software programming language. It is not a clone of Visual Basic, but it does have the ability to convert Visual Basic programs to Gambas.

[edit] Performance and other issues


Earlier counterparts of Visual Basic (prior to version 5) compiled the code to PCode only. The P-Code is interpreted by the language runtime. The benefits of PCode include portability and smaller binary file sizes, but it usually slows down the execution, since having a runtime adds an additional layer of interpretation. However, small amounts of code and algorithms can be constructed to run faster than compiled native code. Visual Basic applications require Microsoft Visual Basic runtime MSVBVMxx.DLL, where xx is the relevant version number, either 50 or 60. MSVBVM60.dll comes as standard with Windows in all editions after Windows 98 while MSVBVM50.dll comes with all editions after Windows 95. A Windows 95 machine would however require inclusion with the installer of whichever dll was needed by the program. Visual Basic 5 and 6 can compile code to either native or P-Code but in either case the runtime is still required for built in functions and forms management. Criticisms levelled at Visual Basic editions prior to VB.NET include:[17]

Versioning problems associated with various runtime DLLs, known as DLL hell Poor support for object-oriented programming[18] Inability to create multi-threaded applications, without resorting to Windows API calls Inability to create Windows services

Variant types have a greater performance and storage overhead than strongly typed programming languages Dependency on complex and fragile COM Registry entries[19] The development environment is no longer supported by Microsoft.

[edit] Legacy development and support


All versions of the Visual Basic development environment from 1.0 to 6.0 have been retired and are now unsupported by Microsoft. The associated runtime environments are unsupported too, with the exception of the Visual Basic 6 core runtime environment, which will be officially supported by Microsoft for the lifetime of Windows 7.[20] Third party components that shipped with Visual Studio 6.0 are not included in this support statement. Some legacy Visual Basic components may still work on newer platforms, despite being unsupported by Microsoft and other vendors. Development and maintenance development for Visual Basic 6 is possible on legacy Windows XP, Windows Vista and Windows 2003 using Visual Studio 6.0 platforms, but is unsupported. Documentation for Visual Basic 6.0, its application programming interface and tools is best covered in the last MSDN release before Visual Studio.NET 2002. Later releases of MSDN focused on .NET development and had significant parts of the Visual Basic 6.0 programming documentation removed. The Visual Basic IDE can be installed and used on Windows Vista, where it exhibits some minor incompatibilities which do not hinder normal software development and maintenance. As of August 2008, both Visual Studio 6.0 and the MSDN documentation mentioned above are available for download by MSDN subscribers.

[edit] Example code


The following code snippet displays a message box saying "Hello, World!" as the window loads: Private Sub Form_Load() ' Execute a simple message box that will say "Hello, World!" MsgBox "Hello, World!"End Sub This snippet makes a counter that moves up 1 every second (a label and a timer control need to be added to the form for this to work): Option Explicit Dim Count As Integer Private Sub Form_Load() Count = 0

Timer1.Interval = 1000 ' units of milliseconds End Sub Private Sub Timer1_Timer() Count = Count + 1 Label1.Caption = Count End Sub

Comparison of programming languages FreeBASIC a programming language rooting from QBasic. Gambas - Open source competitor to Visual Basic IIf a function in several editions of Visual Basic roughly equivalent to the ?: conditional operator of C and related languages. Microsoft Visual Studio Express - a free scaled down version of Visual Basic .NET for independent developers. PowerBasic A language based on the BASIC- dialect PureBasic A language based on the BASIC- dialect REALbasic Competitor to Visual Basic DarkBASIC harness DirectX from BASIC application

BACK END USED: ORACLE 11G

HISTORY

Here is the list of important events that took place in the last 30 years of Oracle history. Oracle is celebrating its 30 wonderful years in the industry (from 1977 to 2007). This article was updated on 6th August, 2007.

In 1977, Larry Ellison, Bob Miner and Ed Oates founded Software Development Laboratories to undertake development work After reading a paper by Codd in IBM Journal of Research and Development, they created Oracle. The first version was never released. It was written in Assembly language of PDP which ran in 128kb of RAM. Version 2.0 of Oracle was released in 1979 and it became first commercial relational database and first SQL database. The company changed its name to Relational Software Inc. (RSI). In 1981, RSI started developing tools for Oracle. In 1982, RSI was renamed to Oracle Corporation. It held its first user conference in San Francisco. In 1983, Oracle released version 3.0, which was rewritten in C language and ran on multiple platforms. In 1984, Oracle version 4.0 was released. It contained features like concurrency control - multi-version read consistency etc. By 1985, Oracle released version 5.0 and became the first relational database that worked in client/server environment. In 1986, Oracle goes public on the NASDAQ exchange.

In 1987, Oracle wanted to create enterprise applications that take advantage of their database. In 1988, Oracle version 6.0 was released. It provided row-level locking, hot backup and PL/SQL as main features. By 1989, Oracle moved to new headquarters in Redwood Shores, California. In 1990, they released Oracle Applications Release 8, which included account software for client/server In 1992, they released Oracle 7.0. It provided better performance, administrative utilities, application development tools, security features, stored procedures, triggers and declarativei ntegrity. In 1995, Oracle became the first major company to announce a comprehensive internet strategy. In 1997, Oracle released Oracle 8.0 and Oracle Applications 10.7. It started embracing Java. Partitioning, support for different types of data like images, large text, external data etc.(lobs) are provided. It also started providing support for Object in database becoming an Object-Relational DBMS By 1999, Oracle realized that "Internet Changes Everything". Oracle released Oracle 8i and Oracle Applications 11i. They supported open standards like XML. Oracle8i provided Java Virtual Machine (JVM) to run Java program in Oracle Database and also scalability, which was required for internet databases. In 2000, Oracle9iAS was released. Oracle corporation is no longer a company providing only database management system and instead started providing all that it takes to develop and deploy a complete application. AS(Application Server) runs on middle tier in 3-tier Client/Server architecture boosting the performance. In 2001, Oracle9i was released. It allows Oracle to run on RAC (Real Application Cluster), which is a collection of low-cost servers. It also allowed XML documents to be stored and queried in Oracle Database. In 2003, Oracle10g was released, where g stands for Grid computing, which servers computing power across the enterprise as a utility, automatically shifting

processing load based on demand. Oracle10g also made a lot of administrative tasks automatic. In 2007, Oracle has released Oracle11g. The new version focused on better partitioning, easy migration etc.

As of now, Oracle has 68,000 employees, 2,75,000 customer with US$14 billion revenue. It is run by Larry Ellison (CEO), Charles Phillips(president),Safra C atz (president and CFO). Oracle's philosophy, according to Ken Jacobs, vice president of product strategy is, "Nothing is impossible. Impossible just takes a little longer

Database Schema Oracle database conventions refer to defined groups of object ownership (generally associated with a "username") as schemas. Most Oracle database installations traditionally came with a default schema called SCOTT. After the installation process has set up the sample tables, the user can log into the database with the username scott and the password tiger. The name of the SCOTT schema originated with Bruce Scott, one of the first employees at Oracle (then Software Development Laboratories), who had a cat named Tiger. Oracle Corporation has de-emphasized the use of the SCOTT schema, as it uses few of the features of the more recent releases of Oracle. Most recent examples supplied by Oracle Corporation reference the default HR or OE schemas. Other default schemas include: SYS (essential core database structures and utilities) SYSTEM (additional core database structures and utilities, and privileged account) OUTLN (utilized to store metadata for stored outlines for stable query-optimizer execution plans

BI, IX, HR, OE, PM, and SH (expanded sample schemas containing more data and structures than the older SCOTT schema).

System Global Area Each Oracle instance allocates itself an SGA when it starts and de-allocates it at shut-down time. The information in the SGA consists of the following elements, each of which has a fixed size, established at instance startup: the redo log buffer: this stores redo entriesa log of changes made to the database. The instance writes redo log buffers to the redo log as quickly and efficiently as possible. The redo log aids in instance recovery in the event of a system failure. the shared pool: this area of the SGA stores sharedmemory structures such as shared SQL areas in the library cache and internal information in the data dictionary. An insufficient amount of memory allocated to the shared pool can cause performance degradation.

Library cache The library cache stores shared SQL, caching the parse tree and the execution plan for every unique SQL statement. If multiple applications issue the same SQL statement, each application can access the shared SQL area. This reduces the amount of memory needed and reduces the processing-time used for parsing and execution planning. Data dictionary cache The data dictionary comprises a set of tables and views that map the structure of the database. Oracle databases store information here about the logical and physical structure of the database. The data dictionary contains information such as:

user information, such as user privileges integrity constraints defined for tables in the database names and datatypes of all columns in database tables

information on space allocated and used for schema objects

The Oracle instance frequently accesses the data dictionary in order to parse SQL statements. The operation of Oracle depends on ready access to the data dictionary: performance bottlenecks in the data dictionary affect all Oracle users. Because of this, database administrators should make sure that the data dictionary cache has sufficient capacity to cache this data. Without enough memory for the data-dictionary cache, users see a severe performance degradation. Allocating sufficient memory to the shared pool where the data dictionary cache resides precludes these particular performance problem.

Program Global Area The Program Global Area or PGA memory-area of an Oracle instance contains data and control-information for Oracle's server-processes. The size and content of the PGA depends on the Oracle-server options installed. This area consists of the following components: stack-space: the memory that holds the session's variables, arrays, and so on. session-information: unless using the multithreaded server, the instance stores its session-information in the PGA. (In a multithreaded server, the session-information goes in the SGA.) private SQL-area: an area which holds information such as bind-variables and runtime-buffers. sorting area: an area in the PGA which holds information on sorts, hash-joins, etc.

The Oracle Database (commonly referred to as Oracle RDBMS or simply as Oracle) is an objectrelational database management system(ORDBMS)[2] produced and marketed by Oracle Corporation. Larry Ellison and his friends, former co-workers Bob Miner and Ed Oates, started the consultancy Software Development Laboratories (SDL) in 1977. SDL developed the original version of the Oracle software. The name Oracle comes from the code-name of a CIA-funded project Ellison had worked on while previously employed by Ampex.[3]
Contents
[hide]

1 Physical and logical structures

1.1 Storage 1.1.1 Disk files

o o o o o o o o o o o o o o o o o o
7 Use

1.1.1.1 Control files

1.2 Database Schema 1.2.1 System Global Area 1.2.2 Library cache 1.2.3 Data dictionary cache 1.2.4 Program Global Area 1.2.5 Dynamic performance views 1.3 Process architectures 1.3.1 Oracle processes 1.3.2 User processes, connections and sessions 1.4 Concurrency and locking 1.5 Configuration 2 Internationalization 3 History 3.1 Corporate/technical timeline 3.2 Critical Patch Updates (CPUs) and Security Alerts 3.3 Version numbering 4 Marketing editions 5 Host platforms 6 Related software 6.1 Oracle products 6.2 Database options 6.3 Suites 6.4 Database "features" 6.5 Standalone tools 6.6 Other databases marketed by Oracle Corporation

7.1 Official support 7.2 Database-related guidelines 7.3 Oracle Certification Program 7.4 User groups 8 Market position 8.1 Competition

8.2 Pricing 9 See also 10 References 11 Bibliography 12 External links

[edit]Physical

and logical structures

An Oracle database systemidentified by an alphanumeric system identifier or SID[4]comprises at least one instance of the application, along with data storage. An instanceidentified persistently by an instantiation number (or activation id: SYS.V_$DATABASE.ACTIVATION#)comprises a set of operating-system processes and memory-structures that interact with the storage. Typical processes include PMON (the process monitor) and SMON (the system monitor). Users of the Oracle databases refer to the server-side memory-structure as the SGA (System Global Area). The SGA typically holds cache information such as data-buffers, SQL commands, and user information. In addition to storage, the database consists of online redo logs (or logs), which hold transactional history. Processes can in turn archive the online redo logs into archive logs (offline redo logs), which provide the basis (if necessary) for data recovery and for some forms of data replication. If the Oracle database administrator has implemented Oracle RAC (Real Application Clusters), then multiple instances, usually on different servers, attach to a central storage array. This scenario offers advantages such as better performance, scalability and redundancy. However, support becomes more complex, and many sites do not use RAC. In version 10g, grid computing introduced shared resources where an instance can use (for example) CPU resources from another node (computer) in the grid. The Oracle DBMS can store and execute stored procedures and functions within itself. PL/SQL (Oracle Corporation's proprietary procedural extension to SQL), or the object-oriented language Java can invoke such code objects and/or provide the programming structures for writing them. [edit]Storage The Oracle RDBMS stores data logically in the form of tablespaces and physically in the form of data files ("datafiles").[5] Tablespaces can contain various types of memory segments, such as Data Segments, Index Segments, etc. Segments in turn comprise one or more extents. Extents comprise groups of contiguous data blocks. Data blocks form the basic units of data storage. There is also a partitioning feature available on newer versions of the database, which allows tables to be partitioned based on different set of keys. Specific partitions can then be easily added or dropped to help manage large data sets. Oracle database management tracks its computer data storage with the help of information stored in the SYSTEM tablespace. The SYSTEM tablespace contains the data dictionaryand often (by default) indexes and clusters. A data dictionary consists of a special collection of tables that contains information about all user-objects in the database. Since version 8i, the Oracle RDBMS also supports "locally managed" tablespaces which can store space management information in bitmaps in their own headers rather than in the SYSTEM tablespace (as happens with the default "dictionary-managed" tablespaces). Version 10g and later introduced the SYSAUX tablespace which contains some of the tables formerly in the SYSTEM tablespace.

[edit]Disk files
This section requires expansion.

Disk files primarily consist of the following types: Data and index files: Those files are necessary for the physical storage, which can consist of the data dictionary data (associated to the tablespace SYSTEM), user data, or index data. These files can be managed manually or managed by Oracle itself ("Oracle-managed files"). Note that a datafile has to belong to exactly one tablespace, whereas a tablespace can consist of multiple datafiles. Redo log files consisting of all changes to the database, used to recover from an instance failure. Note that often these files are stored multiple times, for extra security in case of disk failure. The identical redo log files are said to belong to the same group. Undo files: Those special datafiles, which can only contain undo information, are used for recovery, rollbacks, and read consistency. Archive log files: Those files are copies of the redo log files, but are usually stored at different locations. They are necessary for example to be applied to a standby database, or to perform recovery after an instance failure. It is possible to archive to multiple locations. Tempfiles: Those special datafiles are used exclusively for temporary storage data (used for example for large sorts) Control file, necessary for database startup. "A binary file that records the physical structure of a database and contains the names and locations of redo log files, the time stamp of the database creation, the current log sequence number, checkpoint information, and so on." [6] At the physical level, data files comprise one or more data blocks, where the block size can vary between data files. Data files can occupy pre-allocated space in the file system of a computer server, utilize raw disk directly, or exist within ASM logical volumes.[7]

[edit]Control files
The following parameters govern the size of the control files: maxlogfile maxlogmembers maxloghistory maxinstances control_file_record_keep_time

[edit]Database

Schema

Oracle database conventions refer to defined groups of object ownership (generally associated with a "username") as schemas. Most Oracle database installations traditionally came with a default schema called SCOTT. After the installation process has set up the sample tables, the user can log into the database with the username scott and the password tiger. The name of the SCOTT schema originated with Bruce Scott, one of the first employees at Oracle (then Software Development Laboratories), who had a cat named Tiger.[8]

Oracle Corporation has de-emphasized the use of the SCOTT schema, as it uses few of the features of the more recent releases of Oracle. Most recent examples supplied by Oracle Corporation reference the default HR or OE schemas. Other default schemas[9][10] include:
[11]

SYS (essential core database structures and utilities) SYSTEM (additional core database structures and utilities, and privileged account) OUTLN (utilized to store metadata for stored outlines for stable query-optimizer execution plans.

BI, IX, HR, OE, PM, and SH (expanded sample schemas[12] containing more data and structures than the older SCOTT schema). [edit]System Global Area Main article: System Global Area Each Oracle instance uses a System Global Area or SGAa shared-memory areato store its data and control-information.[13] Each Oracle instance allocates itself an SGA when it starts and de-allocates it at shut-down time. The information in the SGA consists of the following elements, each of which has a fixed size, established at instance startup: the redo log buffer: this stores redo entriesa log of changes made to the database. The instance writes redo log buffers to the redo log as quickly and efficiently as possible. The redo log aids in instance recovery in the event of a system failure. the shared pool: this area of the SGA stores shared-memory structures such as shared SQL areas in the library cache and internal information in the data dictionary. An insufficient amount of memory allocated to the shared pool can cause performance degradation. [edit]Library cache The library cache[14] stores shared SQL, caching the parse tree and the execution plan for every unique SQL statement. If multiple applications issue the same SQL statement, each application can access the shared SQL area. This reduces the amount of memory needed and reduces the processing-time used for parsing and execution planning. [edit]Data dictionary cache The data dictionary comprises a set of tables and views that map the structure of the database. Oracle databases store information here about the logical and physical structure of the database. The data dictionary contains information such as: user information, such as user privileges integrity constraints defined for tables in the database names and datatypes of all columns in database tables information on space allocated and used for schema objects

The Oracle instance frequently accesses the data dictionary in order to parse SQL statements. The operation of Oracle depends on ready access to the data dictionary: performance bottlenecks in the data dictionary affect all Oracle users. Because of this, database administrators should make sure that

the data dictionary cache[15] has sufficient capacity to cache this data. Without enough memory for the data-dictionary cache, users see a severe performance degradation. Allocating sufficient memory to the shared pool where the data dictionary cache resides precludes these particular performance problem. [edit]Program Global Area The Program Global Area[16][17] or PGA memory-area of an Oracle instance contains data and controlinformation for Oracle's server-processes. The size and content of the PGA depends on the Oracle-server options installed. This area consists of the following components: stack-space: the memory that holds the session's variables, arrays, and so on.

session-information: unless using the multithreaded server, the instance stores its sessioninformation in the PGA. (In a multithreaded server, the session-information goes in the SGA.) private SQL-area: an area which holds information such as bind-variables and runtime-buffers. sorting area: an area in the PGA which holds information on sorts, hash-joins, etc.

[edit]Dynamic performance views The dynamic performance views (also known as "fixed views") within an Oracle database present information from virtual tables (X$ tables[18]) built on the basis of database memory.[19] Database users can access the V$ views (named after the prefix of their synonyms) to obtain information on database structures and performance. [edit]Process

architectures

[edit]Oracle processes The Oracle RDBMS typically relies on a group of processes running simultaneously in the background and interacting to monitor and expedite database operations. Typical operating environments might include some of the following individual processes (shown along with their abbreviated nomenclature):[20] advanced queueing processes (Qnnn)[21] archiver processes (ARCn) checkpoint process (CKPT) *REQUIRED* coordinator-of-job-queues process (CJQn): dynamically spawns slave processes for job-queues database writer processes (DBWn) *REQUIRED* dispatcher processes (Dnnn): multiplex server-processes on behalf of users job-queue slave processes (Jnnn)[22] log-writer process (LGWR) *REQUIRED* log-write network-server (LNSn): transmits redo logs in Data Guard environments logical standby coordinator process (LSP0): controls Data Guard log-application media-recovery process (MRP): detached recovery-server process

memory-manager process (MMAN): used for internal database tasks such as Automatic Shared Memory Management memory-monitor process (MMON): process for automatic problem-detection, self-tuning and statistics-gathering[23] memory-monitor light process (MMNL): gathers and stores Automatic Workload Repository (AWR) data mmon slaves (MnnnnM0000, M0001, etc.): background slaves of the MMON process[24]

process-monitor process (PMON) *REQUIRED* process-spawner (PSP0): spawns Oracle processes queue-monitor coordinator process (QMNC): dynamically spwans queue monitor slaves[25] queue-monitor processes (QMNn) recoverer process (RECO) remote file-server process (RFS) shared server processes (Snnn): serve client-requests system monitor process (SMON) *REQUIRED*

[edit]User processes, connections and sessions Oracle Database terminology distinguishes different computer-science terms in describing how endusers interact with the database: user processes involve the invocation of application software[26] a connection refers to the pathway linking a user process to an Oracle instance[27]

sessions consist of specific connections to an Oracle instance.[28] Each session within an instance has a session identifier or "SID"[29] (distinct from the system-identifier SID). [edit]Concurrency

and locking

Oracle databases control simultaneous access to data resources with locks (alternatively documented as "enqueues"[30] ). The databases also utilize "latches" -- low-level serialization mechanisms to protect shared data structures in the System Global Area.[31] [edit]Configuration Database administrators control many of the tunable variations in an Oracle instance by means of values in a parameter file.[32] This file in its ASCII default form ("pfile") normally has a name of the format init<SID-name>.ora. The default binary equivalent server paramater file ("spfile") (dynamically reconfigurable to some extent)[33] defaults to the format spfile<SID-name>.ora. Within an SQL-based environment, the views V$PARAMETER[34] and V$SPPARAMETER[35] give access to reading parameter values. [edit]Internationalization Oracle Database software comes in 63 language-versions (including regional variations such as British English and American English). Variations between versions cover the names of days and months, abbreviations, time-symbols such as A.M. and A.D., and sorting.[36] Oracle Corporation has translated Oracle Database error-messages into Arabic, Catalan, Chinese, Czech, Danish, Dutch, English, Finnish, French, German, Greek, Hebrew, Hungarian, Italian, Japanese, Korean, Norwegian, Polish, Portuguese, Romanian, Russian, Slovak, Spanish, Swedish, Thai and Turkish.[37] Oracle Corporation provides database developers with tools and mechanisms for producing internationalized database applications: referred to internally as "Globalization". [38] ".[39] [edit]History [edit]Corporate/technical

timeline

1977: Larry Ellison and friends founded Software Development Laboratories.

1979: SDL changed its company-name to "Relational Software, Inc." (RSI) and introduced its product Oracle V2 as an early commercially available relational database system. The version did not support transactions, but implemented the basic SQL functionality of queries and joins. (RSI never released a version 1 - instead calling the first version version 2 as a marketing gimmick.)[40] 1982: RSI in its turn changed its name, becoming known as "Oracle Corporation",[41] to align itself more closely with its flagship product. 1983: The company released Oracle version 3, which it had re-written using the C programming language and which supported COMMIT and ROLLBACK functionality for transactions. Version 3 extended platform support from the existing Digital VAX/VMS systems to include Unix environments.[41] 1984: Oracle Corporation released Oracle version 4, which supported read-consistency. 1985: Oracle Corporation released Oracle version 5, which supported the clientserver model a sign of networks becoming more widely available in the mid-1980s. 1986: Oracle version 5.1 started supporting distributed queries. 1988: Oracle RDBMS version 6 came out with support for PL/SQL embedded within Oracle Forms v3 (version 6 could not store PL/SQL in the database proper), row-level locking and hotbackups.[42] 1989: Oracle Corporation entered the application products market and developed its ERP product, (later to become part of the Oracle E-Business Suite), based on the Oracle relational database. 1990: the release of Oracle Applications release 8[41] 1992: Oracle version 7 appeared with support for referential integrity, stored procedures and triggers. 1997: Oracle Corporation released version 8, which supported object-oriented development and multimedia applications. 1999: The release of Oracle8i aimed to provide a database inter-operating better with the Internet (the i in the name stands for "Internet"). The Oracle8i database incorporated a native Java virtual machine (Oracle JVM, also known as "Aurora".[43]). 2000: Oracle E-Business Suite 11i pioneers integrated enterprise application software[41] 2001: Oracle9i went into release with 400 new features, including the ability to read and write XML documents. 9i also provided an option for Oracle RAC, or "Real Application Clusters", a computer-cluster database, as a replacement for the Oracle Parallel Server (OPS) option. 2003: Oracle Corporation released Oracle Database 10g, which supported regular expressions. (The g stands for "grid"; emphasizing a marketing thrust of presenting 10g as "grid computing ready".) 2005: Oracle Database 10.2.0.1also known as Oracle Database 10g Release 2 (10gR2) appeared. 2006: Oracle Corporation announces Unbreakable Linux[41] 2007: Oracle Database 10g release 2 sets a new world record TPC-H 3000 GB benchmark result[44] 2007: Oracle Corporation released Oracle Database 11g for Linux and for Microsoft Windows. 2008: Oracle Corporation acquires BEA Systems. 2010: Oracle Corporation acquires Sun Microsystems. 2011: Oracle Corporation acquires web content management system FatWire Software.

[edit]Critical

Patch Updates (CPUs) and Security Alerts

Oracle Critical Patch Updates (CPUs) and Security Alerts are released quarterly on the Tuesday closest to 17th day of the month. The general goal of the patches is to close security holes through which data theft may occur. You may receive release notification by email. White Paper: Critical Patch Update Implementation Best Practices

[edit]Version

numbering

Oracle products follow a custom release numbering and naming convention. With the Oracle RDBMS 10g release, Oracle Corporation began using the "10g" label in all versions of its major products, although some sources refer to Oracle Applications Release 11i as Oracle 11i.[clarification needed] The suffixes "i" and "g" do not actually represent a low-order part of the version number, as letters typically represent in software industry version numbering; that is, there is no predecessor version of Oracle 10g called Oracle 10f. Instead, the letters stand for "internet" and "grid", respectively.[citation needed] Consequently many simply drop the "g" or "i" suffix when referring to specific versions of an Oracle product. Major database-related products and some of their versions include: Oracle Application Server 10g (also known as "Oracle AS 10g"): a middleware product;

Oracle Applications Release 11i (aka Oracle e-Business Suite, Oracle Financials or Oracle 11i): a suite of business applications; Oracle Developer Suite 10g (9.0.4); Oracle JDeveloper 10g: a Java integrated development environment;

Since version 5, Oracle's RDBMS release numbering has used the following codes: Oracle v5 Oracle v6 Oracle7: 7.0.167.3.4 Oracle8 Database: 8.0.38.0.6 Oracle8i Database Release 1: 8.1.5.08.1.5.1 Oracle8i Database Release 2: 8.1.6.08.1.6.3 Oracle8i Database Release 3: 8.1.7.08.1.7.4 Oracle9i Database Release 1: 9.0.1.09.0.1.5 (patchset as of December 2003) Oracle9i Database Release 2: 9.2.0.19.2.0.8 (patchset as of April 2007) Oracle Database 10g Release 1: 10.1.0.210.1.0.5 (patchset as of February 2006) Oracle Database 10g Release 2: 10.2.0.110.2.0.5 (patchset as of April 2010) Oracle Database 11g Release 1: 11.1.0.611.1.0.7 (patchset as of September 2008) Oracle Database 11g Release 2: 11.2.0.111.2.0.3 (patchset as of September 2011)

The version-numbering syntax within each release follows the pattern: major.maintenance.applicationserver.component-specific.platform-specific. For example, "10.2.0.1 for 64-bit Solaris" means: 10th major version of Oracle, maintenance level 2, Oracle Application Server (OracleAS) 0, level 1 for Solaris 64-bit. The Oracle Database Administrator's Guide offers further information on Oracle release numbers. [edit]Marketing

editions

Over and above the different versions of the Oracle database management software developed over time, Oracle Corporation subdivides its product into varying "editions" - apparently for marketing and license-tracking reasons. (Do not confuse the marketing "editions" with the internal virtual versioning "editions" introduced with Oracle 11.2[45]). In approximate order of decreasing scale, we find: Enterprise Edition[46] (EE) includes more features than the 'Standard Edition', especially in the areas of performance and security. Oracle Corporation licenses this product on the basis of users or of processors, typically for servers running 4 or more CPUs. EE has no memory limits, and can utilize clustering using Oracle RAC software. Standard Edition[47] (SE) contains base database functionality. Oracle Corporation licenses this product on the basis of users or of processors, typically for servers running from one to four CPUs. If the number of CPUs exceeds 4 CPUs, the user must convert to an Enterprise license. SE has no memory limits, and can utilize clustering with Oracle RAC at no additional charge. Standard Edition One,[48] (SE1[49] or SEO) introduced with Oracle 10g, has some additional feature-restrictions. Oracle Corporation markets it for use on systems with one or two CPUs. It has no memory limitations. Express Edition[50] ("Oracle Database XE"), introduced in 2005, offers Oracle 10g free to distribute on Windows and Linux platforms. It has a footprint of only 150 MB and is restricted to the use of a single CPU, a maximum of 4 GB of user data. Although it can install on a server with any amount of memory, it uses a maximum of 1 GB.[51] Support for this version comes exclusively through on-line forums and not through Oracle support. Oracle Database Lite,[52] intended for running on mobile devices. The embedded[53] mobile database located on the mobile device can synchronize with a server-based installation. [edit]Host

platforms

Prior to releasing Oracle 9i in 2001, Oracle Corporation ported its database product to a wide variety of platforms. More recently Oracle Corporation has consolidated on a smaller range of operating-system platforms. As of November 2011, Oracle Corporation supported the following operating systems and hardware platforms for Oracle Database 11g (11.2.0.2.0) [54]: zLinux64 Microsoft Windows (32-bit) Microsoft Windows (x64) Linux x86 Linux x86-64 Solaris (SPARC) (64-bit) Solaris (x86-64) HP-UX Itanium HP-UX PA-RISC (64-bit) AIX (PPC64)

[edit]Related [edit]Oracle

software

products

Oracle Database Firewall[55] analyzes database traffic on a network to prevent threats such as SQL injection.[56] [edit]Database

options

Oracle Corporation refers to some extensions to the core functionality of the Oracle database as "database options".[57] As of 2008 such options include: Active Data Guard (extends Oracle Data Guard physical standby functionality in 11g) Advanced Compression (compresses tables, backups and redo-data)[58] Advanced Security (adds data encryption methods for both data at rest and on the network) Content database (provides a centralized repository for unstructured information) Database Vault (enforces extra security on data access) Data Mining ( ODM) (mines for patterns in existing data) In-Memory Database Cache (utilizes TimesTen technology) Label Security (enforces row-level security) Management Packs (various). For example: Oracle Database Change Management Pack[59][60] (tracks and manages schema

changes) Oracle Answers (for ad-hoc analysis and reporting) Oracle OLAP (adds analytical processing)

Oracle Application Express, a no-cost environment for database-oriented softwaredevelopment[61] Oracle Programmer (provides programmatic access to Oracle databases via precompilers, interfaces and bindings)[62] Partitioning (granularizes tables and indexes for efficiency) Real Application Clusters (RAC) (coordinates multiple database servers, together accessing the same database) Oracle Real Application Testing (new at version 11g)including Database Replay (for testing workloads) and SQL Performance Analyzer (SPA) (for preserving SQL efficiency in changing environments)[63] Records database (a records management application) Oracle Spatial (integrates relational data with geographic information systems (GIS))

Transparent Gateway for connecting to non-Oracle systems. Offers optimized solution, with more functionality and better performance than Oracle Generic Connectivity. Total Recall (optimizes long-term storage of historical data) Oracle Warehouse Builder (in various forms and sub-options) Oracle GoldenGate 11g (distributed real-time data acquisition)

Oracle Text (standard SQL to index, search, and analyze text and documents stored in the Oracle database) [64] This list is incomplete; you can help by expanding it. In most cases, using these options entails extra licensing costs.[65] [edit]Suites

In addition to its RDBMS, Oracle Corporation has released several related suites of tools and applications relating to implementations of Oracle databases. For example: Oracle Application Server, a J2EE-based application server, aids in developing and deploying applications which utilise Internet technologies and a browser. Oracle Collaboration Suite contains messaging, groupware and collaboration applications. Oracle Developer Suite contains software development tools, including JDeveloper. Oracle E-Business Suite collects together applications for enterprise resource planning (including Oracle Financials), customer relationship management and human resources management (Oracle HR). Oracle Enterprise Manager (OEM) used by database administrators (DBAs) to manage the DBMS, and recently in version 10g, a web-based rewrite of OEM called "Oracle Enterprise Manager Database Control". Oracle Corporation has dubbed the super-Enterprise-Manager used to manage a grid of multiple DBMS and Application Servers "Oracle Enterprise Manager Grid Control". Oracle Programmer/2000, a bundling of interfaces for 3GL programming languages, marketed with Oracle7 and Oracle8.[66][67] Oracle WebCenter Suite[68]

[edit]Database

"features"

Apart from the clearly defined database options, Oracle databases may include many semiautonomous software sub-systems, which Oracle Corporation sometimes refers to as "features" in a sense subtly different from the normal usage of the word. For example, Oracle Data Guard counts officially as a "feature", but the command-stack within SQL*Plus, though a usability feature, does not appear in the list of "features" in Oracle's list.[original research?] Such "features" may include (for example): Active Session History (ASH), the collection of data for immediate monitoring of very recent database activity.[69] Automatic Workload Repository (AWR), providing monitoring services to Oracle database installations from Oracle version 10. Prior to the release of Oracle version 10, the Statspack facility[70]provided similar functionality. Clusterware Data Aggregation and Consolidation Data Guard for high availability Generic Connectivity for connecting to non-Oracle systems.

Data Pump utilities, which aid in importing and exporting data and metadata between databases[71] Database Resource Manager (DRM), which controls the use of computing resources.[72] Fast-start parallel rollback[73]

Fine-grained auditing (FGA) (in Oracle Enterprise Edition[74]) supplements standard security-auditing features[75] Flashback for selective data recovery and reconstruction[76] iSQL*Plus, a web-browser-based graphical user interface (GUI) for Oracle database data-manipulation (compare SQL*Plus) Oracle Data Access Components (ODAC), tools which consist of:[77]

Oracle Data Provider for .NET (ODP.NET)[78] Oracle Developer Tools (ODT) for Visual Studio Oracle Providers for ASP.NET Oracle Database Extensions for .NET Oracle Provider for OLE DB Oracle Objects for OLE Oracle Services for Microsoft Transaction Server Oracle-managed files (OMF) -- a feature allowing automated naming, creation and deletion of datafiles at the operating-system level. Recovery Manager (rman) for database backup, restoration and recovery SQL*Plus, a program that allows users to interact with Oracle database(s) via SQL and PL/SQL commands on a command-line. Compare iSQL*Plus. Universal Connection Pool (UCP), a connection pool based on Java and supporting JDBC, LDAP, and JCA[79] Virtual Private Database[80] (VPD), an implementation of fine-grained access control.[81]

This list is incomplete; you can help by expanding it. [edit]Standalone

tools

Users can develop their own applications in Java and PL/SQL using tools such as: Oracle JDeveloper Oracle Forms Oracle Reports Oracle Corporation has started[clarification needed] a drive toward "wizard"-driven environments with a view to enabling non-programmers to produce simple data-driven applications. Oracle SQL Developer, a free graphical tool for database development, allows developers to browse database objects, run SQL statements and SQL scripts, and edit and debug PL/SQL statements. It incorporates standard and customized reporting. Oracle's OPatch provides patch management for Oracle databases.[82] [edit]Other

databases marketed by Oracle Corporation

By acquiring other technology in the database field, Oracle Corporation can also offer: TimesTen, a memory-resident database that can cache transactions and synchronize data with a centralized Oracle database server. It functions as a real-time infrastructure software product intended for the management of low-latency, high-volume data, of events and of transactions. BerkeleyDB, a simple, high-performance, embedded database Oracle Rdb, a legacy relational database for the OpenVMS operating-system MySQL a relational database purchased as part of Oracle Corporation's takeover of its immediate previous owner, Sun Microsystems Oracle NoSQL Database, a scalable, distributed key-value NoSQL database[83]

[edit]Use The Oracle RDBMS has had a reputation among novice users as difficult to install on Linux systems.[citation needed] Oracle Corporation has packaged recent versions for several popular Linux distributions in an attempt to minimize installation challenges beyond the level of technical expertise required to install a database server.[citation needed] [edit]Official

support

Users who have Oracle support contracts can use Oracle's "My Oracle Support" web site. The "My Oracle Support" site was known as MetaLink until a re-branding exercise completed in October 2010. The support site provides users of Oracle Corporation products with a repository of reported problems, diagnostic scripts and solutions. It also integrates with the provision of support tools, patches and upgrades. The Remote Diagnostic Agent or RDA[84] can operate as a command-line diagnostic tool executing a script. The data captured provides an overview of the Oracle Database environment intended for diagnostic and trouble-shooting. Within RDA, the HCVE (Health Check Validation Engine)[85] can verify and isolate host system environmental issues that may affect the performance of Oracle software. [edit]Database-related

guidelines

Oracle Corporation also endorses certain practices and conventions as enhancing the use of its database products. These include: Oracle Maximum Availability Architecture (MAA), guidelines on developing highavailability systems Optimal Flexible Architecture (OFA), blueprints for mapping Oracle-database objects to file-systems [edit]Oracle

Certification Program

Main article: Oracle Certification Program The Oracle Certification Program, a professional certification program, includes the administration of Oracle Databases as one of its main certification paths. It contains three levels: 1. 2. 3. [edit]User Oracle Certified Associate (OCA) Oracle Certified Professional (OCP) Oracle Certified Master (OCM)

groups

A variety of official (Oracle-sponsored) and unofficial Oracle User Groups has grown up of users and developers of Oracle databases. They include: Oracle Technology Network Independent Oracle Users Group Geographical/regional user groups Product-centric user groups Industry-centric user groups

The Oak Table Network Usenet newsgroups

[edit]Market

position

[edit]Competition In the market for relational databases, Oracle Database competes against commercial products such as IBM's DB2 UDB and Microsoft SQL Server. Oracle and IBM tend to battle for the mid-range database market on UNIX and Linux platforms, while Microsoft dominates the mid-range database market on Microsoft Windows platforms. However, since they share many of the same customers, Oracle and IBM tend to support each other's products in many middleware and application categories (for example: WebSphere, PeopleSoft, and Siebel Systems CRM), and IBM's hardware divisions work closely[citation needed] with Oracle on performance-optimizing server-technologies (for example, Linux on zSeries). The two companies have a relationship perhaps[original research?] best described as "coopetition". Niche commercial competitors include Teradata (in data warehousing and business intelligence), Software AG's ADABAS, Sybase, and IBM's Informix, among many others. In 2007, competition with SAP AG occasioned litigation from Oracle Corporation.[86] Increasingly, the Oracle database products compete against such open-source software relational database systems as PostgreSQL, Firebird, and MySQL. Oracle acquired Innobase, supplier of theInnoDB codebase to MySQL, in part to compete better against open source alternatives, and acquired Sun Microsystems, owner of MySQL, in 2010. Database products licensed as open source are, by the legal terms of the Open Source Definition, free to distribute and free of royalty or other licensing fees. [edit]Pricing Oracle Corporation offers term licensing for all Oracle products. It bases the list price for a term-license on a specific percentage of the perpetual license price. Prospective purchasers can obtain licenses based either on the number of processors in their target server machines or on the number of potential seats ("named users").[87] Enterprise Edition As of July 2010, the database that costs the most per machine-processor among Oracle database editions, at $47,500 per processor. The term "per processor" for Enterprise Edition is defined with respect to physical cores and a processor core multiplier (common processors = 0.5*cores). e.g. An 8-processor, 32-core server using Intel Xeon 56XX CPUs would require 16 processor licenses.[88][89] Standard Edition Cheaper: it can run on up to four processors but has fewer features than Enterprise Editionit lacks proper parallelization,[90] etc.; but remains quite suitable for running medium-sized applications. There are not additional cost for Oracle RAC on the latest Oracle 11g R2 standard edition release. Standard ONE Sells even more cheaply, but remains limited to two CPUs. Standard Edition ONE sells on a per-seat basis with a five-user minimum. Oracle Corporation usually sells the licenses with an

extra 22% cost for support and upgrades (access to MetaLinkOracle Corporation's support site) which customers need to renew annually. Oracle Express Edition (Oracle XE) An addition to the Oracle database product family (beta version released in 2005, production version released in February 2006), offers a free version of the Oracle RDBMS, but one limited to 11 GB of user data and to 1 GB of memory used by the database (SGA+PGA).[91] XE will use no more than one CPU and lacks an internal JVM. XE runs only on Windows and on Linux, not on AIX, Solaris, HP-UX and the other operating systems available for other editions. Support is via a free Oracle Discussion Forum only. As computers running Oracle often have eight or more processors, the software price can rise into the hundreds of thousands of dollars. The total cost of ownership often exceeds this, as large Oracle installations usually require experienced and trained database administrators to do the set-up properly. Because of the product's large installed base and available training courses, Oracle specialists in some areas have become a more abundant resource than those for more exotic databases. Oracle frequently provides special training offers for database-administrators. On Linux, Oracle's certified configurations include Oracle's own Oracle Linux and other commercial Linux distributions (Red Hat Enterprise Linux 3, 4 and 5, SuSE SLES 8, 9 and 10, Asianux) which can cost in a range from a few hundred to a few thousand USD per year (depending on processor architecture and the support package purchased). The Oracle database system can also install and run on freely available Linux distributions such as the Red Hat-based CentOS,[92] or Debian-based systems.[93] [edit]See

also

Das könnte Ihnen auch gefallen