我一直在努力实现这一目标而没有成功。我试图在鲨鱼的dse上使用包含的hive disitribution,但是,shark提供了一个补丁和旧版本的Hive(0.9我相信),这使得由于不兼容性导致鲨鱼执行无法执行。我还尝试使用来自shark而不是dse的修补后的hive版本,回收dse hive配置(为了使CFS可用于shark的hive发行版),只是为了从完整的dse类路径中发现一长串依赖项(hive,cassandra) ,hadoop等。)。
可以按照此blog上的说明使用C *实现此目的。
我是否因为尝试使用CFS而感到顽固?在dse上有没有CFS或没有CFS的方法?
谢谢!
以下是一些shark-env.sh要点:
export HIVE_HOME="/home/cassserv/hive-0.9.0-bin/" #choosing this when using hive distro.
#export HIVE_HOME="/usr/share/dse/hive/" #choosing this when using dse distro.
export HIVE_CONF_DIR="/home/cassserv/hive-0.9.0-bin/conf" #edited dse hive-site.xml conf file
#export HIVE_CONF_DIR="/etc/dse/hive" #original dse hive-site.xml conf file
已编辑的hive-site.xml要点:
<property>
<name>hive.hwi.war.file</name>
<!--<value>lib/hive-hwi.war</value>-->
<value>lib/hive-hwi-0.9.0-shark-0.8.1.war</value><!--edited to use sharks distro-->
<description>This sets the path to the HWI war file, relative to ${HIVE_HOME}</description>
</property>
<property>
<name>hadoop.bin.path</name>
<!--<value>${dse.bin}/dse hadoop</value>-->
<value>/usr/share/dse hadoop</value><!--edited to override variable-->
</property>
这是鲨鱼的输出,同时尝试使用dse的蜂巢配置使用鲨鱼修补蜂巢发行版。缺少的类在dse.jar文件中:
Exception in thread "main" org.apache.hadoop.hive.ql.metadata.HiveException: MetaException(message:com.datastax.bdp.hadoop.hive.metastore.CassandraHiveMetaStore class not found)
我想弄清楚我是否可以在编辑过的hive-site.xml中做这样的事情:
<property>
<name>fs.cfs.impl</name>
<value>org.apache.cassandra.hadoop.fs.CassandraFileSystem</value>
</property>
<property>
<name>hive.metastore.rawstore.impl</name>
<!--<value>com.datastax.bdp.hadoop.hive.metastore.CassandraHiveMetaStore</value>--> <value>org.apache.hadoop.hive.metastore.ObjectStore</value>
<description>Use the Apache Cassandra Hive RawStore implementation</description>
</property>
为了从dse库中删除任何依赖项。此外,可能不会使用dse的hadoop发行版。
答案 0 :(得分:1)
DSE 4.5集成了Spark和Shark 0.9。你不需要设置任何东西,它的开箱即用方式与之前的猪/蜂巢相同。