AI 年度盘点与2025发展趋势展望,50+案例解析亮相AICon 了解详情
写点什么

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:35721

评论

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

🏆 【JVM性能调优】「对象内存分配」虚拟机参数调优分析

洛神灬殇

GC jvm调优 内存分配 7月日更

2021最新一线大厂Java高级架构师面试题总结,上线3天获22w浏览量

Java 编程 程序员 架构 面试

话题讨论|你知道集群、分布式、微服务区别吗?

Emotion

分布式 微服务 话题讨论 集群 话题王者

剑指“双碳”目标,浪潮云牵手中科谱光一起做「光谱捕手」

云计算

CodeDay#7 启动 | 北京欢迎你

蚂蚁集团移动开发平台 mPaaS

小程序 webview 移动开发 mPaaS

云原生领域的一些技术展望

名白

容器 云原生 Service Mesh service

(VMware)ubuntu 环境下搭建 docker 镜像私服

逸少

Docker 镜像仓库

Hadoop 数据仓库建设实践(理论结合实践)

云祁

hadoop 数据仓库 7月日更

程序员35岁以后就真的要返乡种田了么?如果没田种怎么办?|话题

花花

话题讨论 话题 话题王者 话题广场

又曝出程序员删库跑路,业界何时能推出互联网企业和程序员之间的约束准则?|话题

三掌柜

话题讨论 话题 话题王者 话题广场

极客时间-排位赛可视化工具

IT蜗壳-Tango

7月日更

网络攻防学习笔记 Day61

穿过生命散发芬芳

网络攻防 7月日更

Linux之tail命令

入门小站

Linux

党建百年,矛盾论指导架构设计

三石

架构设计

Flink运行架构

五分钟学大数据

flink 7月日更

念念不忘,必有回响!6月更文活动的一些总结

编程三昧

程序员 程序人生 代码人生

“Windows 找不到文件...”,怎么处理?

Emotion

windows 系统 找不到系统文件 windows找不到文件

架构思考

zk

微信 架构 微信业务架构

HarmonyOS学习路之开发篇——公共事件与通知(二)

爱吃土豆丝的打工人

HarmonyOS 通知事件

浅谈大数据建模的主要技术:维度建模

云祁

大数据 数据仓库 维度建模 7月日更

时间管理:通过折叠时间放大时间价值

石云升

读书笔记 时间管理 7月日更

推荐系统提供web服务的2种方式(二十四)

Databri_AI

算法 推荐系统 web服务

Java入门到架构-优秀书籍

Java入门到架构

Java 架构 入门 书籍

“懂行人”合力共建“强富美高”数字经济助力千载金陵的数字一跃

脑极体

在线HTML实体转字符串工具

入门小站

工具

低代码“三合一”模式,解决产品研发系统沟通问题!

优秀

低代码

5分钟速读之Rust权威指南(三十四)面向对象

wzx

rust

业务架构模块7 作业 王者荣耀商城异地多活

好吃不贵

业务架构

李某逆道而行闭关三月,直接四杀斩获阿里/腾讯/京东/百度等大厂offer

Java架构师迁哥

PowerShell 数组

耳东@Erdong

PowerShell 7月日更

为什么 FaaS 系统的复杂性不会随着规模的增长而指数增长?

朱峰 Ben

Serverless Faas

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