hive内部表和外部表的区别_Spark SQL - Hive表

Hive与Spark库捆绑为HiveContext,它继承自SQLContext。 使用HiveContext,您可以在HiveMetaStore中创建和查找表,并使用HiveQL在其上写入查询。 没有现有Hive部署的用户仍然可以创建HiveContext。 当未由hive-site.xml配置时,上下文会自动在当前目录中创建名为metastore_db的元数据库和名为

Hive与Spark库捆绑为HiveContext,它继承自SQLContext。 使用HiveContext,您可以在HiveMetaStore中创建和查找表,并使用HiveQL在其上写入查询。 没有现有Hive部署的用户仍然可以创建HiveContext。 当未由hive-site.xml配置时,上下文会自动在当前目录中创建名为metastore_db的元数据库和名为warehouse的文件夹。

参考以下案例使用Hive表完成雇员记录。 所有记录的数据都在名为employee.txt的文本文件中。 这里,我们将首先初始化HiveContext对象。 使用它,我们将创建一个表,使用HiveQL语言将雇员记录数据加载到其中,并对其应用一些查询。

employee.txt - 将其放在spark-shell正在运行的当前目录中。

62c4bb19937531158835e9ab3e548a7c.png

启动Spark Shell

首先,我们必须启动Spark Shell。 使用HiveTables意味着我们正在处理Hive MetaStore。 因此,系统将自动创建用于存储表数据的仓库。 因此,最好在超级用户上运行Spark Shell。 请参考以下命令。

90d65bb92e1e45d32e32fba1a77e54ad.png

创建SQLContext对象

使用以下命令将HiveContext初始化到Spark Shell中。

f9a2d41263ce06b7d1d1ac94fb75c07c.png

使用HiveQL创建表

使用以下命令创建名为employee的表,其字段为id,name和age。这里,我们使用HiveQL语法的Create语句。

9c2ca8452a448bb3fc3af7a86b75ec71.png

使用HiveQL将数据加载到表中

使用以下命令将员工记录数据加载到员工表中。如果成功执行,给定的员工记录将按照模式存储在 employee 中。

958ecdd88a781de85270df9f14fad5ec.png

从表中选择字段

我们可以在表中执行任何类型的SQL查询。使用以下命令可以使用HiveQL select查询获取所有记录。

69c5b8c3efffb791154991893088de30.png

要显示记录数据,请对结果DataFrame调用show()方法。

9d012b3663496009aa2698a521f34f37.png

输出

2112ad81f99dd2cffdc140d2e614ddd7.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值