Cassandra简介

  • Cassandra是一个开源分布式NoSQL数据库系统。
  • 它最初由Facebook开发,用于储存收件箱等简单格式数据,集GoogleBigTable的数据模型与Amazon Dynamo的完全分布式的架构于一身。Facebook于2008将 Cassandra 开源,此后,由于Cassandra良好的可扩展性,被Digg、Twitter等知名Web 2.0网站所采纳,成为了一种流行的分布式结构化数据存储方案。
  • 不过国内并未流行起来,除了最早的淘宝和360在用,加上阿里巴巴后来一直在推崇HBase,就GG了。。。

    Cassandra特点

  • Cassandra的主要特点就是它不是一个数据库,而是由一堆数据库节点共同构成的一个分布式网络服务,对Cassandra 的一个写操作,会被复制到其他节点上去,对Cassandra的读操作,也会被路由到某个节点上面去读取。对于一个Cassandra集群来说,扩展性能是比较简单的事情,只管在群集里面添加节点就可以了。
  • 上面的话太官方了,哈哈哈。,简单来说呢就是说它是一个P2P去中心化的东西,咱门平时传统用的数据库都会有Master/Slave,在复杂的场景下对于Master进行扩展是个非常麻烦的事,而Cassandra帮助我们解决了这个麻烦。
  • 它是一个面向列的数据库,不向传统结构式数据库是用表来模拟关系,也就是说你可以随意扩展你的字段。你可以想象cassandra是一个连续嵌套的Map结构。如下图所示

使用docker搭建cassandra

我是比较懒的,docker的出现正好帮我解决了搭环境的麻烦事,让开发能够更加专注写bug。。。,咳咳废话不多说,下面咱开始搭建。

1.环境使用的是Vm ware15+Centos7+docker。

2.首先上 https://hub.docker.com/ 拉取cassandra的官方镜像

按照命令执行就行如下图

3.按照官网的提示执行如下命令
$ docker run --name some-cassandra --network some-network -d cassandra:tag

我们把上面的命令修改一下因为只是开发学习使用,把docker的网络去掉,名字也不需要大部分时候我们一般只用ID,还有就是我们一会要使用VsCode的插件连接Cassandra,所以需要把9042这个端口号映射出来,修改完毕的命令如下

$ docker run -d -p 9042:9042 cassandra
放到linux服务器上执行如下

VsCode插件安装

  • 首先先创建一个CassandraWorkbench的工作目录如下图,当然你也可以手动建
  • 然后cd到该目录用vscode打开 如下图
  • 安装该插件
  • 然后初始化该插件如下图
  • 然后点击这个齿轮配置一下cassandra服务端
  • 因为咱门服务端没有设置任何密码之类的,所以就用第一种就行jsonc文件修改图如下
  • 当然你也可以按照插件官网提示的把这些系统的键空间给过滤掉
  • 最后让我们创建一个键空间试一下吧。右键你刚才配置的服务端名字然后点击Create Keyspace,然后插件帮我们生成了CQL,点击一下执行发现创建成功了!!(vscode是不是很强大)
  • 最后上一张工作面板的示意图

老早就打算开始写博客了,主要是因为想记录一下学习的路线和自己的成长,同时也希望能够帮助其他小伙伴能够少绕开一些坑。

ps: 今天终于开始了第一篇。哈哈,值得纪念一下。

Cassandra之Docker环境实践的更多相关文章

  1. Docker环境的持续部署优化实践

    最近两周优化了我们持续部署的程序,收效显著,记录下来分享给大家 背景介绍 那年公司快速成长,频繁上线新项目,每上线一个项目,就需要新申请一批机器,初始化,部署依赖的服务环境,一个脚本行天下 那年项目发 ...

  2. 【实战】Docker入门实践二:Docker服务基本操作 和 测试Hello World

    操作环境 操作系统:CentOS7.2 内存:1GB CPU:2核 Docker服务常用命令 docker服务操作命令如下 service docker start #启动服务 service doc ...

  3. docker简易实践

    docker简易实践 实验环境 操作系统:deepin 15.4 安装步骤 1.安装docker sudo apt-get install docker.io 2.启动docker服务 sudo se ...

  4. 【原】【BG】-一次虚拟化环境实践简要记录

    部分涉及到Linux.Nginx.tomcat.MySQL等的点滴操作记录,时间长了,就忘掉了,偶尔整理一下操作的history,就此简要备份一下: [原][BG]-一次虚拟化环境实践简要记录: ht ...

  5. 这是一次 docker 入门实践

    前言 其实接触 docker 也有一段时间了,但是一直没有做下总结,现在网上关于 docker 的介绍也有很多了,本着好记性不如烂笔头的原则,还是自己再记录一波吧. 实现目标 安装 docker ce ...

  6. docker最佳实践-----美团点评的分享

    美团点评容器平台简介 本文介绍美团点评的Docker容器集群管理平台(以下简称“容器平台”).该平台始于2015年,是基于美团云的基础架构和组件而开发的Docker容器集群管理平台.目前该平台为美团点 ...

  7. Windows10开启Ubuntu子系统并搭建Docker环境

    前言 很早就听说微软有个基于Ubuntu的子系统,一直也没机会尝试一下,之前也只是用VMware安装,但是还要单独安装软件,安装镜像,一点都不fit,所以就瞎折腾下(也是因为最近有空). 搭建Ubun ...

  8. Ranger开源流水线docker化实践案例

    1.背景 开发部门决定在Apache Ranger开源社区贡献代码,目标是个人国内排名Top1,世界排名Top2,并且在已经成为Ranger项目的Committer情况下,争取成为Ranger项目的P ...

  9. 从头开始搭建分布式日志平台的docker环境

    上篇(spring mvc+ELK从头开始搭建日志平台)分享了从头开始搭建基于spring mvc+redis+logback+logstash+elasticsearch+kibana的分布式日志平 ...

随机推荐

  1. PATA 1071 Speech Patterns.

    #include <bits/stdc++.h> using namespace std; bool check(char c)//检查是否为字母或数字 { if(c>='A'&am ...

  2. pytest 安装和入门

    安装pytest 1.在命令行中运行以下命令: pip install -U pytest 2.检查已经安装的版本: pytest --version This is pytest version 3 ...

  3. Java日志脱敏框架 sensitive-v0.0.4 系统内置常见注解,支持自定义注解

    项目介绍 日志脱敏是常见的安全需求.普通的基于工具类方法的方式,对代码的入侵性太强.编写起来又特别麻烦. 本项目提供基于注解的方式,并且内置了常见的脱敏方式,便于开发. 特性 基于注解的日志脱敏. 可 ...

  4. CSU 1320:Scoop water(卡特兰数)

    http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1320 题意:……是舀的时候里面必须要有1L,而不是舀完必须要有1L. 思路:才知道是卡特兰数. 这 ...

  5. jieba GitHUb 结巴分词

    1.GitHub jieba-analysis 结巴分词: https://github.com/fxsjy/jieba 2.jieba-analysis 结巴分词(java版): https://g ...

  6. Linux 操作系统及其组成,shell命令

    Linux 操作系统及其组成 操作系统的作用 操作系统(OS)是管理计算机硬件与软件资源的计算机程序,同时也是计算机系统的内核与基石.操作系统需要处理如管理与配置内存.决定系统资源供需的优先次序.控制 ...

  7. leetcode 136 Single Number bBt Option

    Linked Url:https://leetcode.com/problems/single-number/ Given a non-empty array of integers, every e ...

  8. Codeforces Round #565 (Div. 3) F.Destroy it!

    题目地址:http://codeforces.com/contest/1176/problem/F 思路:其实就是一个01背包问题,只是添加了回合和每回合的01限制,和每当已用牌数到了10的倍数,那张 ...

  9. 最近学习了HBase

    HBase是什么 最近学习了HBase,正常来说写这篇文章,应该从DB有什么缺点,HBase如何弥补DB的缺点开始讲会更有体感,但是本文这些暂时不讲,只讲HBase,把HBase相关原理和使用讲清楚, ...

  10. 【深入浅出-JVM】(3):浮点数

    -5 浮点数推导 二进制转十进制 1 10000001 01000000000000000000000 1 10000001 101000000000000000000000 如果指数位不全为 0 则 ...