InvestorsHub Logo
Followers 96
Posts 14916
Boards Moderated 0
Alias Born 09/20/2011

Re: Rbb1822 post# 17580

Thursday, 12/27/2012 12:54:41 PM

Thursday, December 27, 2012 12:54:41 PM

Post# of 20441
rbb... you've seen this, yes?

I work on the ANTs Compatibly Server project I'd like to add a few points.
ACS allows customers to separate the Database migration from the application migration by allow native Sybase application to access data within Oracle.
This allows for a very quick time for users to consolidate their data on Oracle and allows them to migrate the application code and Stored
procedures on a more flexible schedule.

As for your reply to #1, ACS is not another migration tool. Oracle already does migrations using Oracle Migration Workbench and SQL*Developer.
What ACS brings to the process is an integration with OMWB and SQL*Developer to allow Sybase Application to access the Oracle Data with little or no changes to the application. The goal of course is no application changes at all. The only requirement by ACS of what has to be migrated to Oracle is the schema, the data, the triggers, Constraints, and any Stored Procedures called by triggers. The remaining Stored Procedures can be executed in Native Transact SQL format within ACS. This is a significant and complementing functionality to OMWB or SQL*Developer.
In order to facilitates the process ACS creates a set of Meta Data Tables within Oracle that contains the Original Sybase Stored Procedures(body), the 3 level to 2 level object mapping, and information about which procedures have been migrated into PL/SQL within Oracle.

As for #2, ACS will look like a Sybase ASE server to the application. The application will normally execute a SQL statement or execute a Stored Procedure. When a SQL statement is issued, ACS will parse the SQL statement and if Oracle can handle the syntax, the SQL statement will be passed to Oracle. If the statement uses a function but Oracle has a different name or format, the SQL statement will be rewritten to a valid Oracle format. When the SQL statement has more complex functions, the single SQL statement may require a more complex statement to achieve the same functionality.
When the application issues an execute for a Stored Procedure, ACS will determine if the Stored Procedure has been moved to Oracle and if so issues an execute of the stored procedure to Oracle in the correct format. If the Stored Procedure has not been moved to Oracle then the Original Transact SQL Stored Procedure will be executed within ACS. It means all SQL to retrieve data from Oracle are executed within Oracle Server.

As for #3, ACS does allow for native APIs of DB-Lib and CT-Lib. Of course there will be some performance issues with ACS but this has to be weighed against the cost of migrating an application. Spend a few dollars for a faster box and save a lot of dollars on re-writing the application. Translating Sybase to Oracle is labor-intensive and error-prone. Here are just a few examples: outer-join syntax has to be changed, the "+" operator has to be changed to "||" (but only if both arguments are strings), and "UPDATE ... FROM ..." has to be translated to a stored procedure in most cases. And that's just the SQL translation; you also have to modify the application itself to send and receive different types of values and sometimes, different kinds of result sets.
Sybase stored procedures with multiple result sets have to be translated to Oracle dynamic cursors, and heaven help you if the number of result sets are not statically fixed. It's a cost/benefit equation, and if you have a highly performance-critical application to translate from Oracle to Sybase and cost is no object, then ACS may not
be a good match for you.
As all DBAs know there will be tuning after the process. Also just so everyone knows we do have development plans that we know will resolve nearly all performance issues. One plan would require the use of 11g and since most users are not using 11g will will release those features in 2008.

As for #4, ACS does have a layers to handle datatype mapping. This allows ACS to return data in the format expected by the Sybase application. But all good DBAs should check the OMWB/SQL*Developer scripts to make sure the schema is created correctly.

Just as a side note ACS also returns the Sybase error when Oracle returns an error. This mapping of error numbers and error message will expedite the application migration because application do not have to be modified to handle Oracle error codes and error messages. This also helps when testing your batch processes.



http://askville.amazon.com/experience-ANTS-software-company/AnswerViewer.do?requestId=4725403

all my posts are my opinion only.

Join InvestorsHub

Join the InvestorsHub Community

Register for free to join our community of investors and share your ideas. You will also get access to streaming quotes, interactive charts, trades, portfolio, live options flow and more tools.