学习 Spark 2(四):Spark 读写 Hive

启用 Hive 在使用 Builder 模式 SparkSession.Builder 创建 SparkSession 实例,通过调用 enableHiveSupport() 即可启用 Hive: SparkSession.builder() .master("yarn") .appName(appName) .enableHiveSupport() .getOrCreate() 在使用 Oozie 运行 Spark »

Hive 查询 JSON 格式数据

添加 Jar 包 JSON SERDE 实现类所在 JAR 在 hcatalog 中,需要将其添加到 classpath 中: ADD JAR $HIVE_HOME/hcatalog/share/hcatalog/hive-hcatalog-core-2.0.1.jar 创建表 创建 »

Spark SQL ThriftServer 使用

配置 拷贝 $HIVE_HOME/conf/hive-site.xml 文件到 $SPARK_HOME/conf 目录下。 编辑 $SPARK_HOME/conf/spark_env.sh 文件,将 MySQL Driver 包添加到 SPARK_CLASSPATH »

Hive 配置元数据数据库 MySQL

Hive 默认使用 Derby 作为存储元数据存储,作为在测试环境中使用。 生产环境中,Hive 可以使用 MySQL、PostgreSQL 作为元数据存储。 创建用户 登录 MySQL mysql -uroot -p 创建 Hive 用户 CREATE USER 'hive' IDENTIFIED BY 'secret'; »

学习 Hive(四):桶

桶(Bucket)是优化查询的另一种方式。 不同于分区,桶对应着 HDFS 中的文件片段(segment)。 首先,指定表中的列来确定如何划分桶。 然后,Hive 对值进行哈希并将结果除以桶的个数取余数。 最后,计算结果相同的记录将被分配到同一个桶内(文件片段)。 注意: 桶的数量,尽量是2的倍数 Reduce 任务的数量尽量等于桶的数量 由于 Load 并不会使用元数据对数据进行校验,所以不能像其它表一样使用 Load »