Spark-Scala application in Template Design Pattern The 2019 Stack Overflow Developer Survey Results Are In Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern) The Ask Question Wizard is Live! Data science time! April 2019 and salary with experienceWhat is an efficient way to implement a singleton pattern in Java?On design patterns: When should I use the singleton?How to study design patterns?Does functional programming replace GoF design patterns?Difference between static class and singleton pattern?What is the difference between Builder Design pattern and Factory Design pattern?C++ Singleton design patternExamples of GoF Design Patterns in Java's core librariesIs the Scala 2.8 collections library a case of “the longest suicide note in history”?Design Patterns web based applications

Sub-subscripts in strings cause different spacings than subscripts

How many cones with angle theta can I pack into the unit sphere?

What does Linus Torvalds mean when he says that Git "never ever" tracks a file?

How to support a colleague who finds meetings extremely tiring?

Nested ellipses in tikzpicture: Chomsky hierarchy

Is it ok to offer lower paid work as a trial period before negotiating for a full-time job?

Why doesn't a hydraulic lever violate conservation of energy?

Windows 10: How to Lock (not sleep) laptop on lid close?

Could an empire control the whole planet with today's comunication methods?

How do you keep chess fun when your opponent constantly beats you?

Using dividends to reduce short term capital gains?

Why are PDP-7-style microprogrammed instructions out of vogue?

Did the new image of black hole confirm the general theory of relativity?

ELI5: Why do they say that Israel would have been the fourth country to land a spacecraft on the Moon and why do they call it low cost?

Huge performance difference of the command find with and without using %M option to show permissions

"... to apply for a visa" or "... and applied for a visa"?

Is every episode of "Where are my Pants?" identical?

Does Parliament hold absolute power in the UK?

Solving overdetermined system by QR decomposition

Do warforged have souls?

What do I do when my TA workload is more than expected?

Is an up-to-date browser secure on an out-of-date OS?

Accepted by European university, rejected by all American ones I applied to? Possible reasons?

Identify 80s or 90s comics with ripped creatures (not dwarves)



Spark-Scala application in Template Design Pattern



The 2019 Stack Overflow Developer Survey Results Are In
Announcing the arrival of Valued Associate #679: Cesar Manara
Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern)
The Ask Question Wizard is Live!
Data science time! April 2019 and salary with experienceWhat is an efficient way to implement a singleton pattern in Java?On design patterns: When should I use the singleton?How to study design patterns?Does functional programming replace GoF design patterns?Difference between static class and singleton pattern?What is the difference between Builder Design pattern and Factory Design pattern?C++ Singleton design patternExamples of GoF Design Patterns in Java's core librariesIs the Scala 2.8 collections library a case of “the longest suicide note in history”?Design Patterns web based applications



.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;








-3















I am developing a Spark-Scala application, in which I am planning to use Template Design Pattern.



Here is the proposed design.



ProjectTemplate.scala => This is a trait containing functions such as createSession, readData, processData, writeResult. Out of these 4, I am planning to give implementations for createSession, readData, writeResult in this trait, whereas the implementation for processData will be provided by the child class that implements this trait. I have tested this with giving println statements and the approach works.



So in all there are 3 components:



1) ProjectTemplate.scala =>

trait ProjectTemplate

def createSession():sparkSession=
... implementation is provided..


def readData(): Dataset[Row] =
... implementation is provided..


def processData():Dataset[Row] //Implementation will be provided by child class

def writeResult(result: Dataset[Row], filePath: String):Boolean=
... implementation is provided..


def execute():Unit=
createSession()
readData()
processData()
writeResult()




2) Childclass.scala =>
class Childclass extens ProjectTemplate
override def processData(...):Dataset[Row]=
<funciton implementatoin>
...




3) ChildObject.scala =>
object ChildObject extens App
val obj = new Childclass
obj.execute()



Command that I will use to submit the Spark application.



spark-submit --class package.ChildObject --master yarn --deploy-mode cluster



My question is: Will this application successfully create sparksession and return it. Can we do it this way? Thanks.










share|improve this question






















  • Instead of downgrading the question, it would help if someone can comment on the correctness of incorrectness of the approach.

    – Don Sam
    Mar 22 at 14:49

















-3















I am developing a Spark-Scala application, in which I am planning to use Template Design Pattern.



Here is the proposed design.



ProjectTemplate.scala => This is a trait containing functions such as createSession, readData, processData, writeResult. Out of these 4, I am planning to give implementations for createSession, readData, writeResult in this trait, whereas the implementation for processData will be provided by the child class that implements this trait. I have tested this with giving println statements and the approach works.



So in all there are 3 components:



1) ProjectTemplate.scala =>

trait ProjectTemplate

def createSession():sparkSession=
... implementation is provided..


def readData(): Dataset[Row] =
... implementation is provided..


def processData():Dataset[Row] //Implementation will be provided by child class

def writeResult(result: Dataset[Row], filePath: String):Boolean=
... implementation is provided..


def execute():Unit=
createSession()
readData()
processData()
writeResult()




2) Childclass.scala =>
class Childclass extens ProjectTemplate
override def processData(...):Dataset[Row]=
<funciton implementatoin>
...




3) ChildObject.scala =>
object ChildObject extens App
val obj = new Childclass
obj.execute()



Command that I will use to submit the Spark application.



spark-submit --class package.ChildObject --master yarn --deploy-mode cluster



My question is: Will this application successfully create sparksession and return it. Can we do it this way? Thanks.










share|improve this question






















  • Instead of downgrading the question, it would help if someone can comment on the correctness of incorrectness of the approach.

    – Don Sam
    Mar 22 at 14:49













-3












-3








-3








I am developing a Spark-Scala application, in which I am planning to use Template Design Pattern.



Here is the proposed design.



ProjectTemplate.scala => This is a trait containing functions such as createSession, readData, processData, writeResult. Out of these 4, I am planning to give implementations for createSession, readData, writeResult in this trait, whereas the implementation for processData will be provided by the child class that implements this trait. I have tested this with giving println statements and the approach works.



So in all there are 3 components:



1) ProjectTemplate.scala =>

trait ProjectTemplate

def createSession():sparkSession=
... implementation is provided..


def readData(): Dataset[Row] =
... implementation is provided..


def processData():Dataset[Row] //Implementation will be provided by child class

def writeResult(result: Dataset[Row], filePath: String):Boolean=
... implementation is provided..


def execute():Unit=
createSession()
readData()
processData()
writeResult()




2) Childclass.scala =>
class Childclass extens ProjectTemplate
override def processData(...):Dataset[Row]=
<funciton implementatoin>
...




3) ChildObject.scala =>
object ChildObject extens App
val obj = new Childclass
obj.execute()



Command that I will use to submit the Spark application.



spark-submit --class package.ChildObject --master yarn --deploy-mode cluster



My question is: Will this application successfully create sparksession and return it. Can we do it this way? Thanks.










share|improve this question














I am developing a Spark-Scala application, in which I am planning to use Template Design Pattern.



Here is the proposed design.



ProjectTemplate.scala => This is a trait containing functions such as createSession, readData, processData, writeResult. Out of these 4, I am planning to give implementations for createSession, readData, writeResult in this trait, whereas the implementation for processData will be provided by the child class that implements this trait. I have tested this with giving println statements and the approach works.



So in all there are 3 components:



1) ProjectTemplate.scala =>

trait ProjectTemplate

def createSession():sparkSession=
... implementation is provided..


def readData(): Dataset[Row] =
... implementation is provided..


def processData():Dataset[Row] //Implementation will be provided by child class

def writeResult(result: Dataset[Row], filePath: String):Boolean=
... implementation is provided..


def execute():Unit=
createSession()
readData()
processData()
writeResult()




2) Childclass.scala =>
class Childclass extens ProjectTemplate
override def processData(...):Dataset[Row]=
<funciton implementatoin>
...




3) ChildObject.scala =>
object ChildObject extens App
val obj = new Childclass
obj.execute()



Command that I will use to submit the Spark application.



spark-submit --class package.ChildObject --master yarn --deploy-mode cluster



My question is: Will this application successfully create sparksession and return it. Can we do it this way? Thanks.







scala apache-spark design-patterns






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Mar 22 at 5:39









Don SamDon Sam

308




308












  • Instead of downgrading the question, it would help if someone can comment on the correctness of incorrectness of the approach.

    – Don Sam
    Mar 22 at 14:49

















  • Instead of downgrading the question, it would help if someone can comment on the correctness of incorrectness of the approach.

    – Don Sam
    Mar 22 at 14:49
















Instead of downgrading the question, it would help if someone can comment on the correctness of incorrectness of the approach.

– Don Sam
Mar 22 at 14:49





Instead of downgrading the question, it would help if someone can comment on the correctness of incorrectness of the approach.

– Don Sam
Mar 22 at 14:49












0






active

oldest

votes












Your Answer






StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");

StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);

else
createEditor();

);

function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);



);













draft saved

draft discarded


















StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55293503%2fspark-scala-application-in-template-design-pattern%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown

























0






active

oldest

votes








0






active

oldest

votes









active

oldest

votes






active

oldest

votes















draft saved

draft discarded
















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid


  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.

To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55293503%2fspark-scala-application-in-template-design-pattern%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Kamusi Yaliyomo Aina za kamusi | Muundo wa kamusi | Faida za kamusi | Dhima ya picha katika kamusi | Marejeo | Tazama pia | Viungo vya nje | UrambazajiKuhusu kamusiGo-SwahiliWiki-KamusiKamusi ya Kiswahili na Kiingerezakuihariri na kuongeza habari

Swift 4 - func physicsWorld not invoked on collision? The Next CEO of Stack OverflowHow to call Objective-C code from Swift#ifdef replacement in the Swift language@selector() in Swift?#pragma mark in Swift?Swift for loop: for index, element in array?dispatch_after - GCD in Swift?Swift Beta performance: sorting arraysSplit a String into an array in Swift?The use of Swift 3 @objc inference in Swift 4 mode is deprecated?How to optimize UITableViewCell, because my UITableView lags

Access current req object everywhere in Node.js ExpressWhy are global variables considered bad practice? (node.js)Using req & res across functionsHow do I get the path to the current script with Node.js?What is Node.js' Connect, Express and “middleware”?Node.js w/ express error handling in callbackHow to access the GET parameters after “?” in Express?Modify Node.js req object parametersAccess “app” variable inside of ExpressJS/ConnectJS middleware?Node.js Express app - request objectAngular Http Module considered middleware?Session variables in ExpressJSAdd properties to the req object in expressjs with Typescript