Модуль community.clickhouse.clickhouse_client — выполнение запросов к базе данных ClickHouse с помощью интерфейса Client clickhouse-driver
Примечание
Этот модуль входит в коллекцию community.clickhouse (версия 2.1.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install community.clickhouse. Для использования этого модуля требуются дополнительные компоненты. Подробнее см. в разделе Требования.
Чтобы использовать модуль в плейбуке, укажите: community.clickhouse.clickhouse_client.
Добавлено в community.clickhouse 0.1.0
Краткое описание
- Выполняет произвольные запросы к базе данных ClickHouse с помощью интерфейса Client clickhouse-driver.
- Всегда возвращает, что состояние изменилось.
Требования
Следующие требования необходимы на узле, на котором выполняется этот модуль.
- clickhouse-driver
Параметры
Параметр | Комментарии |
|---|---|
client_kwargs словарь | Дополнительные именованные аргументы, которые необходимо передать интерфейсу Client при создании его объекта. По умолчанию: |
execute строка / обязательный | Запрос для метода |
execute_kwargs словарь | Дополнительные именованные аргументы, которые необходимо передать методу По умолчанию: |
login_db строка | Соответствует аргументу Если аргумент не указан, используется значение аргумента по умолчанию драйвера. |
login_host строка | Соответствует аргументу По умолчанию: |
login_password строка | Соответствует аргументу Если аргумент не указан, используется значение аргумента по умолчанию драйвера. |
login_port целое число | Соответствует аргументу Если аргумент не указан, используется значение аргумента по умолчанию драйвера. |
login_user строка | Соответствует аргументу Если аргумент не указан, используется значение аргумента по умолчанию драйвера. Убедитесь, что у пользователя есть разрешения на чтение системных таблиц, перечисленных в разделе RETURN. |
set_settings словарь добавлено в community.clickhouse 0.5.0 | Словарь параметров, которые необходимо задать в сеансе перед выполнением запроса. По умолчанию: |
Примечания
Примечание
- Не поддерживает
check_mode. - Дополнительные сведения об интерфейсе драйвера см. в документации clickhouse-driver.
Примеры
- name: Query DB using non-default user & DB to connect to
register: result
community.clickhouse.clickhouse_client:
execute: SELECT * FROM my_table
login_host: localhost
login_user: alice
login_db: foo
login_password: my_password
- name: Print returned rows
ansible.builtin.debug:
var: result.result
- name: Create table
register: result
community.clickhouse.clickhouse_client:
execute: CREATE TABLE test_table_1 (x String) ENGINE = Memory
set_settings:
flatten_nested: 0
short_circuit_function_evaluation: 'disable'
- name: Insert into test table using named parameters
register: result
community.clickhouse.clickhouse_client:
execute: "INSERT INTO test_table_1 (x) VALUES (%(a)s), (%(b)s), (%(c)s)"
execute_kwargs:
params:
a: one
b: two
c: three
- name: Check the result
ansible.builtin.assert:
that:
- result.substituted_query == "INSERT INTO test_table_1 (x) VALUES ('one'), ('two'), ('three')"
- result.statistics["processed_rows"] == 3
- name: Check rows were inserted into test table
register: result
community.clickhouse.clickhouse_client:
execute: "SELECT * FROM test_table_1"
- name: Check returned values
ansible.builtin.assert:
that:
- result.result == [["one"], ["two"], ["three"]]
Возвращаемые значения
Общие возвращаемые значения описаны здесь. Ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
result список / элементы=строка | Результат, возвращённый Client.execute(). Возвращается: при успешном выполнении Пример: |
statistics словарь | Статистика последнего выполненного запроса, полученная из атрибута last_query. Состав возвращаемых данных зависит от версии сервера. Возвращается: при успешном выполнении |
substituted_query строка | Выполненный запрос с подставленными аргументами, если они есть. Возвращается: при успешном выполнении Пример: |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/community/clickhouse/clickhouse_client_module.html