Search This Blog

Showing posts with label Middleware. Show all posts
Showing posts with label Middleware. Show all posts

Saturday, October 5, 2024

Oracle Fusion Cloud (ERP & HCM) - Integration & Extension Strategy Reference Architecture

In today’s interconnected enterprise landscape, businesses using Oracle Fusion Cloud (FA) require seamless integration and extension capabilities to optimize operations and drive innovation. This reference architecture provides a possible blueprint for extending and integrating various systems using Oracle’s powerful suite of cloud services and tools like Oracle Integration Cloud (OIC), Oracle Analytics, ADW, ATP and more. The architecture ensures scalable, real-time data processing and business logic orchestration, enhancing overall enterprise functionality.

There are two diagrams below, the first serves as a logical architecture showing two aspects, on the left side of the image we can see a Data Analytics & Integration focused view, while the right side provides a glimpse into possible ways to extend the Fusion application, and also Application Integration & Extension capabilities in general.

The second diagram represents mostly the Data Analytics & Integration content in a sequence diagram format, for a different view into the data interactions across systems and tools.

Note: click on the images to expand them for ease of readability

Logical Architecture



Sequence Diagram



Discussion


The Data Analytics & Integration layer encompasses several tools designed to extract, transform, and load (ETL) data across systems.

Near-Real Time Capabilities


Oracle Integration Cloud (OIC) processes HCM Atom Feeds and ERP Business Events, facilitating the integration between various Oracle Cloud modules and external systems in a near real-time capacity. Notice that OIC can read data from the different Atom Feeds available and either store them as files into Object Storage, or stream them to Kafka (or OCI Streaming). On the other hand, you can configure OIC to listen to event messages from ERP, catch and then handle them, to make a subsequent API call, store them into a data mart or object storage, a Kafka topic for consumers to process the data, etc.

There's various advantages and things to be aware of when using the Atom Feeds or Business Events, but the key point is that all the data attributes you seek may not be available in them, so they are oftentimes not the final solution to your real-time data needs, but certainly a strong option to be explored, and likely to meet a lot of your needs, and when combined with Kafka, using the OIC adapter, you can avoid the responsibility of delivering data to individual targets and consumers, and just own delivering the data to the various Kafka topics, allowing consumers to subscribe and handle the complexity thereon.

Bulk Extraction Capabilities


BICC and BIP/HCM Extracts commit data into Oracle Object Storage, for bulk data extraction needs, where the Autonomous Data Warehouse (ADW) DataFlow feature transforms it before loading into the ADW for analytics. You can also use other tools like OCI DI or ODI to ingest the files from Object Storage into the ADW, but I would certainly try to make due with the DataFlow feature in the ADW since it is free and powerful, allowing reduction of tools used and a lower cost of ownership.

The architecture also features GoldenGate for real-time data replication from your ADW to other databases you may have On-Prem or elsewhere, and Kafka Clusters for streaming data between systems like the ADW and On-Premise Data Marts, using native Kafka adapters, ensuring continuous data flow for analytics and decision-making, once the data has been delivered and curated in your ADW.

Something to note is that streaming directly from your Fusion (FA) environments to an ADW or elsewhere, is not yet available, although Oracle has recently announced that their FDI platform will likely introduce this capability over time, and when that becomes a reality, it would become a potential replacement for BICC and BIP/HCM Extracts, assuming it meets all the needs. This is important because there's constraints with how often you can extract data with BICC (frequency wise) and what kind of data you can get to, so that is why you will likely end up also using BIP and HCM Extracts to bulk extract data not easily available via BICC and the PVO's (Public Views).

As you noticed above, the focus was not in extending FA, but extracting data from it, so the next section deals with extensions and application integration capabilities.

Extension and Application Integration Capabilities


The VBCS & APEX Tenant and OIC Business Logic Layer outlines the interaction between low-code development platforms (APEX and Visual Builder Cloud Service) and business logic hosted in an Oracle ATP (the ADW's cousin, tuned for transactional needs).

Here, your ATP is the tenant database for VBCS, rather than it's very small embedded version, giving you more storage, horse-power and access to query your VBCS BO data and also customize the backend, and also VBCS connects to the ATP via Oracle Rest Data Services (ORDS) to interact with custom PLSQL that has been exposed as a REST Service, for use cases like a custom error handling layer in the ATP that all your VBCS solutions can log errors and warnings to, etc. Additionally, we are leveraging ORDS for high-volume API services, where external systems can directly call the ATP via PLSQL you have exposed as REST, essentially using your ATP as an API Gateway, not needing another middle-man like Polybase or C#, etc. typically adding highly unnecessary overhead, failure points and complexity. It is worth noting that you can also proxy your ORDS services to an API Gateway (like the OCI Gateway or Apigee, etc.) instead, if you really feel you need to, because maybe you want to monetize the traffic, and for several other reasons.

OIC can also take advantage of the ATP by interacting with VBCS through PLSQL via ORDS, rather than through the Business Object API layer in VBCS, which can get really complex (and slow) depending on what you are trying to do, and it would be much more beneficial to directly access the VBCS database objects locally and just call a wrapper via ORDS/REST. Lastly, OIC can use ORDS in the ATP to offload complex business logic and just receive the results to continue processing, rather than doing that complex and heavy logic in OIC, which can certainly take longer from a performance perspective, and harder to support (think long complex orchestrations with many actions in OIC, versus a stored procedure you can easily read, and tune using Generative AI, doing the leg work, while you use OIC with it's adapters to do I/O with FA natively with the finalized artifacts).

Lastly, you can take advantage of included features in the ATP, like APEX and the Oracle Machine Learning Studio, to have conversations with your data, build compelling dashboards, reports and web solutions (the ADW also has all of these benefits).


Conclusion


This reference integration and extension architecture illustrates how Oracle Fusion Cloud can be expanded to support dynamic enterprise needs. With tools like OIC, ADW, Kafka, and GoldenGate, organizations can automate business logic, integrate disparate data sources, and streamline their analytics processes. By leveraging these components, businesses can unlock greater agility, scalability, and data-driven decision-making capabilities, ensuring they stay competitive in a rapidly evolving digital world. Additionally, you can remove non-transactional reporting and data needs from FA directly, drastically improving the performance of the application by freeing up resources for transactional activity and real-time reporting, among many other benefits both already discussed and otherwise implied.

Sunday, January 14, 2024

Oracle Integration Cloud Gen 3 Upgrade - Tips and Features

As some of you may be aware, Oracle is migrating their OIC Platform to its new generation, called OIC 3. For those that remember the Gen 1 to Gen 2 migration, this one is more impactful, delivering a significant overhaul from a UI and usability perspective, as well as many new features. This entry will cover some of the features that I am most excited about, as well as important links and other key information relative to the upgrade effort.

An overview of key highlights with opportunities is below, and detailed documentation to all new features and other information is available at the bottom via links. Also, new updates are being rolled out to OIC Gen3 every month.


Gen3 Feature Highlights

Opportunities

Large payload support for integrations

Payload support is growing with Gen3, which allows for more complex use cases and larger volume to be processed, which will be a win already, but also can eventually lead you to rationalizing other tools away, such as MuleSoft and Biztalk, if you use those platforms.

Enhanced Disaster Recovery Capabilities

Gen3 will have an enhanced Oracle Managed DR offering that should simplify and reduce manual labor versus our existing DR strategy in Gen2, more on that below.

Private Endpoint Connectivity

This feature will set the stage to deprecate the connectivity agent used in OIC to connect to the DBCS or ADB (autonomous database) where you may house PLSQL for complex business logic, and instead allows us to connect OIC to the Autonomous Database directly, and if you have your own tenant ADB for VBCS, then both can coexist.

In short, you can rationalize databases by removing the DBCS environments and consolidate VBCS and OIC into a single ATP (autonomous database), and while replacing the connectivity agent (third party) with an adapter (native), reducing technical debt and failure points, should you have this type of configuration in OIC 2 currently.

New recipes and adapters

Enhanced connectivity and opportunities both to accelerate development of new integrations and to reduce technical debt, such as custom integrations between OIC and custom identity or token providers.

Enhanced Event Framework

True pub sub capabilities will now exist in OIC, which will simplify when we use this pattern, as today we have to write parent/child integrations with custom hand offs, versus using native event capabilities internally in OIC. There also appear to be enhanced polling capabilities.

RBAC and Projects

This feature will enhance how you utilize global OIC environments across business units and teams, better allowing HR and AFT to co-exist on the same environment (for example), reducing risk and improving supportability. You can also move away from having independent Dev environments for HR and AFT or CX, and consolidate.

RPA Capability

RPA capabilities will be added to OIC, which will allow for the utilization of this feature to address RPA requirements and aid in removing dependencies with external tools and the utilization of less integrated and supported RPA capabilities, such as Blue Prism, in the context of the broader Oracle footprint.

Increased Observability

Changes to monitoring and API framework that will allow for enhanced monitoring capabilities.


To note:
  • Not all features in Gen2 may yet be available in Gen3, and this upgrade also impacts VBCS and Process Automation, so extensive testing will be required, including performance testing.
  • Oracle has mentioned that middle of next year will be the deadline to migrate, potentially August, and although initial research shows that many clients are still in Gen2 and that upgrade issues can happen, you should plan and execute this sooner than later.
  • Some of our features weren’t ready or fully developed in OIC 3, such as the VBCS auto upgrade, and other features, and also that there’s several break/fixes that have been completed to stabilize OIC 3. As an example, Oracle was tracking an internal bug relative to stage files read/write, and this had a performance difference compared to Gen2, as an example 20-minute runtimes would go to an hour or two, which highlights A) the need to check the Known issues link, but B) to perform extensive regression testing, and also performance testing.
  • I also recommend that you upgrade a single instance as a pilot, perform your test plans there, prior to moving to upgrading several environments at once.
  • The VBCS and PCS assets within your Gen 2 instance will now be part of the auto upgrade process, which was previously not available, and would have caused significant manual work on your end, however, there's some outstanding licensing concerns Oracle is working through in this regard and some updates have been postponed until February, but if you have a simple instance without VBCS or PCS, there's no reason to wait, and you can go to OIC 3 already.
  • Oracle utilized the auto upgrade process to internally upgrade many of their complex OIC assets in Q4 (which include VBCS and PCS), which has increased confidence in the process for those that will undertake the complex upgrade path.
  • We confirmed that the IDCS stripe that the Gen2 instance is related to will not be impacted by the upgrade, and that OIC instance names, URL’s, etc. will also not be impacted.
  • We confirmed the connectivity agent does have changes relative to how it authenticates (no longer supports basic authentication), but that it should be seamless during the upgrade process, but if you use a connectivity agent make sure to test it well.
  • When you login to your Gen 2 environment, there will be a section that tells you if your environment meets the prerequisites to be upgraded, it is important these upgrade pre-checks pass, check the link below for more information. Also, if you don't want your environments to be auto upgraded if the pre-checks are met, it's important that you communicate with Oracle, to avoid surprises, you can raise an SR to postpone migrations.
  • Lastly, our current understanding is that the deadline to migrate to OIC 3 will be August of 2024, currently, but this could move depending on adoption and issues.

Links to Documentation: