📜  NoSQL 的列式数据模型

📅  最后修改于: 2022-05-13 01:57:03.041000             🧑  作者: Mango

NoSQL 的列式数据模型

NoSQL 的列数据模型很重要。 NoSQL 数据库不同于 SQL 数据库。这是因为它使用的数据模型与之前用于关系数据库管理系统 (RDBMS) 的行列表模型具有不同的结构。 NoSQL 数据库是一种灵活的模式模型,旨在跨多个服务器水平扩展并用于大量数据。

NoSQL 的列数据模型:

基本上,关系数据库按行存储数据并逐行读取数据,列存储被组织为一组列。因此,如果有人想对少量列进行分析,则可以直接读取这些列,而无需占用内存和不需要的数据。列在某种程度上属于同一类型,并从更有效的压缩中获益,这使得读取速度比以前更快。列数据模型示例:Cassandra 和 Apache Hadoop Hbase。

列数据模型的工作:

在列式数据模型中,它不是将信息组织成行,而是按列进行。这使得它们的函数与关系数据库中的表的工作方式相同。这种类型的数据模型显然更加灵活,因为它是一种 NoSQL 数据库。下面的示例将有助于理解列式数据模型:

面向行的表:

S.No.Name CourseBranchID
01.TanmayB-TechComputer2
02.AbhishekB-TechElectronics5
03.SamriddhaB-TechIT7
04.AditiB-TechE & TC8

列 - 定向表:

S.No.NameID
01.Tanmay2
02.Abhishek5
03.Samriddha7
04.Aditi8
S.No.CourseID
01.B-Tech2
02.B-Tech5
03.B-Tech7
04.B-Tech8
S.No.BranchID
01.Computer
02.Electronics5
03.IT7
04.E & TC8

列式数据模型使用键空间的概念,类似于关系模型中的模式。  

列数据模型的优点:

  • 结构良好:由于这些数据模型擅长压缩,因此它们在存储方面非常结构化或组织良好。
  • 灵活性:很大的灵活性,因为列不必看起来彼此相似,这意味着可以添加新的和不同的列而不会破坏整个数据库
  • 聚合查询很快:最重要的是聚合查询非常快,因为大部分信息都存储在列中。例如,将一年内注册的学生总数相加。
  • 可扩展性:它可以分布在大型机器集群中,甚至数以千计。
  • 加载时间:由于可以在几秒钟内轻松加载行表,因此加载时间几乎是极好的。

列数据模型的缺点:

  • 设计索引架构:设计一个有效且有效的架构太困难且非常耗时。
  • 次优数据加载:增量数据加载是次优的,必须避免,但这对某些用户来说可能不是问题。
  • 安全漏洞:如果安全是优先事项之一,那么必须知道列式数据模型在这种情况下缺乏内置的安全功能,因此必须研究关系数据库。
  • 在线事务处理 (OLTP):由于数据的存储方式,在线事务处理 (OLTP) 应用程序也与列式数据模型不兼容。

列数据模型的应用:

  • 列式数据模型在各种博客平台中得到了广泛应用。
  • 它用于内容管理系统,如 WordPress、Joomla 等。
  • 它用于维护计数器的系统中。
  • 它用于需要大量写入请求的系统。
  • 它用于使用到期的服务。