Create.io Порядок столбцов при создании таблицы - PullRequest
0 голосов
/ 10 мая 2019

У меня CrateDb версии 3.2.7, работающая под Windows Server 2012. Я создаю такую ​​таблицу:

создание таблицы test3 (первичный ключ bigint первого столбца, int второго столбца, метка времени третьего столбца, double четвертого столбца, double пятого столбца, smallint шестиколонного столбца, double седьмого столбца, heightcolumn int, smallint десятого столбца, smallint десятого столбца), сгруппированных в 12 сегментов с (number_of_replicas = 0, refresh_interval) = 0);

Итак, я ожидаю, что первый столбец будет первым, и так далее. Но после создания, когда я делаю SELECT * FROM test3, я получаю следующий результат:

enter image description here

Похоже, что первый возвращенный столбец является "пятым". Похоже, столбцы возвращаются в алфавитном порядке.

enter image description here

Значит ли это, что CrateDB создал столбцы в таком порядке? Держит ли он где-то порядок? Если столбцы расположены в алфавитном порядке, значит ли это, что если я хочу скопировать данные из другой базы данных в CrateDB, то мне придется экспортировать данные в алфавитном порядке?

1 Ответ

1 голос
/ 13 мая 2019

Для вставки необязательно, только если они опущены, они должны быть в алфавитном порядке см. Здесь . Порядок, похоже, нигде не "хранится" как таковой.

COPY FROM - это другой вид импортной тактики, и не совсем то, что делал бы старый добрый INSERT. Я бы предложил написать приложение командной строки для импорта данных в cratedb. COPY FROM не выполняет никакой проверки типов, а также не производит приведение типов и всегда импортирует данные, как это было в исходном файле ( см. Здесь ). Из вашего другого вопроса я вижу, что у вас могут быть данные, связанные с gps (?), Вам нужно вручную сопоставить их с типом GEO_POINT, как в 1 примере.

Ящик обеспечивает хорошую производительность (что бы это ни значило для вас или меня) с массовая конечная точка

...