小编cha*_*uru的帖子

什么是Spark Job?

我已经完成了spark安装并执行了几个设置master和worker节点的测试用例.也就是说,我对Spark上下文(而不是SparkContext)中的作业意味着什么非常混乱.我有以下问题

  • 来自Driver程序的工作有多么不同.
  • 应用程序本身是Driver程序的一部分?
  • Spark提交方式是一份工作吗?

我阅读了Spark文档,但这件事对我来说还不清楚.

话虽如此,我的实现是编写火花作业{programmatically},这将火花提交.

如果可能,请帮助一些例子.这将非常有帮助.

注意:请不要发布spark链接,因为我已经尝试过了.虽然这些问题听起来很幼稚,但我仍需要更清晰的理解.

batch-processing job-scheduling apache-spark

31
推荐指数
1
解决办法
2万
查看次数

使用REST触发spark工作

我一直在尝试apache火花.我的问题更具体地触发火花工作.在这里,我发布了关于理解火花工作的问题.在弄脏工作后,我转向了我的要求.

我有一个REST端点,我公开API来触发Jobs,我使用Spring4.0进行Rest实现.现在继续我想在Spring中实现Job as Service,我将以编程方式提交Job,这意味着当触发端点时,使用给定的参数我将触发该作业.我现在有很少的设计选择.

  • 类似于下面的写作,我需要维护几个由抽象类调用的作业JobScheduler.

     /*Can this Code be abstracted from the application and written as 
      as a seperate job. Because my understanding is that the 
     Application code itself has to have the addJars embedded 
     which internally  sparkContext takes care.*/
    
     SparkConf sparkConf = new SparkConf().setAppName("MyApp").setJars(
     new String[] { "/path/to/jar/submit/cluster" })
     .setMaster("/url/of/master/node");
      sparkConf.setSparkHome("/path/to/spark/");
    
            sparkConf.set("spark.scheduler.mode", "FAIR");
            JavaSparkContext sc = new JavaSparkContext(sparkConf);
            sc.setLocalProperty("spark.scheduler.pool", "test");
    
        // Application with Algorithm , transformations
    
    Run Code Online (Sandbox Code Playgroud)
  • 扩展到上面有服务处理的多个版本的作业.

  • 或者使用Spark Job Server来执行此操作.

首先,我想知道在这种情况下最佳解决方案是什么,执行方式和扩展方式.

注意:我正在使用来自spark的独立群集.善意的帮助.

rest job-scheduling spring-batch apache-spark spring-data-hadoop

24
推荐指数
3
解决办法
4万
查看次数

Eclipse中部署程序集和J2EE模块依赖项之间的区别

使用Eclipse 3.7 Indigo for Java EE Developers时,有一种叫做Deployment Assembly的东西.我可以在google上找到它并且理解它类似于 J2EE模块依赖项,在那里我们可以选择jar并且在WAR的情况下它位于EAR文件夹或WEB-INF/lib中.现在我怀疑的是,

我有一个JavaProject 依赖项.我已经通过classpath变量添加了所有依赖的Jars .现在,Dependencies项目被添加为我的Web Project TestWebProject的依赖.Web项目的编译是正确的,但在运行时我得到一个错误,因为找不到一些jar.我可以在Dependencies Project的Deployment Assembly中修复这个包含jar ,这是一个独立的项目.

问题是,为什么我必须在部署程序集中修复jar,因为,首先,它是一个独立的项目,第二个是如果我没有这个部署程序集,怎么能修复它?

java eclipse java-ee eclipse-3.5 eclipse-indigo

9
推荐指数
2
解决办法
1万
查看次数

如何将Jsoup文档转换为W3C文档?

我通过解析内部HTML页面构建了一个Jsoup文档,

public Document newDocument(String path) throws IOException {

    Document doc = null;
    doc = Jsoup.connect(path).timeout(0).get();
            return new HtmlDocument<Document>(doc);
}
Run Code Online (Sandbox Code Playgroud)

我想将Jsoup文档转换为org.w3c.dom.Document 我使用的可用库DOMBuilder,但是在解析时我得到org.w3c.dom.Documentnull.我无法理解这个问题,尝试搜索但无法找到任何答案.

用于生成W3C DOM文档的代码:

Document jsoupDoc=factory.newDocument("http:localhost/testcases/test_2.html"));
org.w3c.dom.Document docu= DOMBuilder.jsoup2DOM(jsoupDoc);
Run Code Online (Sandbox Code Playgroud)

有人可以帮我这个吗?

html-parsing jsoup apache-stanbol

9
推荐指数
2
解决办法
7141
查看次数

SecureRandom的行为

尽管在阅读了很多文章后SecureRandom,我对使用SecureRandomJava中的Security API 感到疑惑.在下面的例子中.

public class SecureRandomNumber {
public static void main(String[] args) throws NoSuchAlgorithmException {

    TreeSet<Integer> secure = new TreeSet<Integer>();
    TreeSet<Integer> unSecure = new TreeSet<Integer>();
    SecureRandom sr = new SecureRandom();
    byte[] sbuf = sr.generateSeed(8);
    ByteBuffer bb = ByteBuffer.wrap(sbuf);
    long d = bb.getLong();
    sr.setSeed(d);

    Random r = new Random();
    r.setSeed(System.nanoTime());
    for (int k = 0; k < 99999; k++) {
        int i = sr.nextInt();
        if (!secure.add(i)) {
            System.out.println("Repeated Secure Random Number");
        } else {
//              System.out.println("************Unique***********");
        } …
Run Code Online (Sandbox Code Playgroud)

java security random algorithm cryptography

8
推荐指数
2
解决办法
2644
查看次数

用于上限和下限通配符的Java泛型

我正在阅读java泛型,我遇到了一个有趣的查询.我的问题如下.

  1. 对于上限有界的通配符

    public static void printList(List<? extends Number> list) {
        for (int i = 0; i < 10; i++) {
            list.add(i);// gives compilation error
        }
    }
    
    Run Code Online (Sandbox Code Playgroud)
  2. 对于较低的有界通配符

    public static void printList(List<? super Integer> list) {
        for (int i = 0; i < 10; i++) {
            list.add(i);// successfully compiles
        }
    }
    
    Run Code Online (Sandbox Code Playgroud)

我对此感到困惑,因为查看Sun Oracle文档,我理解代码也应该为第1点编译

上限通配符 下限通配符

有人可以帮我理解这个吗?

java generics collections wildcard

8
推荐指数
1
解决办法
7430
查看次数

什么是多租户及其实现方法?

我一直在阅读有关多租户的文章。像下面这样的非常琐碎的陈述。我已经阅读了数十个链接和网站,但都非常抽象。

..其中单个软件实例在服务器上运行并为多个租户提供服务。

我很容易从 30000 英尺以上理解它,但我无法理解它的实现方式。

如果有人可以通过单个堆栈(只是技术)和一个示例(可能是 Salesforce)帮助我理解我如何实现它,我会更满意,因为我几乎几天就迫不及待地想知道它了。

请不要张贴维基百科或任何网站的链接。我已经阅读了其中的大部分内容,但狩猎仍在继续!

我知道这是一个非常微不足道的问题,但请不要因为很少有充分理由而拒绝投票,因为您可能会从这个问题中读到一些新答案!

architecture cloud saas software-design multi-tenant

3
推荐指数
1
解决办法
828
查看次数

logback asyncAppender似乎不是线程安全的

我在其中添加了自己的SUMMARY_APPENDER,创建了一个AsyncAppender.

ASYNC Appender如下

 <appender name="ASYNC" class="ch.qos.logback.classic.AsyncAppender">
 <discardingThreshold>2</discardingThreshold>
 <appender-ref ref="SUMMARY_APPENDER" />
 <!--   <appender-ref ref="PROCESSING" /> -->
 </appender>
Run Code Online (Sandbox Code Playgroud)

我创建了另一个SUMMARY_APPENDER

<appender name="SUMMARY_APPENDER"
    class="com.my.test.logger.async.MyRollingAppender">
    <file>./logs/summary.log</file>
    <rollingPolicy class="com.my.test.logger.async.MyTimeBasedRollingPolicy">
        <!-- daily rollover -->
        <fileNamePattern>./logs/%d{yyyy-MM-dd,aux}/summary.%d{yyyy-MM-dd}.%i.log
        </fileNamePattern>
        <TimeBasedFileNamingAndTriggeringPolicy
            class="com.my.test.logger.async.MySizeTimeBasedPolicy">
            <maxFileSize>10MB</maxFileSize>
        </TimeBasedFileNamingAndTriggeringPolicy>
        <!-- keep 30 days' worth of history -->
        <maxHistory>30</maxHistory>
    </rollingPolicy>
    <encoder>
        <pattern>
            %d{ISO8601} [%t] %p %c %L - %m%n
        </pattern>
    </encoder>
</appender>
Run Code Online (Sandbox Code Playgroud)

RollingPolicy由我的Custom Appenders正确扩展.

  • 我已将其导出为带有logback.xml的自定义jar.

  • 我将它添加到新java项目的classpath中.

  • 运行一些并发程序进行日志记录,以确保所有线程同时正确地记录它.

程序如下,我创建了TestLogger1,2 ... 5并运行它们.

 public class TestingLogger {
 private static Logger log = LoggerFactory.getLogger(TestingLogger.class);
   public static void main(String[] args) {
    LoggerContext …
Run Code Online (Sandbox Code Playgroud)

logging logback rollingfileappender appender log4j2

2
推荐指数
1
解决办法
5747
查看次数

具有功能接口的Java-8 lambda表达式行为

我只是尝试了几个java-8函数式编程,我对lamda表达式的行为几乎没有怀疑.我试图用简单的命令模式解释下面的问题.

public interface Editor {
    public void open();
    public void close();
//  public void save();

}
Run Code Online (Sandbox Code Playgroud)

编辑实施

public class MyEditor implements Editor {

    @Override
    public void open() {
        System.out.println("...opening");

    }

    @Override
    public void close() {
        System.out.println("...closing");
    }

}
Run Code Online (Sandbox Code Playgroud)

界面动作

// this is actually a @FunctionalInterface
public interface Action {
    public void perform();

}
Run Code Online (Sandbox Code Playgroud)

可行的物品.

public class Open implements Action {

    private final Editor editor;

    public Open(Editor editor) {
        this.editor = editor;
    }

    @Override
    public void perform() {
        editor.open();
    }

// …
Run Code Online (Sandbox Code Playgroud)

java lambda functional-programming java-8

2
推荐指数
1
解决办法
736
查看次数

每次加载页面后运行 JavaScript

我有一个简单的问题,但它困扰了我很多天,而且我找不到解决方案。我想在每次加载或呈现页面时触发 JavaScript 事件。

有任何机构可以帮忙吗?

javascript jquery jquery-events

0
推荐指数
1
解决办法
1万
查看次数