NOSQL - 技术教程文章

sql,nosql

关系型数据库,是指采用了关系模型来组织数据的数据库。 关系模型是在1970年由IBM的研究员E.F.Codd博士首先提出的,在之后的几十年中,关系模型的概念得到了充分的发展并逐渐成为主流数据库结构的主流模型。 简单来说,关系模型指的就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。 关系模型中常用的概念:关系:可以理解为一张二维表,每个关系都具有一个关系名,就是通常说的表名 元组:可...

[转载]NoSQL开篇——为什么要使用NoSQL

【编者按】NoSQL在2010年风生水起,大大小小的Web站点在追求高性能高可靠性方面,不由自主都选择了NoSQL技术作为优先考虑的方面。今年伊始,InfoQ中文站有幸邀请到凤凰网的孙立先生,为大家分享他之于NoSQL方面的经验和体会。非常荣幸能受邀在InfoQ开辟这样一个关于NoSQL的专栏,InfoQ是我非常尊重的一家技术媒体,同时我也希望借助InfoQ,在国内推动NoSQL的发展,希望跟我一样有兴趣的朋友加入进来。这次的NoSQL专栏系列将先整体介...

The Myths about Transactions (ACID) and NoSQL

There has been widespread characterization of one of the major distinctions between NoSQL and traditional DBMSs by saying that the former don’t care for ACID semantics or that transactions aren’t needed. This is an oversimplification to say the least. As long as the NoSQL system supports incremental updates by concurrent set of users (as opposed to only single-threaded bulk or batch updates), ev...

NoSQL 与 关系型数据库

一、二者的基本概念 NoSQL,泛指非关系型的数据库。 关系数据库,是建立在关系模型基础上的数据库。 这里提到了关系模型, 关系模型是1970年由E.F.Codd提出的。 它和层次、网状模型相比,有以下特点: 1.数据结构简单(二维表格) 2.扎实的理论基础。 a.关系运算理论 b.关系模式设计理论 简单来说,关系模型指的就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。 对于NoSQL并没有一个明确的范...

MySQL 全文搜索支持, mysql 5.6.4支持Innodb的全文检索和类memcache的nosql支持

背景:搞个个人博客的全文搜索得用like啥的,现在mysql版本号已经大于5.6.4了也就支持了innodb的全文搜索了,刚查了下目前版本号都到MySQL Community Server 5.6.19 了,所以,一些小的应用可以用它做全文搜索了,像sphinx和Lucene这样偏重的、需要配置或开发的,节省了成本。这儿有一个原创的Mysql全文搜索的文章, mysql的全文搜索功能:http://blog.csdn.net/bravekingzhang/article/details/6727541基于mysql全文索引的深入理解...

NoSQL数据库:Redis适用场景及产品定位【图】

传统MySQL+ Memcached架构遇到的问题实际MySQL是适合进行海量数据存储的,通过Memcached将热点数据加载到cache,加速访问,很多公司都曾经使用过这样的架构,但随着业务数据量的不断增加,和访问量的持续增长,我们遇到了很多问题:1.MySQL需要不断进行拆库拆表,Memcached也需不断跟着扩容,扩容和维护工作占据大量开发时间。2.Memcached与MySQL数据库数据一致性问题。3.Memcached数据命中率低或down机,大量访问直接穿透到DB,My...

Tair:一种分布式NOSQL存储引擎【代码】【图】

Tair的存储引擎有一个抽象层,只要满足存储引擎需要的接口,便可以很方便的替换Tair底层的存储引擎。比如你可以很方便的将bdb、tc、redis、leveldb甚至MySQL作为Tair的存储引擎,而同时使用Tair的分布方式、同步等特性。 Tair主要有下面三种存储引擎:mdb,定位于cache缓存,类似于memcache。支持k/v存取和prefix操作; rdb,定位于cache缓存,采用了redis的内存存储结构。支持k/v,list,hash,set,sortedset等数据结构; ldb,定...

NoSQL你知多少?【图】

1.NoSQL是什么?NoSQL 是 Not Only SQL 的缩写,意即"不仅仅是SQL"的意思,泛指非关系型的数据库。强调Key-Value Stores和文档数据库的优点,而不是单纯的反对RDBMS。NoSQL产品是传统关系型数据库的功能阉割版本,通过减少用不到或很少用的功能,来大幅度提高产品性能 2.NoSQL是怎么产生的?随着web2.0技术的发展,其促使了物联网和移动互联网迅猛发展。传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2....

NoSQL架构实践(一)——以NoSQL为辅【代码】【图】

前面《为什么要使用NoSQL》和《关系数据库还是NoSQL数据库》两篇从大体上介绍了为什么要用NoSQL,何时该用NoSQL。经常有朋友遇到困惑,看到NoSQL的介绍,觉得很好,但是却不知道如何正式用到自己的项目中。很大的原因就是思维固定在MySQL中了,他们问得最多的问题就是用了NoSQL,我如何做关系查询。那么接下来,我们看下怎么样在我们的系统中使用NoSQL。 怎么样把NoSQL引入到我们的系统架构设计中,需要根据我们系统的业务场景来分...

NoSql basic knowledge【图】

The big picture to keep in mind first is: There are lots of articles and resources out there: http://blog.sina.com.cn/s/blog_3fe961ae010139u6.html http://old.sebug.net/paper/databases/nosql/Nosql.html http://blog.csdn.net/godfrey90/article/details/6706184, http://blog.csdn.net/godfrey90/article/details/6754884 NoSql basic knowledge标签:本文系统来源:http://www.cnblogs.com/feishunji/p/5194138.h...

NoSQl简介(转)【图】

NoSQL,全称是“Not Only Sql”,指的是非关系型的数据库。这类数据库主要有这些特点:非关系型的、分布式的、开源的、水平可扩展的。原始的目的是为了大规模web应用,这场全新的数据库革命运动早期就有人提出,发展至2009年趋势越发高涨。 NoSQL被我们用得最多的当数key-value存储,当然还有其他的文档型的、列存储、图型数据库、xml数据库等。相对于目前铺天盖地的关系型数据库运用,这一概念无疑是一种全新思维的注入。 传统关...

NoSQL数据库介绍(3)

本章概述了一些NoSQL数据存储常见的基本概念、技术与模式,并不仅限于一类非关系型数据库或一个单一的NoSQL存储。众多NoSQL数据存储和个别产品的具体概念和技术将在随后的章节中讨论。3.1 一致性 3.1.1 CAP理论 在2000年的ACM PODC研讨会上主题为“走向鲁棒的分布式系统”的演示文稿中,Eric Brewer提出了所谓的CAP理论([ Bre00 ]),它目前在大型网络公司(如Amazon,参见[ Vog07 ]、[ Vog08 ])以及NoSQL社区中广泛采纳。缩...

初识NoSQL【代码】【图】

NoSQL(NoSQL = Not Only SQL ),意即"不仅仅是SQL"。 在现代的计算系统上每天网络上都会产生庞大的数据量。这些数据有很大一部分是由关系数据库管理系统(RDMBSs)来处理。 1970年 E.F.Codd’s提出的关系模型的论文 “A relational model of data for large shared data banks”,这使得数据建模和应用程序编程更加简单。 通过应用实践证明,关系模型是非常适合于客户服务器编程,远远超出预期的利益,今天它是结构化数据存储在网...

MongoDB入门学习(一)NoSQL了解

1. NoSQL 简史 NoSQL一词最早出现于1998年,是Carlo Strozzi开发的一个轻量、开源、不提供SQL功能的关系数据库。 2009年,Last.fm的Johan Oskarsson发起了一次关于分布式开源数据库的讨论[2],来自Rackspace的Eric Evans再次提出了NoSQL的概念,这时的NoSQL主要指非关系型、分布式、不提供ACID的数据库设计模式。 2009年在亚特兰大举行的"no:sql(east)"讨论会是一个里程碑,其口号是"select fun, profit from real_world where rel...

NoSQL 简介

NoSQL 简介NoSQL(NoSQL = Not Only SQL ),意即"不仅仅是SQL"。在现代的计算系统上每天网络上都会产生庞大的数据量。这些数据有很大一部分是由关系数据库管理系统(RDMBSs)来处理。 1970年 E.F.Codd‘s提出的关系模型的论文 "A relational model of data for large shared data banks",这使得数据建模和应用程序编程更加简单。通过应用实践证明,关系模型是非常适合于客户服务器编程,远远超出预期的利益,今天它是结构化数据存储...

NoSQL数据库介绍(6)【图】

在本章中将研究第三类NoSQL数据存储:面向列的数据库。以列来替代行存储和处理数据的方法起源于分析和商业智能,在一个无共享的大规模并行处理(注:MPP)架构中的列存储可用于构建高性能应用。这一领域引人注目的产品是Sybase IQ和Vertica([ Nor09 ])。然而,在这一章中,面向列的存储类型被视为少一些纯粹性,也包括了整合面向列和行的数据存储。它们也被描述为“[稀疏的]、分布式的、持久的多维排序[映射]”(例如[Int10 ])。...

【NoSQL之Redis】(一)——揭开Redis的面纱【图】

整体概览Redis是一种数据库,像一台结构化的数据服务器。相较于MySQL操作表中的行,MongoDB操作集合中的文档这样的数据访问方式,Redis是通过键来访问数据的。它是一个key-value类型的NoSQL数据库。因为数据是存储在内存中,所以访问速度很快。(当然为了部分数据安全起见,也可以将数据备份到数据库中或将对数据的操作写到记录文件中)。j简而言之,它是一个支持持久化的内存数据库。在学习过Redis之后,我对它的交集,并集,差集...

NOSQL技术选型

Redis 场景:消息发布订阅,产品属性分析,非严格的事务 Memcached 场景:读密集,写一般的应用,会话 MongoDB 场景:业务灵活多变,给予GIS的应用,高并发业务,无事务 NOSQL技术选型标签:本文系统来源:http://www.cnblogs.com/alisande/p/5409002.html

四类NoSQL数据库适用场景总结

适用案例 现在讲几个适合使用键值数据库的情况。 1 存触会话信息 通常来说,每一次网络会话都是唯一的,所以分配给它们的session id 也各不相同。如果应用程序原来要把session id 存在磁盘上或关系型数据库中,那么将其迁移到键数据库之后, 会获益良多, 因为全部会话内容都可以用一条PU T 请求来存放,而且只需一条GET 请求就能取得。由于会话中的所有信息都放在一个对象中,所以这种" 单请求操作" (single-request operation ) ...

《NoSQL入门》关于NoSQL

什么是NoSQL?百度百科中:NoSQL,泛指非关系型的数据库。中文名:非关系型数据库,外文名:NoSQL=Not Only SQL看 Wikipedia中:A NoSQL (originally referring to "non SQL" or "non relational") database provides a mechanism for storage and retrieval of data which is modeled in means other than the tabular relations used in relational databases.NoSQL(最初指的"非 SQL"或"非关系")数据库提供了一种机制用于存储和...

关系型数据库与nosql

关系型数据库与nosql标签:本文系统来源:http://www.cnblogs.com/feng12345/p/5426841.html

NoSql之深入浅出redis【代码】

key valuenx:如果key不存在则建立xx:如果key存在则修改其值(2)get key:取值(3)mset key1 value1 key2 value2 一次设置多个值(4)mget key1 key2 :一次获取多个值(5)getrange key start stop:获取字符串中[start, stop]范围的值对于字符串的下标,左数从0开始,右数从-1开始注意:当start>length,则返回空字符串当stop>=length,则截取至字符串尾如果start所处位置在stop右边,则返回空字符串(6)getset key nrevalue...

NoSql之深入浅出redis【代码】

一、常用命令1、String类型(1)set key value nx:如果key不存在则建立 xx:如果key存在则修改其值(2)get key:取值(3)mset key1 value1 key2 value2 一次设置多个值(4)mget key1 key2 :一次获取多个值(5)getrange key start stop:获取字符串中[start, stop]范围的值 对于字符串的下标,左数从0开始,右数从-1开始 注意:当start>length,则返回空字符串 当stop>=length,则截...

几款主流 NoSql 数据库的对比【代码】【图】

HBase 是 Apache Hadoop 中的一个子项目,属于 bigtable 的开源版本,所实现的语言为Java(故依赖 Java SDK)。HBase 依托于 Hadoop 的 HDFS(分布式文件系统)作为最基本存储基础单元。 HBase在列上实现了 BigTable 论文提到的压缩算法、内存操作和布隆过滤器。HBase的表能够作为 MapReduce 任务的输入和输出,可以通过Java API来访问数据,也可以通过REST、Avro或者Thrift的API来访问。 1. 特点 1.1 数据格式HBash 的数据存储是基...

nosql基本了解

数据库分为关系型数据库和非关系型数据库nosql,关系型数据库比较常见,此处不再多讲;nosql有key-value存储数据库,比如redis;文档型数据库,比如mongodb;列存储数据库,比如hbase;key-value存储数据库,分为临时性、永久性和两者兼具三种;临时性代表是memcached;永久性代表是Tokyo Tyrant、Flare、ROMA等;两者兼具代表是redis; 数据库按照存储介质分为内存数据库和磁盘数据库,内存数据库有memcached、SQLite等nosql基本了...

NoSQL 与大数据【代码】【图】

": "account_identifier","email": "account@email.com","firstname": "account_firstname","lastname": "account_lastname","birthdate": "account_birthdate","authentication": [{"token": "authentication_token_1","source": "authenticaton_source_1","created": "12-12-12"}, {"token": "authentication_token_2","source": "authenticaton_source_2","created": "12-12-12"}],"address": [{"street": "address_street_1","...

NOSql之redis的学习

NOSql之redis的学习标签:本文系统来源:http://www.cnblogs.com/ClearX/p/5562114.html

NoSql的产生

主流的关系型数据库:Microsoft SQLServer, IBM DB2, Oracle, MySQL, Microsoft Access, Sybase,IBM Informix 随着互联网web2.0网站的兴起,非关系型的数据库现在成了一个极其热门的新领域,非关系数据库产品的发展非常迅速。而传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,例如: 1、High performance——对数据库高并发读写的需求 Web2....

非关系型的数据库NoSQL

NoSQL的总体介绍http://www.apelearn.com/bbs/forum.php?mod=viewthread&tid=8660&highlight=NoSQL memcached介绍1.3 memcached安装http://www.apelearn.com/bbs/thread-9285-1-1.html yum install -y epel-release rpm -qa epel-releaseyum install -y livevent memcached libmemcached/etc/init.d/memcached startnetstat -lnpps aux |grep memcached vi /etc/init.d/memcachedcat /etc/sysconfig/memcached-l监听的服务器ip m...

NoSQL:从关系型数据库到非关系型数据库

所谓关系型数据库,,就是指采用了关系模型来组织数据的数据库。 什么是关系模型,简单说,关系模型就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。 关系模型中常用的概念: 1、关系 可以理解为一张二维表,每个关系都有一个关系名,在数据库中被称为表名 2、元组 可以理解为二维表中的一行,在数据库中被称为记录 3、属性 可以理解为二维表中的一列,在数据库中被称为字段 4、域 属性的取...