Member since
09-17-2015
436
Posts
736
Kudos Received
81
Solutions
My Accepted Solutions
Title | Views | Posted |
---|---|---|
3846 | 01-14-2017 01:52 AM | |
5742 | 12-07-2016 06:41 PM | |
6622 | 11-02-2016 06:56 PM | |
2175 | 10-19-2016 08:10 PM | |
5683 | 10-19-2016 08:05 AM |
11-30-2015
07:26 AM
2 Kudos
Automated deployment of a fresh HDP cluster that includes Zeppelin (via blueprints) Background: The Zeppelin Ambari service has been updated and now supports installing latest Zeppelin version (0.5.5) on HDP using blueprints to automate creation of 'data science' cluster. SequenceIQ team have a datascientist blueprint that installs Zeppelin, but based on my conversations with @lpapp, its based on an older version of the Ambari service so does not install the latest or support as many options. Below is a writeup of how to deploy Zeppelin via blueprints. Note that if you already have a cluster running, you should just use the Add service wizard in Ambari to deploy Zeppelin using the steps on the github Purpose: Sample steps below for installing a 4-node HDP cluster that includes Zeppelin, using Ambari blueprints and Ambari bootstrap scripts (by @Sean Roberts) Pre-reqs: Bring up 4 VMs imaged with RHEL/CentOS 6.5 or later (e.g. called node1-4 in this case). Note that the VMs should not already have HDP related software installed on them at this point. Steps:
On non-ambari nodes (e.g. nodes2-4), use Ambari bootstrap script to run pre-reqs, install ambari-agents and point them to ambari node (e.g. node1 in this case) export ambari_server=node1
curl -sSL https://raw.githubusercontent.com/seanorama/ambari-bootstrap/master/ambari-bootstrap.sh | sudo -E sh
On Ambari node (e.g. node1), use bootstrap script to run pre-reqs and install ambari-server export install_ambari_server=true
curl -sSL https://raw.githubusercontent.com/seanorama/ambari-bootstrap/master/ambari-bootstrap.sh | sudo -E sh
yum install -y git
git clone https://github.com/hortonworks-gallery/ambari-zeppelin-service.git /var/lib/ambari-server/resources/stacks/HDP/2.3/services/ZEPPELIN
Edit the /var/lib/ambari-server/resources/stacks/HDP/2.3/role_command_order.json file to include below: "ZEPPELIN_MASTER-START": ["NAMENODE-START", "DATANODE-START"],
Note that comma at the end. If you insert the above as the last line, you need to remove the comma
Restart Ambari service ambari-server restart
service ambari-agent restart
Confirm 4 agents were registered and agent remained up curl -u admin:admin -H X-Requested-By:ambari http://localhost:8080/api/v1/hosts
service ambari-agent status
(Optional) - In general, you can generate a BP and cluster file for your cluster via Ambari recommendations API using these steps. However in this example we are providing some sample blueprints which you can edit, so this is not needed. These for reference only. For more details on the bootstrap scripts see bootstrap script git yum install -y python-argparse
git clone https://github.com/seanorama/ambari-bootstrap.git
#optional - limit the services for faster deployment
#for minimal services
export ambari_services="HDFS MAPREDUCE2 YARN ZOOKEEPER HIVE ZEPPELIN"
#for most services
#export ambari_services="ACCUMULO FALCON FLUME HBASE HDFS HIVE KAFKA KNOX MAHOUT OOZIE PIG SLIDER SPARK SQOOP MAPREDUCE2 STORM TEZ YARN ZOOKEEPER ZEPPELIN"
export deploy=false
cd ambari-bootstrap/deploy
bash ./deploy-recommended-cluster.bash
cd tmpdir*
#edit the blueprint to customize as needed. You can use sample blueprints provided below to see how to add the custom services.
vi blueprint.json
#edit cluster file if needed
vi cluster.json Download either minimal or full blueprint for 4 node setup #Pick one of the below blueprints
#for minimal services download this one
wget https://raw.githubusercontent.com/hortonworks-gallery/ambari-zeppelin-service/master/blueprint-4node-zeppelin-minimal.json -O blueprint-zeppelin.json
#for most services download this one
wget https://raw.githubusercontent.com/hortonworks-gallery/ambari-zeppelin-service/master/blueprint-4node-zeppelin-all.json -O blueprint-zeppelin.json
(optional) If running on single node, download minimal blueprint for 1 node setup #Pick one of the below blueprints
#for minimal services download this one
wget https://raw.githubusercontent.com/hortonworks-gallery/ambari-zeppelin-service/master/blueprint-1node-zeppelin-minimal.json -O blueprint-zeppelin.json
(optional) If needed, change the Zeppelin configs based on your setup by modifying these lines vi blueprint-zeppelin.json
if deploying on public cloud, you will want to add "zeppelin.host.publicname":"<public IP or hostname of zeppelin node>" so the Zeppelin Ambari view is pointing to external hostname (instead of the internal name, which is the default) Upload selected blueprint and download a sample cluster.json that provides your host FQDN's. Modify the host FQDN's in the cluster.json file your own env. Finally deploy cluster and call it zeppelinCluster #upload the blueprint to Ambari
curl -u admin:admin -H X-Requested-By:ambari http://localhost:8080/api/v1/blueprints/zeppelinBP -d @blueprint-zeppelin.json
download sample cluster.json #for 4 node setup
wget https://raw.githubusercontent.com/hortonworks-gallery/ambari-zeppelin-service/master/cluster-4node.json -O cluster.json
#for single node setup
wget https://raw.githubusercontent.com/hortonworks-gallery/ambari-zeppelin-service/master/cluster-1node.json -O cluster.json
modify the host FQDNs in the cluster json file with your own. Also change the default_password to set the password for hive vi cluster.json
deploy the cluster curl -u admin:admin -H X-Requested-By:ambari http://localhost:8080/api/v1/clusters/zeppelinCluster -d @cluster.json
You can monitor the progress of the deployment via Ambari (e.g. http://node1:8080). Once install completes, you will have a 4 node HDP cluster including Zeppelin, along with some starter demo Zeppelin notebooks from the gallery github More details available on the github README here Similar steps are available here to deploy a 'security ready' cluster including demo KDC, OpenLDAP, NSLCD services.
... View more
Labels:
11-29-2015
02:18 AM
3 Kudos
(Adding as answer as it too big to add as comment): Ran some tests and here are the findings. Changing proxyuser helps but still having issues getting queries that result in Tez jobs working for some reason. With 2.3.0 sandbox (spark 1.3.1) all hive queries seem to run fine Test 1: 2.3.0.0-2557 (sandbox) HDP Spark 1.3.1 hadoop.proxyuser.hive.groups=users Results: all hive queries works fine Test 2: 2.3.2.0-2950 HDP Spark 1.4.1 hadoop.proxyuser.hive.groups=users Results: Error when running any hive query: Required field 'serverProtocolVersion' is unset running from hive cli as zeppelin user runs fine Test 3: Ambari installed 2.3.2.0-2950 env HDP Spark 1.4.1 hadoop.proxyuser.hive.groups=* hive queries that don’t generate tez job work fine Error when running hive query that generate tez job : FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.tez.TezTask running from hive cli as zeppelin user runs fine Test 4: Ambari installed 2.3.2.0-2950 env Installed Spark 1.5.1 TP hadoop.proxyuser.hive.groups=users Results: Error when running any hive query: Required field 'serverProtocolVersion' is unset running from hive cli as zeppelin user runs fine Test 5: Ambari installed 2.3.2.0-2950 env Installed Spark 1.5.1 TP hadoop.proxyuser.hive.groups=* hive queries that don’t generate tez job work fine Error when running hive query that generate tez job : FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.tez.TezTask running from hive cli as zeppelin user runs fine
... View more
11-28-2015
12:21 AM
Thanks @Guilherme Braccialli yes this is with HDP 2.3.2 / Spark 1.4.1. Interesting...so using Spark 1.5.2 will fix this? I will try this out.
... View more
11-27-2015
11:06 PM
Am getting error "Required field 'serverProtocolVersion' is unset" when trying to run Hive queries from recent build of Zeppelin on HDP 2.3.2/Spark 1.4.1. Tried both Zeppelin service and compiling Zeppelin. Spark and Phoenix jobs run fine. Hive used to work fine before. Google search suggests issue may be caused by below...anyone else run into this? https://issues.apache.org/jira/browse/HIVE-6050 http://stackoverflow.com/questions/24694415/required-field-client-protocol-is-unset Using default proxy settings for Hive hadoop.proxyuser.hive.hosts = *
hadoop.proxyuser.hive.groups = users Full error ERROR [2015-11-27 04:41:26,630] ({pool-2-thread-2} HiveConnection.java[openSession]:466) - Error opening session
org.apache.thrift.protocol.TProtocolException: Required field 'serverProtocolVersion' is unset! Struct:TOpenSessionResp(status:TStatus(statusCode:ERROR_STATUS, infoMessages:[*org.apache.hive.service.cli.HiveSQLException:Failed to open new session: java.lang.RuntimeException: java.lang.RuntimeException: org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.authorize.AuthorizationException): User: hive is not allowed to impersonate hive:13:12, org.apache.hive.service.cli.session.SessionManager:openSession:SessionManager.java:266, org.apache.hive.service.cli.CLIService:openSessionWithImpersonation:CLIService.java:202, org.apache.hive.service.cli.thrift.ThriftCLIService:getSessionHandle:ThriftCLIService.java:402, org.apache.hive.service.cli.thrift.ThriftCLIService:OpenSession:ThriftCLIService.java:297, org.apache.hive.service.cli.thrift.TCLIService$Processor$OpenSession:getResult:TCLIService.java:1253, org.apache.hive.service.cli.thrift.TCLIService$Processor$OpenSession:getResult:TCLIService.java:1238, org.apache.thrift.ProcessFunction:process:ProcessFunction.java:39, org.apache.thrift.TBaseProcessor:process:TBaseProcessor.java:39, org.apache.hive.service.auth.TSetIpAddressProcessor:process:TSetIpAddressProcessor.java:56, org.apache.thrift.server.TThreadPoolServer$WorkerProcess:run:TThreadPoolServer.java:285, java.util.concurrent.ThreadPoolExecutor:runWorker:ThreadPoolExecutor.java:1145, java.util.concurrent.ThreadPoolExecutor$Worker:run:ThreadPoolExecutor.java:615, java.lang.Thread:run:Thread.java:745, *java.lang.RuntimeException:java.lang.RuntimeException: org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.authorize.AuthorizationException): User: hive is not allowed to impersonate hive:21:8, org.apache.hive.service.cli.session.HiveSessionProxy:invoke:HiveSessionProxy.java:83, org.apache.hive.service.cli.session.HiveSessionProxy:access$000:HiveSessionProxy.java:36, org.apache.hive.service.cli.session.HiveSessionProxy$1:run:HiveSessionProxy.java:63, java.security.AccessController:doPrivileged:AccessController.java:-2, javax.security.auth.Subject:doAs:Subject.java:415, org.apache.hadoop.security.UserGroupInformation:doAs:UserGroupInformation.java:1657, org.apache.hive.service.cli.session.HiveSessionProxy:invoke:HiveSessionProxy.java:59, com.sun.proxy.$Proxy19:open::-1, org.apache.hive.service.cli.session.SessionManager:openSession:SessionManager.java:258, *java.lang.RuntimeException:org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.authorize.AuthorizationException): User: hive is not allowed to impersonate hive:26:5, org.apache.hadoop.hive.ql.session.SessionState:start:SessionState.java:522, org.apache.hive.service.cli.session.HiveSessionImpl:open:HiveSessionImpl.java:137, sun.reflect.GeneratedMethodAccessor10:invoke::-1, sun.reflect.DelegatingMethodAccessorImpl:invoke:DelegatingMethodAccessorImpl.java:43, java.lang.reflect.Method:invoke:Method.java:606, org.apache.hive.service.cli.session.HiveSessionProxy:invoke:HiveSessionProxy.java:78, *org.apache.hadoop.ipc.RemoteException:User: hive is not allowed to impersonate hive:45:19, org.apache.hadoop.ipc.Client:call:Client.java:1427, org.apache.hadoop.ipc.Client:call:Client.java:1358, org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker:invoke:ProtobufRpcEngine.java:229, com.sun.proxy.$Proxy14:getFileInfo::-1, org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolTranslatorPB:getFileInfo:ClientNamenodeProtocolTranslatorPB.java:771, sun.reflect.GeneratedMethodAccessor7:invoke::-1, sun.reflect.DelegatingMethodAccessorImpl:invoke:DelegatingMethodAccessorImpl.java:43, java.lang.reflect.Method:invoke:Method.java:606, org.apache.hadoop.io.retry.RetryInvocationHandler:invokeMethod:RetryInvocationHandler.java:187, org.apache.hadoop.io.retry.RetryInvocationHandler:invoke:RetryInvocationHandler.java:102, com.sun.proxy.$Proxy15:getFileInfo::-1, org.apache.hadoop.hdfs.DFSClient:getFileInfo:DFSClient.java:2116, org.apache.hadoop.hdfs.DistributedFileSystem$22:doCall:DistributedFileSystem.java:1305, org.apache.hadoop.hdfs.DistributedFileSystem$22:doCall:DistributedFileSystem.java:1301, org.apache.hadoop.fs.FileSystemLinkResolver:resolve:FileSystemLinkResolver.java:81, org.apache.hadoop.hdfs.DistributedFileSystem:getFileStatus:DistributedFileSystem.java:1301, org.apache.hadoop.fs.FileSystem:exists:FileSystem.java:1424, org.apache.hadoop.hive.ql.session.SessionState:createRootHDFSDir:SessionState.java:596, org.apache.hadoop.hive.ql.session.SessionState:createSessionDirs:SessionState.java:554, org.apache.hadoop.hive.ql.session.SessionState:start:SessionState.java:508], errorCode:0, errorMessage:Failed to open new session: java.lang.RuntimeException: java.lang.RuntimeException: org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.authorize.AuthorizationException): User: hive is not allowed to impersonate hive), serverProtocolVersion:null)
... View more
Labels:
- Labels:
-
Apache Hive
-
Apache Zeppelin
11-26-2015
10:23 PM
I have been following that PR since the question was posted. Sounds like some serious discord between the contributor and community going on. Hopefully it doesn't impact the PR getting merged but doesn't look good.
... View more
11-25-2015
07:46 PM
2 Kudos
yup, very useful - if you go to http://sandbox.hortonworks.com:8888 and click advanced you will see this and other useful url links
... View more
11-25-2015
03:36 PM
2 Kudos
Some interesting talks for Hadoop Summit 2016 (EMEA). Please vote: the deadline is Dec 15 and you can vote for as many talks as you want Hadoop governance, security, deployment, operations 1. Rolling & Express Upgrades of the Stack in Ambari https://hadoopsummit.uservoice.com/forums/332061-hadoop-governance-security-deployment-and-operat/suggestions/10848390-rolling-express-upgrades-of-the-stack-in-ambari Data science 0. Analyzing Hollywood with Spark and Hadoop: https://hadoopsummit.uservoice.com/forums/332055-data-science-applications-for-hadoop/suggestions/10846959-analyzing-hollywood-with-spark-and-hadoop 1. Magellan (how to scale geospatial joins using Magellan): https://hadoopsummit.uservoice.com/forums/332079-the-future-of-apache-hadoop/suggestions/10848510-magellan-spark-as-a-geospatial-analytics-engine 2. Online Learning (how to do machine learning online and fast while being accurate): https://hadoopsummit.uservoice.com/forums/332082-hadoop-and-the-internet-of-things/suggestions/10847973-fast-distributed-online-classification-and-cluster 3. MLLeap (joint work with Truecar on migrating machine learning pipelines from offline modeling to online scoring): https://hadoopsummit.uservoice.com/forums/332055-data-science-applications-for-hadoop/suggestions/10847055-mlleap-or-how-to-productionize-data-science-workf 4. Entity Disambiguation (how to apply machine learning techniques to resolve entities): https://hadoopsummit.uservoice.com/forums/332055-data-science-applications-for-hadoop/suggestions/10847028-entity-disambiguation-scalably-mixing-public-and 5. Monte Carlo simulations using Spark: https://hadoopsummit.uservoice.com/forums/332055-data-science-applications-for-hadoop/suggestions/10847025-monte-carlo-simulation-for-ad-lift-measurement-usi 6. Finding Outliers with Spark and Storm: Guide to Keeping Your Sanity: https://hadoopsummit.uservoice.com/forums/332055-data-science-applications-for-hadoop/suggestions/10846992-finding-outliers-with-spark-and-storm-guide-to-ke Committer Track 1. Running Storm with 5 9's availability https://hadoopsummit.uservoice.com/forums/332931-apache-committer-insights/suggestions/10845702-running-storm-with-5-9-s-availability 2. The Future of Apache Storm https://hadoopsummit.uservoice.com/forums/332931-apache-committer-insights/suggestions/10845747-the-future-of-apache-storm Application Track 1. DataCube - Yahoo!'s Next-Generation Near Real-Time Ads Targeting Platform https://hadoopsummit.uservoice.com/forums/332076-applications-of-hadoop-and-the-data-driven-busines/suggestions/10846542-datacube-yahoo-s-next-generation-near-real-time 2. Practical Complex Event Processing with Storm https://hadoopsummit.uservoice.com/forums/332076-applications-of-hadoop-and-the-data-driven-busines/suggestions/10846485-practical-complex-event-processing-with-storm Hadoop and the Internet of Things 1. Streaming SQL on Storm https://hadoopsummit.uservoice.com/forums/332082-hadoop-and-the-internet-of-things/suggestions/10847967-streaming-sql-on-storm 2. From Device to Data Center to Insights: Architectural Considerations for the Internet of Anything https://hadoopsummit.uservoice.com/forums/332082-hadoop-and-the-internet-of-things/suggestions/10847958-from-device-to-data-center-to-insights-architectu
... View more
11-23-2015
10:28 PM
1 Kudo
Thanks that worked! Yes we should def update the TP instructions because multiple folks on forum had this issue too: In case anyone else runs into the same, here is a script to automate it sed -i /spark.history.provider/s/^/#/ /usr/hdp/2.3.2.1-12/spark/conf/spark-defaults.conf
sed -i /spark.history.ui.port/s/^/#/ /usr/hdp/2.3.2.1-12/spark/conf/spark-defaults.conf
sed -i /spark.yarn.historyServer.address/s/^/#/ /usr/hdp/2.3.2.1-12/spark/conf/spark-defaults.conf
sed -i /spark.yarn.services/s/^/#/ /usr/hdp/2.3.2.1-12/spark/conf/spark-defaults.conf
... View more
11-23-2015
08:16 AM
1 Kudo
Installed Spark 1.5.1 on Ambari installed 2.3.2.0-2950 cluster using below and then ran SparkPi job: $ wget -nv http://private-repo-1.hortonworks.com/HDP/centos6/2.x/updates/2.3.2.1-12/hdp.repo -O /etc/yum.repos.d/HDP-TP.repo
$ yum install spark_2_3_2_1_12-master -y
$ su spark
$ echo $JAVA_HOME
/usr/java/default
$ cd /usr/hdp/2.3.2.1-12/spark
$ ./bin/spark-submit --class org.apache.spark.examples.SparkPi --master yarn-client --num-executors 3 --driver-memory 512m --executor-memory 512m --executor-cores 1 lib/spark-examples*.jar 10
But am running into the same "ClassNotFoundException: org.apache.spark.deploy.yarn.history.YarnHistoryService" issue that others ran into. Have others been able to make this work successfully? 15/11/23 00:10:59 ERROR Utils: Uncaught exception in thread main
java.lang.NullPointerException
at org.apache.spark.network.netty.NettyBlockTransferService.close(NettyBlockTransferService.scala:152)
at org.apache.spark.storage.BlockManager.stop(BlockManager.scala:1228)
at org.apache.spark.SparkEnv.stop(SparkEnv.scala:100)
at org.apache.spark.SparkContext$$anonfun$stop$12.apply$mcV$sp(SparkContext.scala:1749)
at org.apache.spark.util.Utils$.tryLogNonFatalError(Utils.scala:1185)
at org.apache.spark.SparkContext.stop(SparkContext.scala:1748)
at org.apache.spark.SparkContext.<init>(SparkContext.scala:593)
at org.apache.spark.examples.SparkPi$.main(SparkPi.scala:29)
at org.apache.spark.examples.SparkPi.main(SparkPi.scala)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.spark.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:672)
at org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:180)
at org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:205)
at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:120)
at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)
15/11/23 00:10:59 INFO SparkContext: Successfully stopped SparkContext
Exception in thread "main" java.lang.ClassNotFoundException: org.apache.spark.deploy.yarn.history.YarnHistoryService
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:278)
at org.apache.spark.util.Utils$.classForName(Utils.scala:173)
at org.apache.spark.scheduler.cluster.YarnExtensionServices$$anonfun$start$5$$anonfun$apply$3.apply(YarnExtensionService.scala:106)
at org.apache.spark.scheduler.cluster.YarnExtensionServices$$anonfun$start$5$$anonfun$apply$3.apply(YarnExtensionService.scala:105)
at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
at scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:33)
at scala.collection.mutable.ArrayOps$ofRef.foreach(ArrayOps.scala:108)
at scala.collection.TraversableLike$class.map(TraversableLike.scala:244)
at scala.collection.mutable.ArrayOps$ofRef.map(ArrayOps.scala:108)
at org.apache.spark.scheduler.cluster.YarnExtensionServices$$anonfun$start$5.apply(YarnExtensionService.scala:105)
at org.apache.spark.scheduler.cluster.YarnExtensionServices$$anonfun$start$5.apply(YarnExtensionService.scala:103)
at scala.Option.map(Option.scala:145)
at org.apache.spark.scheduler.cluster.YarnExtensionServices.start(YarnExtensionService.scala:103)
at org.apache.spark.scheduler.cluster.YarnClientSchedulerBackend.start(YarnClientSchedulerBackend.scala:64)
at org.apache.spark.scheduler.TaskSchedulerImpl.start(TaskSchedulerImpl.scala:144)
at org.apache.spark.SparkContext.<init>(SparkContext.scala:523)
at org.apache.spark.examples.SparkPi$.main(SparkPi.scala:29)
at org.apache.spark.examples.SparkPi.main(SparkPi.scala)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.spark.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:672)
at org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:180)
at org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:205)
at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:120)
at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)
15/11/23 00:10:59 INFO DiskBlockManager: Shutdown hook called
... View more