DynamoDB NoSQL 数据库

程序名称:DynamoDB

授权协议: 商业软件

操作系统: 未知

开发语言:

DynamoDB 介绍

DynamoDB 是 Amazon最新发布的 NoSQL 产品。DynamoDB是一个性能好、可靠高且具有可扩展性的 NoSQL
云数据库服务,DynamoDB集15年分布式非关系性数据库开发之精粹,又通过内部使用考验,是AWS团队精心打造的产品。

DynamoDB有以下几个特性:

  • 稳定的性能保证。为了保证高性能,DynamoDB采用固态硬盘(SSD)进行存储,对于一般的请求,DynamoDB在十毫秒内就可以完成,而且处理请求的速度不会随着数据量的增加而减慢。
  • 读/写流量限制预设(Provisioned Throughput)。这个概念和我们经常接触的按带宽收费非常相像,用户必须指定对数据库的读/写带宽,Amazon会按用户设置的读/写带宽收费。但与传统的带宽收费不同,用户可以随时通过控制台或者API更改数据库的读/写流量的限制。
  • 自动扩容。DynamoDB不会对用户的数据规模大小做任何限制,后台会默默地把用户的数据分布到各个机器上去。
  • 强一致性。用户可以通过参数指定要读的数据是否需要一致性。这里需要注意的是,如果读的数据全是要求强一致性的话,那么在设置读流量上限时需要设置成实际读流量的两倍。
  • 完全分布式,无中心化架构。一个表上的数据可以分布到几百台机器上。
  • Schema free。都叫NoSQL了,Schema必须free。
  • 和Amazon Elastic MapReduce深度整合。在EMR上可以调用DynamoDB的数据进行MapReduce,并将计算结果保存到S3,同时也可以用EMR对DynamoDB做备份。
  • 容灾。容错、完善的监控、安全、物美价廉、管理方便,这些都是云服务应该做到的。
  • 大家第一眼看到Provisioned Throughput时,都会觉得这个概念比较别扭。为什么要给自己限制读/写流量呢?但仔细分析之后大家会发现Provisioned Throughput是迫不得已的做法,而且前三个特性其实也与之有着不可分割的关联。
  • DynamoDB是一个共享型的数据库云服务。所谓共享型的数据库云服务,是指一台机器上的CPU、内存及磁盘资源会给多用户使用。共享型服务最大的问题在于资源的公平性,如何保证一个用户对资源的使用不会影响到其他用户?例如,用户A在DynamoDB上保存了10GB的数据,假设这10GB数据全部保存在同一台机器上,而且这台机器的读性能只有1GB/秒。此时,如果用户每秒要读1GB数据,必然会影响到其他用户对同台机器上的数据访问,因为一台机器的吞吐量是固定的。这样就没有办法做到每个用户每个请求都有稳定的性能保证。正如各种MySQL共享服务会根据用户预购买的数据空间来限定每秒的请求数来解决资源公平性一样,DynamoDB利用Provisioned Throughput来解决资源公平性。如果用户的读/写请求量变大,就得提高读/写请求的带宽上限,付更多的钱,DynamoDB同时会根据用户购买的带宽将数据分散到更多的机器上。目前,单表最多支持10000个1KB读/写(相当于10MB/s的读写),单用户最多20000个1KB读/写(相当于20MB/s的读写)。如果需求增加,则需要填表单独申请。同时还有更多详细的规定,具体详见用户手册(其实所有的规定都是受到资源公平性以及后台具体实现的约束)。

DynamoDB 官网

http://aws.amazon.com/dynamodb/

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


SchemaCrawler提供一组用于增强标准JDBC Metadata的API.SchemaCrawler还包含一个命令行工具能够将数据库结构和数据以一种易读的形式输出.
ER Master 是一个用于设计ER模型图的Eclipse插件。提供的功能包括:从数据库导入关系生成ER图,导出设计图,导出DDL数据定义语句等。目前完整支持的数据库包括
Eclipse下用于画数据库ER图的插件,主要特性如下: 图形化编辑ER图 从数据库结构中导入ER图
PowerDesigner 是Sybase的企业建模和设计解决方案,采用模型驱动方法,将业务与IT结合起来,可帮助部署有效的企业体系架构,并为研发生命周期管理提供强大的分析与设计技术。PowerDesigner
Mogwai ERDesigner NG是一个实体关系建模工具类似于ERWin。它设计成让数据库建模变得尽可能简易并为整个开发过程提供支持,从数据库设计到模式
Power*Architect 是一个数据建模工具,主要用在数据仓库和数据集市的模型设计。
MySQL Workbench是一款专为MySQL设计的ER/数据库建模工具。它是著名的数据库设计工具DBDesigner4的继任者。你可以用MySQL
DbWrench 是一个数据库设计和同步软件,为数据库开发人员提升生产率,可轻松的创建和修改数据库。
是一个采用Python开发的使用ER图的数据库建模工具
CA公司的数据库建模工具 (非开源) ,为你提供一个易于使用的用户界面(UI)环境,简化数据库设计过程,并将许多令人疲惫的任务自动化,如创建高性能事务和数据仓库数据库。这是一款可以和PowerDesigner并驾齐驱的
Altova MapForce® 2008是您首选的数据综合和网络服务器实现工具。它可以通过映射数据源到WSDLO操作的方法,实现多种文件之间的转化,包括XML文件, 数据库文件,
一个用Java开发的可视化数据库设计工具,支持JDBC 2.0的数据库
一个图形化的数据库模型浏览工具,SchemaSpy analyzes database metadata to reverse engineer
从事软件开发多年,感觉数据库在整个软件开发过程中扮演一个不可或缺的角色。一旦一个业务项目进入立项阶段,需要支持哪些数据库平台,如何使用该种数据库平台都将成为架构师需要考虑的内容,对于一般的开发人员,
Middlegen一个免费数据库驱动(database-driven)的代码生成引擎。它基于JDBC,Velocity,Ant和XDoclet.
Ermodeller是一个用于数据建模的CASE工具。该工具支持概念建模和逻辑建模,并在最后生成特定数据库的物理模型。支持的数据库包括:MySQL、PotgreSQL、Oracle、Pointbase,对其它数据库的支持需要通过XML文件自定义
GMOD is the G eneric M odel O rganism D atabase project, a collection of open source software tools for creating and managing genome-
pgDesigner 是一个为PostgreSQL数据库设计的建模工具
Enterprise Architect是一款计算机辅助软件工程(CASE)工具,用于设计和构建软件系统、业务流程建模及更多通用的建模。
mybatis 通用 basedao,含自动生成通用 XMLMapper。 可通过此工具自动生成 Mybatis XML 文件和 dao 的 class 类