Учебники

Импала — Создать представление

Представление — это не что иное, как утверждение языка запросов Impala, которое хранится в базе данных со связанным именем. Это состав таблицы в виде предопределенного SQL-запроса.

Представление может содержать все строки таблицы или выбранные. Представление может быть создано из одной или нескольких таблиц. Представления позволяют пользователям —

  • Структурируйте данные так, чтобы пользователи или классы пользователей находили естественные или интуитивно понятные.

  • Ограничьте доступ к данным таким образом, чтобы пользователь мог видеть и (иногда) изменять именно то, что ему нужно, и не более.

  • Суммируйте данные из различных таблиц, которые можно использовать для создания отчетов.

Структурируйте данные так, чтобы пользователи или классы пользователей находили естественные или интуитивно понятные.

Ограничьте доступ к данным таким образом, чтобы пользователь мог видеть и (иногда) изменять именно то, что ему нужно, и не более.

Суммируйте данные из различных таблиц, которые можно использовать для создания отчетов.

Вы можете создать вид, используя оператор Impala Create View .

Синтаксис

Ниже приведен синтаксис оператора создания представления. ЕСЛИ НЕ СУЩЕСТВУЕТ , это необязательный пункт. Если мы используем это предложение, создается таблица с заданным именем, только если в указанной базе данных с таким именем нет существующей таблицы.

Create View IF NOT EXISTS view_name as Select statement

пример

Например, предположим, что у нас есть таблица с именем customer в базе данных my_db в Impala, со следующими данными.

ID  NAME      AGE   ADDRESS     SALARY
--- --------- ----- ----------- --------
1   Ramesh    32    Ahmedabad   20000
2   Khilan    25    Delhi       15000
3   Hardik    27    Bhopal      40000
4   Chaitali  25    Mumbai      35000
5   kaushik   23    Kota        30000
6   Komal     22    MP          32000

Ниже приведен пример создания оператора представления. В этом примере мы создаем представление в виде таблицы клиентов, которая содержит столбцы, имя и возраст.

[quickstart.cloudera:21000] > CREATE VIEW IF NOT EXISTS customers_view AS 
select name, age from customers;

При выполнении вышеупомянутого запроса создается представление с нужными столбцами, отображающее следующее сообщение.

Query: create VIEW IF NOT EXISTS sample AS select * from customers 
Fetched 0 row(s) in 0.33s

верификация

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

[quickstart.cloudera:21000] > select * from customers_view;

Это даст следующий результат.

Query: select * from customers_view 
+----------+-----+ 
| name     | age | 
+----------+-----+ 
| Komal    | 22  | 
| Khilan   | 25  | 
| Ramesh   | 32  | 
| Hardik   | 27  | 
| Chaitali | 25  | 
| kaushik  | 23  | 
+----------+-----+ 
Fetched 6 row(s) in 4.80s

Создание представления с использованием Hue

Откройте редактор запросов Impala, выберите контекст my_db , введите в нем оператор Create View и нажмите кнопку execute, как показано на следующем снимке экрана.

Создание представления

После выполнения запроса, если вы прокрутите вниз, вы увидите представление с именем sample, созданное в списке таблиц, как показано ниже.