В прошлый раз мы говорили про особенности работы и создания представлений в Impala. Сегодня поговорим про модифицированный вывод в распределенной SQL-платформе Apache Impala. Читайте далее про особенности модификации вывода записей в Impala, включая базовые операторы, которые применяются для вывода конкретных записей.
Базовые SQL-операторы для модификации вывода записей в распределенной СУБД Apache Impala
При стандартном выводе записей в Impala используется SQL-оператор SELECT. Однако, бывают случаи, когда разработчику требуется вывести строго определенные записи. В этом случае наряду с оператором SELECT используются следующие операторы, которые позволяют модифицировать (настроить) вывод записей в SQL-таблице:
- оператор ограничения (limit) — позволяет выводить строго заданное число записей таблицы. В качестве параметра этот оператор принимает число записей, необходимых для вывода;
- оператор смещения (offset) — оператор, позволяющий передвигать курсор (задавать необходимое смещение) по записям и в качестве начальной записи брать ту запись, на которую был передвинут курсор. В качестве параметра данный метод принимает число (смещение), задающее номер записи, с которой должен начинаться вывод. Таким образом, смещение позволяет пропустить заданное количество записей при выводе.
Начало работы с операторами модификации вывода: несколько практических примеров
Для обычного вывода всех доступных записей используется SQL-операция SELECT*:
SELECT* FROM Employees
Для того, чтобы ограничить количество выводимых записей, необходимо в конструкции выбора SELECT* добавить оператор ограничения LIMIT. Следующий код отвечает за вывод первых четырёх записей таблицы, отсортировав их (за это отвечает конструкция ORDER BY) по полю id [1]:
SELECT * FROM Employees ORDER BY id LIMIT 4
Для того, чтобы выводить строго конкретные записи со смещением курсора, применяется оператор OFFSET. По умолчанию, значение параметра этого оператора равно 0 (например, как в вышерассмотренном примере). Вышерассмотренный пример можно также записать с применением оператора OFFSET, указав в качестве параметра смещения 0 [1]:
SELECT * FROM Employees ORDER BY id LIMIT 4 OFFSET 0
Если в качестве смещения указать число больше 0, то произойдет сдвиг курсора по индексам записей (отсчет по индексам начинается с 0). В качестве примера можно рассмотреть вывод четырех записей, начиная с шестой. Для этого в качестве параметра смещения нужно указать число 5 (так как отсчет начинается с 0), а в качестве параметра ограничения — число 4 [1]:
SELECT * FROM Employees ORDER BY id LIMIT 4 OFFSET 5
Таким образом, благодаря операторам, позволяющим модифицировать вывод записей, разработчик в области Big Data имеет возможность просмотреть любую запись, не затрачивая при этом времени на ручной поиск. Это делает Apache Impala весьма удобным и быстрым средством для работы с большими массивами данных.
Больше подробностей про применение Apache Impala в проектах анализа больших данных вы узнаете на практических курсах по Impala в нашем лицензированном учебном центре обучения и повышения квалификации ИТ-специалистов в Москве:
HBASE: Администрирование кластера HBase
HIVE: Hadoop SQL администратор Hive
Источники