nosql

非关系型数据库----MongoDB

霸气de小男生 提交于 2020-03-09 12:30:39
一、什么是MongoDB?   MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。   在高负载的情况下,添加更多的节点,可以保证服务器性能。   MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。   MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。 主要特点 MongoDB 是一个面向文档存储的数据库,操作起来比较简单和容易。 你可以在MongoDB记录中设置任何属性的索引 (如:FirstName="Sameer",Address="8 Gandhi Road")来实现更快的排序。 你可以通过本地或者网络创建数据镜像,这使得MongoDB有更强的扩展性。 如果负载的增加(需要更多的存储空间和更强的处理能力) ,它可以分布在计算机网络中的其他节点上这就是所谓的分片。 Mongo支持丰富的查询表达式。查询指令使用JSON形式的标记,可轻易查询文档中内嵌的对象及数组。 MongoDb 使用update()命令可以实现替换完成的文档(数据)或者一些指定的数据字段 。 Mongodb中的Map/reduce主要是用来对数据进行批量处理和聚合操作。 Map和Reduce。Map函数调用emit(key,value

NoSQL在大数据中的应用

浪子不回头ぞ 提交于 2020-03-09 04:12:12
一、 序言 NoSQL是Not Only SQL的缩写,而不是Not SQL,指的是非关系型的数据库,它不一定遵循传统数据库的一些基本要求,比如说遵循SQL标准、ACID属性、表结构等等。相比传统数据库,叫它分布式数据管理系统更贴切,数据存储被简化更灵活,重点被放在了分布式数据管理上。 随着互联网 web2.0 网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。 二、 大数据时代 随着互联网 web2.0 网站的兴起,非关系型的数据库成了一个极其热门的新领域,非关系数据库产品的发展非常迅速。而传统的关系数据库在应付 web2.0 网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题: 1、 High performance - 对数据库高并发读写的需求 web2.0 网站要根据用户个性化信息来实时生成 动态页面 和提供动态信息,所以基本上无法使用 动态页面静态化 技术,因此数据库并发负载非常高,往往要达到每秒上万次读写请求。关系数据库应付上万次SQL查询还勉强顶得住,但是应付上万次SQL写数据请求,硬盘IO就已经无法承受了。其实对于普通的BBS网站

Redis系列 —— 简介与安装

女生的网名这么多〃 提交于 2020-03-08 14:55:56
Redis简介   Redis是完全是开源免费的,遵循BSD协议(是一个给与使用者很大自由的协议),是一个高性能(NOSQL非关系型数据库)的key-value数据库,并提供多种语言的API。   它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Hash), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。 特点: 1.性能极高-Redis能读的速度是110000次/s,写的速度是81000次/s。 2.丰富的数据类型-Redis支持的类型String,List, Hash, Set及Ordered Set数据类型操作。 3.原子-Redis的所有操作都是原子性的,意思就是要么成功执行要么失败完全不执行。单个操作是原子性的。多个操作也支持事务,即原子性,通过MULTI和EXEC指令包起来。 4.丰富的特性-Redis还支持publish/subscribe,通知, key过期等等特性。 关系型数据库和非关系型数据库    关系型数据库 最典型的数据结构是表,表与表之间建立关联关系。 优点:   1、易于维护:都是使用表结构,格式一致;   2、使用方便:SQL语言通用,可用于复杂查询;   3、复杂操作:支持SQL,可用于一个表以及多个表之间非常复杂的查询。 缺点:   1、读写性能比较差

Querying DynamoDB by date

↘锁芯ラ 提交于 2020-03-08 04:26:01
问题 I'm coming from a relational database background and trying to work with amazon's DynamoDB I have a table with a hash key "DataID" and a range "CreatedAt" and a bunch of items in it. I'm trying to get all the items that were created after a specific date and sorted by date. Which is pretty straightforward in a relational database. In DynamoDB the closest thing i could find is a query and using the range key greater than filter. The only issue is that to perform a query i need a hash key which

Querying DynamoDB by date

╄→гoц情女王★ 提交于 2020-03-08 04:22:42
问题 I'm coming from a relational database background and trying to work with amazon's DynamoDB I have a table with a hash key "DataID" and a range "CreatedAt" and a bunch of items in it. I'm trying to get all the items that were created after a specific date and sorted by date. Which is pretty straightforward in a relational database. In DynamoDB the closest thing i could find is a query and using the range key greater than filter. The only issue is that to perform a query i need a hash key which

NoSql简介以及Redis基本使用

≡放荡痞女 提交于 2020-03-06 18:55:11
参考了其他博主的博文加上自己实践所写,不足之处尽请谅解,我的另一篇博文会有redis的安装以及对应的资源~ 1、什么是NoSql NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,是一种 基于内存的数据库 ,并且提供一定的持久化功能; NoSQL:非关系型的数据库 。随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。NoSQL数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,尤其是大数据应用难题,包括超大规模数据的存储。 非关系型的数据库 :它的存储方式与我们的传统的数据库(二元关系来进行存储)不同; 2、主流使用的四大类非关系型数据库 2.1 键值(Key-Value)存储数据库(一个键对应一个值) 这一类数据库主要会使用到一个 哈希表 ,这个表中有一个特定的键和一个指针指向特定的数据。Key/value模型对于IT系统来说的优势在于简单、易部署;举例如:Tokyo Cabinet/Tyrant, Redis, Voldemort, Oracle BDB 在使用范围:redis—做缓存的时候; 2.2 列存储数据库(一个键对应多个值)

ASP.NET C# 跨平台开发 Windows Linux OSX

风流意气都作罢 提交于 2020-03-06 13:38:58
在本周热点中有一条是"TIOBE编程语言排行榜,Java 重回榜首", 使用Java语言的一个最大好处是可以到处移植,特别在今天这个到处是云主机的时代,而云主机基本上跑的是Linux等类Unix系统,C#用户突然发现最近两年网络上的各种新玩具都与ASP.NET无关,ASP.NET当然也意识到这点,搞了个ASP.NET vNext (ASP.NET 5)进行跨平台设计,它的跨平台层采用的是Mono,其实Mono一直在提供ASP.NET的跨平台方案,在ASP.NET 5还不清楚什么时候稳定时,可以先直接采用Mono进行跨平台开发,并且C#用户可以使用它先尝试下最近两年各种网络新玩具,其中大部分是免费试用的。 先上图,在Mac OS X上跑的 ASP.NET 4,使用的是 iBoxDB NoSQL数据库 ,比 Mono 提供的SQL跨平台方案更方便。 下面是同一个开发包在 Linux Ubuntu 上的详细使用介绍,直接使用在线IDE这个新工具说明操作流程,以前写篇文章要打开对应的操作系统,再启用本地IDE,整个过程要几分钟,使用在线IDE,点击一下网址就可以可以使用了,除了整个大系统的开发,基本上普通演示,普通代码测试都可以使用。 来源: oschina 链接: https://my.oschina.net/u/614982/blog/403500

How would you structure mutual rating social network model on Firestore? [closed]

给你一囗甜甜゛ 提交于 2020-03-06 09:45:21
问题 Closed . This question is opinion-based. It is not currently accepting answers. Want to improve this question? Update the question so it can be answered with facts and citations by editing this post. Closed 13 days ago . I think it would be easier to display my model with an example. The functionality of the app would be the following: It would be social network schema. A mutual friend model. When a user logins in the app, a list will be displayed. Each list item consist of a friend name -

How would you structure mutual rating social network model on Firestore? [closed]

左心房为你撑大大i 提交于 2020-03-06 09:44:08
问题 Closed . This question is opinion-based. It is not currently accepting answers. Want to improve this question? Update the question so it can be answered with facts and citations by editing this post. Closed 13 days ago . I think it would be easier to display my model with an example. The functionality of the app would be the following: It would be social network schema. A mutual friend model. When a user logins in the app, a list will be displayed. Each list item consist of a friend name -

Model and Query data in Firestore to get items in directories

蹲街弑〆低调 提交于 2020-03-05 05:04:04
问题 I want to model data in firestore to get items in directories shared by several users (folders are secured with security rules). My current model is as follows: /folders/{folder}/folders/{subfolder} /folders/{folder}/items/{item} /folders/{folder}/folders/{subfolder}/items/{item} A user can access several folders and if he accesses the root folder he can also access the subfolders. He can also access subfolders (if he has permission) and his access to the root folder is restricted. The idea