Cassandra 初学者教程:3天学会

什么是 Apache Cassandra?

Cassandra 是一种分布式数据库管理系统,旨在处理商品服务器上的大量结构化数据。

Cassandra 采用分布式架构处理海量数据。数据被放置在不同的机器上,具有多个复制因子,可提供高可用性且不会出现单点故障。

下图中,圆圈是 Cassandra 圆圈之间的节点和线表示分布式架构,而客户端正在向节点发送数据。

Cassandra 数据库初学者教程:3 天学会

Cassandra 教学大纲

介绍

👉 Less上1 安装 Cassandra — 如何下载和安装 Cassandra on Windows
👉 Less上2 Cassandra Archi结构与复制因子策略 — 综合指南
👉 Less上3 Cassandra 资料模型 — 通过简单示例学习

进阶的东西

👉 Less上1 Cassandra 键空间 — 创建、修改和删除键空间 Cassandra 与例子
👉 Less上2 Cassandra 表 — 创建、修改、删除和截断(附示例)
👉 Less上3 Cassandra 查询语言 (CQL) — 插入、更新、删除(示例)
👉 Less上4 创建并删除索引 Cassandra — 通过实例学习
👉 Less上5 Cassandra CQL 数据类型和使用 TTL 的数据过期 — 通过实例学习
👉 Less上6 Cassandra 购物 — 集合、列表、映射示例
👉 Less上7 Cassandra Cluster 设置 - Cluster 在多个节点上设置
👉 Less上8 DataStax DevCenter 和 OpsCenter 安装 — 循序渐进的指南
👉 Less上9 Cassandra 安全性 — 使用 JMX 创建用户和身份验证

必须知道!

👉 Less上1 Cassandra 面试问题 — 前 23 名 Cassandra 面试问答
👉 Less上2 Cassandra 教程 PDF - 下载 Cassandra 初学者教程 PDF

Cassandra 发展历程

  • Cassandra 最初是在 Facebook 为收件箱搜索而开发的。
  • Facebook 于 2008 年 XNUMX 月将其开源。
  • Apache 孵化器获批 Cassandra 在3月2009。
  • Cassandra 是 阿帕奇 自2010月XNUMX日以来。
  • 最新版本的 Apache Cassandra 是3.2.1。

首先我们来了解一下什么是NoSQL数据库。

诺斯克 Cassandra 数据库

NoSQL 数据库被称为“非关系型”数据库。NoSQL 数据库存储和检索除关系型数据库等表格关系之外的数据。

NoSQL 数据库包括 MongoDB、HBase 和 Cassandra.

NoSQL数据库有以下属性。

  • 设计简单
  • 水平缩放
  • 高可用性

使用的数据结构 Cassandra 比关系数据库中使用的数据结构更加具体。 Cassandra 数据结构比关系数据库结构更快。

NoSQL 数据库越来越多地用于大数据和实时 Web 应用程序。NoSQL 数据库有时被称为不仅 SQL 即它们可能支持类似 SQL 的查询语言。

诺斯克 Cassandra 数据库与关系数据库

以下是表格形式的关系数据库和 NoSQL 数据库之间的区别。

关系型数据库 NoSQL 数据库
处理低速数据 处理高速传入的数据
数据来自一个或几个位置 数据来自多个位置
管理结构化数据 管理结构化、非结构化和半结构化数据。
支持复杂事务(带连接) 支持简单交易
具有故障转移功能的单点故障 没有单点故障
处理中等量的数据。 处理大量数据
集中部署 分散部署
交易记录集中于一处 交易记录在多处
提供读取可扩展性 提供读写可扩展性
垂直部署 水平部署

Apache Cassandra 产品优势

有以下特点 Cassandra 提供。

  • 大规模可扩展 Archi結構: Cassandra 采用无主设计,所有节点处于同一级别,从而提供操作简单性和轻松扩展。
  • 无主 Archi結構: 可以在任意节点上写入和读取数据。
  • 线性尺度性能: 随着更多节点的添加, Cassandra 增加。
  • 无单点故障: Cassandra 在不同的节点上复制数据,确保没有单点故障。
  • 故障检测与恢复: 故障节点可以轻松恢复和恢复。
  • 灵活动态的数据模型: 支持快速写入和读取的数据类型。
  • 数据保护: 数据通过提交日志设计和内置安全性(如备份和恢复机制)进行保护。
  • 可调数据一致性: 支持跨分布式架构的强数据一致性。
  • 多数据中心复制: Cassandra 提供跨多个数据中心复制数据的功能。
  • 数据压缩: Cassandra 可以压缩高达 80% 的数据而无任何开销。
  • Cassandra 查询语言: Cassandra 提供与 SQL 语言类似的查询语言。它使关系数据库开发人员能够轻松地从关系数据库迁移到 Cassandra.

Cassandra 用例/应用

Cassandra 是一种非关系型数据库,可用于不同类型的应用程序。以下是一些用例 Cassandra 应该是首选。

  • 消息Cassandra 是一个很棒的数据库,为公司提供 联络号码 手机和短信服务。这些公司拥有大量数据,因此 Cassandra 最适合他们。
  • 物联网应用Cassandra 对于从不同设备或传感器高速传输数据的应用程序来说,这是一个很棒的数据库。
  • 产品目录和零售应用程序Cassandra 被许多零售商用于持久的购物车保护和快速的产品目录输入和输出。
  • 社交媒体分析和推荐引擎Cassandra 是许多在线公司和社交媒体提供商用来分析和向客户推荐的绝佳数据库。