Oracle NoSQL Database Cloud Service 的特性
了解 Oracle NoSQL Database Cloud Service 和 Always Free NoSQL Database Service 的主要特性。“始终免费”NoSQL 数据库服务当前仅在菲尼克斯区域中可用。
本文包含以下主题:
主要功能
了解 Oracle NoSQL Database Cloud Service 的主要功能。
-
零管理完全托管:开发人员无需管理数据服务器或底层基础设施和安全性。Oracle 负责维护硬件和软件,以便开发人员可以专注于构建应用。
-
加快开发周期:在购买对服务的访问权限后,开发人员编写应用,然后使用其凭证连接到服务。可以立即开始读取和写入数据。Oracle 可执行数据库管理、存储管理、高可用性和可扩展性,可帮助开发人员集中精力交付高性能应用。
-
高性能和可预测性:Oracle NoSQL Database Cloud Service 通过大规模提供高性能,充分利用 Oracle Cloud Infrastructure 中的新组件技术。开发人员知道,即使吞吐量和存储需求增加,他们的应用也会以可预测的延迟返回数据。
-
按需吞吐量和存储预配:Oracle NoSQL Database Cloud Service 可按需扩展,满足应用吞吐量性能要求,且延迟低且可预测。随着工作负载的增加以及业务的定期波动,应用可以增加预配的吞吐量,以保持一致的用户体验。随着工作负载的减少,相同的应用可以降低预配的吞吐量,从而降低运营费用。对于存储要求也是如此。这些可以根据业务波动进行调整。您可以使用 Oracle Cloud Infrastructure 控制台或
TableRequestAPI 增加或减少存储。您可以选择按需容量分配或基于预配容量分配:
-
借助按需容量,您无需为每个表预配读取或写入容量。您只需为实际使用的读取和写入单位付费。Oracle NoSQL Database Cloud Service 可自动管理读取和写入容量,以满足动态工作负载的需求。
-
借助预配的容量,您可以使用 Oracle Cloud Infrastructure 控制台或
TableRequestAPI 增加或减少吞吐量。
您还可以将容量模式从“预配容量”修改为“按需容量”,反之亦然。
-
-
专用托管环境:通过 Oracle NoSQL Database Cloud Service,您可以在专用托管环境中运行工作负载。此类环境用于高要求的应用负载。Oracle NoSQL Database 托管环境是一个具有本地附加存储的 NoSQL 环境,专用于您的租户,具有极高的读取、写入和存储限制。
-
全局活动表:Oracle NoSQL Database Cloud Service 支持全局活动表体系结构,您可以在其中创建表,跨多个区域复制表,以及跨区域副本维护同步数据。全局活动表是具有一个或多个区域表副本的表。对一个区域中的表进行的任何更新都会自动传播到所有其他参与区域的副本。全局活动表可以使用预配的吞吐量模型或按需吞吐量模型。通常,所有 Oracle NoSQL 表都是作为单例表创建的。单例表是未在一个或多个区域之间复制的 Oracle NoSQL 表。单例表的对应对象是全局活动表。单例表可以通过在另一个区域中添加表副本来转换为全局活动表。可以在表的整个生命周期内添加或删除区域副本。
注:始终免费的 NoSQL 表只能是单例表。
-
数据建模:Oracle NoSQL Database Cloud Service 支持基于方案和无方案 (JSON) 的建模。
-
JSON 数据支持:Oracle NoSQL Database Cloud Service 支持开发人员使用熟悉的 SQL 语法查询无模式 JSON 数据。
-
部分 JSON 更新:Oracle NoSQL Database Cloud Service 支持开发人员更新(更改、添加和删除)JSON 文档部分。由于这些更新发生在服务器上,因此无需执行读 - 修改 - 写入循环,这将消耗吞吐量。
-
简单 API:Oracle NoSQL Database Cloud Service 提供易于使用的 CRUD(创建读取更新删除)API,支持开发人员轻松创建表并维护其中的数据。
-
冗余中的数据安全:Oracle NoSQL Database Cloud Service 在单个 AD 区域中跨多个可用性域 (Availability Domain,AD) 或容错域 (Fault Domain,FD) 存储数据。如果 AD 或 FD 变得不可用,则仍可从其他 AD 或 FD 访问用户数据。
-
数据安全性:使用高级加密标准 (Advanced Encryption Standard,AES 256) 对数据进行静态(磁盘)加密。数据通过 HTTPS 进行动态加密(在应用与 Oracle NoSQL Database Cloud Service 之间传输数据)。
-
符合 ACID 的事务:Oracle NoSQL Database Cloud Service 中存储的数据完全支持 ACID(Atomicity,Consistency,Isolation,Durability,原子性、一致性、隔离性)事务。如果需要,可以放宽一致性,以降低延迟。
-
上线时间:Oracle NoSQL Database Cloud Service 支持开发人员在表行上设置时间范围,之后行将自动失效,不再可用。在获取物联网 (IoT) 服务的传感器数据时,此功能是一项关键要求。
-
SQL 查询:Oracle NoSQL Database Cloud Service 支持开发人员通过 SQL 查询访问数据。
-
辅助索引:辅助索引允许开发人员在支持的数据类型的任何字段上创建索引,从而提高使用索引的查询的多个路径的性能。
-
NoSQL 表层次:Oracle NoSQL Database Cloud Service 支持具有高可扩展性的表层次,同时还能提供数据规范化的优势。NoSQL 表层次结构是理想的数据模型,适用于需要某种数据规范化的应用,但也需要大规模的可预测、低延迟。表层次结构将不同表链接在一起,因此可以实现左外部联接,并基于两个或多个表之间的相关列组合其中的行。此类联接的执行效率很高,因为父子表中的行位于同一数据库分片中。
Oracle NoSQL Database 的责任模型
通常,Oracle 负责执行与管理和监视 Oracle NoSQL Database 的 Oracle Cloud 服务相关的各种管理任务。但是,您负责执行一些任务,有时还负责指示 Oracle 启动任务或指定 Oracle 如何或何时执行任务。
表 - Oracle 与客户之间的共享任务
| 任务 | 谁 | 详细资料 |
|---|---|---|
| 预配 NoSQL 数据库表 | Oracle | Oracle 负责预配表。客户负责发起预配请求,以指定指定的表的容量,包括读取单位、写入单位和存储。此外,客户还负责指定定价模型。 |
| 备份表 | Customer | 客户负责按自己选择的计划备份表。Oracle 提供了一个迁移工具,可用于备份并将其存储在 Oracle 对象存储中。 |
| 恢复表 | Customer | 客户负责恢复其表。Oracle 提供了一个迁移工具,可用于从存储在 Oracle 对象存储中的文件还原表。 |
| 为 RAC 打补丁和升级 | Oracle | Oracle 负责为所有 NoSQL 数据库资源打补丁和升级。 |
| 缩放 | Oracle | Oracle 负责扩展 NoSQL 数据库表。贵方负责发起扩展请求。 |
| 监视服务健康状况 | Oracle | Oracle 负责监视 NoSQL 数据库资源的健康状况,并根据发布的准则确保这些资源的可用性。 |
| 监视应用运行状况和性能 | Customer | 客户负责在各个级别监视应用的运行状况和性能。此责任包括监视表的性能并更新应用程序执行的性能。 |
| 应用程序安全 | Customer | 客户负责确保应用在各个级别的安全。此责任包括云用户对 NoSQL 数据库表的访问、对这些资源的网络访问以及对数据的访问。Oracle 确保对存储在 NoSQL 数据库表中的数据进行加密,并确保与 NoSQL 数据库表的连接需要 TLS 1.2 加密和基于 wallet 的验证。 |
| 审计 | Oracle | Oracle 负责记录对 NoSQL 数据库表进行的 DDL API 调用,并帮助客户将这些日志提供给您进行审计。 |
| 预警和通知 | Oracle | Oracle 负责为服务事件提供警报和通知功能。客户负责监视可能感兴趣的任何数据库预警。 |
始终免费的服务
注:“始终免费 NoSQL 数据库服务”仅在 Phoenix 区域中可用。
始终免费 NoSQL 数据库服务
作为 Oracle Cloud 免费套餐的一部分,Oracle NoSQL Database Cloud Service 作为 Always Free 服务参与。本节介绍该教程的限制和详细信息。
Always Free NoSQL 数据库服务的功能
-
您所在区域最多可以有三个 Always Free NoSQL 表。
-
可以在同一区域中同时具有“始终免费”表和常规表。
-
控制台中将显示“Always Free(始终免费)”NoSQL 表,其中表名旁边的标签为“Always Free(始终免费)”。
-
“始终免费”NoSQL 表不能更改为常规表,反之亦然。
始终免费 NoSQL 表的资源限制
-
在任何区域中,在任何时间最多可以有三个 Always Free NoSQL 表。如果有三个 Always Free NoSQL 表,则禁用用于创建 Always Free NoSQL 表的切换按钮。如果删除这些表中的一个或多个,则将重新启用切换按钮。
-
读取容量(读取单位数)为 50,无法更改。
-
写入容量(写入单位)为 50,无法更改。
-
磁盘存储为 25GB,无法更改。
区域可用性
目前,“始终免费”NoSQL 表仅在菲尼克斯区域中可用。
Always Free NoSQL 表 - 不活动状态和删除
如果“始终免费”NoSQL 表在 30 天内未被使用或访问,它将变为“不活动”状态。删除将保持 90 天非活动的 Always Free NoSQL 表。不活动状态显示在控制台中表名的旁边。当表最初变为非活动状态(在不活动 30 天后)时,将向租户管理员发送客户通知。75 天处于不活动状态时将再次发送提醒。
可以通过对表中的任何行执行任何 get/put/delete 操作,使“始终免费 NoSQL”表再次处于活动状态。DDL 操作不会使非活动表再次处于活动状态。
专用托管环境
了解 Oracle NoSQL Database Cloud Service 专用托管环境。
Oracle NoSQL Database 托管环境提供了一个专用于租户的 NoSQL 环境。贵方每月支付固定的托管环境费用,并且有权使用可供环境使用的所有写入、读取和存储容量。有关提交服务请求以请求专用托管环境的信息,请参阅请求专用托管环境。
专用托管环境的特性:
-
每个客户云租户的专用环境,每秒处理数千个读/写请求,可满足高要求的应用的高吞吐量需求。
-
基础设施专用于单个租户。
-
您可以使用环境可用的所有写入、读取和存储容量。
-
托管环境允许您对租户中的任何表设置限制。
-
托管环境的端点格式为
<tenancyName>.nosql.${REGION}.${REALM}。例如,实例 Acme Widget (租户名称为 acmewidget )和 Ashburn 区域 (us-ashburn-1) 中的托管环境将具有acmewidget.nosql.us-ashburn- 1.oci.oraclecloud.com托管环境端点。 -
CMEK 的托管环境(客户管理的加密密钥)允许您使用自己的主加密密钥加密数据加密密钥,也称为 CMEK。有关详细信息,请参见 Introduction to Customer-Managed Encryption keys 。
托管环境与非托管环境之间的区别:
-
在专用托管环境中,您可以更灵活地分配表限制。
-
您无需为预配或按需读取/写入/存储单元单独收费,而是需要为整个托管环境按月向您收费。
-
您可以(在所有表中)使用多达 420,000 个读取单元、280,000 个写入单元和 17.5 TB 存储。
-
您可以创建表,其限额(100,000 个读取单位,40,000 个写入单位,5 TB 存储)高于商用 Oracle 云区域规定的限额。
注:当前,专用托管环境不支持全局活动表。
NoSQL Cloud Service 与内部部署数据库之间的功能差异
表 - 高级功能比较
| - | NoSQL Database Cloud 服务 | NoSQL Database Enterprise Edition (EE) |
|---|---|---|
| 基础设施和软件管理/维护(服务器、存储、网络、安全性、操作系统和 NoSQL 软件) | 由 Oracle 管理 | 由客户管理 |
| 数据库的部署 | 仅 Oracle Cloud | Oracle Cloud 或其他云供应商的客户本地数据中心或 BYOL。 |
| 许可/版本 | 付费订阅或始终免费的服务 | Enterprise Edition(付费版)或 Community Edition(免费开源版) |
| 吞吐量 | 吞吐量通过 NoSQL API 或 Oracle Cloud Infrastructure (OCI) 控制台在每个 NoSQL 表级别进行管理。容量以写入单位和读取单位来衡量。可以调整每个表的吞吐量,以满足动态工作负荷。超出表的限制时,将通知用户。在租户级别,存在最大服务限制。要获取更多详细信息,请参阅 Oracle NoSQL Database Cloud Service 限制。 | 在每个 NoSQL 集群中管理吞吐量。容量取决于部署的 NoSQL 集群的大小。较大的集群大小为用户表提供了更大的吞吐量。 |
| 存储 | 存储容量通过 NoSQL API 或 Oracle Cloud Infrastructure (OCI) 控制台在每个 NoSQL 表级别进行管理。容量以千兆字节 (GB) 为单位。可以调整每个表的存储容量以满足动态工作负载。超出表的限制时,将通知用户。在租户级别,存在最大服务限制。要获取更多详细信息,请参阅 Oracle NoSQL Database Cloud Service 限制。 | 每个 NoSQL 集群都管理存储容量。容量取决于集群中部署的每个存储节点的磁盘数量和特定配置。较大的群集大小和磁盘容量为用户表提供了更多存储空间。 |
| 互用性 | 通过单个编程界面与 NoSQL Database Enterprise Edition 互操作,无需修改任何应用程序代码。 | 通过单个编程界面与 NoSQL Database Cloud Service 互操作,无需修改应用程序代码。 |
| 安装 | 没有客户安装。客户可通过创建 NoSQL 表来立即开始使用该服务。 | 客户可以下载并安装该软件,以便在多个存储节点中设置 NoSQL 集群。 |