BigBear.ai
  • Home
  • Industries
    • Academia
    • Government
    • Healthcare
    • Manufacturing
  • Solutions
    • Cyber
    • Data Analytics
    • Enterprise Planning and Logistics
    • Intelligent Automation
    • Modeling Solutions
    • Professional Services
  • Company
    • About
    • Investor Relations
    • Partners
    • Team
  • Careers
    • Benefits
    • Culture
    • Explore Jobs
    • Military and Veterans
    • Applicant Login
    • Employee Login
  • Resources
    • Blog
    • Events
    • Newsroom
    • Resource Library
    • Online Store
  • Contact
Search

Home Data Architecture Multimodel v. Polyglot Databases

Blog

Multimodel v. Polyglot Databases

Samantha Hamilton
May 19, 2020
  • Share
  • Share

As many organizations undergo the latest modernization cycle, many companies and agencies are turning towards cloud storage as a partial solution to help become a more data-centric group. In the current technical landscape, there are two main patterns to cloud data storage: multimodel and polyglot. Agencies will generally have to choose between the two when planning out their modernized architecture. So what are they, and how do you choose?

The traditional approach is to use polyglot persistence as your database pattern. The polyglot approach involves choosing the best-of-breed datastore for each type of data the organization requires to store. Need to store financial transactions? Use the best relational database you can find. Need to enable quick searching? Adopt ElasticSeach for that use case. Require storing user sessions? Adopt a key-value database. In this way, the company can pick and choose which datastores it needs, along with which technology is the best fit in each area.

This approach has several clear advantages. Each organization can tailor the specific database to their use case. Perhaps Oracle is a better relational database for company A. However, Postgres is the optimal choice for company B. With polyglot persistence, it is encouraged that companies choose the vendor that provides the most excellent capabilities in the specific data storage area.

Polyglot persistence also allows for the compartmentalization between critical functions of an application or organization, creating a modular environment. In this modular environment, performance is optimized within each individual datastore, leading to faster operations.

There are significant risks in the polyglot undertaking, however. While you now have the best option for each data type, the onus of integrating those data stores to work seamlessly is on the company’s technical team. This team will not only have to integrate these separate technologies but will also have to maintain expertise in each technology to support future development. Additionally, the company will bear the burden of paying multiple licensing and maintenance costs, one for each product.

Because of these key drawbacks, many companies are now offering the ability to store multiple types of data behind one storefront. Enter the multimodel database.

A multimodel database is a unified database for different types of data – it contains and manages many different data types and models, all integrated by a single back end. Such databases can store tabular, relational, columnar, document, graph, key-value, and non-relational data and models in one place. The semantics for the database model (across all data stores) is described under a single underlying query language, making retrieving data across data stores much more straightforward than with polyglot persistence. This one-stop-shop makes interacting with an organization’s complex data much simpler.

Unlike with polyglot persistence, the company no longer has to pay multiple licensing costs or maintain a knowledge base in numerous technologies to upkeep their modern system. Additionally, some mutlimodel databases ensure ACID guarantees across all datastores, which is much harder to guarantee in individual databases with polyglot persistence.

There are a few drawbacks of multimodel databases. They are a relatively new technology, so there are a limited number of vendors with little history. This lack of historical experience can be a big red flag for large organizations trying to modernize. Some multimodel offerings may not include a type of datastore that an organization needs, thereby limiting the options for the organization. Additionally, because multimodel databases blend data, the optimization occurs at a higher level, which can be less performant in individual business areas.

So, which is right for your organization? While it is expected that multimodel databases flourish in the upcoming years, each organization needs to start with a full understanding of their data, their use cases, and their access patterns before diving into a major architectural decision such as this. Once the due diligence is completed and the data environment of the organization is well understood, the choice between multimodel database and polyglot persistence should be much easier to approach.

Posted in Data Architecture.
BigBear.ai
  • Home
  • Industries
  • Solutions
  • Company
  • Careers
  • Blog
  • Investor Relations
  • Contact
  • Twitter
  • Facebook
  • Linkedin
  • Google My business for BigBear.ai
1-410-312-0885
[email protected]
  • Privacy Policy
  • Terms of Use
  • Accessibility
  • Site Map
© BigBear.ai 2023
We value your privacy
We use cookies on our website to give you the most relevant experience by remembering your preferences and repeat visits. By clicking “Accept”, you consent to the use of ALL the cookies.
Privacy Policy | Do not sell my personal information
AcceptCookie Settings
Manage Consent

Cookies Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.
CookieDurationDescription
cookielawinfo-checkbox-analytics11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics".
cookielawinfo-checkbox-functional11 monthsThe cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".
cookielawinfo-checkbox-necessary11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".
cookielawinfo-checkbox-others11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other.
cookielawinfo-checkbox-performance11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance".
JSESSIONIDsessionThe JSESSIONID cookie is used by New Relic to store a session identifier so that New Relic can monitor session counts for an application.
viewed_cookie_policy11 monthsThe cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data.
Functional
Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
CookieDurationDescription
__atuvc1 year 1 monthAddThis sets this cookie to ensure that the updated count is seen when one shares a page and returns to it, before the share count cache is updated.
__atuvs30 minutesAddThis sets this cookie to ensure that the updated count is seen when one shares a page and returns to it, before the share count cache is updated.
Analytics
Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.
CookieDurationDescription
_ga2 yearsThe _ga cookie, installed by Google Analytics, calculates visitor, session and campaign data and also keeps track of site usage for the site's analytics report. The cookie stores information anonymously and assigns a randomly generated number to recognize unique visitors.
_ga_NK4L4Q320Q2 yearsThis cookie is installed by Google Analytics.
_gat_gtag_UA_163894009_21 minuteSet by Google to distinguish users.
_gid1 dayInstalled by Google Analytics, _gid cookie stores information on how visitors use a website, while also creating an analytics report of the website's performance. Some of the data that are collected include the number of visitors, their source, and the pages they visit anonymously.
at-randneverAddThis sets this cookie to track page visits, sources of traffic and share counts.
CONSENT2 yearsYouTube sets this cookie via embedded youtube-videos and registers anonymous statistical data.
uvc1 year 1 monthSet by addthis.com to determine the usage of addthis.com service.
Advertisement
Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.
CookieDurationDescription
f5avraaaaaaaaaaaaaaaa_session_sessionbusinesswire.com cookie
loc1 year 1 monthAddThis sets this geolocation cookie to help understand the location of users who share the information.
VISITOR_INFO1_LIVE5 months 27 daysA cookie set by YouTube to measure bandwidth that determines whether the user gets the new or old player interface.
YSCsessionYSC cookie is set by Youtube and is used to track the views of embedded videos on Youtube pages.
yt-remote-connected-devicesneverYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
yt-remote-device-idneverYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
Save & Accept