Поддерживаемые сторонние клиентские приложения =============================================== Пользователи могут подключаться к базе данных **ADB** с помощью различных клиентских приложений: + Ряд клиентских приложений ADB предоставляется с установщиком. Клиентское приложение *psql* предоставляет интерфейс командной строки; *pgAdmin III* для ADB -- это расширенная версия популярного инструмента управления *pgAdmin III*. Начиная с версии *1.10.0*, *pgAdmin III* включает поддержку специфичных для ADB функций. Пакеты установки доступны для загрузки с сайта *pgAdmin*; + Используя стандартные интерфейсы приложений баз данных, такие как *ODBC* и *JDBC*, пользователи могут создавать свои собственные клиентские приложения, взаимодействующие с базой данных ADB. Поскольку СУБД ADB основана на PostgreSQL, она использует стандартные драйверы баз данных *PostgreSQL*; + Большинство сторонних клиентских инструментов, которые используют стандартные интерфейсы базы данных, такие как *ODBC* и *JDBC*, могут быть настроены для подключения к ADB. Клиентские приложения ---------------------- База данных **ADB** поставляется с несколькими клиентскими приложениями, расположенными в *$GPHOME/bin* главной хост-системы. В таблице перечислены наиболее часто используемые клиентские приложения. .. csv-table:: Клиентские приложения :header: "Имя", "Применение" :widths: 30, 70 "createdb", "Создать новую базу данных" "createlang", "Определить новый процедурный язык" "createuser", "Определить новую роль базы данных" "dropdb", "Удалить базу данных" "droplang", "Удалить процедурный язык" "dropuser", "Удалить роль" "PSQL, "Интерактивный терминал PostgreSQL" "reindexdb", "Переиндексировать базу данных" "vacuumdb", "Сбор мусора и анализ базы данных" При использовании клиентских приложений следует подключиться к базе данных с помощью инстанса мастера **ADB**. Необходимо знать имя целевой базы данных, имя хоста и номер порта мастера, а также имя пользователя базы данных для подключения. Эта информация может быть предоставлена в командной строке с использованием опций ``-d``, ``-h``, ``-p`` и ``-U`` соответственно. Если найдется аргумент, который не принадлежит ни одному из параметров, он интерпретируется как имя базы данных. Все эти параметры имеют значения по умолчанию, которые используются, если опция не указана. По умолчанию хостом является локальный хост. Номер порта -- ``5432``. Имя пользователя -- это имя пользователя ОС, как и имя базы данных по умолчанию. Следует обратить внимание, что имена пользователей ОС и имена пользователей **ADB** необязательно должны быть одинаковы. Если значения по умолчанию неверны, можно установить переменные *PGDATABASE*, *PGHOST*, *PGPORT* и *PGUSER* на соответствующие значения или использовать файл *psql~/.pgpass* для хранения часто используемых паролей. Подключение с psql ------------------- В зависимости от используемых значений следующие примеры показывают, как получить доступ к базе данных через *psql*: :: $ psql -d gpdatabase -h master_host -p 5432 -U gpadmin $ psql gpdatabase $ psql Если пользовательская база данных еще не создана, можно получить доступ к системе, подключившись к базе данных *template1*. Например: :: $ psql template1 После подключения к базе данных *psql* предоставляет приглашение с именем базы данных, к которой в настоящее время подключен *psql*, а затем строковой тип ``=>`` (или ``= #`` для суперпользователя базы данных). Например: :: gpdatabase =>’ В командной строке можно вводить команды SQL при этом она должна заканчиваться на знак ``;`` для отправки на сервер и для выполнения. Например: :: => SELECT * FROM mytable; pgAdmin III для ADB -------------------- Это GUI-клиент, поддерживающий базы данных **PostgreSQL** со всеми стандартными функциями *pgAdmin III*, добавляя поддержку функций, специфичных для **ADB**. *pgAdmin III* поддерживает следующие особенности **ADB**: + Внешние таблицы; + Таблицы с оптимизированным соединением (append-optimized), включая сжатые таблицы, оптимизированные для добавления; + Разделение таблиц; + Очереди ресурсов; + Графический анализ ANPLYIN ANALYZE; + Параметры конфигурации сервера ADB. Установка pgAdmin III ---------------------- Пакет установки для *pgAdmin III* для базы данных **ADB** доступен для загрузки с официального сайта *pgAdmin III*. Инструкции по установке включены в установочный пакет. Просмотр графического плана запроса ------------------------------------ Используя *pgAdmin III*, можно запустить запрос с помощью EXPLAIN, чтобы просмотреть детали плана запроса. Вывод содержит сведения об операциях, уникальных для обработки распределенных запросов **ADB** таких, как срезы плана и движения между сегментами. Можно просмотреть графическое изображение плана, а также текстовый вывод данных. Действия для просмотра графического плана запроса: 1. Выделив нужную базу данных в браузере объектов в левой панели, выбрать инструмент *Tools → Query*. 2. Ввести запрос в SQL, перенести объекты в *GraphicalQuery Builder* или открыть файл. 3. Выбрать *Query → Explain* и проверить следующие параметры: + *Verbose* -- должно быть отключено для просмотра графического изображения плана запроса; + *Analyze* -- выбрать этот параметр для запуска запроса в дополнение к просмотру плана. 4. Завершить операцию, нажав *Explain* в верхней части панели или выбрав *Query → Explain*. План запроса отображается в области вывода в нижней части экрана. Чтобы просмотреть графический вывод необходимо перейти на вкладку *Explain*. Интерфейсы приложений баз данных --------------------------------- Есть возможность разработки собственных клиентских приложений, взаимодействующих с базой данных **ADB**. **PostgreSQL** предоставляет ряд драйверов баз данных для наиболее часто используемых API, которые также могут использоваться с **ADB**. Эти драйверы не упакованы базовым дистрибутивом **ADB**. Каждый драйвер является независимым проектом разработки **PostgreSQL** и должен быть загружен, установлен и настроен для подключения к базе данных **ADB**. Доступные драйверы представлены в таблице. .. csv-table:: Клиентские приложения :header: "API", "Драйвер PostgreSQL", "Ссылка для скачивания" :widths: 30, 35, 35 "ODBC", "pgodbc", "Доступно в комплекте подключения к базе данных ADB, который можно загрузить из Центра загрузки EMC" "JDBC", "pgjdbc", "Доступно в комплекте подключения к базе данных ADB, который можно загрузить из Центра загрузки EMC" "Perl DBI", "pgperl", "http://gborg.PostgreSQL.org/project/pgperl" "Python DBI", "pygresql", "http://www.pygresql.org" Общие инструкции по доступу к базе данных **ADB** с помощью API: 1. Загрузить платформу и соответствующий API из источника. Например, можно получить Java-комплект разработчика (JDK) и API JDBC от Sun. 2. Записать клиентское приложение в соответствии со спецификациями API. При программировании приложения необходимо следить за тем, чтобы не был включен какой-либо неподдерживаемый синтаксис SQL. 3. Загрузить соответствующий драйвер PostgreSQL и настроить подключение к мастер-инстансу базы данных ADB. ADB предоставляет пакет клиентских инструментов, содержащий поддерживаемые драйверы баз данных. Инструменты сторонних клиентов ------------------------------- В большинстве сторонних средств ETL и бизнес-аналитики BI используются стандартные интерфейсы баз данных, такие как *ODBC* и *JDBC*. Их можно настроить для подключения к базе данных **ADB**. **ADB** работает со следующими инструментами: + Business Objects; + Microstrategy; + Informatica Power Center; + Microsoft SQL Server Integration Services (SSIS) and Reporting Services (SSRS); + Ascential Datastage; + SAS; + Cognos.