Learning Objectives #
After completing this unit, you’ll be able to:
- Explain what is interface group.
- How to create it and how to use it.
Introduction
In SKYVVA, Integration is created to integrate data. To bind all interface which has same logic, we create group.
What is an interface group?
Interface group is a unit to group logical interfaces together. For example you can group interfaces which is related to each other e.g. Account and Contact to one interface group. Interface group is the object user define at configuration time.
Prerequisite
Before create interface group, there are some properties you must know:
- Interface Group Name: It’s a name of interface group. The name will be used as a part of the queue name.
- Integration: This is the integration. You create an interface group which belong to an integration. Only one interface can belong to an interface group and an interface group only also belong to an integration. The value of the integration you select here will be part of the queue name..
- Type:This is a type of the interface group. The value of group can be(EO,EOIO).- EO: Exactly Once
– EOIO: Exactly Once in OrderWhen you create an interface group with type EO this interface group will be processed in a exactly once manner e.g. the order will not be guaranteed. If you want to keep order sending from the sender application you have to define this group with EOIONote that both type define a processing which is asynchronous. The type will be part of the queue name. - Priority:This property will allow you to define what priority you want to set for your interface group to processed faster. There are 3 types of Priorities such as:- High
– Medium
– LowWith this property you can define that interface group A is to be processed faster as interface group B by setting for interface group A = High and interface group B = Low or Medium. - Package Size: This is the number of records to bundle together and pass to a batch worker because of the optimization.
- Number of Records per Batch: This property indicating the number of records to be processed per execute() used for basket processing batch.
Types of interface group
There are two types of interface group which are Business related logical group and Technical group. This section will be explained in detail what these interface group types are.
Business related logical group
This group is business related since the contact can only be posted after the account has been posted ( when you put the interface account and contact to one group). It’s all about an order of business process. To keep this order you can define the group and set the property to “EOIO”. When you set this way the account will be posted before contact interface.
e.g. the group “Account_Contact”. This group is business related because the contact can only be posted after the account has been posted. In this example there is an order of business process. To keep this order you can define the group “Account_Contact” and set the property to “EOIO” meaning Exactly Once In Order. In this way the skyvva runtime ensure that the account will be posted before contact interface.
Technical group
The technical group is to increase the performance for the posting of data. You need to create this group to group the interfaces which are not related to business and these interface is quite small. Without wasting time and resource, you can sent these interfaces once in same time by set this group to “EO”.
For example,
The technical group is for example to increase the performance for the posting of data. Imagine that you have five interfaces which do not related in a business way to each other. Those 5 interfaces are quite small e.g. small amount data will be send to Salesforce. In this example you will waste resource and time when you create five interface group for each interface and post the interface separately.
The best way is to put these five interface into the same group and set the property of this group as “EO” meaning Exactly Once. This mean that the processing of those five interface in the group is not important. An overtaken can be happened and will not harm the business. By putting them together the scheduler will process much more data in one run than if the scheduler process them separately.
How The creating of interface group
Follow the given steps to create Interface group:
Step1: Go to Integration Admin
– Open “Integration Admin” and “Interface Group” tabs
– Click on “New Interface Group” to create a new one
Step2: Fill the fields as shown inscreenshots:
– Enter a name for an interface group.
– Then select the integration where the interface group belong to.
– Choose the type of the interface group
– Select the priority for the interface group then click Save
Step3: Add Interfaces
– Click on “Add Interfaces” to add interface to the group
– Select the interface you want to add to this new interface group
Step4: Here is the result of creating an interface group
When to use interface group
Interface group is used when you want to speed up interface processing. You can manually create interface group and assign the interfaces which you want to run beside the default IG.
We have to create an interface group. This is an optional step because the Skyvva engine create a default interface group for each integration. This default interface group contain all interfaces existing in an integration. For each interface group the Skyvva runtime will create a corresponding queue and inherit some property from the interface group to the queue. For example the queue will become the type attribute e.g. EO or EOIO and the priority e.g. High, Medium or Low from the interface group.
Since the Skyvva default group contain all interfaces from an integration the Skyvva default queue bit complex queue for processing the attachment data. Therefore we recommend to create suitable and appropriate interface group to have an optimal way for queue processing.