Cassandra e Docker – Ubuntu

Este post apresenta a instalação e utilização do Apache Cassandra, usando Docker.

Baixando a Imagem Docker

$ sudo docker pull cassandra

Esse comando efetuará o download da última versão do Cassandra (latest)

Verificando a Imagem

$ sudo docker images

Resultado

REPOSITORY TAG     IMAGE ID      CREATED     SIZE
cassandra latest 8ea89760ce2b 5 weeks ago 323MB

Subindo o Cassandra

$ sudo docker run --name node1 -d cassandra:lastest

Resultado

f451246389a40761b5a70cbb2d665801f3b2356afcd3abf6ee9a7aa4bd1fe064

Baixando o Cassandra

$ sudo docker stop f451246389a40761b5a70cbb2d665801f3b2356afcd3abf6ee9a7aa4bd1fe064

Removendo

$ sudo docker rm node1

Verificando processos

$ docker exec -it node1 nodetool status

Ferramenta shell CQL

Dentro do container é possível executar o cqlsh.

$ docker exec -it node1 cqlsh
Connected to Test Cluster at 127.0.0.1:9042.
[cqlsh 5.0.1 | Cassandra 3.11.0 | CQL spec 3.4.4 | Native protocol v4]
Use HELP for help.
cqlsh>

Criando Keyspace

cqlsh> CREATE KEYSPACE myspace WITH replication = {'class': 'SimpleStrategy', 'replication_factor' : 3};

Criando uma tabela

CREATE TABLE myspace.exam (
patient_id int,
id int,
date timeuuid,
details text,
PRIMARY KEY (patient_id, id));

Inserindo dados

INSERT INTO exam (patient_id,id,date,details) values (1,1,now(),'first exam patient 1');
INSERT INTO exam (patient_id,id,date,details) values (1,2,now(),'second exam patient 1');
INSERT INTO exam (patient_id,id,date,details) values (2,1,now(),'first exam patient 2');
INSERT INTO exam (patient_id,id,date,details) values (3,1,now(),'first exam patient 3');

Consultando dados

cqlsh:patient> select * from exam where patient_id=1;

Leave a Reply