Skip to content

Conversation

@mfelgamal
Copy link
Contributor

What is this PR for?

Extending the livy interpreter to allow manipulation in the configurations of Spark from zeppelin web ui.

What type of PR is it?

Improvement

Todos

  • [Test case ] - Task
  • [Documentation ] - Task

What is the Jira issue?

How should this be tested?

  • Run livy server in yarn mode or local mode
  • Start the Zeppelin and go to interpreter page, create livy interpreter with supported configurations

Screenshots (if appropriate)


Questions:

  • Does the licenses files need update? no
  • Is there breaking changes for older versions? no
  • Does this needs documentation? yes

@mfelgamal mfelgamal changed the title Feature/livy conf [ZEPPELIN-935] Adding more configurations to livy interpreter Jun 1, 2016
@prabhjyotsingh
Copy link
Contributor

@mfelgamal
Copy link
Contributor Author

@prabhjyotsingh Yes, sure, I have tested these configurations on both livy distributions many times

@Leemoonsoo
Copy link
Member

Thanks @mfelgamal for the contribution.
LGTM

@felixcheung
Copy link
Member

@mfelgamal could you please close the PR #903?

conf.put("spark.driver.cores", property.getProperty("spark.driver.cores"));
conf.put("spark.executor.cores", property.getProperty("spark.executor.cores"));
conf.put("spark.driver.memory", property.getProperty("spark.driver.memory"));
conf.put("spark.executor.memory", property.getProperty("spark.executor.memory"));
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

are these the only ones that can be set/changed?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should we just pass along all spark.* properties?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@felixcheung Yes ,sure, we should pass all spark.* properties so I did that and made livy interpreter accept any configurations belong to spark.

@mfelgamal mfelgamal force-pushed the feature/livy-conf branch from 56f775a to f988af0 Compare June 3, 2016 12:53
</tr>
<tr>
<td>zeppelin.livy.master</td>
<td>spark.master</td>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@prabhjyotsingh what do you think about replacing "zeppelin.livy.master"?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes agreed. @mfelgamal can you prefix all properties with livy.* to maintain project styling WRT rest of the interpreters.

Copy link
Contributor Author

@mfelgamal mfelgamal Jun 4, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@prabhjyotsingh I changed all spark properties to start with livy.spark.*

* Livy server.

### Configuration
We added some common configurations for spark, and you can set any configuration you want which should start with `livy.spark.`
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

could you add a link to Spark programming guide as to what can be set here?
also please clarify that "instead of starting with spark. it should be replaced with livy.spark." or similar.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@felixcheung Thanks for your review, Done required changes.

<td>livy.spark.executor.cores</td>
<td>1</td>
<td>Max number of SparkSQL result to display.</td>
</tr>
Copy link
Contributor

@prabhjyotsingh prabhjyotsingh Jun 6, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think you should put these in doc as well;

livy.spark.executor.memory
livy.spark.dynamicAllocation.enabled
livy.spark.dynamicAllocation.cachedExecutorIdleTimeout
livy.spark.dynamicAllocation.minExecutors
livy.spark.dynamicAllocation.initialExecutors
livy.spark.dynamicAllocation.maxExecutors

@prabhjyotsingh
Copy link
Contributor

Except for the doc thing, rest is all good.

@mfelgamal mfelgamal force-pushed the feature/livy-conf branch from 40a9b20 to 42910a7 Compare June 6, 2016 08:20
@mfelgamal mfelgamal force-pushed the feature/livy-conf branch from 42910a7 to ccf3c82 Compare June 6, 2016 08:22
@mfelgamal
Copy link
Contributor Author

@prabhjyotsingh Thanks for your review, modified doc in the recent commit.

@prabhjyotsingh
Copy link
Contributor

LGTM

@prabhjyotsingh
Copy link
Contributor

Merging this if no more discussion.

@asfgit asfgit closed this in e5c5cc2 Jun 8, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants