What does oracle software do




















Create a personalised ads profile. Select personalised ads. Apply market research to generate audience insights. Measure content performance. Develop and improve products. List of Partners vendors. Your Money. Personal Finance.

Your Practice. Popular Courses. Stocks Top Stocks. Top Stocks Top Stocks. Table of Contents Expand. Acme Packet. BEA Systems.

Hyperion Corporation. Siebel Systems. Sun Microsystems. Key Takeaways Oracle is known as a global leader in enterprise software and IT solutions.

Its cloud computing and database packages are well-known throughout the industry, but the company also has relied on an aggressive acquisition strategy to bolster its portfolio. Article Sources. Investopedia requires writers to use primary sources to support their work. These include white papers, government data, original reporting, and interviews with industry experts. We also reference original research from other reputable publishers where appropriate.

You can learn more about the standards we follow in producing accurate, unbiased content in our editorial policy. They can seamlessly update the edition if their requirements change in the future.

If you want to learn and do some hands-on Oracle, you can download and install the express edition database which is absolutely free. Clusters: It uses Real Application Clusters to provide a high data availability system. The database with RAC has benefits over traditional database servers :. It supports online, archived backups and continuous archiving. There is an export utility available in the database to add user-managed backups. It is a database management software product. A database contains an organized collection of information.

A database management system is not only used for storing the data but to effectively manage it and provides high performance, authorized access and failure recovery features. It provides a software solution that is easy to use and manage database operations, from Personal to Enterprise level applications. We can conclude that Oracle is a powerful database server management software that can serve the requirements of Enterprise level and small level applications as well.

It includes almost all the features required to support modern applications and therefore, is widely used. This is a guide to What is Oracle? Here we discuss how do we use oracle, feature, importance, and benefits. You may also look at the following articles to learn more —.

Submit Next Question. Application developers can code an application so it controls the phases of SQL statement execution and thus improves application performance. A PGA is created by Oracle when a server process is started. The information in a PGA depends on the Oracle configuration. An Oracle database uses memory structures and processes to manage and access the database. Oracle creates a set of background processes for each instance. The background processes consolidate functions that would otherwise be handled by multiple Oracle programs running for each user process.

There are numerous background processes, and each Oracle instance can use several background processes. A process is a "thread of control" or a mechanism in an operating system that can run a series of steps. Some operating systems use the terms job or task. A process generally has its own private memory area in which it runs.

An Oracle database server has two general types of processes: user processes and Oracle processes. User processes also manage communication with the server process through the program interface, which is described in a later section.

Oracle processes are invoked by other processes to perform functions on behalf of the invoking process. Oracle creates server processes to handle requests from connected user processes. A server process communicates with the user process and interacts with Oracle to carry out requests from the associated user process.

For example, if a user queries some data not already in the database buffer s of the SGA, then the associated server process reads the proper data block s from the datafiles into the SGA.

Oracle can be configured to vary the number of user processes for each server process. In a dedicated server configuration , a server process handles requests for a single user process. A shared server configuration lets many user processes share a small number of server processes, minimizing the number of server processes and maximizing the use of available system resources.

On some systems, the user and server processes are separate, while on others they are combined into a single process. If a system uses the shared server or if the user and server processes run on different computers, then the user and server processes must be separate.

Oracle Net Services is Oracle's mechanism for interfacing with the communication protocols used by the networks that facilitate distributed processing and distributed databases. Communication protocols define the way that data is transmitted and received on a network.

Using Oracle Net Services, application developers do not need to be concerned with supporting network communications in a database application.

If a new protocol is used, then the database administrator makes some minor changes, while the application requires no modifications and continues to function. Oracle Net , a component of Oracle Net Services, enables a network session from a client application to an Oracle database server. Once a network session is established, Oracle Net acts as the data courier for both the client application and the database server. It establishes and maintains the connection between the client application and database server, as well as exchanges messages between them.

Oracle Net can perform these jobs because it is located on each computer in the network. The three steps to starting an Oracle database and making it available for systemwide use are:. W hen Oracle starts an instance, it reads the server parameter file SPFILE or initialization parameter file to determine the values of initialization parameters.

Then, it allocates an SGA and creates background processes. The following example describes the most basic level of operations that Oracle performs. This illustrates an Oracle configuration where the user and associated server process are on separate computers connected through a network. An instance has started on the computer running Oracle often called the host or database server. A computer running an application a local computer or client workstation runs the application in a user process.

The client application attempts to establish a connection to the server using the proper Oracle Net Services driver. The server is running the proper Oracle Net Services driver. The server detects the connection request from the application and creates a dedicated server process on behalf of the user process. The user runs a SQL statement and commits the transaction. For example, the user changes a name in a row of a table. The server process receives the statement and checks the shared pool for any shared SQL area that contains a similar SQL statement.

If a shared SQL area is found, then the server process checks the user's access privileges to the requested data, and the previously existing shared SQL area is used to process the statement.

If not, then a new shared SQL area is allocated for the statement, so it can be parsed and processed. The server process retrieves any necessary data values from the actual datafile table or those stored in the SGA. The server process modifies data in the system global area. The DBW n process writes modified blocks permanently to disk when doing so is efficient. Because the transaction is committed, the LGWR process immediately records the transaction in the redo log file.

If the transaction is successful, then the server process sends a message across the network to the application. If it is not successful, then an error message is transmitted. Throughout this entire procedure, the other background processes run, watching for conditions that require intervention.

In addition, the database server manages other users' transactions and prevents contention between transactions that request the same data. Oracle includes several software mechanisms to fulfill the following important requirements of an information management system:.

Data concurrency of a multiuser system must be maximized. Data must be read and modified in a consistent fashion. The data a user is viewing or changing is not changed by other users until the user is finished with the data. High performance is required for maximum productivity from the many users of the database system. A primary concern of a multiuser database management system is how to control concurrency , which is the simultaneous access of the same data by many users.

Without adequate concurrency controls, data could be updated or changed improperly, compromising data integrity. One way to manage data concurrency is to make each user wait for a turn. The goal of a database management system is to reduce that wait so it is either nonexistent or negligible to each user.

All data manipulation language statements should proceed with as little interference as possible, and destructive interactions between concurrent transactions must be prevented. Destructive interaction is any interaction that incorrectly updates data or incorrectly alters underlying data structures. Neither performance nor data integrity can be sacrificed. Oracle resolves such issues by using various types of locks and a multiversion consistency model.

These features are based on the concept of a transaction. It is the application designer's responsibility to ensure that transactions fully exploit these concurrency and consistency features. Guarantees that the set of data seen by a statement is consistent with respect to a single point in time and does not change during statement execution statement-level read consistency. Ensures that writers only wait for other writers if they attempt to update identical rows in concurrent transactions.

The simplest way to think of Oracle's implementation of read consistency is to imagine each user operating a private copy of the database, hence the multiversion consistency model. To manage the multiversion consistency model, Oracle must create a read-consistent set of data when a table is queried read and simultaneously updated written. When an update occurs, the original data values changed by the update are recorded in the database undo records.

As long as this update remains part of an uncommitted transaction, any user that later queries the modified data views the original data values. Oracle uses current information in the system global area and information in the undo records to construct a read-consistent view of a table's data for a query.

Only when a transaction is committed are the changes of the transaction made permanent. Statements that start after the user's transaction is committed only see the changes made by the committed transaction. The transaction is key to Oracle's strategy for providing read consistency.

This unit of committed or uncommitted SQL statements:. Controls when modified data can be seen by other transactions of the database for reading or updating. By default, Oracle guarantees statement-level read consistency. The set of data returned by a single query is consistent with respect to a single point in time.

However, in some situations, you might also require transaction-level read consistency. This is the ability to run multiple queries within a single transaction, all of which are read-consistent with respect to the same point in time, so that queries in this transaction do not see the effects of intervening committed transactions.

If you want to run a number of queries against multiple tables and if you are not doing any updating, you prefer a read-only transaction. Oracle also uses locks to control concurrent access to data. When updating information, the data server holds that information with a lock until the update is submitted or committed. Until that happens, no one else can make changes to the locked information. This ensures the data integrity of the system. Oracle provides unique non-escalating row-level locking.

Because Oracle includes the locking information with the actual rows themselves, Oracle can lock an unlimited number of rows so users can work concurrently without unnecessary delays.

Oracle locking is performed automatically and requires no user action. Implicit locking occurs for SQL statements as necessary, depending on the action requested.

Oracle's lock manager automatically locks table data at the row level. By locking table data at the row level, contention for the same data is minimized. Oracle's lock manager maintains several different types of row locks, depending on what type of operation established the lock. The two general types of locks are exclusive locks and share locks.

Only one exclusive lock can be placed on a resource such as a row or a table ; however, many share locks can be placed on a single resource. Both exclusive and share locks always allow queries on the locked resource but prohibit other activity on the resource such as updates and deletes.

Under some circumstances, a user might want to override default locking. Oracle allows manual override of automatic locking features at both the row level by first querying for the rows that will be updated in a subsequent statement and the table level. One way to provide such isolation is to shut down the database and reopen it in restricted mode. You could also put the system into quiesced state without disrupting users.

In quiesced state, the database administrator can safely perform certain actions whose executions require isolation from concurrent non-DBA users. Real Application Clusters RAC comprises several Oracle instances running on multiple clustered computers, which communicate with each other by means of a so-called interconnect.

RAC uses cluster software to access a shared database that resides on shared disk. RAC combines the processing power of these multiple interconnected computers to provide system redundancy, near linear scalability, and high availability.

RAC also offers significant advantages for both OLTP and data warehouse systems and all systems and applications can efficiently exploit clustered environments. You can scale applications in RAC environments to meet increasing data processing demands without changing the application code. As you add resources such as nodes or storage, RAC extends the processing powers of these resources beyond the limits of the individual components. Oracle provides unique portability across all major platforms and ensures that your applications run without modification after changing platforms.

This is because the Oracle code base is identical across platforms, so you have identical feature functionality across all platforms, for complete application transparency. Because of this portability, you can easily upgrade to a more powerful server as your requirements change.

People who administer the operation of an Oracle database system, known as database administrators DBAs , are responsible for creating Oracle databases, ensuring their smooth operation, and monitoring their use. In addition to the many alerts and advisors Oracle provides, Oracle also offers the following features:. Oracle Database provides a high degree of self-management - automating routine DBA tasks and reducing complexity of space, memory, and resource administration.

Oracle self-managing database features include the following: automatic undo management, dynamic memory management, Oracle-managed files, mean time to recover, free space management, multiple block sizes, and Recovery Manager RMAN.

Enterprise Manager is a system management tool that provides an integrated solution for centrally managing your heterogeneous environment. Combining a graphical console, Oracle Management Servers, Oracle Intelligent Agents, common services, and administrative tools, Enterprise Manager provides a comprehensive systems management platform for managing Oracle products.

Administer the complete Oracle environment, including databases, i AS servers, applications, and services. Automatic Storage Management automates and simplifies the layout of datafiles, control files, and log files.

Database files are automatically distributed across all available disks, and database storage is rebalanced whenever the storage configuration changes. It provides redundancy through the mirroring of database files, and it improves performance by automatically distributing database files across all available disks. Rebalancing of the database's storage automatically occurs whenever the storage configuration changes.

The Scheduler lets database administrators and application developers control when and where various tasks take place in the database environment. For example, database administrators can schedule and monitor database maintenance jobs such as backups or nightly data warehousing loads and extracts.

Traditionally, the operating systems regulated resource management among the various applications running on a system, including Oracle databases. The Database Resource Manager controls the distribution of resources among various sessions by controlling the exec ution schedule inside the database. By controlling which sessions run and for how long, the Database Resource Manager can ensure that resource distribution matches the plan directive and hence, the business objectives.

In every database system, the possibility of a system or hardware failure always exists. If a failure occurs and affects the database, then the database must be recovered. The goals after a failure are to ensure that the effects of all committed transactions are reflected in the recovered database and to return to normal operation as quickly as possible while insulating users from problems caused by the failure.

Availability of data during backup and recovery operations so users of the system can continue to work. Several circumstances can halt the operation of an Oracle database. The most common types of failure are described in the following table.

After an instance failure, Oracle automatically performs instance recovery. If one instance in a RAC environment fails, then another instance recovers the redo for the failed instance.

In a single-instance database, or in a RAC database in which all instances fail, Oracle automatically applies all redo when you restart the database.

Different files can be affected by this type of disk failure, including the datafiles, the redo log files, and the control files. Also, because the database instance cannot continue to function properly, the data in the database buffers of the system global area cannot be permanently written to the datafiles.

A disk failure requires you to restore lost files and then perform media recovery. Unlike instance recovery, media recovery must be initiated by the user. Media recovery updates restored datafiles so the information in them corresponds to the most recent time point before the disk failure, including the committed data in memory that was lost because of the failure.

Oracle provides for complete media recovery from all possible types of hardware failures, including disk failures. Options are provided so that a database can be completely recovered or partially recovered to a specific point in time. If some datafiles are damaged in a disk failure but most of the database is intact and operational, the database can remain open while the required tablespaces are individually recovered. Therefore, undamaged portions of a database are available for normal use while damaged portions are being recovered.

Oracle uses several structures to provide complete recovery from an instance or disk failure: the redo log , undo records , a control file , and database backups. The redo log is a set of files that protect altered database data in memory that has not been written to the datafiles. The redo log can consist of the online redo log and the archived redo log.

The online redo log is a set of two or more online redo log files that record all changes made to the database, including uncommitted and committed changes. Redo entries are temporarily stored in redo log buffers of the system global area, and the background process LGWR writes the redo entries sequentially to an online redo log file. LGWR writes redo entries continually, and it also writes a commit record every time a user process commits a transaction.

Optionally, filled online redo files can be manually or automatically archived before being reused, creating archived redo logs. To enable or disable archiving, set the database in one of the following modes:. The database can also be backed up while it is open and available for use. However, additional administrative operations are required to maintain the archived redo log.

Also, the database can be backed up only while it is completely closed. Because no archived redo log is created, no extra work is required by the database administrator. Undo records are stored in undo tablespaces. Oracle uses the undo data for a variety of purposes, including accessing before-images of blocks changed in uncommitted transactions. During database recovery, Oracle applies all changes recorded in the redo log and then uses undo information to roll back any uncommitted transactions.

The control files include information about the file structure of the database and the current log sequence number being written by LGWR. During normal recovery procedures, the information in a control file guides the automatic progression of the recovery operation. Because one or more files can be physically damaged as the result of a disk failure, media recovery requires the restoration of the damaged files from the most recent operating system backup of a database.

RMAN is an Oracle utility that manages backup and recovery operations, creates backups of database files datafiles, control files, and archived redo log files , and restores or recovers a database from backups.

Oracle Database Administrator's Guide for more information about managing undo space. Computing environments configured to provide nearly full-time availability are known as high availability systems. Such systems typically have redundant hardware and software that makes the system available despite failures. Well-designed high availability systems avoid having single points-of-failure. When failures occur, the fail over process moves processing performed by the failed component to the backup component.

This process remasters systemwide resources, recovers partial or failed transactions, and restores the system to normal, preferably within a matter of microseconds. The more transparent that fail over is to users, the higher the availability of the system. Oracle has a number of products and features that provide high availability in cases of unplanned downtime or planned downtime.

These can be used in various combinations to meet specific high availability needs. A data warehouse is a relational database designed for query and analysis rather than for transaction processing. It usually contains historical data derived from transaction data, but it can include data from other sources. It separates analysis workload from transaction workload and enables an organization to consolidate data from several sources. In addition to a relational database, a data warehouse environment includes an extraction, transportation, transformation, and loading ETL solution, an online analytical proce ssing O LAP engine, client analysis tools, and other applications that manage the process of gathering data and delivering it to business users.

You must load your data warehouse regularly so that it can serve its purpose of facilitating business analysis. To do this, data from one or more operational systems must be extracted and copied into the warehouse. The process of extracting data from source systems and bringing it into the data warehouse is commonly called ETL , which stands for extraction, transformation, and loading. A materialized view provides access to table data by storing the results of a query in a separate schema object.

Unlike an ordinary view, which does not take up any storage space or contain any data, a materialized view contains the rows resulting from a query against one or more base tables or views. A materialized view can be stored in the same database as its base tables or in a different database.

Materialized views stored in the same database as their bas e tables can improve query performance through query rewrites. Query rewrite is a mechanism where Oracle or applications from the end user or database transparently improve query response time, by automatically rewriting the SQL query to use the materialized view instead of accessing the original tables. Query rewrites are particularly useful in a data warehouse environment. Data warehousing environments typically have large amounts of data and ad hoc queries, but a low level of concurrent database manipulation language DML transactions.

For such applications, bitmap indexing provides:. Dramatic performance gains even on hardware with a relatively small number of CPUs or a small amount of memory. Fully indexing a large table with a traditional B-tree index can be prohibitively expensive in terms of space because the indexes can be several times larger than the data in the table.

Bitmap indexes are typically only a fraction of the size of the indexed data in the table. To reduce disk use and memory use specifically, the buffer cache , you can store tables and partitioned tables in a compressed format inside the database. This often leads to a better scaleup for read-only operations. Table compression can also speed up query execution.

There is, however, a slight cost in CPU overhead. By dividing the work necessary to run a statement among multiple processes, Oracle can run the statement more quickly than if only a single process ran it. This is called parallel execution or parallel processing. Parallel execution dramatically reduces response time for data-intensive operations on large databases, because statement processing can be split up among many CPUs on a single Oracle system.

Oracle has many SQL operations for performing analytic operations in the database. These include ranking, moving averages, cumulative sums, ratio-to-reports, and period-over-period comparisons. For additional analytic functionality, Oracle OLAP provides multidimensional calculations, forecasting, modeling, and what-if scenarios.

This enables developers to build sophisticated analytic and planning applications such as sales and marketing analysis, enterprise budgeting and financial analysis, and demand planning systems. Data can be stored in either relational tables or multidimensional objects. Oracle OLAP provides the query performance and calculation capability previously found only in multidimensional databases to Oracle's relational platform.

Instead, it is truly an OLAP-enabled relational database. As a result, Oracle provides the benefits of a multidimensional database along with the scalability, accessibility, security, manageability, and high availability of the Oracle database. With Oracle Data Mining, data never leaves the database — the data, data preparation, model building, and model scoring results all remain in the database. This enables Oracle to provide an infrastructure for application developers to integrate data mining seamlessly with database applications.

Some typical examples of the applications that data mining are used in are call centers, ATMs, ERM, and business planning applications. Data mining functions such as model building, testing, and scoring are provided through a Java API.

Partitioning addresses key issues in supporting very large tables and indexes by letting you decompose them into smaller and more manageable pieces called partitions. However, after partitions are defined, DDL statements can access and manipulate individuals partitions rather than entire tables or indexes.

This is how partitioning can simplify the manageability of large database objects. Also, partitioning is entirely transparent to applications. Partitioning is useful for many different types of applications, particularly applications that manage large volumes of data. OLTP systems often benefit from improvements in manageability and availability, while data warehousing systems benefit from performance and manageability.

Oracle includes datatypes to handle all the types of rich Internet content such as relational data, object-relational data, XML, text, audio, video, image, and spatial.

These datatypes appear as native types in the database. They can all be queried using SQL. A single SQL statement can include data belonging to any or all of these datatypes.

Each consists of a standards-based set of components, tools, and utilities. They provide efficient, random, piece-wise access to the data. Oracle Text indexes any document or textual content to add fast, accurate retrieval of information.

Oracle Text allows text searches to be combined with regular database searches in a single SQL statement. The ability to find documents based on their textual content, metadata, or attributes, makes the Oracle Database the single point of integration for all data management.

Oracle Ultra Search lets you index and search Web sites, database tables, files, mailing lists, Oracle Application Server Portals, and user-defined data sources. As such, you can use Oracle Ultra Search to build different kinds of search applications. Oracle inter Media provides an array of services to develop and deploy traditional, Web, and wireless applications that include image, audio, and video in an integrated fashion.

Multimedia content can be stored and managed directly in Oracle, or Oracle can store and index metadata together with external references that enable efficient access to media content stored outside the database. Oracle includes built-in spatial features that let you store, index, and manage location content assets, buildings, roads, land parcels, sales regions, and so on. The Oracle Spatial Option adds advanced spatial features such as linear reference support and coordinate systems.

Oracle includes security features that control how a database is accessed and used. For example, security mechanisms:.

Associated with each database user is a schema by the same name. By default, each database user creates and has access to all objects in the corresponding schema.

Database security can be classified into two categories: system security and data security. System security includes the mechanisms that control the access and use of the database at the system level. For example, system security includes:. System security mechanisms check whether a user is authorized to connect to the database, whether database auditing is active, and which system operations a user can perform.

Data security includes the mechanisms that control the access and use of the database at the schema object level. For example, data security includes:. The Oracle database provides discretionary access control , which is a means of restricting access to information based on privileges.

The appropriate privilege must be assigned to a user in order for that user to access a schema object. Appropriately privileged users can grant other users privileges at their discretion. Authentication to validate the identity of the entities using your networks, databases, and applications. Authorization processes to limit access and actions, limits that are linked to user's identities and roles.

Data must adhere to certain business rules, as determined by the database administrator or application developer. Oracle provides integrity constraints and database triggers to manage data integrity rules. An integrity constraint is a declarative way to define a business rule for a column of a table. An integrity constraint is a statement about table data that is always true and that follows these rules:. If an integrity constraint is created for a table and some existing table data does not satisfy the constraint, then the constraint cannot be enforced.

After a constraint is defined, if any of the results of a DML statement violate the integrity constraint, then the statement is rolled back, and an error is returned.

Integrity constraints are defined with a table and are stored as part of the table's definition in the data dictionary, so that all database applications adhere to the same set of rules. When a rule changes, it only needs be changed once at the database level and not many times for each application. The following integrity constraints are supported by Oracle:. Key is used in the definitions of several types of integrity constraints. A key is the column or set of columns included in the definition of certain types of integrity constraints.

Keys describe the relationships between the different tables and columns of a relational database. Individual values in a key are called key values. A primary key's values uniquely identify the rows in a table. Only one primary key can be defined for each table. Foreign key: The column or set of columns included in the definition of a referential integrity constraint.

Referenced key: The unique key or primary key of the same or a different table referenced by a foreign key. Triggers supplement the standard capabilities of Oracle to provide a highly customized database management system.

For example, a trigger can restrict DML operations against a table to those issued during regular business hours.



0コメント

  • 1000 / 1000