写点什么

Amazon Managed Apache Cassandra Service (MCS)

  • 2019-12-11
  • 本文字数:3068 字

    阅读完需:约 10 分钟

Amazon Managed Apache Cassandra Service (MCS)

规模化管理数据库绝非易事。Apache Cassandra 是存储、检索和管理大量结构化数据(包括键值和表格格式)的一种选择。借助 Cassandra,您可以使用强大的 Cassandra 查询语言 (CQL) 快速构建应用程序。


但是,管理大型 Cassandra 集群可能很困难,并且需要很多时间。您需要设置、配置和维护基础基础结构的专业知识,并且对包括 Apache Cassandra 开源软件在内的整个应用程序堆栈有深刻的了解。您需要手动添加或删除节点,重新平衡分区,同时保持应用程序具有所需的性能。与客户沟通时,我们发现他们经常扩展集群规模以应对峰值负载,因为缩减规模很复杂。为了使您的 Cassandra 集群保持更新,您必须逐个节点更新。 如果在更新过程中出现问题,则很难备份和还原集群,并且最终可能会跳过补丁程序或运行过时的版本。


隆重推出 Amazon Managed Cassandra Service


今天,我们将推出 Amazon Managed Apache Cassandra Service (MCS) 的公开预览版,这是一款可扩展、高度可用、托管的兼容 Apache Cassandra 的数据库服务。 Amazon MCS 是一款无服务器服务,因此您只需为使用的资源付费,并且此服务会根据应用程序的流量变化自动扩展和收缩表。 您可以构建能够每秒处理数千请求的应用程序,并且吞吐量和存储容量几乎没有限制。


借助 Amazon MCS,您可以使用当今所用的相同 Cassandra 应用程序代码和开发人员工具在 AWS 上运行 Cassandra 工作负载。 Amazon MCS 实现了 Apache Cassandra 版本 3.11 CQL API,允许您使用应用程序中已有的代码和驱动程序。更新应用程序就像将终端节点更改为 Amazon MCS 服务表中的终端节点一样简单。


Amazon MCS 可以任何规模提供一致的个位数毫秒级读写性能,因此您可以构建低延迟应用程序,提供流畅的用户体验。您可以查看应用程序使用 Amazon CloudWatch 的运行情况。


表大小或项目数没有限制,无需预置存储。 数据存储完全托管并且高度可用。您的表数据将跨多个 AWS 可用区自动复制 3 次,以实现持久性。


默认情况下,所有客户数据在静止时加密。您可以使用存储在 AWS Key Management Service (KMS) 中的加密密钥。 Amazon MCS 还与 AWS Identity and Access Management (IAM) 集成在一起,以帮助您管理对表和数据的访问。


使用 Amazon Managed Cassandra Service


您可以将 Amazon MCS 与控制台、CQL 或现有的 Apache 2.0 许可的 Cassandra 驱动程序配合使用。 控制台中有一个 CQL 编辑器,您也可以使用 [](http://cassandra.apache.org/doc/latest/tools/cqlsh.html) 进行连接。 ****


要使用 cqlsh 进行连接,我需要为现有 IAM 用户生成特定于服务的凭证。这只是使用 AWS命令行界面 (CLI) 的命令:


aws iam create-service-specific-credential --user-name USERNAME --service-name mcs.amazonaws.com


Json


{    "ServiceSpecificCredential": {        "CreateDate": "2019-11-27T14:36:16Z",        "ServiceName": "mcs.amazonaws.com",        "ServiceUserName": "USERNAME-at-123412341234",        "ServicePassword": "...",        "ServiceSpecificCredentialId": "...",        "UserName": "USERNAME",        "Status": "Active"    }}
复制代码


Amazon MCS 仅接受使用 TLS 的安全连接。 下载 Amazon 根证书并编辑 cqlshrc 配置文件以使用它。 现在,我可以连接:


cqlsh {endpoint} {port} -u {ServiceUserName} -p {ServicePassword} --ssl


首先,我创建一个键空间。键空间包含一个或多个表,并为其包含的所有表定义复制策略。使用 Amazon MCS,所有键空间的默认复制策略是单区域策略。它跨单个 AWS 区域中的多个可用区复制数据 3 次。


要创建键空间,我可以使用控制台或 CQL。在Amazon MCS 控制台中,我提供了键空间的名称。



同样,我可以使用 CQL 创建键空间:


CREATE KEYSPACE IF NOT EXISTS bookstore WITH REPLICATION={'class': 'SingleRegionStrategy'};


现在我创建一个。 表是组织和存储数据的地方。同样,我可以使用控制台或 CQL。从控制台中,选择 bookstore 键空间并为表命名。



在下方,为 books 表添加列。表中的每一行都由一个主键引用,该主键可以由一个或多个列组成,这些列的值确定数据存储在哪个分区中。在本例中,主键是 ISBN。我可以选择添加集群列,这些列确定分区中记录的排序顺序。我没有为此表使用集群列。



或者,借助 CQL,可以使用以下命令创建表:


USE bookstore;


CREATE TABLE IF NOT EXISTS books


(isbn text PRIMARY KEY,


title text,


author text,


pages int,


year_of_publication int);


我现在使用 CQL 在 books 表中插入一条记录:


INSERT INTO books (isbn, title, author, pages, year_of_publication)


VALUES ('978-0201896831',


'The Art of Computer Programming, Vol. 1: Fundamental Algorithms (3rd Edition)',


'Donald E. Knuth', 672, 1997);


让我们运行一个快速查询。在控制台中,选择 books 表,然后选择查询表



在 CQL 编辑器中,使用默认查询并选择运行命令



默认情况下,会在表视图中看到查询结果:



也可以选择查看 JSON 格式的结果,类似于使用 Cassandra API 的应用程序看到的结果:



要插入更多记录,再次使用 csqlsh 并从本地 CSV 文件上传一些数据:


COPY books (isbn, title, author, pages, year_of_publication)


FROM './books.csv' WITH delimiter=',' AND header=TRUE;


现在,再次查看 books 表的内容:


SELECT * FROM books;


我可以使用主键选择行,也可以对其他条件使用筛选。例如:


SELECT title FROM books WHERE isbn='978-1942788713';


SELECT title FROM books WHERE author='Scott Page' ALLOW FILTERING;



借助 Amazon MCS,您可以使用现有 Apache Cassandra 2.0 许可证版驱动程序和开发人员工具。开源 Cassandra 驱动程序可用于 Java、Python、Ruby、.NET、Node.js、PHP、C ++、Perl 和 Go。


您可以在 Amazon MCS 文档中了解更多信息。


现已推出公开预览版


Amazon MCS 现已在以下区域推出公开预览版:美国东部(弗吉尼亚北部)、美国东部(俄亥俄)、欧洲(斯德哥尔摩)、亚太地区(新加坡)、亚太地区(东京)。


使用 Cassandra API 库时,我们为开源 Apache Cassandra 项目提供错误修复。我们还回馈改进,例如对 AWS 身份验证的内置支持 (SigV4),它为在 Amazon Elastic Compute Cloud (EC2) 上运行 Cassandra 的客户简化凭证管理,因为 EC2 和 IAM 可以使用实例角色自动处理凭证的分发和管理。我们还宣布为 AWS 促销服务抵扣金额提供资金,以测试与 Cassandra 相关的开源项目。要了解有关这些贡献的更多信息,请访问开源博客


在预览期间,您可以使用按需容量的 Amazon MCS。一般情况下,我们还将提供使用预配吞吐量处理更多可预测工作负载的选项。通过按需容量模式,Amazon MCS 会根据您的应用程序从表读写的数据量向您收费。您无需指定为表配置读写吞吐量,因为 Amazon MCS 会随着工作负载的增加或减少即刻进行调整。


作为 AWS 免费套餐的一部分,您可以免费开始使用 Amazon MCS。在最初的三个月中,每月为您提供免费套餐,包括 3000 万个写入请求单元、3000 万个读取请求单元和 1 GB 存储。您的免费套餐在您创建第一个 Amazon MCS 资源时开始。


明年,我们将简化到 Amazon MCS 的数据迁移,增加对使用AWS Database Migration Service 的支持。


Amazon MCS 使得可以轻松使用任意规模的 Cassandra 工作负载,并提供了构建新应用程序或迁移现有应用程序的简单编程界面。我迫不及待地想要看看您会用它来做什么!


本文转载自 AWS 技术博客。


原文链接:https://amazonaws-china.com/cn/blogs/china/new-amazon-managed-apache-cassandra-service-mcs/


2019-12-11 15:35834

评论

发布
暂无评论
发现更多内容

GPT账号被封,如何申诉找回

蓉蓉

ChatGPT GPT-4

喜讯!云起无垠入围2023年度中国高科技高成长企业系列榜单

云起无垠

业内首个!央广网APP率先完成鸿蒙原生应用全量版本开发,领跑鸿蒙化进程

最新动态

新版Redis不再“开源”,对使用者都有哪些影响?

平平无奇爱好科技

Partisia Blockchain:如何做到兼顾隐私、高性能和可拓展?

石头财经

一文读懂兼顾隐私、高性能和可拓展的公链Partisia Blockchain

BlockChain先知

关于 ASP.NET Core 中的选项模式

雄鹿 @

ASP.NET Core

Redis不再 “开源”

派大星

redis 开源协议

vivo 消息中间件测试环境项目多版本实践

vivo互联网技术

RocketMQ 消息中间件 多版本环境隔离

2024-03-27:用go语言,多维费用背包。 给你一个二进制字符串数组 strs 和两个整数 m 和 n, 请你找出并返回 strs 的最大子集的长度,该子集中 最多 有 m 个 0 和 n 个

福大大架构师每日一题

福大大架构师每日一题

浅析KV存储之长尾时延问题,探寻行业更优解决方案!

平平无奇爱好科技

大模型的 Token 使用详解:限制与注意事项

木南曌

大模型

足球场上的黑科技:图神经网络优化角球

算AI

#人工智能

GeminiDB新特性:让Redis广告频控爱不释手的exHASH

平平无奇爱好科技

保护主机安全,我来buff加成

华为云开发者联盟

安全 开发 华为云 华为云开发者联盟 华为云云图说

提升JavaScript代码质量的最佳实践

南城FE

JavaScript 前端 代码质量

堪称教学神器的5款软件,每一款都值得推荐!

彭宏豪95

效率工具 在线教育 在线白板 办公软件 在线协作

Jetson Xavier nx 全盘加密

一五

AI 边缘计算 jetson 全盘加密 jetson xavier nx

究竟什么样的数据库,才能承接RTA广告这个技术活!

平平无奇爱好科技

【干货分享】华为云多模数据库GeminiDB架构与应用实践直播问答实录

平平无奇爱好科技

云计算与 AI 融合:Amazon Connect 开创客户服务智能时代

亚马逊云科技 (Amazon Web Services)

在 ASP.NET Core 中使用 HttpClient

雄鹿 @

ASP.NET Core

华为云GeminiDB发布新版本,全面支持Redis 6.2

平平无奇爱好科技

华为云原生多模数据库GeminiDB架构与应用实践

平平无奇爱好科技

关于 ASP.NET Core 中的配置系统

雄鹿 @

ASP.NET Core

Amazon Managed Apache Cassandra Service (MCS)_行业深度_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章