Presto connector для druid не удается идентифицировать таблицы с именами в верхнем регистре

#presto #druid #trino

#presto #druid #trino

Вопрос:

При попытке запросить таблицы druid с именами в верхнем регистре запрос завершается ошибкой: таблица ‘ИМЯ_ТАБЛИЦЫ’ не существует. Аналогичная проблема наблюдалась в MySQL connector, и для файла каталога MySQL connector была добавлена опция атрибута «сопоставление имен без учета регистра». Я пытался использовать тот же атрибут для каталога Druid, и, похоже, он не работает.

Ответ №1:

Я предполагаю, что вы используете версию Presto от Facebook.

TL; DR Вам необходимо использовать Trino Druid Connector для поддержки case-insensitive-name-matching . Trino ранее был известен как Presto SQL.

длинная версия
case-insensitive-name-matching была добавлена сначала в Presto SQL (кстати, я автор этого кода), а затем перенесена в Presto Facebook, но, по-видимому, не применяется к их Druid connector. Trino Druid Connector (fka Presto SQL Druid Connector) не имеет этого ограничения. Вы можете использовать либо Presto 350 (до переименования проекта), либо Trino 351 (после переименования).

Комментарии:

1. Я пробовал это как с Presto 350, так и с Trino 351, он по-прежнему не может распознавать имена таблиц с заглавными буквами. Я добавил нечувствительное к регистру совпадение имен = true в файле etc/catalogue/druid.proprties (поскольку значение по умолчанию равно false, но кажется немного нелогичным) без какого-либо эффекта. Он по-прежнему выдает ошибку «Та же таблица не существует».

2. Это похоже на ошибку, и я думаю, что знаю, будет ли исправление. Не могли бы вы опубликовать новую проблему github.com/trinodb/trino/issues/new ?