What is NoSQL?
NoSQL is a non-tabular database that has a different data structure than relational tables. It is sometimes referred to as Non-SQL. NoSQL typically avoids relational data storage; however, while it can handle relationships in data storage, those relationships are built for specialized purposes.
There is much debate regarding SQL vs. NoSQL, with each data management system geared toward specific uses. Unlike SQL, which was developed in the 1970s to limit data duplication, NoSQL is a relatively new type of database. NoSQL came about in response to increasing amounts of data, and it uses a distributed system to help organize large amounts of structured and unstructured data. NoSQL is popular in business tech and other industries, with large organizations such as Amazon, Google, and LinkedIn using NoSQL databases.
Today, large companies are increasingly using NoSQL for data management. For example, a business that needs to store large amounts of unstructured and structured data or manage real-time streaming will want to consider NoSQL.
How NoSQL databases work
NoSQL databases function differently from traditional relational databases, offering a more flexible and scalable approach to data management. Their unique operational mechanisms make them well-suited for handling large-scale, distributed data environments.
NoSQL databases use flexible schemas, allowing dynamic and adaptable data models. Unlike SQL databases with predefined schemas, NoSQL supports various data types, including structured, semi-structured, and unstructured formats. Developers can update schemas without disrupting existing records, enabling rapid application development.
These databases also operate on distributed architectures, spreading data across multiple servers or nodes to ensure high availability, fault tolerance, and seamless scaling. Data replication guarantees durability, while partitioning efficiently distributes workloads to maintain performance under heavy demand.
Additionally, NoSQL terminology differs from SQL’s traditional structure. Collections in NoSQL function similarly to tables, grouping related data. Documents replace rows, allowing more flexible records. Some NoSQL models use key-value pairs or column families instead of columns to organize data.
Types of NoSQL databases
The structure and layout of different NoSQL database types depend on the data model. The four main structures are document, graph, key-value, and wide-column.
Document Databases – These databases store data similar to JavaScript Object Notation (JSON). Every document will contain pairs of values and fields, but it does not need foreign keys because specific relationships between documents don’t exist. Other essential features include fast creation, easy maintenance, flexible schema, and open formats.
Graph Databases – This format is primarily for data represented in a graph, such as road maps and public transportation information. The graphs store data in edges and nodes. Nodes generally contain information about people, places, and things, while edges store relational information between the nodes. Using a graph database enables quick identification of data relationships.
Wide-Column Databases – A wide-column database stores information in columns instead of rows. The columns form subgroups, and columns in the same family or cluster can contain different data types. Databases with columns read data more efficiently, and each column has a dynamic schema and isn’t fixed in a table. If you want to store large data, you’ll likely want to consider using wide-column databases.
Key-Value Databases – With the simplest format, key-value databases only have two columns containing keys and values. More extensive data models are sometimes extensions of the key-value database, which uses the associative array as the basic data model. Data also comes in a collection of key-value pairs, and each key never appears more than once in each collection. Important features of this type of database include simplicity, speed, and scalability.
You’ll also see several specific types of NoSQL databases. Examples include:
- BigTable
- Cassandra
- CouchDB
- FaunaDB
- HBase
- MongoDB
- Redis
NoSQL use cases
NoSQL databases excel in handling diverse and complex data environments, making them indispensable for a wide range of modern applications. Their scalability, flexibility, and high performance allow businesses to tackle demanding workloads effectively.
Real-time data management is one of the most compelling use cases for NoSQL. These databases handle large streams of incoming data with minimal latency, making them ideal for real-time analytics, fraud detection, and live social media feeds. Their ability to process data at lightning speed ensures a seamless user experience even during peak demand.
NoSQL databases play an important role in cloud security by supporting dynamic data models and secure storage. Their distributed nature ensures data integrity, availability, and disaster recovery, making them valuable for enterprises managing sensitive information across multiple cloud environments.
High-availability apps benefit greatly from NoSQL’s fault-tolerant and distributed design. Industries like finance, healthcare, and telecommunications rely on NoSQL databases to maintain uptime and continuous service delivery, even during infrastructure failures or spikes in user traffic.
Diverse workloads such as IoT and e-commerce also thrive with NoSQL. In IoT applications, vast amounts of sensor data require scalable storage solutions that can handle real-time processing and analysis. Similarly, e-commerce platforms depend on NoSQL databases for personalized product recommendations, dynamic pricing, and efficient inventory management.
Benefits
NoSQL offers several benefits:
- Easy for developers to use – One of the first advantages of NoSQL is that some systems only require a few lines of code. The databases also require less general maintenance.
- Flexible schemas – NoSQL is non-rigid, making testing and implementing updates easier. This is necessary for most modern applications because fields are different, and you will often need to make changes quickly and easily.
- Horizontal scaling – Expanding NoSQL is relatively easy and inexpensive, providing horizontal scaling because of its lack of structure. This means every element is independent and doesn’t need links. On the other hand, SQL will require upgrades such as more RAM or CPUs for vertical expansion.
- High performance – NoSQL often has higher performance levels than SQL because it doesn’t need to query data through various tables. Since things move much quicker with all the information in one database, doing 10,000 queries each second with some NoSQL databases is possible.
- Large data storage – NoSQL databases have the potential to store massive amounts of data sets, and they can do so at high rates of speed. For example, Cloud BigTable is a NoSQL database that lets you store structured data while allowing addition and deletion without disturbance.
Drawbacks
The potential drawbacks include the following:
- Requires multiple databases – Since the databases are specialized for particular use cases, you’ll need to use various data models and databases. You might still need to use SQL to help streamline the overall process.
- Requires more support – NoSQL is much newer than SQL. SQL is, therefore, more mature and has a lot of online instructional support. With NoSQL, you’ll likely have more difficulty finding expert support when you need assistance.
- Lack of consistency – NoSQL databases lack standardization, and the programming language and design of these databases vary extensively. This variation among NoSQL products is more extensive than with SQL databases.
- Lack of compatibility – NoSQL is not always entirely compatible with SQL instructions.
- Limited ACID applications – Most NoSQL systems don’t support ACID (atomicity, consistency, isolation, durability) transactions. MongoDB is an exception to this situation.
Choosing a NoSQL database
Selecting the right NoSQL database depends on several factors that align with your organization’s data management needs and business goals. NoSQL databases come in various models, each suited to specific use cases, making it essential to evaluate your options carefully. Key considerations include:
1. Data model selection
- Document databases: Ideal for applications requiring flexible schemas, such as content management systems.
- Key-value stores: Best for caching and real-time session management.
- Wide-column stores: Useful for high-volume analytical applications.
- Graph databases: Perfect for applications emphasizing relationships, like social networks.
2. Consistency trade-offs
- Consider your application’s tolerance for data inconsistency. NoSQL databases often sacrifice strict consistency for availability and scalability, following the CAP theorem.
- Use databases with configurable consistency settings if data accuracy is critical.
3. Cloud compatibility
- Choose a NoSQL database that integrates seamlessly with your cloud provider’s ecosystem.
- Consider managed services to reduce operational overhead and focus on development.
4. Migration strategies
- Plan for data migration if switching from a relational database to NoSQL.
- Ensure your team has the skills and tools necessary for a smooth migration process.
Assessing these factors can help you identify the NoSQL database that best meets your business needs, ensuring optimal performance, scalability, and reliability.
What is MongoDB?
MongoDB is a type of NoSQL database that is document-oriented and uses various documents and collections. It is primarily for high-volume data storage. Key-value pairs are the basic unit for MongoDB.
The following are a few of the essential features of MongoDB:
- MongoDB is very scalable. This system allows developers to write code in whatever language they choose.
- It doesn’t need a schema before starting. You can create the fields as you go.
- Every database will contain collections, with each collection housing documents. Each document can have fields with varying sizes and different content.
- It provides quicker query responses.
- MongoDB provides advanced searching.
- The database features indexing to improve search query performance.
- MongoDB provides data replication to send it to multiple nodes. Both primary and secondary nodes can replicate data.
- It supports advanced features for searching any field, range of queries, or regular expression.
- MongoDB provides the oplog (operations log) feature. This is a system that collects and stores all database changes. It keeps the changes chronologically and can help with deeper analysis since the oplog is entirely granular.
Many of these features point to a common theme, which is flexibility. When using SQL best practices, you must work within the database structure. There’s usually only one best way to do things. When using MongoDB, you’ll have several options for optimizing code throughout the process.
Is MongoDB NoSQL?
Yes, MongoDB is a type of NoSQL. MongoDB is a database management system that stores data using binary storage in flat files. This structure is helpful for large amounts of data since data storage is efficient and compact. It is document-based and open-sourced.
When using MongoDB, consider the following tips:
- The _id field must appear in every MongoDB document.
- Sharding is a way to distribute data through several partitions.
- There are size limits to keep in mind. When using MongoDB, you cannot exceed 16 MB for documents.
- There are limits on nested data. However, storing too many arbitrary objects when using MongoDB is usually not a good idea.
- Note that MongoDB restricts certain characters, including the $ sign and a period (.).
Like NoSQL, you’ll need to monitor MongoDB effectively. Several specific areas need monitoring:
- Instance Status
- Instance Hardware Metrics
- Replication Metrics
- Connections Metrics and Cluster Operations
What is the difference between SQL and NoSQL?
SQL is the acronym for Structured Query Language. As the most basic type of database management, SQL is a relational model that searches and retrieves information through different data, fields, and structures. Some of the most fundamental differences between SQL and NoSQL include:
- NoSQL uses dynamic schema for its unstructured data, while SQL uses queried language with a predefined schema.
- NoSQL databases are scalable horizontally, while SQL is scalable vertically.
- NoSQL has document, graph, key-value, or wide-column store databases, while SQL has table-based databases.
- NoSQL is better suited for unstructured data, while SQL will likely use multi-row transactions.
The bottom line
Each database has its merits, but when considering SQL vs. NoSQL, it’s important to remember a few key points. These include SQL being relational while NoSQL is non-relational, SQL databases generally scaling vertically, and NoSQL falling into four types of structures. When selecting from the NoSQL options, consider MongoDB an advanced database capable of handling dynamic schema and big data.
When evaluating NoSQL databases, consider factors such as scalability, consistency, and use case compatibility. Databases like MongoDB, Cassandra, and Redis provide powerful features designed to handle massive workloads and dynamic data models, making them essential for modern cloud-native applications.
Looking to optimize your data management strategy? Explore how LogicMonitor can help you monitor and manage your database infrastructure. Our comprehensive platform ensures visibility, performance, and reliability across all your IT environments.
Amazon Web Services (AWS) products can feel countless, and at LogicMonitor, we are working tirelessly to bring monitoring support to as many of them as possible. With so many products and tools already on your plate, we want to make sure that monitoring is not a hassle, but rather a trusted companion.
AWS provides tools that help with application management, machine learning, end-user computing, and much more. While the list of tools AWS offers continues to grow, LogicMonitor consolidates data from these services and empowers users to monitor them side by side with the rest of their infrastructure, whether it’s in the cloud or on-premises. See how LogicMonitor uses tools from analytics and services for business continuity.
Jump to:
- Monitoring AWS Analytics
- AWS Athena
- AWS Glue
- Monitoring AWS Application-Related Services
- Document DB
- RDS Service Limits
- MQ
- Codebuild
- Monitoring AWS Services For Business Continuity
- AWS Opsworks Stacks
- AWS AppStream 2.0
- AWS Connect
- AWS SageMaker
Monitoring AWS Analytics

AWS Athena
Amazon Athena is an interactive query service that analyzes data stored in Amazon Simple Storage Service (S3) using standard SQL. By monitoring Athena, we give users insight into failed queries and long-running queries. This allows them to catch issues sooner and resolve them faster, thus maximizing uptime and performance.
The data is collected into two query types: Data Definition Language (DDL) and Data Manipulation Language (DML). Each extracted metric is identified by the state of the query: canceled, failed, and succeeded. With that indicator, you can focus your attention on the metrics that are relevant to your task. You can also create a dashboard specifically for failed queries, which is useful for troubleshooting, and another dashboard for successful queries, which will help you come up with acceptable baselines for more accurate thresholds. While troubleshooting, you want to track the execution time. By bringing all the time metrics such as query queue, query planning, engine execution, and service processing into one place, you can quickly identify bottlenecks or the place where things break down. Once you feel like you are in a steady-state and things are running smoothly, make sure to go back and set suitable thresholds for the time metrics. With this, along with our dynamic thresholds feature, you can rest assured that you will only get notified when it matters.
AWS Glue
AWS Glue is a fully managed extract, transform, and load (ETL) service that helps customers prepare and load their data for analytics. The service automatically detects an enterprise’s structured or unstructured data when it is stored within other AWS services, such as data lakes in Amazon Simple Storage Service (S3), data warehouses in Amazon Redshift, and other databases that are part of the Amazon Relational Database Service. All of these can be monitored by LogicMonitor. The only objects from AWS Glue with measurable data are the Jobs, so this DataSource discovers the jobs automatically.
To accurately monitor Jobs, we need to keep track of executors, stages, and tasks.
The number of actively running job executors, “active executors”, can be helpful to identify any delays due to straggler scenarios. Keep an eye on active executors and the max executors metrics to know when it is time to provision more data processing units (DPUs). Make sure to create an alert and warnings for active executors metric as it approaches the max executors value.
As your job goes through different stages, it is helpful to have the completed stages metric on a dashboard to monitor the progress. If you notice that some stages are taking too long, you can correlate the CPU load, memory, and elapsed time metrics to triage the issue and potentially add more resources. Or you can repartition the load to lower the elapsed time. If there is any parallelism within your stages, it is essential to track the completed task and failed tasks. Depending on the workflow of the job, you need to set an appropriate threshold for failed tasks. These failed tasks can help determine abnormalities within the data, cluster, or script.
Monitoring AWS Application-Related Services
Document DB* (Database)
Amazon DocumentDB (with MongoDB compatibility) is a fast, scalable, highly available, and fully managed document database service that supports MongoDB workloads. Our users already monitor traditional MongoDB workloads, and with this DataSource, they can now monitor AWS DocumentDB workloads within LogicMonitor’s platform. For organizations that are planning to migrate from a traditional MongoDB environment to DocumentDB, LogicMonitor will provide metrics to closely monitor the transition and alert if there are any hiccups.
Keep the clusters healthy by monitoring the CPU, memory, network activity, database connections, and IOPS metrics. In the case of a node going down, you can monitor the replication lag metric (instanceReplicaLag). There is a chance that if the lag is too high, then your data is at risk of not correctly syncing, so make sure to keep an eye on this metric.
It is crucial to keep backups either via the retention period or snapshots, but it is also essential to know how much storage space these backup are using. Overlooking storage in a cloud environment can create massive headaches, so keep track of the larger backup files to make sure you stay within the storage budget. By tracking these metrics, backupRetentionPeriodStorageUsed, and snapshotStorageUsed, you’ll be able to see any unexpected spikes and take action immediately.
RDS Service Limits* (Database)
LogicMonitor already has RDS specific Datasources that will handle useful monitoring metrics. This new enhancement is adding unique metrics to monitor the RDS service limits. Amazon sets service limits on the number of RDS resources that can be created by an AWS account. A few of these resources include the number of database clusters, instances, parameters, snapshots, and allocated storage. With this data, you can be on top of the limits/quotas Amazon has on your RDS resources. You won’t get caught off guard and will be able to respond accordingly when critical resources are closing in on the quota.
MQ (Application Integration)
Frequently, users will have complex services that may partially rely on MQ and partially on other infrastructure running elsewhere, either on-premise or Cloud. Centralized monitoring in LogicMonitor equips them with more visibility so they can proactively prevent issues with these complex services in hybrid environments. Amazon MQ is a managed message broker service for Apache ActiveMQ. LM provides visibility into these managed brokers so that application teams can maximize uptime and performance with metrics such as message counts, CPU, memory, storage, and network utilization.

For active/standby deployments, LogicMonitor has a DataSource specifically for the standby resources. Separating the active and standby metrics allows for more clarity and keeps the data consistent.
Codebuild (Developer Tools)
AWS CodeBuild is a fully managed continuous integration service that compiles source code, runs tests, and produces software packages that are ready to deploy. You can monitor the build projects to ensure builds are running successfully and at the right time. It is ultimately giving you the information to optimize performance and uptime alongside your infrastructure data.
Application development teams need to be aware when builds fail. This DataSource has predefined thresholds that will automatically trigger notifications in the case of a failed build. Builds need to happen promptly, and with the breakdown of build time, you can pinpoint the step in the build that is causing delays and possibly add resources to optimize the build time of your projects.
Monitoring AWS Services for Business Continuity
AWS Opsworks Stacks
Cloud-based computing usually involves many components, such as load balancer, application servers, databases, etc. AWS OpsWorks Stacks, the original service, provides a simple and flexible way to create and manage stacks and applications. AWS OpsWorks Stacks lets you deploy and monitor applications in your stacks. Through CloudWatch we can get aggregate metrics for a stack, which helps understand the overall health of the resources within the stack & prevent issues. The metrics collected can be broken down into:
- CPU Percentage
- System
- User
- Input/Output Operations
- Memory
- Total
- Cached
- Free
- Buffered
- Average Load
- 1 minute
- 5 minutes
- 15 minutes
- Processes
- Total Active
A stack of the same resource is called a layer. For example, a layer represents a set of EC2 instances that serve a particular purpose, such as serving applications or hosting a database server. These layers can also be monitored within LogicMonitor. With LogicMontor’s robust coverage of AWS, you can also view the individual resource metrics of the layers through the out-of-the-box Datasources of the service.
AWS AppStream 2.0
Amazon AppStream 2.0 allows organizations to manage desktop applications and securely deliver them to any computer. This service helps users run programs that could be resource-intensive on underpowered machines. AppStream is similar to Citrix or Microsoft remote desktop. It becomes essential to monitor the capacity and utilization of the fleets. With a simple dashboard, you can track current and remaining capacity, along with capacity utilization. When an insufficient capacity error happens, LogicMonitor will automatically send an alert.

AWS Connect
Customer service is as crucial as its ever been and people want fast and quality responses. Amazon Connect is an easy to use omnichannel cloud contact center that helps companies provide superior customer service at a lower cost. When utilizing this service, it is beneficial to track the following metrics: status of the service, the volume of calls, quota, and missed calls.
With out-of-the-box alerts for missed calls, misconfigured phone numbers, concurrent calls percentage, and recording upload errors, you can rest assured that you will be on top of any problematic situation.
AWS SageMaker
AWS SageMaker is a fully managed service that provides every developer and data scientist with the ability to build, train, and deploy machine learning models quickly. Users want to monitor this service alongside existing infrastructure to ensure uptime and performance across their entire complex infrastructure, particularly where SageMaker models are being used in production environments. SageMaker Endpoints are discovered as resources in LogicMonitor.
Each endpoint will have its own CPU, memory, and disk utilization metrics. All of which have predefined thresholds for automatic alerts and notifications. LogicMonitor tracks the total invoked HTTP requests and will alert if there are any 5XX errors. You can baseline the latency of the model and the SageMakers overhead. With these baselines, you can be on top of any changes when new models have been deployed or see the difference in latency when doing an A/B deployment.
Conclusion
We recently highlighted our commitment to our AWS partnership, and our developers keep cranking out new AWS monitoring integrations. Here are some previous blogs highlighting AWS analytics services and application development services. All of these new integrations are included with our LM Cloud offering. LogicMonitor will automatically start collecting these metrics if you are an LM Cloud customer and already utilizing any of these Amazon services.
If you have any questions regarding these new monitoring integrations, please reach out or contact your CSM for more information. Or you can try LogicMonitor for free
Relational database or non-relational database: which should you use for your projects? It’s a common question. When choosing the database type that’s right for your requirements, it’s important to understand the differences between the two.
Both database types are practical in different situations and use cases and have commonalities. Both are also widely implemented, with a number of different provider options available for businesses and developers that need to store, access, or analyze data. Below, you’ll find the necessary information you need to make an informed decision about choosing the right database for your data management needs.
What is a relational database?
All databases need the following features:
- Capability to store multiple types – ideally all types – of data
- Easy, fast access to the data stored within the database
- Usefulness: does the data stored provide strategic business advantages or insights?
In other words, a database that only stores partial, inaccessible, or useless data is pointless. Business databases must be able to store and provide access to both operational and analytical data to maximize their usefulness.
Operational data means data that helps run the business’s daily operations, such as sales, stock levels, or HR information. Analytical data is usually data related to customer or client engagement with the business’s products or services. This could include information on blog traffic, product trends, or predictions based on customer buying behavior. Data is stored in its raw form in data warehouses or data lakes and becomes accessible and actionable when transferred into databases.
A relational database management system, or RDBMS, is one method for storing and providing access to this wealth of digital data. RDBMSs store data in tables. These tables often have similar information, causing relationships to form between the tables — hence the name relational database. Each table has both rows and columns, as you might expect. The data is stored in rows, and the columns define what this data is. One column has unique defining information and is called the primary key. When that key is used in another table, it’s called the foreign key, and a relationship forms between the tables.
Relational database developers and managers typically use Structured Query Language (SQL) to perform, create, read, update or delete (CRUD) operations.
Relational databases are far more suited to operational data, as some analytical data may arrive in an unstructured format unsuitable for storage in tables.
Relational database advantages
Relational databases help protect against duplicate information. The use of primary and foreign keys builds relationships that ensure data accuracy.
Reducing duplication or replication of data reduces storage costs and should reduce the resources required to run the database.
RDBMS databases are well-established, meaning there’s plenty of support available for anyone wanting to design or use a relational database.
Relational databases are ACID compliant. ACID stands for Atomicity, Consistency, Isolation, and Durability. This is a standard by which the reliability of database transactions is measured. For example, a bad query or change request should not corrupt other data within the database; the data should be stable and unaffected by failed transactions.
Relational database disadvantages
Relational databases are not particularly scalable. As the data your business ingests grows, you may struggle to grow your database alongside the larger volumes of data you have to handle. Considering that Statista predicts the world will produce 181 zettabytes of data by 2025, a lack of scalability could become a genuine limitation for businesses that want to remain agile as they grow.
Relational databases also lack flexibility. By definition, relational databases follow a rigid scheme based solely on columns and tables. This provides both advantages and disadvantages. Ultimately, it means that once the database has been created around your desired design, there’s no way to make changes later without taking the database offline and adjusting all the data to match the new criteria.
As a relational database grows, its performance slows. This means highly complex databases with numerous tables can take a long time to perform queries, slowing down the rate of useful business insights.
What is a non-relational database?
Non-relational databases are any database type that doesn’t use a relational database’s structured, relationship-focused data management style. Non-relational databases are not limited to tables, columns, and rows. This means they can handle unstructured data that doesn’t follow any particular schema. Unstructured data may include replies to automated email campaigns or text messages. There are no set parameters for this data, and often businesses will need to use business intelligence (BI) tools to sift through this unstructured data, seeking out patterns that can lead to business-critical insights and forecasts.
A table with set definitions about how data should appear and be presented is of no use for unstructured data. A non-relational database provides an alternative that supports data that follows no fixed schema.
There are multiple types of non-relational databases, but here are the pros and cons of the overall concept.
Non-relational database advantages
Non-relational databases are better suited to the cloud environment. This type of database can deal with many types of data, including data from devices across the Internet of Things (IoT) and a multitude of SaaS and apps. This allows developers to manage vastly disparate systems or applications with ease.
Scalability becomes much simpler with a non-relational database. This method of storing data is ideally suited for larger volumes of data and not limited by data type.
Because non-relational databases can handle larger and more complex forms of data, they perform better, faster, and provide more real-time insights for businesses when combined with appropriate BI tools or expert data managers.
Non-relational database disadvantages
Reliability is not as guaranteed with a non-relational database. There may be instances when adjusting data causes problems with other entries. To prevent this, developers may want to custom-code their own contingencies, making non-relational database creation slightly more complex.
An essential point concerning non-relational databases is that they’re not ACID compliant.
Finally, there is less support available for non-relational databases simply because they haven’t been around as long. The developer community is still growing, so it may seem like a tougher job to create, run, and maintain this type of database.
What are the biggest differences?
Scalability: While you can always add more rows of data to a relational database — making it vertically scalable — the more columns or tables you add, the worse it performs. Non-relational databases can be far more complex with a much lower impact on performance.
Reliability: Relational databases comply with industry standards of reliability (ACID). Non-relational databases have no such guarantees, prompting programmers to develop their own code to provide reliability.
The biggest difference between relational and non-relational databases is the way data is structured. Data in relational databases must always match the predefined structure of the column in the table. For example, you couldn’t put someone’s name in a telephone number column. The table wouldn’t accept it.
Conversely, non-relational databases fetch and present data in a multitude of ways. Let’s explore that more in the next section.
Architecture for relational databases and non-relational databases
Relational databases contain data, metadata (data about the data), plus a compiler to convert SQL queries so the database can understand the query and provide the required information. Data is always structured in tables built from columns and rows.
In a typical RDBMS architecture, queries may come from the database administrator, a data analyst, or an application programmer.
Queries may travel through a query compiler or an application program compiler. The RDBSM will have query optimizers that convert the query and run it through the RDBMS runtime system. This part of the database executes the queries or commands from other apps and fetches data accordingly.
There will also be a log that records what queries have taken place and any issues such as transaction failures or system shutdowns. This allows data managers to understand how the database is being used and address any reliability issues.
Finally, a typical RDBSM will have a recovery manager built in to ensure reliability after a failure.
Non-relational database architecture varies as there are several types. This is why they’re also called NoSQL databases, where NoSQL means Not Only SQL — or not only fixed schema and criteria.
The most basic NoSQL database is the key-value database. Data keys are paired with data values — the entries within the database. Each data value can only be accessed with a specific key that relates to that data point. This allows fast access to data, but limits the complexity of data that can be stored.
Wide-column databases are essentially a more flexible version of a relational database. They also follow the standard table with columns and rows format. Unlike relational database structure, however, each column can hold a different type of data. They can store all kinds of data, but it can slow them down when it’s time to fetch it.
Document databases are possibly the most flexible database architecture. Data is stored as JSON-like documents that can handle multiple types of data. Strings, numbers, arrays, and nested documents can all live in a document database. A single document in this type of database could hold all of a customer’s data, making it simple and fast to retrieve that information. Query APIs can fetch this data, detailing what criteria the data should be filtered by and what fields the data analyst needs to see once the data is retrieved.
Data in a document database is highly organized, easy to view, and available. There’s no reason you can’t view the same data across multiple servers, which helps break down or even prevent data silos within organizations, and makes app development far more agile.
Which type of database is MongoDB/NoSQL?
MongoDB is a cloud-based database-as-a-service designed to connect to other cloud services like AWS, Google Cloud, Azure, and other services used by businesses. There’s a high focus on data security, object-based development, and workload isolation. But is MongoDB relational or non-relational?
MongoDB is a non-relational database that’s highly scalable. It’s designed for enterprises that need to store huge volumes of data, which is easier with non-relational database architecture. MongoDB is a NoSQL database, because data is not solely stored or fetched in tables. Specifically, MongoDB is a document database that enables enterprises to store virtually unlimited forms of data.
Relational database vs. non-relational database: What type of database should I use?
Making an informed decision about the type of database to use means understanding the key differences.
In brief, both types of databases are suitable for cloud-native apps, yet both have advantages and disadvantages. Relational databases are more widely implemented and meet ACID compliance standards. However, non-relational databases are more suitable for large volumes of unstructured data, which are becoming more commonplace as the amount of data ingested by businesses grows exponentially.
Set out your goals for your database, consider your business requirements for the relevant data, and choose the type of database to use based on those needs.Whatever database you use, talk to LogicMonitor about the best ways to achieve comprehensive database monitoring and maximize the effectiveness and security of your data alongside your existing IT infrastructure.
What can you monitor with LogicMonitor? There are only two limitations.
As a Sales Engineer, I’m often asked questions like “Do you monitor (insert specific technology resource here)?”. Equally often, I’m asked whether and how easily LogicMonitor’s core abilities can be extended to gather metrics from any resources that may be specific to the customer.
For the first question the answer is usually “Yes, we do”. We have a vast range of over 1,500 monitoring integrations included out of the box, with more being added all the time by our Monitoring Engineering team, which collectively pull data through a large number of protocols and methods.
For the second question, the answer is “Yes, and very easily”, subject to two limitations:
- What data the resource exposes that we can reach
- Your imagination
I suspect most people hearing this assume that because I’m a Sales Engineer I’m being “a sales guy” and embellishing. If that’s you, then I must disappoint you – I’m an Engineer who works in Sales, not a Salesman who does Engineering. Even so, I also imagine most people think I’m only talking about infrastructure. Not at all.
My wife was diagnosed as a type 1 diabetic around the age of 2. Without giving away her age, Liz has seen a lot of monitoring and treatment devices over the years, some of which look positively medieval today.

When we first met, monitoring one’s diabetes involved stabbing yourself in a thumb (often repeatedly) to get a blood sample then waiting a half a minute for a spot reading; controlling it meant stabbing yourself in the arm or leg a few times a day to inject a bolus of insulin. Every few months you’d also visit your Diabetes Consultant and based on that sparsity of data and some further hospital tests, you’d likely be told your control should be better – and poor control can lead to any number of highly unpleasant and often life-threatening additional health problems.
Can you imagine making decisions about load and demand within your technology estate by looking at instantaneous CPU utilisation every four hours or so? Or guessing whether your website was coping with visitor demand while you slept, by checking it was up before you went to bed and then again at breakfast time?
Can you imagine presenting that data to your CEO and attempting to use it to justify a technology investment, or as the basis of a long-term strategy?
Happily, many brilliant minds have since invented insulin pumps, Continuous Glucose Monitoring (CGM) devices and associated readers that offer a much better class of monitoring. These are not cheap, but they give the user far better insight and permit much better control, which in turn can save the NHS (offer valid in the UK only; other healthcare providers are available) or patient far more in the long term, by not having to deal with (and suffer) health complications later on.
More recently, other brilliant minds have written mobile apps that turn a phone into a display head; being communication devices they can also send that data elsewhere.
These hardware and software elements combine to provide a service which takes a reading every five minutes and pushes it to the cloud – specifically in our case mLab.com, the Database as a Service provider for MongoDB. LogicMonitor already knows how to talk to MongoDB and even if we didn’t, MongoDB has an API and we know how to talk to APIs.
I was, therefore, able to easily create integrations to stand atop the shoulders of these giants, that poll the MongoDB instance for Liz’s blood glucose data, hardware data such as the battery charge state of the CGM reader and phone, and data about the database itself, such as file size allocation and usage.
The pump itself is air-gapped, but Liz maintains a Google spreadsheet of basal (background insulin infusion) rates, for personal reference and hospital visits. As this document is accessible via Google’s API, its data can similarly be brought into LogicMonitor.
This data is all correlated into a single Service Insight within LogicMonitor and with our Dashboard sharing options and Role Based Access Control, all this data is instantly available to Liz, to me, and to whichever of her healthcare professionals we choose to pass it to, in any browser and in the LogicMonitor mobile app. Periods of time spent above or below a defined acceptable blood glucose range are easy to alert on and can be visualised with different colours in our widgets. With up to two years of non-aggregated data retained, we’ll be able to see and review the long-term effects of any changes to treatment plans and insulin infusion rates; changes that can be marked in LogicMonitor with OpsNotes.


On a personal level, that’s pretty cool, right?
Now put your business head on, and let me recap:
LogicMonitor is gathering and combining mission-critical data from multiple sources and enabling access to it in an easy-to-understand format that can show current values alongside months of historic data, to whoever needs to see it, whenever they need it.
On a day-to-day operational level this gives a real-time visualisation of activity and response to change, and the ability to alert on data as it approaches or exceeds acceptable limits such that pre-emptive (or, in the worst case, corrective) action can be taken.
On a strategic level it enables long-term reviews of performance, the identification of daily, weekly or monthly patterns, and whether and how that performance has changed over time in response to changes in practice. It can show a need to make changes. It can inform and guide decision-making. It demonstrates proof of value for investments.
Who wouldn’t find that useful?