查看集群信息以及键空间:

1. 创建keyspace:
CREATE KEYSPACE testwuz WITH replication = {'class':'SimpleStrategy', 'replication_factor' : 3};
您可以通过查询系统键空间来验证keyspace的durable_writes属性是否设置为false。此查询提供了所有KeySpaces及其属性。
SELECT * FROM system.schema_keyspaces;
2. 使用Keyspace
您可以使用关键字USE使用创建的KeySpace。其语法如下:
3. 使用Java API创建一个Keyspace
package com.star.cassandra;
import com.datastax.driver.core.Cluster;
import com.datastax.driver.core.Session;
/**
* @Description: TODO(这里用一句话描述这个类的作用)
* @author: wuzhan
* @date: 2018年3月27日 上午11:52:55
*/
public class Create_KeySpace {
/**
* @Description: TODO(这里用一句话描述这个方法的作用)
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//Query
String query = "CREATE KEYSPACE wuzna WITH replication "
+ "= {'class':'SimpleStrategy', 'replication_factor':1};";
//creating Cluster object
Cluster cluster = Cluster.builder().addContactPoint("192.168.117.37").build();
//Creating Session object
Session session = cluster.connect();
//Executing the query
session.execute(query);
//using the KeySpace
session.execute("USE wuzna");
System.out.println("Keyspace created");
}
}
4. 使用Cqlsh修改Keyspace
例如:ALTER KEYSPACE "wuzna" WITH replication = {'class': 'SimpleStrategy', 'replication_factor' : '2'};
Durable_writes
使用此选项,可以指示Cassandra是否对当前KeySpace的更新使用commitlog。此选项不是强制性的,默认情况下,它设置为true。
5. 使用Java API修改Keyspace
package com.star.cassandra;
import com.datastax.driver.core.Cluster;
import com.datastax.driver.core.Session;
/**
* @Description: TODO(这里用一句话描述这个类的作用)
* @author: wuzhan
* @date: 2018年3月27日 下午2:03:25
*/
public class Alter_KeySpace {
/**
* @Description: TODO(这里用一句话描述这个方法的作用)
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//Query
String query = "ALTER KEYSPACE wuzna WITH replication " + "= {'class':'NetworkTopologyStrategy', 'datacenter1':3}"
+ "AND DURABLE_WRITES = false;";
//Creating Cluster object
Cluster cluster = Cluster.builder().addContactPoint("192.168.117.37").build();
//Creating Session object
Session session = cluster.connect();
//Executing the query
session.execute(query);
System.out.println("Keyspace altered");
}
}
修改前:
修改后:
6. 使用Cqlsh删除键空间
可以使用命令DROP KEYSPACE删除KeySpace:
例如:drop keyspace wuzna;
同理可以使用Java API调用。