Spark를 이용한 hive 접근
1. hive-site.xml에 추가
<property>
<name>hive.metastore.uris</name>
<value>thrift://localhost:9083</value>
</property>
<property>
<name>spark.sql.warehouse.dir</name>
<value>/user/hive/warehouse</value>
</property>
2. hive --service metastore
(metastore가 있는 디렉토리에서 실행)
metastore 서버를 실행함
hive가 아닌곳에서의 접근을 위함
접근 경로는 위에 추가한 <name>과 <value>의
hive.metastore.uris를 thrift://localhost:9073에서 돌린다는 의미이므로
<name>과 <value>에 작성한 값을 참고하면 된다
3.
sparkSession = (SparkSession.builder.appName("pyspark-hivemetastore7")\
.config('hive.metastore.uris', 'thrift://localhost:9083')
.enableHiveSupport()
.getOrCreate())
Spark에서 Hive 접속 및 지원을 위해서
1) .config('hive.metastore.uris','thrift://localhost:9083') << 외부(spark)에서의 hive 접근, 1번에서 지정해준 <name>과 <value>
2) .enableHiveSupport() 속성을 추가 << Spark에서 Hive 지원