executecql

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

Синтаксис

results = executecql(conn,query)
results = executecql(conn,query,'ConsistencyLevel',level)

Описание

пример

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

пример

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

Примеры

свернуть все

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

Создайте соединение с базой данных Кассандры с помощью локального адреса хоста. 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. Переменная hire_date является массивом datetime, и переменные job_id и email являются строковыми массивами.

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

close(conn)

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

Создайте соединение с базой данных Кассандры с помощью локального адреса хоста. 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. Переменная hire_date является массивом datetime, и переменная email является массивом строк.

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

close(conn)

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

свернуть все

Соединение с базой данных Кассандры, заданное как объект 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, возвращенные как таблица. Каждый столбец базы данных Кассандры от результата запроса CQL является переменной в таблице. Имена переменных совпадают с именами столбцов базы данных Кассандры от результата запроса CQL.

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

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

Введенный в R2018b