hive与hbase的HQL增删改查
时间: 2023-10-24 09:09:38 浏览: 94
Hive和HBase是两个不同的数据存储系统,它们的查询语言也不一样。Hive使用HQL(Hive Query Language)来查询数据,而HBase使用Java API或HBase Shell来查询数据。
下面是Hive中的常见操作示例:
1. 查询数据
```
SELECT * FROM table_name;
```
2. 插入数据
```
INSERT INTO TABLE table_name VALUES (value1, value2, ...);
```
3. 更新数据
```
UPDATE table_name SET column_name = new_value WHERE condition;
```
4. 删除数据
```
DELETE FROM table_name WHERE condition;
```
下面是HBase中的常见操作示例:
1. 查询数据
使用Java API:
```
Get get = new Get(Bytes.toBytes("row_key"));
Result result = table.get(get);
```
使用HBase Shell:
```
get 'table_name', 'row_key'
```
2. 插入数据
使用Java API:
```
Put put = new Put(Bytes.toBytes("row_key"));
put.addColumn(Bytes.toBytes("column_family"), Bytes.toBytes("column_name"), Bytes.toBytes("value"));
table.put(put);
```
使用HBase Shell:
```
put 'table_name', 'row_key', 'column_family:column_name', 'value'
```
3. 更新数据
使用Java API:
```
Put put = new Put(Bytes.toBytes("row_key"));
put.addColumn(Bytes.toBytes("column_family"), Bytes.toBytes("column_name"), Bytes.toBytes("new_value"));
table.put(put);
```
使用HBase Shell:
```
put 'table_name', 'row_key', 'column_family:column_name', 'new_value'
```
4. 删除数据
使用Java API:
```
Delete delete = new Delete(Bytes.toBytes("row_key"));
delete.addColumn(Bytes.toBytes("column_family"), Bytes.toBytes("column_name"));
table.delete(delete);
```
使用HBase Shell:
```
delete 'table_name', 'row_key', 'column_family:column_name'
```