executecql

Выполните запрос CQL в базе данных Apache Cassandra

Описание

пример

results = executecql(conn,query) возвращает результаты выполнения Кассандры® Запрос языка запросов (CQL) в базе данных Cassandra с помощью подключения к базе данных Cassandra. executecql функция импортирует результаты запроса в MATLAB®.

пример

results = executecql(conn,query,'ConsistencyLevel',level) задает уровень согласованности, чтобы указать, сколько узлов должно ответить для выполнения запроса CQL.

Примеры

свернуть все

Используя соединение с базой данных Cassandra ®, выполните запрос CQL, чтобы импортировать данные из таблицы базы данных Cassandra в MATLAB ®. В этом случае база данных Cassandra содержит employees_by_job таблица базы данных с данными о сотрудниках в employeedata keyspace.

Создайте соединение с базой данных Cassandra с помощью локального адреса хоста. conn является cassandra объект.

contactPoints = "localhost";
conn = cassandra(contactPoints);

Написание запроса CQL, который выбирает всех сотрудников, являющихся программистами или продавцами магазинов, нанятых до 30 апреля 2006 года, и извлекает их идентификаторы должностей, даты найма и адреса электронной почты. job_id - ключ разбиения employees_by_job таблицы базы данных и hire_date - столбец кластеризации.

query = strcat("SELECT job_id,hire_date,email ", ... 
    "FROM employeedata.employees_by_job ", ...
    "WHERE job_id IN ('IT_PROG','SH_CLERK') ", ...
    "AND hire_date < '2006-04-30';");

Выполните запрос CQL и отобразите первые несколько строк результатов.

results = executecql(conn,query);
head(results)
ans=8×3 table
      job_id       hire_date       email   
    __________    ___________    __________

    "IT_PROG"     05-Feb-2006    "VPATABAL"
    "IT_PROG"     03-Jan-2006    "AHUNOLD" 
    "IT_PROG"     25-Jun-2005    "DAUSTIN" 
    "SH_CLERK"    24-Apr-2006    "AWALSH"  
    "SH_CLERK"    23-Feb-2006    "JFLEAUR" 
    "SH_CLERK"    24-Jan-2006    "WTAYLOR" 
    "SH_CLERK"    13-Aug-2005    "JDILLY"  
    "SH_CLERK"    14-Jun-2005    "KCHUNG"  

results - таблица с job_id, hire_date, и email переменные. The hire_date переменная является datetime массив и job_id и email переменные строковые массивы.

Закройте соединение с базой данных Cassandra.

close(conn)

Используя соединение с базой данных Cassandra ®, выполните запрос CQL, чтобы импортировать данные из таблицы базы данных Cassandra в MATLAB ®. Задайте уровень согласованности для возврата результатов запроса. В этом случае база данных Cassandra содержит employees_by_job таблица базы данных с данными о сотрудниках в employeedata keyspace.

Создайте соединение с базой данных Cassandra с помощью локального адреса хоста. conn является cassandra объект.

contactPoints = "localhost";
conn = cassandra(contactPoints);

Написание запроса CQL, который выбирает всех сотрудников, являющихся программистами, и извлекает даты их найма и адреса электронной почты. job_id - ключ разбиения employees_by_job таблица базы данных. Ограничьте возвращенные данные тремя строками.

query = strcat("SELECT hire_date,email ", ... 
    "FROM employeedata.employees_by_job ", ...
    "WHERE job_id = 'IT_PROG'", ...
    "LIMIT 3;");

Выполните запрос CQL с уровнем согласованности, установленным на кворум, и отобразите результаты.

level = "QUORUM";
results = executecql(conn,query,'ConsistencyLevel',level)
results=3×2 table
     hire_date       email   
    ___________    __________

    21-May-2007    "BERNST"  
    07-Feb-2007    "DLORENTZ"
    05-Feb-2006    "VPATABAL"

Большинство узлов реплики отвечают возвращенными данными. results - таблица с hire_date и email переменные. The hire_date переменная является datetime массив и email переменная является строковыми массивами.

Закройте соединение с базой данных Cassandra.

close(conn)

Входные параметры

свернуть все

Соединение с базой данных Cassandra, заданное как cassandra объект.

Запрос CQL, заданный как вектор символов или строковый скаляр. Для получения дополнительной информации о CQL см. справочную документацию по CQL.

Пример: "SELECT * FROM dev.maps"

Типы данных: char | string

Уровень согласованности, заданный в качестве одного из следующих значений.

Значение уровня согласованностиОписание уровня согласованности

"ALL"

Возвращает результаты запроса, когда все узлы реплики отвечают (операция чтения) или фиксируют изменение (операция записи).

"EACH_QUORUM"

Завершает выполнение, когда большинство узлов реплики в каждом центре обработки данных фиксируют изменение (только операция записи).

"QUORUM"

Возвращает результаты запроса, когда большинство узлов реплики отвечают (операция чтения) или фиксируют изменение (операция записи).

"LOCAL_QUORUM"

Возвращает результаты запроса, когда большинство узлов реплики в локальном центре обработки данных отвечают (операция чтения) или фиксируют изменение (операция записи).

"ONE" (по умолчанию)

Результаты запроса возвращаются, когда один узел реплики отвечает (операция чтения) или фиксирует изменение (операция записи).

"TWO"

Возвращает результаты запроса, когда два узла реплики отвечают (операция чтения) или фиксируют изменение (операция записи).

"THREE"

Возвращает результаты запроса, когда три узла реплики отвечают (операция чтения) или фиксируют изменение (операция записи).

"LOCAL_ONE"

Результаты запроса возвращаются, когда один узел реплики в локальном центре обработки данных отвечает (операция чтения) или фиксирует изменение (операция записи).

"ANY"

Завершите выполнение, даже если все узлы реплики для указанного раздела недоступны (только операция записи).

"SERIAL"

Возвращает результаты запроса текущих (и, возможно, незафиксированных) данных для узлов реплики в любом центре обработки данных (только для операций чтения).

"LOCAL_SERIAL"

Возвращает результаты запроса текущих (и, возможно, незафиксированных) данных для узлов реплики в локальном центре обработки данных (только для операций чтения).

Можно задать значение уровня согласованности как вектор символов или строковый скаляр.

Дополнительные сведения об уровнях согласованности см. в разделе Настройка согласованности данных.

Типы данных: char | string

Выходные аргументы

свернуть все

Результаты запроса CQL, возвращенные как таблица. Каждый столбец базы данных Cassandra из результата запроса CQL является переменной в таблице. Имена переменных совпадают с именами столбцов базы данных Cassandra в результате запроса CQL.

Типы данных переменных в таблице зависят от типов данных CQL. Дополнительные сведения о том, как типы данных CQL преобразуются в типы данных MATLAB, см. в разделе Преобразование типов данных CQL в типы данных MATLAB.

Для операций чтения или записи, которые не возвращают данных, executecql функция возвращает пустую таблицу.

Введенный в R2018b