Monday 21 June 2021

Going Serverless with Oracle Primavera P6 EPPM – Part 2

In the previous article we touched upon utilizing AWS serverless architecture with Oracle Primavera P6 EPPM cloud. You can refer the article here.

In this article we will see how to utilize AWS serverless architecture to cut down on processing time for large volume of transactions, when importing them to Oracle Primavera P6 EPPM cloud using P6 web services.

One of the customers had the requirement of importing, roughly 50,000 financial transactions from their ERP application to Oracle Primavera P6 EPPM cloud on a weekly basis. Additionally, they wanted to perform validation based on pre-defined set of rules, for each transaction, during import and capture the information in UDF fields. This resulted in importing transaction individually instead of in a batch of 1000, allowed by P6 web services.

This had significant impact on overall time required to process 50,000 transactions. With average of 1 second per transaction, it required around 14 hours to import 50,000 transactions in Oracle Primavera P6 EPPM cloud.

At 1 second per transaction,

50,000 transaction = 50,000 seconds or

(50,000/60) = 833.33 minutes or

(50,000/60/60) = 13.89 hours

 

This was a huge problem.

 

Serverless architecture


With the use of AWS serverless architecture model and carefully choosing services to fit the requirement, the processing time was reduced considerably. All of this, without worrying about additional cost of infrastructure or fluctuation in volume of transaction in future.

The transactions from ERP application were uploaded to Amazon DynamoDB.

AWS Lambda was configured to trigger when new data was inserted in DynamoDB. It was configured to trigger up to 10 Lambda function concurrently.  With 10 instances of lambda function processing the transactions concurrently at any given time, the overall time came down drastically from 14 hours to under 2 hours.

Previously, (50,000/60/60) = 13.89 hours

Now, (50,000/60/60/10) = 1.39 hours

Note: The distribution of data among instance of Lambda function is not same so the time will almost always be little higher than the above (theoretical) calculation.

The above approach is just one way to reduce overall processing time. A carefully designed solution with serverless approach can go a long way. Customers with on-premises integration solutions, who are constrained due to existing hardware configuration or otherwise, can also benefit by moving to serverless architecture.

If you have a similar requirement and want to discuss how serverless architecture can be utilized effectively, then leave a message or drop an email.


No comments:

Post a Comment

About Me

My photo
Over 20 years of experience in providing integration software solutions to various industries.Handled numerous projects implementing Primavera P6 EPPM, P6 Analytics, P6 BI Publisher Reports, Oracle BPM, SOA Suite, Primavera Gateway, Oracle Unifier, Instantis EnterpriseTrack, Oracle E-Business Suite.

Developed integration solution around these products and with ERP and legacy systems.

Designed excel utilities to quickly load and maintain data in excel for these products.

Connect with me on LinkedIn

Popular Posts

Contact Form

Name

Email *

Message *