Author: Corporate

  • Data Streaming vs Batch Processing 

    Large enterprises have data scattered across different systems, it can be ERP, SAP, Salesforce and so on. To take key decisions to grow business or cater customer in efficient manner enterprises always needed to have single unified view of data instead of going through each system to get information.  

    To have unified view of data, enterprises create Data warehouse solution which will have data from across systems and top on that Data Analytics will created to give information needed by business to take key decision. 

    Now, the question arises, what is this Data warehouse and how to get data from across systems to Data warehouse? 

    What is Data Warehouse?

    Data warehouse is kind of system which can be used to run analytical queries faster to get insights from the data. Now to get data from different systems to data warehouse, the data engineers have two ways to implement this as follows: – 

    • Batch Processing 
    • Data Streaming 

    Now which one of the above is to be used when? Well, it all depends on business use case. Many times, enterprises use both simultaneously. 

    Batch processing deals with non-continuous data. It means processing chunk of data in the predefined interval. The interval can be hourly, daily, weekly and so on. It lacks to get near real time data from source systems. As batch processing will be processing large volume of data so this process takes longer time to get data from sources to destinations. Batch processing well suited for uses cases such as getting monthly payroll information and many more. 

    In the other hand, Stream processing handles data in motion. Because of this it’s always be near to real time with source systems. It will be useful for use cases where business would like to be proactive to address customers issue. The use cases can be thought of Fraud Detection, IoT sensors, Ecommerce websites and many more. 

  • Interceptors in Angular

    Interceptors in Angular

    Why we need Interceptors?

    Very often we want to enforce or apply behaviour when receiving or sending HTTP requests within our application. We want to perform the tasks like authenticating, logging, updating the request header, error catching etc. for every http request/response. For this we need to do it explicitly for each and every http call which involves lots of energy and time to put.

    The reliable and promising solution for this is Interceptor which does all these tasks implicitly.

    Interceptors provide a mechanism to intercept and modify the application’s http requests globally before they are sent to the server.

    Interceptors can be used to pre and post HTTP requests. Pre-processing happens before requests are executed. This can be used to change request configurations. Post-processing happens once responses have been received. Responses can be transformed via post-processing.

    angular

    Let’s  try to understand the concept with below example.

    Create an Interceptor to update the request header to pass the authentication token. If response comes with 401 error, redirect to login page and also log every http request.

    This example will cover,

    1. Packages need to import
    2. Creating Interceptor
    3. Updating the request header
    4. Log every http request.
    5. Error catching

    Let’s create a new interceptors/my.interceptor.ts file with below code where I have created an MyInterceptor class , imported all the packages needed to create an Interceptor and also created an interceptor.

    angular interceptor

    To create an Interceptor, we need to implement the HttpInterceptor interface from @angular/common/http package. Every time our application makes an HTTP request using the HttpClient service, the Interceptor calls the intercept() method.

    When the intercept() method is called Angular passes a reference to the httpRequest object. With this request, we can inspect it and modify it as necessary. Once our logic is complete, we call next.handle and return the updated request onto the application.

    Interceptor parameters as in above code are

    req: HttpRequest  –  The outgoing request object to be modified

    next: HttpHandler  – The next interceptor in the chain, or the backend if no interceptors remain in the chain

    Observable<HttpEvent<any> – An observable of the event stream.

    Now to wire-up our interceptor, let’s provide it in the app module or a feature module using the HTTP_INTERCEPTORS token:

    angular interceptor

    To use the same instance of HttpInterceptors for the entire app, import the HttpClientModule only in your AppModule, and add the interceptors to the root application injector . If you import HttpClientModule multiple times across different modules (for example, in lazy loading modules), each import creates a new copy of the HttpClientModule, which overwrites the interceptors provided in the root module.

    You can define multiple interceptors by defining it in provider like this:

    angular

    Angular applies interceptors in the order that you provide them in your module’s providers.

    You cannot change the order or remove interceptors later. If you need to enable and disable an interceptor dynamically, you’ll have to build that capability into the interceptor itself.

    Now let’s update the interceptor in interceptors/my.interceptor.ts.

    angular example

    Above Interceptor will do the following tasks:

    1. Write the http request url to console(You can write a code to log it into a log file)
    2. Add the token to request header
    3. Navigate to login page if response is 401 error

    By calling catchError through a pipe we are able to handle response errors from the server for that request. Therefore, we are allowed to verify its status and do our treatment as required.

    Interceptors can be very useful for multiple purposes on all sorts of applications. You just need to understand what you need and how you can achieve it using Interceptor.

  • 6 Emerging Technologies To Take Centre Stage until 2025

    6 Emerging Technologies To Take Centre Stage until 2025

    The hit of the pandemic globally has pushed enterprises towards more digitalisation to ensure businesses function seamlessly. Although enterprises and businesses had accepted to be digital but there were certain factors which were under constant check and evaluation. However, the pandemic Covid-19, has clearly ruled out most of such limitations and has forced to adapt digitisation in order to simplify the business operations.  On this line, it’s important to understand the core technologies which will take the centre stage as an emerging tech. Let us now have a look at them.


    1. Mobile Internet

    Interfaces, data arrangements, sensors and modern apps will take centre stage in enterprises. The mobile computing devices will dominate internet connectivity and until 2025, the mobile connectivity will be available to over 4.3 billion people.

    2. Artificial Intelligence

    The Machine Learning along with gestures, speech recognition will evolve more as it eliminate manual operations and redundancy 

    3. Virtual & Augmented Reality 

    As per Goldman Sachs, virtual and augmented reality industry is to be an industry valued at USD 80 billion by 2025, the current industry value of the same is approximately USD 7 billion. The implementation of social distancing and virtual meeting has increased the importance of Virtual and Augmented reality as people can resonate in personal meeting with this emerging technology. 

    4. Computer Vision 

    With the introduction of future ready internet cars, Computer vision is another area to take the centre stage in the Technology in the year 2025. The Computer Vision market revenue will likely grow up to USD 33.5 billion in 2025.

    5. Cloud Computation

    Improved and advanced cyber security the role of cloud across enterprises will continue to increase.

    6. Automation

    It’s a combination of AI, Robotics learning, machine learning processes across multiple industries. Some of these industries include Healthcare, FMCG, Pharmaceutical, Consumer Durables, Insurance and Customer services.

    The above technologies will certainly rule the centre stage in innovation post 2025 as well, across industries. The adaption of AI, ML, NLP, and Computer Vision is aimed to improve the operational processes of enterprises. Along with this, it will also reduce redundant work and up-skilling existing team members for better and productive output. These also take enterprises one step closer to being future ready as an advanced market value proposition. EOV digital solutions make sure we are well synched with such trends in market and train our resources for such changes ahead.