Разработка
NTA

Импорт во временные таблицы в Teradata и экспорт результатов запроса

Зачастую, в крупных компаниях проверяющим доступ к промышленным базам данных дают с правами «только на чтение». Соответственно, при этом отсутствует возможность создавать, подгружать и выгружать свои промежуточные таблицы. Необходимость в этом может возникнуть в случае, когда, например, вы работаете с разрозненными данными, взятыми из разных источников (с разных серверов БД, расположенных в разных сетях, или из файлов разного типа и происхождения (xlsx, csv, html и т.п.), которые нужно обрабатывать совместно с данными, хранящимися на сервере Teradata.

В этом случае в Teradata на время сеанса работы с сервером можно создать свою временную область с нужными таблицами и импортировать в них данные из текстовых файлов. А кроме этого, также можно сделать обратную операцию — экспорт результатов SQL-запроса в текстовый файл. В отличие от других СУБД, которым необходимы дополнительные внешние инструменты для импорта данных из файлов, и которые не могут делать этот импорт во временные таблицы, Teradata позволяет выполнять все эти действия прямо в текущем сеансе работы, в Teradata SQL Assistant.

Рассмотрим необходимую для этого последовательность действий.

1. В Teradata SQL Assistant подключитесь к БД и активируйте режим импорта данных в пункте меню File – Import Data:

2. В пункте меню Tools – Options установите формат загружаемых текстовых данных:

Здесь указано, что столбцы разделяются табуляцией и данные в них не обрамляются кавычками. При необходимости, вы можете изменить эти настройки в соответствии с содержимым вашего импортируемого файла.

3. Для загрузки создадим демонстрационный файл данных test_table.txt, содержащий строки:

1 Владимир Ленин 1000 2 Иосиф Сталин 950.30 3 Никита Хрущёв 1020.10 999 Михаил Горбачёв 856.66

4. Создадим и выполним новый SQL-запрос:

create volatile table test_table(ID int, name varchar(100), salary float) on commit preserve rows;

В результате во временной области текущего сеанса пользователя будет создана, состоящая из трёх полей ID, NAME и salary пустая volatile-таблица TEST_TABLE, которая будет существовать как полноценная таблица во время всей пользовательской сессии.

5. В окне SQL-запроса введите команду

insert into test_table values (?, ?, ?);

Эта команда будет загружать данные в созданную таблицу TEST_TABLE с количеством полей в одной записи, соответствующем количеству вопросительных знаков в скобках. Выполните запрос. После нажатия на кнопку «выполнить» появится диалог выбора файла с данными для импорта:

Выберите файл и дождитесь окончания его импорта.

ВАЖНО! Скорость загрузки файла данным способом не велика и может занять продолжительное время, поэтому он применим к наборам данным не очень большого размера (тысячи, возможно — несколько десятков тысяч строк). Для быстрой загрузки в Teradata есть инструменты FastLoad, OleLoad и MultiLoad, но они, к сожалению, не работают с временными таблицами.

После загрузки в нижнем левом углу окна появится информация о том, сколько записей в таблицу было импортировано:

6. Проверим, правильно ли были импортированы записи из файла. Отключим режим импорта в пункте меню File – Import Data и введём запрос:

select * from test_table;

Как видно, операция импорта прошла успешно. Обратите внимание, что строки выбираются в произвольном порядке, а не так, как они идут в файле.

7. Предположим, что после получения необходимой информации из базы данных возникла необходимость выгрузить её во внешний файл для дальнейшего использования. В Teradata данный процесс удобно реализован с помощью переключения режима вывода полученного набора данных с окна программы во внешний файл.

Для того, чтобы выполнить экспорт, сначала активируйте режим экспорта результатов в пункте меню File – Export Results:

8. Затем снова выполните запрос на выгрузку данных. После нажатия на кнопку «выполнить» появится запрос на экспорт данных в файл. Введите имя файла экспорта и сохраните его:

9. После выполнения запроса данные на экран выведены не будут, но в нижнем левом углу программы появится сообщение о том, сколько записей было успешно экспортировано в файл:

Рассмотренные возможности Teradata SQL Assistant помогут эффективно работать с внешними данными в случаях, когда отсутствуют права на создание и запись объектов на промышленном сервере Teradata.

{ "author_name": "NTA", "author_type": "editor", "tags": [], "comments": 1, "likes": 2, "favorites": 3, "is_advertisement": false, "subsite_label": "dev", "id": 258352, "is_wide": true, "is_ugc": false, "date": "Mon, 14 Jun 2021 12:01:23 +0300", "is_special": false }
0
1 комментарий
Популярные
По порядку
Читать все 1 комментарий
Вложить $27 трлн и перейти на «зелёную» энергетику: как бизнес и государства пытаются остановить глобальное потепление Статьи редакции

И сколько на возобновляемой энергии зарабатывают частные компании.

Угольный завод Роберта Шерера в штате Джорджия. Выбросы в атмосферу от подобных предприятий — одна из причин глобального потепления AP Photo
Старая добрая дискета: так могли выглядеть популярные соцсети и сервисы в девяностых Статьи редакции

Чего только стоит Spotify с интерфейсом Winamp.

Портфельные тактики. Рассказывает персональный брокер

Разбираем два подхода к инвестициям — оптимизационные и тайминговые модели

Три причины присоединиться к Ruby meetup
Отдам читателям vc.ru бесплатно SaaS- и другие сервисы с исходниками

Друзья, привет! В своё время покупал для личного использования разные сервисы. Теперь решил раздать, может, кому-нибудь будут полезны.

Эксперимент: выбрать квартиру в другом городе с помощью 3D-тура

«Ирония судьбы» научила нас: все новые дома похожи друг на друга — а значит, имея представление о новостройках в одном городе, можно сделать вывод и о домах в другом. Для этого теперь даже не нужен билет на поезд или самолёт: прогуляться по квартирам в новостройках можно с 3D-туром на сайте «Циан».

Японский производитель лапши отказался от наклеек на крышках — теперь у банок два «ушка» и морда кота Статьи редакции

А иногда — тибетская лиса.

Из офиса к гончарному кругу: как уволиться из IT-компании и стать кумиром гончаров со всего мира

Многое в жизни Александра Бердин-Лазурского произошло по воле случая: преподаватель сопромата решил быть дизайнером и за один вечер под пиво изготовил себе портфолио. Потом за годы приятной работы вырос до арт-директора и... выгорел. Тогда он понял, чем на самом деле хочет заниматься и как на этом зарабатывать.

«МБХ медиа» вслед за «Открытыми медиа» объявило о прекращении работы Статьи редакции

Оба издания заблокировал Роскомнадзор.

ИП на упрощенке 6%: кому доверить расчет налога?

Cравним и оценим, кому стоит доверить расчет УСН

Как продавать загородную недвижимость в пандемию, в 3 раза снизить стоимость заявки и на 30 % сэкономить бюджет

Тимлид по трафику коттеджного поселка «Британика» Константин Иванов рассказал, от чего зависят продажи в сфере загородной недвижимости, какие рекламные каналы и кампании эффективнее всего работают и как определять эту эффективность в цифрах и фактах.

null