如何正确选择NoSQL数据库( 二 )


领先的NoSQL数据库如果您已根据上述五个问题决定选用NoSQL数据库的话,那么下面我们来介绍一下目前市场上领先的各种NoSQL数据库 。
AerospikeAerospike是一种开源的分布式、实时、高性能NoSQL数据库,专为零容忍停机和高读写吞吐量的应用而设计 。作为一种多模型NoSQL和图数据库,Aerospike支持不同模型的数据同步 , 对扩展并不设限,以便企业能够实时处理数十亿笔交易 。根据其产品文档,Aerospike采用了大规模并行和统一的存储模型,以确保尽可能小得占用服务器空间 。
同时 , 该数据库可以在边缘处获取流式数据,并与记录系统、第三方来源、数据仓库或数据湖中的原有数据相结合,以用于后续的操作、交易或负载分析 。Aerospike既可以在企业内部运行 , 也可以作为云管理服务运行 。
AWS DynamoDBAmazon DynamoDB是一种无服务器、NoSQL、且全托管的数据库服务,可以在任何规模下提供毫秒级的响应时间 。该数据库的最大卖点之一是它使得企业只有在开发和运行应用时,才需要为使用付费 。
作为一项云原生的数据服务,DynamoDB通过静态加密来保护敏感数据 。同时 , 它允许用户通过自创数据库表,来存储和检索任意数量的数据,并为任意级别的请求流量提供服务 。据AWS称 , 用户具有自由扩缩数据表的吞吐能力,而不会出现停机或性能下降 。当然,开发人员和管理员也可以使用AWS管理控制台,来监控资源利用率和性能指标 。
此外,DynamoDB还提供了按需备份的能力 。它允许用户创建数据表的完整备份,以便长期保留和遵从本地法规的需求 。
Couchbase由Couchbase公司发布的Couchbase Server,是一个支持多模型JSON文档数据库平台 。作为一个内置了缓存的开源NoSQL键值和文档数据库,它适用于需要提供性能、多模型、可扩容、以及自动化数据库的企业 。
通常,企业可以利用该平台来支持社交和移动应用、内容与元数据存储、以及电商交易等应用 。它为各种文档、数据模型、索引、全文搜索、以及用于实时分析的MapReduce提供了全面的支持 。
DataStaxDataStax Astra DB是一种基于Apache Cassandra的全托管云原生数据库即服务 。据称 , 它可以实现动态扩展,并通过一系列API和编程语言选项,来加速开发人员构建实时应用 , 并对扩展不设限 。
同时 , 开发人员也可以利用Astra DB的内置安全机制(如专用链接、IP访问控制、单点登录、应用令牌和数据加密),来实时确保数据安全 。当然,基于微服务和API优先原则构建的Astra DB无服务器架构 , 还可按需进行自动扩展 。
谷歌BigTable谷歌声称Bigtable是一种企业级NoSQL数据库服务,具有低至个位数的毫秒级延迟、无限制的扩展能力、以及99.999%的可用性 。而且,它支持多租户、混合操作和实时负载分析 。
同时 , 谷歌表示,作为一种键值和宽列(wide-column)存储 , Bigtable是快速访问结构化、半结构化、以及非结构化数据的理想选择 。针对延迟敏感的个性化负载,Bigtable可以自动扩展其资源 , 以适应服务器的流量,并按需处理相关分片、复制和查询处理 。
MarkLogicMarkLogic Server是一个多模型数据库,它能够将文档、语义图、地理空间和关系模型结合到单个可扩展的、可操作的数据库中 。它为JSON、XML、文本、RDF三元组、地理空间和二进制文件等提供了本地存储 , 并具有统一的搜索和查询界面 。
由于该数据库的核心部分内置了搜索引擎,提供了一个从silos处加载数据,并搜索所有数据的单一平台,因此它不需要通过附加搜索引擎来进行全文搜索 。此外,MarkLogic Server还提供了DLP等企业级的数据安全控件 。
微软Azure CosmosAzure Cosmos DB作为微软Azure的数据库服务 , 支持多种NoSQL模型和多种数据格式,其中包括JSON和二进制数据等 。微软表示 , 该数据库属于全托管模式,由微软Azure处理所有底层基础架构,以便开发人员更专注于自己的应用和数据 。
Azure Cosmos DB不但提供了数据加密和数据访问控制等安全工具,而且具有自动和即时扩展能力,更为MongoDB、Cassandra和其他NoSQL引擎提供了开源的API 。
MongoDB由MongoDB Inc.维护、以Gnu Affero通用公共许可证和Apache许可证的组合形式发布的MongoDB,是一个免费的开源、跨平台、且面向文档的数据库 。它使用带有模式的JSON类文档,并结合了从优化各类组织的数千次部署中,学到的最佳操作实践 。


推荐阅读