In this blog you will briefly explore the systems architecture of Oracle Endeca Studio and then learn about installing it. This information is intended to supplement and add clarification to the information contained in Oracle’s documentation. If you are interested in learning only about Endeca Studio and user-driven data exploration, you can skip to the next section.
Endeca Minimal Implementation
Oracle Endeca Studio is covered immediately after Endeca Server because these two core components can provide data discovery functionality by themselves, and this would be the most minimal Endeca implementation possible. This minimal Endeca implementation is a good starting point if you are evaluating Endeca because it enables you to quickly explore the product, understand data discovery, and see the best-of-class features of Endeca Studio in action. This minimal implementation also has a place in the life cycle of Endeca application development that we just covered: user-driven data exploration. Endeca Server has a companion component known as Endeca Provisioning Service that allows Endeca Studio users to create applications by uploading JSON or Microsoft Excel–formatted files or by connecting to a JDBC database source. Without Endeca Provisioning Service, Endeca Studio applications cannot be created; so, installing Endeca Provisioning Service is required for any Endeca Studio deployment. Figure 1 depicts the minimal deployment of Endeca with Endeca Studio and Endeca Server.
FIGURE 1. Minimal deployment for Endeca
Installation Requirements for Endeca Studio
Endeca Studio is a Java-based application that is deployed on either Oracle WebLogic Server or Tomcat, and it runs on a server running either Red Hat or Oracle Linux or Windows 2008. Oracle recommends Red Hat/Oracle Linux 6, although version 5 is also supported. If you choose Oracle Linux 6, be aware that only the Red Hat–compatible kernel is supported. Oracle WebLogic Server is a product that must be licensed, whereas Tomcat is open source. Oracle WebLogic Server is recommended for reasons, namely, ease of installation, ease of use, and support.
Endeca Studio uses a relational database to store configuration and state. When Endeca Studio is installed, a Hypersonic database server is installed and used by default, but this is not recommended for production use because of performance issues. Endeca Studio has been tested against Oracle 11g and MySQL, and both are suitable. If your organization already has either of these two database servers running elsewhere for utility databases, then you can use them for Endeca Studio following your usual monitoring, backup, and tuning processes for the Endeca Studio database.
Endeca Studio also supports clustering for achieving high availability and high performance. Endeca Studio clustering involves installing multiple instances of Endeca Server across multiple servers, with each server hosting one instance of Endeca Studio. Clustering should be considered for mission-critical, customer-facing deployments of Endeca Studio that must be up at all costs. As with any clustered environment, the server hardware and operating systems and the application server should be identical and consistent across all cluster node computers. The relational database covered in the previous paragraph must be used instead of the default Hypersonic database, and all Endeca Stu dio databases must use the same database connection information. Endeca Studio clustering also requires the use of an HTTP load balancer.
The document “Oracle Endeca Information Discovery Studio: Studio Installation Guide” is a complete guide to installing Endeca Studio and describes all aspects of Endeca Studio Installation, including information on changing the relational database used by Endeca Studio.
Installation Requirements for Endeca Provisioning Service
Endeca Provisioning Service has the same installation requirements as Endeca Studio, with one exception: Tomcat is not supported. To recap, the requirements are either Red Hat or Oracle Linux or Windows 2008, with Oracle Linux 6 being the recommended version of Linux. Oracle recommends that Endeca Provisioning Service be installed on a separate server from all the other Endeca components.
As mentioned, the Endeca Provisioning Service installation is covered in detail in the document “Oracle Endeca Information Discovery Studio: Studio Installa tion Guide.” Once Endeca Provisioning Service is installed, you must set connection information in Endeca Studio to Endeca Provisioning Service in order to use this service to create applications in Endeca Studio. After this connection information has been provided, self-service data provisioning with Endeca Studio is ready to use. This allows users to create an Endeca Studio application from user-uploaded JSON or Microsoft Excel spreadsheet files. Endeca Provisioning Service also allows applications to be created from JDBC-connected databases or from Oracle Business Intelligence Enterprise Edition data. However, connectivity settings in Endeca Provisioning Service for each of these sources must be defined. Oracle provides one document specific to the provisioning service: “Provisioning Service Administration Guide.” Refer to this document for instructions on defining connections to JDBC-connected databases or Oracle Business Intelligence Enterprise Edition sources.
Endeca Provisioning Service requires a repository database. When Endeca Provisioning Service is first installed, an Apache Derby database is created by default. For production installations, you should use either Oracle 11g or MySQL for this database.
Figure 2 depicts an ideal installation of Endeca Studio and Endeca Provisioning Service, with clustering, separate servers for Endeca Studio and Endeca Provisioning Service, and back-end databases for both products. This ideal installation is appropriate for production environments with strong requirements for high service levels and good performance.
FIGURE 2. Optimum installation for Endeca Studio