tmp for cassandra batch delete

now i have no time to verify this bash script. it is hard for me to delete each data via primary key 

#!/bin/bash

if [[ ${1} == "" ]];then
echo "Please indicate the cassandra Address."
echo "Use this cmd like this:"
echo "./clear_data.sh 192.102.1.1"
exit
fi;

arr=(`cqlsh ${1} -f list_tables.cmd`)

echo "table list: ${arr[*]}"

for((i=0; i<${#arr[@]}; i++));do
count=(`cqlsh ${1} -e "use clicki_v4; select count(*) from ${arr[i]};"`)
#echo ${count[*]}
echo "before truncate table, there are ${count[2]} rows in table ${arr[i]};"
#====================================
#NOTE: dangerous command, please seriously check!!!!!!
cqlsh ${1} -e "use clicki_v4; truncate ${arr[i]};"
#====================================
count=(`cqlsh ${1} -e "use clicki_v4; select count(*) from ${arr[i]}"`)
echo "after truncate table, there are ${count[2]} rows in table ${arr[i]};"
done;


--目前就一个库clicki_v4,后续可以继续增加...
use clicki_v4;
desc tables;

CREATE TABLE coach_uat.mytable (
uid text,
id int,
name text,
PRIMARY KEY (uid),
    );

CREATE TABLE coach_uat.mytable(
  key1 text,
  key2 text,
  key3 text,
  column1 bigint,
  column2 int,
  column3 timestamp,
primary key(key1, key2, key3);
    )

猜你喜欢

转载自www.cnblogs.com/qianjinyan/p/9182285.html
tmp