Hive stores the metadata in a database called metastore. Most of the RDBMS compliant databases (MySQL, Postgress, Derby etc.,) supported for metastore configuration.
Metastore in Cloudera Quickstart VM
Cloudera Quick start VM use MySQL as a metastore.
Open terminal and execute the command ‘mysql -u root -p’.
[cloudera@quickstart hive]$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 489
Server version: 5.1.73 Source distribution
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
Enter the password as ‘cloudera’.
Execute the command ‘SHOW DATABASES’ to print all the databases.
mysql> SHOW DATABASES; +--------------------+ | Database | +--------------------+ | information_schema | | cm | | firehose | | hue | | metastore | | mysql | | nav | | navms | | oozie | | retail_db | | rman | | sentry | +--------------------+ 12 rows in set (0.01 sec)
As you see above snippet, we have a database called ‘metastore’ which is used as a metastore by Hive.
mysql> USE metastore; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed mysql> mysql> mysql> SHOW TABLES; +---------------------------+ | Tables_in_metastore | +---------------------------+ | BUCKETING_COLS | | CDS | | COLUMNS_V2 | | COMPACTION_QUEUE | | COMPLETED_TXN_COMPONENTS | | DATABASE_PARAMS | | DBS | | DB_PRIVS | | DELEGATION_TOKENS | | FUNCS | | FUNC_RU | | GLOBAL_PRIVS | | HIVE_LOCKS | | IDXS | | INDEX_PARAMS | | MASTER_KEYS | | METASTORE_DB_PROPERTIES | | NEXT_COMPACTION_QUEUE_ID | | NEXT_LOCK_ID | | NEXT_TXN_ID | | NOTIFICATION_LOG | | NOTIFICATION_SEQUENCE | | NUCLEUS_TABLES | | PARTITIONS | | PARTITION_EVENTS | | PARTITION_KEYS | | PARTITION_KEY_VALS | | PARTITION_PARAMS | | PART_COL_PRIVS | | PART_COL_STATS | | PART_PRIVS | | ROLES | | ROLE_MAP | | SDS | | SD_PARAMS | | SEQUENCE_TABLE | | SERDES | | SERDE_PARAMS | | SKEWED_COL_NAMES | | SKEWED_COL_VALUE_LOC_MAP | | SKEWED_STRING_LIST | | SKEWED_STRING_LIST_VALUES | | SKEWED_VALUES | | SORT_COLS | | TABLE_PARAMS | | TAB_COL_STATS | | TBLS | | TBL_COL_PRIVS | | TBL_PRIVS | | TXNS | | TXN_COMPONENTS | | TYPES | | TYPE_FIELDS | | VERSION | +---------------------------+ 54 rows in set (0.00 sec) mysql>
Let’s query the table ‘TBLS’ to see all the Hive tables information.
mysql> SELECT * from TBLS; +--------+-------------+-------+------------------+----------+-----------+-------+----------+---------------+--------------------+--------------------+----------------+ | TBL_ID | CREATE_TIME | DB_ID | LAST_ACCESS_TIME | OWNER | RETENTION | SD_ID | TBL_NAME | TBL_TYPE | VIEW_EXPANDED_TEXT | VIEW_ORIGINAL_TEXT | LINK_TARGET_ID | +--------+-------------+-------+------------------+----------+-----------+-------+----------+---------------+--------------------+--------------------+----------------+ | 19 | 1649930389 | 1 | 0 | cloudera | 0 | 19 | user | MANAGED_TABLE | NULL | NULL | NULL | +--------+-------------+-------+------------------+----------+-----------+-------+----------+---------------+--------------------+--------------------+----------------+ 1 row in set (0.00 sec)
Right now I have only user table created and managed by Hive.
How to clear the content in Hive interactive terminal? Execute the command !clear;
No comments:
Post a Comment