Development Tips

7 Pros and Cons of Using Open Source Data Analytics Components

By Natwar Maheshwari | December 18, 2018

When it’s time to add or update embedded dashboards and reports in your application, application teams have a few development approaches to consider. Many start by building exactly what they want with the help of open source data analytics, free data visualization tools, and other open source BI components.

Why are open source data analytics tools appealing? First, the cost of entry is low and sometimes even free. Essentially, a software vendor takes a product that was created in the open source community and makes it their own so that they can market it with their product. Open source tools also give developers a wide range of freedom to build what they need however they want.

However, while open source BI can be a good solution for some organizations that don’t have complex requirements, it can also be extremely risky. Let’s weigh the pros and cons of using open source data analytics tools.

Time to Market

Pro: The best open source solutions will support straightforward tasks such as embedding static charts or graphs out of the box, with little or no customization needed.

Con: If you decide to use an open source data analytics tool, your development team will spend a majority of their time gathering requirements, then mapping those requirements to free BI tools and open source components. Every requirement will mean sourcing, evaluating, and testing at least a couple component options. And if the tool you choose doesn’t support a new feature you need to add in a year, you’ll have to go back to the drawing board and source something else. This all makes your product roadmap longer and delays time to market.

Sophisticated Capabilities

Pro: Look online and you’ll find a seemingly endless number of open source data analytics solutions to support a range of features and functions. Need to deliver a visually stunning dashboard? You can use components for that. Want a new chart with a different dataset? You can probably find an open source tool and be up and running in a matter of days.

Con: For any sophisticated features—including self-service analytics, interactive capabilities such a drill-down, grouping, cross-tabulation, filtering, panning, zooming, and more—are nearly impossible to handle with components. Adding any complex capability will require significant development work upfront and over the long run to maintain, ultimately slowing down your time to market now and in the future.

Security

Pro: With open-source data analytics components, developers can combine and customize what they need to build a custom embedded analytics solution. This includes security: As long as they have enough time and resources, most development teams will be able to customize and maintain the security of their embedded analytics solution and each component in it.

Con: Coding yourself requires you to address all security needs for every single component you use. Open-source components will offer little, if any, assistance to simplify security integration or speed up implementation. Unlike modern embedded analytics development platforms, open-source data analytics components are not designed to use your application’s existing security infrastructure.

Embeddability

Pro: The primary reason for using open source data analytics is to maintain complete control over the look and feel of your application. Application teams have access to the source code of these tools, so they can add, modify, or delete anything they want. This flexible customization is especially attractive to application teams that have the technical expertise to build and embed analytics entirely their own. Developers can pick which components they want to use and build custom code to cover any gaps in product.

Con: Every open source analytics tool is unique—and most of them are not made to embed in existing applications. Each component will be different in how it interacts with other components, with your custom code, and with your broader application. Additionally, components are limited by inputs they receive and cannot drive action outside of itself without a lot of custom coding.

White Labeling

Pro: Because of their customizable nature, most open-source data analytics components can support nearly any theming or branding you want to apply to them.

Con: Since each component supports theming on an individual level, white-labeling the entire embedded analytics solution means branding each component one at a time. Any modification to the brand means your developers will have to individually apply the new themes to every component—putting you at risk of breaking one or missing a key component altogether.

Support

Con: Support and documentation will vary widely from component to component. Even with online communities, getting answers to questions can take a long time—and you have no guarantee whether the answer will be accurate.Another negative is a lack of accountability. Who do you turn to if there’s a major problem with your open source data analytics? Can you go back to the community to get the bug fixed? Possibly—but you’re likely not going to get a resolution very quickly. Can you go back to the vendor? Perhaps—unless they’re also waiting for the same fix from the open source community. If something in your embedded dashboard breaks or doesn’t work as intended, you may have no option but to debug someone else’s component.

Licensing/Legal

Pro: The low cost of entry to open source analytics components make them extremely attractive to many application teams—especially smaller organizations with limited budget. Open source tools greatly reduce the upfront hard costs of embedding analytics.

Con: Building embedded analytics for your application means finding the right mix of open source data analytics tools and paid components. Some components will be free, but this is far from the rule—and if there’s a capability you really need, you’ll likely have to pay that price. Further complicating matters is the fact that many open source tools come with restrictions and complicated pricing for commercial uses. It is great to try and test open source components, but licensing can quickly get complicated for teams that rely on their applications to fuel their businesses. A single component in your stack that that does not allow for commercial licensing can break your entire analytics initiative.

When does open source data analytics make sense? If embedding business intelligence in software is part of your company’s core competency—or if your organization’s analytics needs will be limited in scale for at least the next three years—it may very well make sense for you to consider open source data analytics.

For most application teams, open source components will lead to more risks than rewards. Every change you need to make to your application will require writing code for your individual components. Scaling components requires a massive amount of oversight and expertise for every product update—not to mention every time you need to add a new analytics feature to maintain a modern application. And if one component eventually breaks, your whole analytics solution may fall apart.