Создание таблицы
host:port— Адрес удалённого сервера Arrow Flight. Если порт не указан, используется порт по умолчанию8815. String.dataset_name— Идентификатор набора данных на сервере Flight (используется как дескриптор PATH или в запросеSELECT *в зависимости от настройкиarrow_flight_request_descriptor_type). String.username— Имя пользователя для HTTP-аутентификации Basic. String.password— Пароль для HTTP-аутентификации Basic. String.
username и password не указаны, аутентификация не используется (это работает, только если сервер Arrow Flight допускает неаутентифицированный доступ).
Список столбцов необязателен — если он не указан, схема определяется автоматически на удалённом сервере Arrow Flight через GetSchema.
Именованные коллекции
Движок поддерживает именованные коллекции для хранения параметров подключения:Настройки
arrow_flight_request_descriptor_type— Определяет, как имя набора данных отправляется на сервер Flight. Возможные значения:path(по умолчанию, отправляется как дескриптор PATH) илиcommand(отправляется как дескриптор CMD сSELECT * FROM <dataset>). Используйтеcommandдля серверов Flight, которые ожидают SQL-команды (например, Dremio).arrow_flight_request_timeout_sec— Тайм-аут в секундах для одного запроса Arrow Flight, по умолчанию300. Он распространяется на весь запрос целиком: дляSELECTэто весь поток результатов, а не только ожидание первого батча записей.0означает отсутствие тайм-аута; в этом случае сервер Flight, принявший запрос, но так и не ответивший на него, блокирует выполнение запроса до закрытия соединения.
Пример использования
Чтение данных с удалённого сервера Arrow Flight:Примечания
- Если в операторе
CREATE TABLEуказаны столбцы, они должны соответствовать схеме, возвращаемой сервером Flight. - Если столбцы не указаны, схема автоматически определяется на основе данных удалённого сервера.
- Поддерживаются как чтение (
SELECT), так и запись (INSERT). - Параметр
arrow_flight_request_descriptor_typeопределяет, будет ли имя набора данных отправлено как дескриптор PATH или как дескриптор CMD, содержащий запросSELECT *.