NoSQL 的列式数据模型
NoSQL 的列数据模型很重要。 NoSQL 数据库不同于 SQL 数据库。这是因为它使用的数据模型与之前用于关系数据库管理系统 (RDBMS) 的行列表模型具有不同的结构。 NoSQL 数据库是一种灵活的模式模型,旨在跨多个服务器水平扩展并用于大量数据。
NoSQL 的列数据模型:
基本上,关系数据库按行存储数据并逐行读取数据,列存储被组织为一组列。因此,如果有人想对少量列进行分析,则可以直接读取这些列,而无需占用内存和不需要的数据。列在某种程度上属于同一类型,并从更有效的压缩中获益,这使得读取速度比以前更快。列数据模型示例:Cassandra 和 Apache Hadoop Hbase。
列数据模型的工作:
在列式数据模型中,它不是将信息组织成行,而是按列进行。这使得它们的函数与关系数据库中的表的工作方式相同。这种类型的数据模型显然更加灵活,因为它是一种 NoSQL 数据库。下面的示例将有助于理解列式数据模型:
面向行的表:S.No. Name Course Branch ID 01. Tanmay B-Tech Computer 2 02. Abhishek B-Tech Electronics 5 03. Samriddha B-Tech IT 7 04. Aditi B-Tech E & TC 8
列 - 定向表: S.No. Name ID 01. Tanmay 2 02. Abhishek 5 03. Samriddha 7 04. Aditi 8 S.No. Course ID 01. B-Tech 2 02. B-Tech 5 03. B-Tech 7 04. B-Tech 8 S.No. Branch ID 01. Computer 2 02. Electronics 5 03. IT 7 04. E & TC 8
列式数据模型使用键空间的概念,类似于关系模型中的模式。
列数据模型的优点:
- 结构良好:由于这些数据模型擅长压缩,因此它们在存储方面非常结构化或组织良好。
- 灵活性:很大的灵活性,因为列不必看起来彼此相似,这意味着可以添加新的和不同的列而不会破坏整个数据库
- 聚合查询很快:最重要的是聚合查询非常快,因为大部分信息都存储在列中。例如,将一年内注册的学生总数相加。
- 可扩展性:它可以分布在大型机器集群中,甚至数以千计。
- 加载时间:由于可以在几秒钟内轻松加载行表,因此加载时间几乎是极好的。
列数据模型的缺点:
- 设计索引架构:设计一个有效且有效的架构太困难且非常耗时。
- 次优数据加载:增量数据加载是次优的,必须避免,但这对某些用户来说可能不是问题。
- 安全漏洞:如果安全是优先事项之一,那么必须知道列式数据模型在这种情况下缺乏内置的安全功能,因此必须研究关系数据库。
- 在线事务处理 (OLTP):由于数据的存储方式,在线事务处理 (OLTP) 应用程序也与列式数据模型不兼容。
列数据模型的应用:
- 列式数据模型在各种博客平台中得到了广泛应用。
- 它用于内容管理系统,如 WordPress、Joomla 等。
- 它用于维护计数器的系统中。
- 它用于需要大量写入请求的系统。
- 它用于使用到期的服务。