Monday, November 14, 2011

Oracle Edition Based Redefinition question ...

I was playing with Oracle's EBR feature using Oracle 11.2.x. I added a new dummy column in a table using the "ALTER TABLE table_name ADD (column_name, dataType)" SQL statement. I also made the necessary required changes in the editioning view - namely adding the above mentioned column in the editioning view.

While testing, what I discovered was, the newly added column was always showing up in the first position (ie, column number is one) in the new editioning view. I am not sure if this is the expected behaviour in EBR. If you notice, the "ALTER TABLE table_name ADD (column_name, dataType)" SQL statement, would always add the new column as the last column in the table. I expected a similar thing in the new editioning view.

If I know the answer, will update this post!

Thursday, October 13, 2011

SemTech UK 2011 conference in London, UK

Here is the Deck PPT of our speech titled Semantic SOA Governance, BPM and Complex Event Processing:

http://www.slideshare.net/arivolit/semantic-soa-governance-bpm-and-complex-event-processing


I attended many sessions as well. I'll write about them in a subsequent post.

Wednesday, August 31, 2011

Semantic SOA Governance, BPM and Comple Event Processing

I would like to let you know about an upcoming open source conference, the SemTech UK 2011. This conference would be held in London, UK between Sept 26-27, 2011. My ex-colleague, Keshava Rangarajan and I received an invitation to speak in the conference. The topic of our speech is "Semantic SOA Governance, BPM and Complex Event processing". Our topic falls under the "Innovative Products & Solutions" track.

For the complete events itinerary, please advert to:
http://semtechbizuk2011.semanticweb.com/programDetails.cfm?ptype=K&optionID=257&pgid=4

Here is the link to our abstract:
http://semtechuk2011.semanticweb.com/sessionPop.cfm?confid=63&proposalid=4309

Earlier Keshava Rangarajan and I have spoken in "HP Software Universe 2008" at Las Vegas representing Oracle. The topic was "Semantic SOA Governance". This time we are extending that topic, and additionally we would be covering BPM and Complex Event Processing as well.

Briefly, here are some of the challenges that we are intending to cover:

Challenges:
• How do we intelligently create, publish, search, discover, consume, manage, meter, monitor, govern and report on SOA services such that it delivers superior value to organizations?
• How can we deploy semantic technologies to solve this problem effectively ?


I intend to write more on this. Also, I'll write about the entire conference, other speeches, interesting ideas, etc. in the subsequent posts!

Sunday, July 31, 2011

Semantic SOA Governance, Cloud Governance for enterprise vs public domain problems

I have been doing some research on using Semantics in SOA Governance and Cloud Governance for quite some time.

So far, I had only been considering Enterprise domain problems when we think of Governance solutions. I came across the following two links:

1) Cloud Governance:
http://www.theinfoboom.com/articles/why-clouds-needs-service-governance/

2) HP Service Catalog:
https://coral.saas.hp.com/coral/web/service-catalog/

These are interesting areas.

Now, if we open up our scope and consider public domain problems as well, along with the traditional enterprise domain problems, the significance would be great! But one thing to be aware of is, opening up the services infrastructure to public infrastructure would definitely change the scale of the problem, which brings its own set of challenges, but they can be solved.

Besides there is another angle. This is the mobile domain. How about the Twitter and Facebook ?

Basically, we would be very curious to know about what others think about our company, product, or our blog post or article that we put out. The users write reviews, and it would add great value to have an ontological structure and persist them in repositories. By this way, we would have covered the whole nine yards from the Taxonomy to the Folksonomy when we include the feedback reviews of users!

The potentials are great which demands attention and can not be overlooked!

Thursday, June 30, 2011

Fiddling with Spring Roo ...

I have heard a lot about Spring Roo. So I really wanted to get my hands dirty in Spring Roo.

I am thinking of developing a Semantic Web Java application. The front end would be using JavaScript, jQuery. The DB would be MySQL using Hibernate for the OR mapping. In the business layer, Spring framework would take care of transaction management. RESTful services would be used in the business layer.

Additionally, the open source Jena technologies would be used to build the Semantics Web piece of the application. Using Protege-OWL, some OWL and RDF would be created and stored.

To make it available in the cloud, I am considering Cloud Foundry PaaS.

I'll keep you posted and let you know my progress.

Tuesday, May 31, 2011

Database Vs In-memory data grid

Recently, I went through a session in Oracle Coherance. Oracle Coherance is an in-memory data grid solution that enables organizations to predictably scale mission-critical applications by providing fast access to frequently used data.

I was trying to do a comparison between an in-memory data grid solution and a database solution. Say, Oracle Coherance and Oracle database.

Oracle Coherance:
In simple terms, Oracle Coherance is a hash map approach. The primitive operations supported by a hash map are get, put and remove.

Oracle database:
The primitive operations supported are CRUD (Create, Read, Update, Delete) operations.

In essence, Oracle Coherance has the necessary primitive operations to handle all the primitive CRUD operations that can be performed by a database approach. But there is one significant area where there is a difference. When it comes to XA transaction management, Oracle Coherance has some limitations. That is, Oracle database is really great with respect to 2-phase commits in a distributed environment.

One of the common use cases that we deal with is the versioning of objects. This could mean both in the Data Tier and in the Mid Tier. That is, lets say we have a DB schema 1.0 with Mid Tier object 1.0 version is already deployed and up and running for some time. Now, we have version 2.0 DB schema and its equivalent Mid Tier objects for 2.0 version. We need to upgrade the already running server to version 2.0. Edition-Based Redefinition is a great way to achieve this. Oracle supports this.

We'll delve deeper into this with a later post.

Saturday, April 30, 2011

Schema and Data comparison between two databases

I have been looking into an interesting new requirement.

Requirements:
1) Consider there are two host machines - Host_A and Host_B. An older version of our product is installed in Host_A. And a newer version of our product is installed in Host_B. From a Data tier perspective, there are lots of schema differences between old and new version of our product. Also, there could be lots of instance data persisted in the databases of each product installation. I am looking at writing a tool which would migrate instance data from the older instance of the product into the newer instance of the product.
2) In the first test case, the databases in old product instance and new product instance are same. (Homogeneous database comparison for schema and data). Later, this would be extended to consider heterogeneous databases - ie, the database types could be different in the old and new product instances.

Eg: Old product instance uses Oracle database. New product instance uses Microsoft SQL Server.

As a first step, we would require a tool which would do the following:
1) compare schema between older product instance and the newer product instance
2) compare data between older product instance and the newer product instance


I evaluated quite a few products that are currently available. They are DBDiff, Red Gate and TOAD. I am yet to evaluate Golden Gate.

The tools that I have evaluated were great so far. At the end of the comparison, the tools produce a SQL script which could be used to migrate from the old to the new produce instance.

So far, all these tools are Windows tools. That is, they run on Windows platforms. I am looking for Linux tools. If I find anything, I'll update this post.