Я выполняю конвейер Logstash, который запрашивает BigQuery через драйвер Simba JDBC:
input {
jdbc {
id => "categories-input"
jdbc_user => "user"
jdbc_driver_library => "..."
jdbc_driver_class => "com.simba.googlebigquery.jdbc42.Driver"
jdbc_connection_string => "..."
statement => "
SELECT categoryid, categoryname, filters
FROM dataset.categories
WHERE categoryid = 12345;"
}
}
filter {
mutate {
id => "categories-mapping"
rename => {
"categoryid" => "[category][id]"
"categoryname" => "[category][name]"
}
remove_field => ["@timestamp", "@version"]
}
}
output {
elasticsearch {
template => "/usr/share/logstash/shared/generic.json"
template_name => "generic"
id => "categories-updating"
hosts => "elasticsearch:9200"
index => "categories"
document_id => "%{[category][id]}"
}
}
Кроме того, вся моя таблица dataset.categories
действительно мала, меньше 100 мегабайт
Однакомоя строка filters
довольно длинная (10 796 031 символ, если быть точным), и в результате я получаю следующее исключение:
Я также получаю то же самое исключение, даже если я не преобразовываю фильтры встрока.
Исключительная ситуация при выполнении запроса JDBC {: exception => # BigQueryJDBCDriver Ошибка при получении результатов из буфера.>}
Это строка подключения, если это помогает:
jdbc:bigquery://https://www.googleapis.com/bigquery/v2:443;ProjectId=VerySeriousProject;OAuthType=0;OAuthServiceAcctEmail=veryimportantemail@VerySeriousProject.iam.gserviceaccount.com;OAuthPvtKeyPath=/usr/share/logstash/drivers/key.json;Timeout=600;AllowLargeResults=1;
Что я должен изменить, чтобы не получать такого рода исключения и иметь возможность запрашивать данные?