Like us on Facebook

No of Viewers

Flag Counter

Wednesday, 25 September 2013

Ab Initio

Ab Initio Overview

Ab Initio is suite of applications containing the various components, but generally when people name Ab Initio, they mean “Ab Initio Co>operation system”, which is primarily a GUI based ETL Application. It gives user the ability to drag and drop different components and attach them, quite akin to drawing

The strength of Ab Initio-ETL is massively parallel processing which gives it capability of handling large volume of data

Ab Initio software companies are located in :-






















Let’s componentize Ab Initio
Co>operation System
EME(Enterprise Meta>Environment)
Additional Tools
Data profiler
Plan-IT etc
Co>operating System is ETL application; it comes packaged with EME (mentioned in next paragraph). This is GUI based application. Quite simple is design due to drag and drop features, most of the features are quite basic and so basic learning curve is quite steep. Now it has further two flavor or sub classes:
Batch Mode
Continuous Flow
The both primarily doing the similar things, but classically different in mode of processing as the name suggested. The “Batch Mode” is primarily used by most of costumer gives the benefit of moving bulk data (daily/multiple times a day).




















Continuous mode is more like “Click/Trigger” driven; say when you click on a web page the data flow starts, some of very large web based application run on Ab Initio server using Continuous flow
EME is more like source control for Ab Initio, but it has many additional features like
Meta data management
Business Metadata management
Process metadata management
Impact Analysis
Documentation tools
Run History Tracking
And surely Check-in and check-out
Ab Initio has come up with certain other application to complement the ETL suite; I will not be covering these in details, just one liner
Data profiler – It is data profiling tool, got the features for data quality analysis
Plan-IT – It is primarily a scheduler built by Ab Initio to run Ab Initio jobs. It can be integrated with Ab Initio jobs.
Strength and weakness based on the following
·         Cost to purchase
·         Total Cost of Ownership
·         Platform (OS and DBMS)
·         Ease of use (wizards, drag & drop, etc)
·         Learning curve
·         Performance
·         Available expertise
·         Ab Initio Support and Other Resources
Cost of Purchase – It is one of the costliest ETL tool in the market, with cost ranging from 500k to 5M, it depends upon the number of servers Ab Initio is installed, number of developer license and type of license, and batch flow is comparatively cheaper than continuous flow.
Comparing it with other major ETL tools like Informatica with similar functionalities, the pricing difference will be clearly evident
Total Cost of Ownership – The cost of ownership comes in 3 parts
Annual maintenance charges
Cost of employing/training Ab initio resources













































Development cost
Annual Maintenance charges – It is generally the percentage of initial cost and it is significant due to high initial cost. This number may differ based on the NDA and initial investment. A rough 10% maintenance charges is significant outflow.
Development cost – covered under training and resources
Available Expertise/Ab Initio Resources (training/employing) -
It is high end tool, so the developer community is not massive like many open source application, so employing these resources come with premium price.
Additionally Ab Initio is such a close community, so if you are ETL developer and want to explore/learn Ab Initio generally you will hit a wall and as I recall really there are 2 options
Work for an Organization who own Ab initio
There are only handful of organization who train in Ab Initio, so pay a premium to join the club
PlatformLike most of other ETL tools, it can work in various platforms.
On Database front, it can connect to all the major databases available in the market. So there is nothing to choose between this tool with respect to others. It allows connection to DB either by ODBC client or native mode, I believe some of other ETL tools may not have native mode supported
Ease of use – Being GUI based it is easy to use, simple component s, drag and drop and various indicators if connections are not completely made. In comparison to other tools, there is nothing much to choose in that end.
Creating custom based components and re-using those is one feature, I really liked in Ab Initio
There are certain set of components which are difficult to use and may require bit of scripting experience, but it is okay
Learning Curve – Learning curve is quick to start with; the difficult components can take some time. Ab Initio has designed certain components very cleverly, it takes bit of experience to utilize those optimally and take bit of time. I guess learning time of about 15 man days for a programmer with about 2-3 years of experience will give enough fluency in designing application
Ab Initio Support and other resources
Covering both topics in one go – Ab Initio is treating their application like a fort/sacred book, with little information and literature available on the market, so as a consequence, there is not enough information material on web.












































Covering both topics in one go – Ab Initio is treating their application like a fort/sacred book, with little information and literature available on the market, so as a consequence, there is not enough information material on web.
Not enough resources on web
Hit productivity of team, when struck with a technical/design issue
Unavailability of training material hurt training new employees
Just like any application/scripting language, there is potential of not using the application optimally, I really believe lack of proper training and open discussion has hit Ab Initio developers really hard, where they missing and still groping in dark having following set of problems
No Access or standard set of best practices. Organization tend to have their own best practices if any and under tough external review generally these will fall much short of best
Missing Input from other communities having parallel functionalities and smaller developer pool restricts better ideas/inputs
Though Ab Initio provides training for users (costumers), but it does not cover each and every aspect of Ab Initio and advanced training comes with a cost,
Ab Initio provide support to their customers, it is of decent quality, but it takes generally long turnaround time

Performance
Used for :-




·         Massive data processing, where time is of essence and performance and through put is critical, Ab Initio stands head and shoulder above others

·         Available data can be split and processed in parallel giving it huge processing advantage.


·         Theoretically, it is possible to design a system using Ab Initio architect where any additional processing power can be achieved by adding additional resources in parallel, thus allowing any scale-up easy and possible

·         Ab Initio components like compressed indexed files and similar gives Ab initio an edge when dealing with huge dataset. Though this concept is not unheard of, in past, but Ab Initio implemented it successfully

·         Some new scripting features known as PDL (Program definition Language) in Ab Initio allows flexibility, which is quite well received by Ab Initio developers and not easily available in other ETL tools

·         Ab Initio has put some effort in component design taking care of small issues like memory management/memory foot print. Though these are not critical essentially, but in time critical system, these provide an edge

HOPE THIS WILL HELP :) by Gururajv007

2 comments: