Hadoop: Hive contekan SQL

From OnnoWiki
Jump to navigation Jump to search

Sumber: http://hortonworks.com/hadoop/hive/#section_5


SQL and HiveQL

Apache Hive is data warehouse infrastructure built on top of Apache Hadoop for providing data summarization, ad-hoc query, and analysis of large datasets. It provides a mechanism to project structure onto the data in Hadoop and to query that data using a SQL-like language called HiveQL (HQL).

Naturally, there are a bunch of differences between SQL and HiveQL, but on the other hand there are a lot of similarities too, and recent releases of Hive bring that SQL-92 compatibility closer still.

Below is some basic information to get you started. Of course, if you really want to get to grips with Hive, then take a look at the full language manual. SQL to HQL Cheat Sheet


Retrieving Information Function MySQL Hive Retrieving Information (General) SELECT from_columns FROM table WHERE conditions; SELECT from_columns FROM table WHERE conditions; Retrieving All Values SELECT * FROM table; SELECT * FROM table; Retrieving Some Values SELECT * FROM table WHERE rec_name = "value"; SELECT * FROM table WHERE rec_name = "value"; Retrieving With Multiple Criteria SELECT * FROM TABLE WHERE rec1 = "value1" AND rec2 = "value2"; SELECT * FROM TABLE WHERE rec1 = "value1" AND rec2 = "value2"; Retrieving Specific Columns SELECT column_name FROM table; SELECT column_name FROM table; Retrieving Unique Output SELECT DISTINCT column_name FROM table; SELECT DISTINCT column_name FROM table; Sorting SELECT col1, col2 FROM table ORDER BY col2; SELECT col1, col2 FROM table ORDER BY col2; Sorting Reverse SELECT col1, col2 FROM table ORDER BY col2 DESC; SELECT col1, col2 FROM table ORDER BY col2 DESC; Counting Rows SELECT COUNT(*) FROM table; SELECT COUNT(*) FROM table; Grouping With Counting SELECT owner, COUNT(*) FROM table GROUP BY owner; SELECT owner, COUNT(*) FROM table GROUP BY owner; Maximum Value SELECT MAX(col_name) AS label FROM table; SELECT MAX(col_name) AS label FROM table; Selecting from multiple tables (Join same table using alias w/”AS”) SELECT pet.name, comment FROM pet, event WHERE pet.name = event.name; SELECT pet.name, comment FROM pet JOIN event ON (pet.name = event.name) Metadata Function MySQL Hive Selecting a database USE database; USE database; Listing databases SHOW DATABASES; SHOW DATABASES; Listing tables in a database SHOW TABLES; SHOW TABLES; Describing the format of a table DESCRIBE table; DESCRIBE (FORMATTED|EXTENDED) table; Creating a database CREATE DATABASE db_name; CREATE DATABASE db_name; Dropping a database DROP DATABASE db_name; DROP DATABASE db_name (CASCADE);




Referensi