Выполните запрос CQL на Apache база данных Кассандры
задает опции с помощью одних или нескольких аргументов name-value. Например, results
= executecql(conn
,query
,Name,Value
)'ConsistencyLevel',"TWO"
устанавливает уровень непротиворечивости указывать, что два узла должны ответить для запроса CQL, чтобы выполниться.
Используя базу данных Apache Cassandra® интерфейс C++, создайте соединение с базой данных Cassandra® и выполните запрос CQL, чтобы импортировать данные от таблицы базы данных Кассандры в MATLAB®. В этом случае база данных Кассандры содержит employees_by_job
таблица базы данных с данными сотрудника в employeedata
ключевое пространство.
Создайте соединение с базой данных Кассандры с помощью сконфигурированного источника данных CassandraDataSource
и пустое имя пользователя и пароль. apacheCassandra
функция возвращает conn
как connection
объект.
datasource = "CassandraDataSource"; username = ""; password = ""; conn = apacheCassandra(datasource,username,password);
Запишите запрос 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)
Используя базу данных Apache Cassandra® интерфейс C++, создайте соединение с базой данных Cassandra® и выполните запрос CQL, чтобы импортировать данные от таблицы базы данных Кассандры в MATLAB®. Задайте уровень непротиворечивости для возврата результатов запроса. В этом случае база данных Кассандры содержит employees_by_job
таблица базы данных с данными сотрудника в employeedata
ключевое пространство.
Создайте соединение с базой данных Кассандры с помощью сконфигурированного источника данных CassandraDataSource
и пустое имя пользователя и пароль. apacheCassandra
функция возвращает conn
как connection
объект.
datasource = "CassandraDataSource"; username = ""; password = ""; conn = apacheCassandra(datasource,username,password);
Запишите запрос 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 = "ONE"; 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)
conn
— Apache соединение с базой данных Кассандрыconnection
объектApache соединение с базой данных Кассандры в виде connection
объект.
query
— Запрос CQLCQL запрашивают в виде вектора символов или строкового скаляра. Для получения дополнительной информации о CQL, см. Справочную документацию Основы Apache Software CQL.
Пример: "SELECT * FROM dev.maps"
Типы данных: char |
string
Задайте дополнительные разделенные запятой пары Name,Value
аргументы. Name
имя аргумента и Value
соответствующее значение. Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
results = executecql(conn,query,'ConsistencyLevel',"TWO",'RequestTimeout',15)
задает, чтобы возвратить результаты запроса, когда два узла отвечают для выполнения запросов CQL, и база данных должна ожидать 15 секунд, чтобы возвратить запрос прежде, чем выдать ошибку.ConsistencyLevel
— Уровень непротиворечивости"ONE"
(значение по умолчанию) | вектор символов | строковый скалярУровень непротиворечивости в виде одного из этих значений.
Значение уровня непротиворечивости | Описание уровня непротиворечивости |
---|---|
| Возвратите результаты запроса, когда все узлы копии будут отвечать (операция чтения) или будут фиксировать изменение (операция записи). |
| Закончите выполнение, когда большинство узлов копии в каждом дата-центре будет фиксировать изменение (только операция записи). |
| Возвратите результаты запроса, когда большинство узлов копии будет отвечать (операция чтения) или будет фиксировать изменение (операция записи). |
| Возвратите результаты запроса, когда большинство узлов копии в локальном дата-центре будет отвечать (операция чтения) или будет фиксировать изменение (операция записи). |
| Возвратите результаты запроса, когда один узел копии будет отвечать (операция чтения) или будет фиксировать изменение (операция записи). |
| Возвратите результаты запроса, когда два узла копии будут отвечать (операция чтения) или будут фиксировать изменение (операция записи). |
| Возвратите результаты запроса, когда три узла копии будут отвечать (операция чтения) или будут фиксировать изменение (операция записи). |
| Возвратите результаты запроса, когда один узел копии в локальном дата-центре будет отвечать (операция чтения) или будет фиксировать изменение (операция записи). |
| Закончите выполнение, даже если все узлы копии для заданного раздела не доступны (только операция записи). |
| Возвратите результаты запроса для текущего (и возможно незафиксированный) данные для узлов копии в любом дата-центре (только операция чтения). |
| Возвратите результаты запроса для текущего (и возможно незафиксированный) данные для узлов копии в локальном дата-центре (только операция чтения). |
Можно задать значение уровня непротиворечивости как вектор символов или строковый скаляр.
Для получения дополнительной информации об уровнях непротиворечивости, смотрите Непротиворечивость данных Конфигурирования.
Типы данных: char |
string
RequestTimeout
— Запросите тайм-аут
(значение по умолчанию) | положительный числовой скалярЭто свойство доступно только для чтения.
Запросите тайм-аут в виде положительного числового скаляра. Тайм-аут запроса указывает на номер секунд, база данных ожидает, чтобы возвратить запрос CQL прежде, чем выдать ошибку.
Типы данных: double
results
— Результаты запроса CQLРезультаты запроса CQL, возвращенные как таблица. Каждый столбец базы данных Кассандры от результата запроса CQL является переменной в таблице. Имена переменных совпадают с именами столбцов базы данных Кассандры от результата запроса CQL.
Типы данных переменных в таблице зависят от типов данных CQL. Для получения дополнительной информации о том, как типы данных CQL преобразуют в типы данных MATLAB, смотрите, Преобразуют Типы данных CQL в типы данных MATLAB Используя Apache Кассандра Дэйтабэз Интерфейс C++.
Для операций чтения или операций записи, которые не возвращают данных, executecql
функция возвращает пустую таблицу.
apacheCassandra
| tablenames
| columninfo
| partitionRead
| upsert
| close
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.