Я запускаю Trino с Docker-контейнером и хочу редактировать каталоги или, точнее, таблицы.
Я выполнил следующие инструкции: https://trino.io/docs/current/installation/containers.html
Когда я бегу
docker run --name trino -d -p 8080:8080 trinodb/trino
и затем docker exec -it trino trino
я могу выполнять операторы выбора и так далее, но я хочу иметь возможность создавать собственную таблицу.
Когда я пытаюсь это сделать, я получаю следующее:
trino> create table tpch.sf1.test (id int);
Query 20240711_100824_00000_y8ghb failed: This connector does not support creating tables
Я также попробовал это:
docker run --name trino -d -p 8080:8080 --volume $PWD/etc:/etc/trino/catalog trinodb/trino
Когда я создаю каталог, я получаю это:
create catalog tpch using tpch;
Query 20240711_101526_00002_u8xak failed: CREATE CATALOG is not supported by the static catalog store
TPCH — это коннектор только для чтения, который можно использовать для тестирования запросов и сравнительного анализа:
Этот соединитель можно использовать для проверки возможностей и синтаксиса запросов Trino без настройки доступа к внешнему источнику данных. Когда вы запрашиваете схему TPCH, соединитель генерирует данные «на лету», используя детерминированный алгоритм.
Вам нужно использовать какой-то другой разъем, например через Память:
create schema memory.test; -- using default memory catalog
use memory.test;
CREATE TABLE orders (
orderkey bigint,
orderstatus varchar,
totalprice double,
orderdate date
);
show tables;
Выход:
Table
--------
orders
@JanSkn был рад помочь! Если ответ вам не подходит — не стесняйтесь проголосовать за него и отметить его как принятый ;)
Как я могу создать временную схему? Думаю надо создать отдельный каталог? Но все, что я пробовал до сих пор с файлами конфигурации, не сработало.
@JanSkn У меня здесь нет большого опыта - обычно я работал с Presto/Trino через AWS Athena, и он занимался созданием каталога/схемы. Но да, насколько я понимаю, вам нужно создать новый каталог с соответствующим типом разъема.
Большое спасибо! Перепробовал так много вещей, которые не сработали.