Cloudera仮想マシンに付属のSparkチュートリアルを実行しようとしています。しかし、私は正しい行末エンコーディングを使用していますが、私は大量のエラーが発生するため、スクリプトを実行できません。 チュートリアルはCoursera Introduction to Big Data Analyticsコースの一部です。割り当てcan be found here。Cloudera VMでチュートリアルCSVファイルを読むときの例外
これは私がしたことです。 (まだ行われていない場合)IPythonシェルをインストールします
sudo easy_install ipython==1.2.1
オープン/(どちらか1.2.0または1.4.0で)シェルを起動します。
窓スタイルに行末を設定PYSPARK_DRIVER_PYTHON=ipython pyspark --packages com.databricks:spark-csv_2.10:1.2.0
。これは、ファイルがWindowsエンコーディングされているため、そのようにするためにコースに記載されているためです。これをしないと、他のエラーが発生します。
CSVファイルをロードしようとsc._jsc.hadoopConfiguration().set('textinputformat.record.delimiter','\r\n')
:
yelp_df = sqlCtx.load(source='com.databricks.spark.csv',header = 'true',inferSchema = 'true',path = 'file:///usr/lib/hue/apps/search/examples/collections/solr_configs_yelp_demo/index_data.csv')
しかし、このように起動し、エラーの非常に長いリスト、取得:
Py4JJavaError: An error occurred while calling o23.load.: java.lang.RuntimeException:
Unable to instantiate
org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient at
org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:472)
完全なエラーメッセージcan be seen hereを。これは/etc/hive/conf/hive-site.xmlです。
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<!-- Hive Configuration can either be stored in this file or in the hadoop configuration files -->
<!-- that are implied by Hadoop setup variables. -->
<!-- Aside from Hadoop setup variables - this file is provided as a convenience so that Hive -->
<!-- users do not have to edit hadoop configuration files (that may be managed as a centralized -->
<!-- resource). -->
<!-- Hive Execution Parameters -->
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://127.0.0.1/metastore?createDatabaseIfNotExist=true</value>
<description>JDBC connect string for a JDBC metastore</description>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
<description>Driver class name for a JDBC metastore</description>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>hive</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>cloudera</value>
</property>
<property>
<name>hive.hwi.war.file</name>
<value>/usr/lib/hive/lib/hive-hwi-0.8.1-cdh4.0.0.jar</value>
<description>This is the WAR file with the jsp content for Hive Web Interface</description>
</property>
<property>
<name>datanucleus.fixedDatastore</name>
<value>true</value>
</property>
<property>
<name>datanucleus.autoCreateSchema</name>
<value>false</value>
</property>
<property>
<name>hive.metastore.uris</name>
<value>thrift://127.0.0.1:9083</value>
<description>IP address (or fully-qualified domain name) and port of the metastore host</description>
</property>
</configuration>
どのように解決するには?私はそれがかなり一般的なエラーだと思います。しかし、私はまだ解決策を見つけることができませんでした。
もう1つ:このような長いエラーメッセージを別のログファイルにダンプする方法はありますか?
あなたはUNIX環境で作業しているようですが、どうしてラインエンドをWindowsスタイルに設定していますか?このコマンドを発行せずにもう一度お試しいただけますか?また、あなたが得るエラーの最後の部分を追加してください? – Yaron
あなたはどのバージョンのCloudera VMを使用していますか? – Yaron
ファイルはWindowsエンコーディングのため、チュートリアルではそうです。 btw:Cloudera QuickStart VMはCDH 5.7 – Matthias