Создать и изменить новое пространство ключей с Cassandra cqlengine?

Допустим, мы подключаемся к некоторому кластеру Cassandra:

cqlengine.connection.setup('hostname', 'some_keyspace')

Метод требует, чтобы мы знали хотя бы одно существующее пространство ключей. Что если мы не сделаем?

Что если мы просто хотим проверить, существует ли пространство ключей, и создать его иначе?

Мы могли бы создать пространство ключей следующим образом:

cqlengine.management.create_keyspace('keyspace_name', some_other_args)

Итак, здесь есть три вопроса:

  1. Как вы подключаетесь без предоставления пространства ключей?
  2. Как правильно создать новое пространство ключей (каковы другие аргументы, кроме имени пространства ключей)?
  3. Как вы переключаете пространства клавиш, используя cqlengine?

1 ответ

  1. Вам нужно только пространство ключей по умолчанию. Это может быть все, что уже существует. Я думаю, что у Кассандры есть некоторые стандартные клавиши.

  2. Правильный способ создания пространства ключей - использование create_keyspace_simple команда:

    from cassandra.cqlengine.management import create_keyspace_simple
    
    create_keyspace_simple(keyspace_name, replication_factor)
    
  3. Чтобы изменить пространство клавиш:

    from cassandra.cqlengine import models
    
    models.DEFAULT_KEYSPACE = keyspace_name
    

    при условии, что соединение импортировано, и вы определили

Другие вопросы по тегам