Java is one of the core languages (SQL, PL/SQL, Java, XML, and HTML) that are tightly integrated in the Oracle Database suite of products. The Extensible Markup Language (XML) is a hierarchical data structure that describes data by embedding the metadata with the data structure. Java has become the primary language for new applications that are written for Oracle databases. Why does an Oracle DBA care about Java? Java in an Oracle environment impacts architectural decisions, performance, leveraging new technologies, security, and application development. Java-stored procedures can run in the Oracle database server. So, if Java code can run in the Oracle database server, then DBAs are going to have to deal with related Java issues. Also, DBAs that can support the middle tier (application server, Web Services, J2EE, Oracle Net Services, and so on) in n-tiered environments as well as application development (Java, XML, HTML, and others) will increase their value to an organization. Java knowledge is important in all tiers of an Oracle Database architectural environment. However, with Java playing such a key role in so many technology areas in Oracle Database, the key features and functionality introduced in this section are important for DBAs to understand.
Java as a core language in Oracle environments should be known to an Oracle Database DBA, with the understanding that they are not likely to be writing Java-stored procedures, servlets, or Enterprise JavaBeans. However, a DBA does need to understand the feature/functionality of the database, how Java applications impact the Oracle database server, and they should be able to support the developers. If developers are having problems running Java-stored procedures, a DBA needs to understand whether it is a configuration or an application issue. Inefficient Java programs that access a database have a negative impact on performance. Such things will impact the DBA.
In previous releases of Oracle, production DBAs focused on the Oracle Database server and the environment the server ran in. This usually involved understanding the operating system, the Oracle server, networking, and storage management. Oracle Database environments are involving application servers, Web Services, XML, Internet protocols, and n-tiered architectures. Java is integral to all of these areas. The first time a DBA has to tune a query using XML in the database or get asked to help figure out how an XML structure in the database got corrupted, they will care. The reason is that the DBA is responsible for tuning and data integrity. Highly valuable and marketable DBAs will understand the various Oracle Database server environments.
The technology environment is more competitive than ever before. DBAs that can support the application environment are extremely valuable. Java is a key technology with Web Services and n-tiered architectures. DBAs that have a solid understanding of Java will be able to do a much better job of supporting the application environment for Oracle Database.
Java applications can run in the Oracle database server as well as PL/SQL. It's not just an issue of running an industry-standard language (Java) versus a proprietary database (PL/SQL) language. Java is a systems language that offers a lot of functionality beyond the capabilities of PL/SQL. Java is also tightly integrated into new technologies such as Web Services. Web Services is a technology that allows different types of applications to communicate over the Web. Technologies integrated into Web Services include the following:
- Simple Object Access Protocol (SOAP) SOAP is a lightweight protocol used to exchange structured data (XML) in a heterogeneous, distributed environment.
- Extensible Markup Language (XML) This is an industry-standard language for documents containing structured information. Included in the XML data structures is the metadata associated with the data. XML is an extremely popular method of transferring data across the Internet. XML can handle complex data, but it often needs to be displayed or converted to another form. This can be done with XSL (Extensible Stylesheet Language), which converts data from one format to another—for instance, it will convert XML to HTML for displaying on a web browser. This is why XSLT is an important part of XSL.
- Web Services Description Language (WSDL) WSDL uses XML for describing network services as a set of network endpoints (ports) operating on messages with documents or procedural information.
Web Services is expected to be the next business model to leverage the capability of the Internet. Oracle Database adds a significant amount of functionality supporting Web Services and related technology in the Oracle database. Most large organizations are likely to be implementing Web Services at some level in the next few years. Here are some reasons why organizations are moving to Web Services:
- Companies need to have a simple way of integrating applications and resources in a heterogeneous environment.
- It's based upon open standards that are being adopted by Oracle, IBM, Microsoft, Sun, HP, and other countries.
- Leverages other open standards such as XML and Web Services Description Language (WSDL).
- Web Services can be run on Windows, Linux, Macintosh, Solaris, AIX, HP-UX, WAP, and other systems.
- Web Services can significantly reduce software development, maintenance, and integration costs for web applications.
- An application can have a Web Services interface generated and it can then be executed by another program anywhere in the world in a matter of minutes. PL/SQL and Java applications in Oracle Database can have Web Services interfaces generated.
There are three important reasons why Oracle Database DBAs should care about Java and Java-related technologies such as XML, Web Services, SOAP, WSDL, and others:
- A critical part of managing database systems involves moving information from one place to another and getting different environments (hardware, software, applications, networks) to work together.
- Oracle Database supports technologies such as Java, XML, HTTP, and Web Services directly in the database server.
- Successful and marketable DBAs in Oracle Database environments need to be able to do more than just performance tuning, backup/recovery, and storage management.
These technologies provide open standard solutions for integration and communication across heterogeneous, distributed environments. What's more important is that the industry is supporting these new standards and leveraging them. These standards, however, are still evolving and changing. Nevertheless, the strong advantages of these technologies cannot be ignored and large organizations are seriously looking at them.
Traditionally, Web Services has been deployed in the middle-tier. The middle-tier is the level between the client-tier (presentation-tier) and the information-tier (data-tier or database server-tier) that contains the business logic. The middle-tier usually contains an application or web server. In Oracle Database, the database server can be a Web Services provider. Supporting Web Services in the database offers Enterprise Information Integration. With the proliferation of web-based applications, the integration and connectivity is critical. Web Services can provide the glue that leverages different technologies and environments. In disconnected environments (Internet), accessing stored procedures (Java), data, and metadata (XML) through Web Services offers additional options and flexibility.
So what does Java mean to an Oracle DBA? Java is a core language that is integrated in the Oracle Database server and primary Oracle products such as the application server, Oracle development products, and applications. Second, Java is a key technology that is integral to technologies that are playing larger roles in database applications such as Web Services, application servers, XML, and the development of standards-based environments.