在nosql中编程 [英] programming in nosql

查看:61
本文介绍了在nosql中编程的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好

我能理解noslq数据库和传统数据库之间的主要区别吗?

我所理解的是nosql不仅是sql而且还有一些增强功能。据我所知,与sql相比,加入nosql非常简单。但我没有找到一篇博客或文章让我理解sql和nosql的结构差异。有人可以帮帮我吗?

谢谢

Hi All
Can i understand the major difference between noslq database and conventional database?
What i understood is nosql is not only sql but has some enhanced features. I understand that the joining in nosql is pretty easy compared to sql. But i did not find a single blog or article which makes me understand the structural differences regarding sql and nosql. Could anybody help me out?
Thanks

推荐答案

SQL和NoSQL之间的主要区别



汇总表
标准 SQL Server NoSQL
一致性模型 完全一致 最终一致
可伸缩性 单个服务器(向上扩展) 多个服务器(向外扩展)
容错 HA到辅助服务器故障转移服务器 通过镜像/复制进行容错
数据设计 DBA首先进行数据设计 开始无模式并在编码时实现数据结构
数据类型 SQL /关系数据 表和/或非结构化数据
优势 交易/数据一致性/强大的BI /报告和工具 规模/性能/易用性发展和适应


什么是SQL?

SQL代表结构化查询语言,它允许您操作RDBMS。它是ANSI标准。它用于从RDBMS创建,操作和查询信息。



SQL最终是一种用于在RDBMS中查询,插入,更新和删除数据的编程语言。这是一种相对简单易用的语言。



什么是RDBMS?

RDBMS代表关系数据库管理系统。



RDBMS将数据存储到表的集合中,这些表可能与公共字段(数据库表列)相关。 RDBMS还提供关系运算符来操作存储在数据库表中的数据。大多数RDBMS使用SQL作为数据库查询语言。



SQL的限制


  • 扩展时的性能
  • 设置表,关系,一致性的复杂性
  • 无法存储大数据

Key Differences between SQL and NoSQL


Summary table
CriteriaSQL ServerNoSQL
Consistency ModelFully consistentEventually Consistent
ScalabilitySingle Server (Scale up)Multiple Servers (Scale out)
Fault ToleranceHA through Secondary fail over ServerFault tolerance through Mirroring/Replication
Data DesignDBA does data design firstStart schema-less and implement data structure as you code
Data typesSQL/Relational DataTable and/or unstructured data
StrengthsTransactions/data consistency/Robust BI/Reporting and toolingScale/performance/ease of development and adaptation

What is SQL?
SQL stands for Structured Query Language and it allows you to manipulate a RDBMS. It is an ANSI standard. It is used to create, manipulate and query information from a RDBMS.

SQL is ultimately a programming language for querying, inserting, updating, and deleting data within a RDBMS. It’s a relatively simple and easy to use language.

What is a RDBMS?
RDBMS stands for Relational Database Management System.

RDBMS store the data into collection of tables, which might be related by common fields (database table columns). RDBMS also provide relational operators to manipulate the data stored in the database tables. Most RDBMS use SQL as a database query language.

Limitations of SQL

  • Scale out over multiple servers is highly restrictive to not existent
  • Performance when scaling
  • Complexity of setting up tables, relationships, consistency
  • Inability to store Big Data
  • 无架构:NoSQL避免了模式定义的强大刚性,有利于更灵活的模型用于组织。通常连接是不可能的,因为数据不是来自数据库端的关系(仅从代码的角度来看)。数据也经常被去标准化。这提供了许多组织快速修改,更新和更改其数据和支持结构所需的灵活性。
  • 扩展性能(分布式):水平横向扩展是一个标志NoSQL。您不再受限于一台服务器。所有这些都是自动发生的,并且是为了最大化弹性和性能。
  • 最终一致性:NoSQL使用支持分布式计算的一致性模型,确保您的数据在节点之间保持一致。与传统的RDBMS不同,NoSQL通常不是ACID投诉。
  • Schema-less: NoSQL avoids the strong rigidity of schema definitions in favor of more flexible models for organizing. Often joins are not possible as the data is not relational from a database side (only from code perspective). Data is frequently de-normalized as well. This provides the flexibility that many organizations need to quickly modify, update, and change their data and supporting structures.
  • Scale out performance (Distributed): Horizontal scale-out is a hallmark of NoSQL. No longer are you constrained to one server. And all this happens automatically and in a means to maximize elasticity and performance.
  • Eventually Consistency: NoSQL uses a consistency model that supports distributed computing that insures your data is consistent across nodes. Unlike a traditional RDBMS, NoSQL is not usually ACID complaint.


  • 键/值存储:使用简单键或唯一哈希值访问结构化,半结构化和非结构化数据。它是最简单的NoSQL模型。
  • 文档数据库:存储可能类似于文档格式的数据行的内容,如JSON,BSON或Protobuf。与键/值存储不同,可以创建大量索引,并且查询语言可用于在数据内查询。由于这些查询功能,此数据库可以与MapReduce一起使用。
  • 图形数据库:将其视为可以表示您在白板上绘制的图形的网络数据库类型。
  • 专栏:这可以被认为是一个存储大量数据的大型宽表。与传统的RDBMS不同,这些列可能不仅仅是标准类型的列,通常是数组或元组等。
  • 移动/数字媒体和网络:需要高速,灵活和轻松改变数据结构和降低成本至关重要。
  • 电子商务:快速处理用户峰值和各种结构化到非结构化数据的能力至关重要。超快目标广告的运营支持也非常重要。
  • 时间序列数据:这是NoSQL的候选版本之一,因为这是大数据。 NoSQL是运行MapReduce和其他分析的最常用数据库。
  • 日志信息:从SQL和NoSQL中卸载日志信息。许多较新的技术将其整个日志存储机制建立在NoSQL上。


查看这些链接



SQL vs. NoSQL:哪个更好? [ ^ ]



SQL数据库诉NoSQL数据库 [ ^ ]



SQL Server与NoSQL [ ^ ]



NoSQL vs SQL-A Change for Change? [ ^ ]



SQL与NoSQL - 这对y更好我们的业务数据? [ ^ ]



在MySQL和NoSQL之间做出决定? [ ^ ]



你应该了解的关于NoSQL数据库的10件事 [ ^ ]



问候......
See these links

SQL vs. NoSQL: Which Is Better?[^]

SQL Databases v. NoSQL Databases[^]

SQL Server vs. NoSQL[^]

NoSQL vs SQL-A Time for Change?[^]

SQL versus NoSQL – which is better for your business data?[^]

Deciding between MySQL and NoSQL?[^]

10 things you should know about NoSQL databases[^]

Regards...


这篇关于在nosql中编程的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆