Having an efficient and scalable data management strategy is a must for organizations nowadays – and using a data virtualization layer can be a useful approach in handling the growing complexity of operations. It does come with its flaws and limitations, but it’s a very good solution in many cases.
Data virtualization is a process through which data is accessed in real-time at its original location, and is directly loaded to its target destination – without being replicated. It retrieves and unifies data from disparate sources without requiring the data’s technical details, such as protocol, source formatting, location, and structure. The main goal is to provide a single point of access to data from different sources, as well as a single customer view of the available data.
It’s a relatively new approach to handling data, and isn’t wide-spread yet – although it’s getting more and more prominent.
ZigiOps uses a data virtualization layer in order to provide you with a real-time connection between different sources, without needing to replicate the data from each one of those. The data is then unified, and you can have a clear, well-structured overview of it in our user-friendly UI.
We’ve used a data virtualization layer from the start (in 2019). We had already understood its potential, and had previously used it in different environments; it is a choice that we can now be certain is the right one.
Let us tell you more about the reasons for that.
ZigiOps’ deep integrations go beyond the data that’s obvious and easily available in different software tools. Deep integrations would be very time- and resource-consuming without a data virtualization layer, which made it the logical solution, as well as the perfect starting point for accessing the deeper levels of data and synchronizing them across different applications.
Data virtualization allows you to directly access your data without needing any additional infrastructure for that, and without needing to replicate it. Storing data at another location always requires additional resources and software, i.e. it comes at additional costs, and is also time-consuming and increases the risk of errors.
We offer a wide range of integrations for a number of different software tools, and our data virtualization layer helps us make sure that the integrations are executed quickly. Pre- and post-processing (which slow things down) are generally not necessary, and the data is directly loaded at its target destination.
Additionally, data becomes much more malleable and flexible thanks to the possibilities that a data virtualization layer offers: it’s easier to modify different elements, even for past events.
The process of implementing additional features, or of standardizing different segments also becomes simpler and faster: instead of reorganizing a database, we can simply extract information and transform it. This gives us the possibility to accommodate to use cases that are much more complex, in order to help our clients solve problems that are particularly challenging for them, and that require unconventional solutions.
Let’s now look into a specific example.
If a given application (f.е. one that is monitored by Dynatrace) which runs on a virtual machine (f.e. monitored by vROps) encounters an availability disruption, Dynatrace will detect it and create a problem for that. However, the actual problem might not be in the application itself – the virtual machine might have been stopped for maintenance.
ZigiOps, based on the discovered scheme (i.e. the sum of the fields and possible relationships of all connected systems), will capture the problem in Dynatrace, but, before submitting, it will perform a few checks. It will inspect whether there are any issues with the related resources in other systems, whether there is a change that has been submitted in the ITSM system for this application/VM, or if there is an already existing incident. Only then ZigiOps will execute the desired operation.
To summarize (based on both our experience and that of others), data virtualization has a number of benefits, and there are many reasons why it might be the right approach in some scenarios.
Of course, data virtualization comes with its own challenges and limitations, too.
Creating a data virtualization layer is not simple, and it requires lots of highly specialized expertise, which means that it’s not necessarily an approach that is viable – or necessary – for every organization. It doesn’t solve a specific problem or a set of problems, but is rather a method that could be used in combination with other methods.
Additionally, using data virtualization to extract and load data makes you dependent on different systems’ uptime, which is crucial for hybrid integrations. If a system is not available at a given moment, data cannot be extracted from it, either. In general, this problem presents itself less and less often, but it is still important to keep it in mind.
Data virtualization is not applicable to every project and isn’t convenient for every type of data. Sometimes, more traditional approaches could have an added benefit, or be easier to introduce and maintain.
Companies employ different strategies to manage their data, and there isn’t a single right answer. The growing complexity of business operations leads to an ever-increasing number of disparate data sources that each company is using, and the architecture of data infrastructure is becoming progressively more complicated as a result.
Data virtualization allows for real-time synchronization of heterogeneous data sources without the need to replicate data, thus minimizing infrastructure costs. It guarantees a dynamic & flexible data exchange, and, whenever necessary, data transformation.
It is not a one-size-fits-all solution, but rather an instrument that can be used in many different contexts – and it is particularly convenient for deep integrations between enterprise software tools, due to its unrivaled time- and cost-effectiveness.