hive的表数据是可以同步到impala中去的。一般impala是提供实时查询操作的,像比较耗时的入库操作我们可以使用hive,然后再将数据同步到impala中。另外,我们也可以在hive中创建一张表同时映射hbase中的表,实现数据同步。
下面,笔者依次进行介绍。
首先,我们在hive命令行执行showdatabases;可以看到有以下几个数据库:
然后,我们在impala同样执行showdatabases;可以看到:
目前的数据库都是一样的。
下面,我们在hive里面执行create databaseqyk_test;创建一个数据库,如下:
然后,我们使用qyk_test这个数据库创建一张表,执行create table user_info(idbigint, account string, name string, age int) row format delimitedfields terminated by ‘\\t';如下:
此时,我们已经在hive这边创建好了,然后直接在impala这边执行showdatabases;可以看到:
连qyk_test这个数据库都没有。
接下来,我们在impala执行invalidatemetadata;然后再查询可以看到:
数据库和表都会同步过来。
好了,笔者来做个总结:
如果在hive里面做了新增、删除数据库、表或者数据等更新操作,需要执行在impala里面执行invalidatemetadata;命令才能将hive的数据同步impala;
如果直接在impala里面新增、删除数据库、表或者数据,会自动同步到hive,无需执行任何命令。
首先,我们在hbase中创建一张表create ‘user_sysc', {name =>‘info'},然后,我们在hive中执行
相关文章
- ASP.NET自助建站系统的域名绑定与解析教程 2025-06-10
- 个人服务器网站搭建:如何选择合适的服务器提供商? 2025-06-10
- ASP.NET自助建站系统中如何实现多语言支持? 2025-06-10
- 64M VPS建站:如何选择最适合的网站建设平台? 2025-06-10
- ASP.NET本地开发时常见的配置错误及解决方法? 2025-06-10