Enabling SOA Integration with ISG

Oracle E-Business Suite Integrated SOA Gateway (ISG) provides a customer-focused robust communication and integration infrastructure between an external system and ISG for inbound and outbound communication that does not require a special class of middleware software.  This will not only save license costs but also reduce maintenance costs as the existing EBS system support team can maintain the infrastructure easily. This infrastructure not only enables greater and effective business integration with standard SOA concept between heterogeneous applications, but also facilitates the development and execution of complex business processes into highly flexible and reusable Web services. With this standardized and interoperable Web service platform, ISG provides a powerful framework that accelerates publishing of custom PL/SQL procedures as web services over the Web.

Integration Architecture

ISG Integrations require some configurations and customizations to enable the functionality in the ISG module.  The functionality would be written in PL/SQL procedures and then enabled as a web service.  The Outbound calls are made using the Service Invocation Framework (SIF) of EBS, which internally uses built-in Business Events for initiating the transaction or web service call.  Organizations would not need to hire new resources to develop this functionality as Apps technical resources possessing PL/SQL skills can easily deploy this functionality. This helps the firm in saving recruitment and resource management costs.  This cross-industry integration can be performed on EBS versions R12.1 and above.

Implementation Steps

Here is a detailed illustration of web services implementation and calling web services from EBS.  Oracle E-Business Suite (R12.1.3) must be installed and ready to use for Integrated SOA Gateway (ISG) setup and implementation.  This implementation requires some setup configuration and development of several components for Inbound and Outbound as given below:


1.  ISG Setup
a. Enable ASADMIN user
b. Create ISGUSER
2. Write a Custom PL/SQL procedure
3. Write the annotation into Procedure
4. Generate and Upload the ILDT file
5. View the Published Custom Web Service developed
6. Monitoring SOA Requests


1. Run SQL script for Security Parameters to Support UsernameToken based WS-Security WSSE password   (If the external services are WSSE enabled only)
2. Creating Business Events
3. Creating Invoke Web Service Subscriptions
4. Creating Error Notification Subscriptions
5. Creating Call back event Subscriptions in PL/SQL
6. Testing the Setup (Don’t DO in the production environments)
7. Resubmitting Failed Business Events

For further details on implementation steps e-mail to Khaleel shaik our Java Practice lead at kshaik@bodhtree.com

Read More

The Opportunity for Excellence

When working with clients or prospects, I always relished and appreciated an “Opportunity for Excellence“. What does that mean? It means that when a client or prospect calls with a specific problem that is time sensitive and we, as an organization and team, jump on the problem and work to solve it.

We have had several “Opportunities for Excellence” in the past few months’ with our clientele. On two of them we worked through the Christmas holidays. We have had numerous times where we had several of our colleagues pull “all-nighters” just to respond to a client’s needs. We have met deadlines, pushed ourselves, strived to turn out the best work we could do.

This excellence at my organization can only be exhibited by the members i.e. our employees. When will you have an “opportunity for excellence”? When will you be called upon to deliver success in impossible timeframes and conditions?

Let me end by telling you this. When you go the extra mile for your customer and succeed, you go from being a vendor to being a strategic partner.

Phil Hodsdon, SVP, Sales & Solutions at Bodhtree.

Read More

What is Hive? Its Interaction with Hadoop and Big Data

Hive – A Warehousing Solution Over a MapReduce Framework

What is Hive?

Hive is a data warehousing infrastructure built on top of apache Hadoop.

Hadoop provides massive scale-out and fault-tolerance capabilities for data storage and processing (using the MapReduce programming paradigm) on commodity hardware.

Hive enables easy data summarization, ad-hoc querying and analysis of large volumes of data.

It is best used for batch jobs over large sets of immutable data (like web logs).

It provides a simple query language called Hive QL, which is based on SQL and which enables users familiar with SQL to easily perform ad-hoc querying, summarization and data analysis.

At the same time, Hive QL also allows traditional MapReduce programmers to be able to plug in their custom mappers and reducers to do more sophisticated analysis that may not be supported by the built-in capabilities of the languag

Hive Query Language capabilities:

Hive query language provides the basic SQL like operations. These operations work on tables or partitions.

  • Ability to create and manage tables and partitions (create, drop and alter).
  • Ability to support various Relational, Arithmetic and Logical Operators.
  • Ability to do various joins between two tables.
  • Ability to evaluate functions like aggregations on multiple “group by” columns in a table.
  • Ability to store the results of a query into another table.
  • Ability to download the contents of a table to a local directory.
  • Ability to create an external table that points to a specified location within HDFS
  • Ability to store the results of a query in an HDFS directory.
  • Ability to plug in custom scripts using the language of choice for custom map/reduce jobs.

Major Components of Hive and its interaction with Hadoop:

Hive provides external interfaces like command line (CLI) and web UI, and application programming interfaces (API) like JDBC and ODBC

(click to enlarge)

The Hive Thrift Server exposes a very simple client API to execute HiveQL statements. Thrift is a framework for cross-language services, where a server written in one language (like Java) can also support clients in other languages.

The Metastore is the system catalog. All other components of Hive interact with the Metastore.

The Driver manages the life cycle of a HiveQL statement during compilation, optimization and execution.

The Compiler is invoked by the driver upon receiving a HiveQL statement. The compiler translates this statement into a plan which consists of a DAG of map/reduce jobs.

The driver submits the individual map/reduce jobs from the DAG to the Execution Engine in a topological order. Hive currently uses Hadoop as its execution engine.

What Hive is NOT

Hive is not designed for online transaction processing and does not offer real-time queries and row-level updates.

Hive aims to provide acceptable (but not optimal) latency for interactive data browsing, queries over small data sets or test queries.

Hive Applications:

  • Log processing
  • Text mining
  • Document indexing
  • Customer-facing business intelligence (e.g., Google Analytics)
  • Predictive modeling, hypothesis testing

Vijaya R Kolli is a Hadoop-Big Data developer with Bodhtree.  Bodhtree specializes in BI and Big Data solutions, providing analytics consulting, implementation, data cleansing, and maintenance services.

Read More