草庐IT

spark-structured-streaming

全部标签

java - 如何使用 java 从 Spark 中的列表或数组创建行

在Java中,我使用RowFactory.create()来创建行:Rowrow=RowFactory.create(record.getLong(1),record.getInt(2),record.getString(3));其中“record”是数据库中的一条记录,但我无法预先知道“record”的长度,所以我想使用一个列表或一个数组来创建“行”。在Scala中,我可以使用Row.fromSeq()从列表或数组创建行,但我如何在Java中实现这一点? 最佳答案 我们经常需要在现实世界的应用程序中创建数据集或数据帧。以下是如何在

java - 比 Stream.peek() 更好的方法

“peek”主要用于调试。如果我想在流中间调用流上的方法,改变流对象的状态,该怎么办。Stream.of("Karl","Jill","Jack").map(Test::new).peek(t->t.setLastName("Doe"));我能做到:Stream.of("Karl","Jill","Jack").map(Test::new).map(t->{t.setLastName("Doe");returnt;});但这看起来很丑陋。这是不应该做的事情还是有更好的方法来做到这一点?编辑:forEach可以工作,除了它是一个终端操作,所以你不能在之后继续处理流。然后我希望制作一个Co

java - 使用普通 JAVA Stream 收集 int 数组的值

在我的程序中,我尝试使用流打印排序的int数组。但是我在使用普通流时得到错误的输出。使用int流时会打印正确的详细信息。有关详细信息,请参阅下面的核心代码段。packagecom.test.sort.bubblesort;importjava.util.Arrays;importjava.util.stream.Collectors;importjava.util.stream.IntStream;publicclassBubbleSortWithRecursion{publicstaticvoidbubbleSort(int[]arr,intn){if(nnextValue){arr

java - 请求的路由还没有映射到 Spark 中

我想做点什么用spark+java+hibernate+postgres注册用户这是我的代码:post("/registrar",(request,response)->{EntityManagerFactoryemf=Persistence.createEntityManagerFactory("compradorcitoPU");EntityManagerem=emf.createEntityManager();em.getTransaction().begin();em.persist(u);em.getTransaction().commit();em.close();retu

java - Spark DataFrame 类的 union() 方法在哪里?

我正在为Spark使用Java连接器,并想联合两个DataFrame,但奇怪的是DataFrame类只有unionAll?这是故意的吗?有没有办法将两个DataFrame联合起来而不重复? 最佳答案 Isthisintentional如果认为可以安全地假设它是故意的。其他联合运算符,如RDD.union和DataSet.union也会保留重复项。如果你仔细想想是有道理的。虽然相当于UNIONALL的操作只是一个逻辑操作,不需要数据访问或网络流量,但发现不同的元素需要洗牌,因此可能非常昂贵。isthereawaytouniontwoD

java - 使用 Stream 从二维整数数组中查找奇数

我正在尝试如下代码int[][]mat=newint[][]{newint[]{2,4,6},newint[]{8,9,12}};intoddInAll=Arrays.stream(mat).filter(i->i%2!=0).findFirst().getAsInt();但这给了我错误|Error:|badoperandtypesforbinaryoperator'%'|firsttype:int[]|secondtype:int|intoddInAll=Arrays.stream(mat).filter(i->i%2!=0).findFirst().getAsInt();|^---

java - Spark Java 和类路径

我正在尝试从http://www.sparkjava.com/开始,一个小型JavaWeb框架。说明告诉您将其添加为Maven依赖项(已完成),但是当我mvnpackage时,我得到一个classdefnotfoundforspark/Route。我假设这是因为Spark不在我的类路径中。我怎样才能添加它?它会放在pom.xml中吗?编辑:抱歉,这是我的pom.xml:4.0.0com.bernsteinbear.myappmyappjar1.0-SNAPSHOTmyapphttp://maven.apache.orgjunitjunit3.8.1testcom.sparkjavasp

java - 如何使用 Java stream api 过滤 map ?

Mapmap=newHashMap();map.put(1,"f");map.put(2,"I");map.put(3,"a");map.put(4,"c");....etc现在我有一个列表:Listpicks={1,3}我想取回一个字符串列表,即在“选择”列表中找到的与键值匹配的映射值。所以,我希望取回{"f","a"}作为结果。有没有办法使用javastreamapi以优雅的方式做到这一点?当只有一个值时,我是这样做的:map.entrySet().stream().filter(entry->"a".equals(entry.getValue())).map(entry->ent

java - 使用 Stream 比较两个集合 - anyMatch

我想比较list2中的任何对象是否存在于list1中。我可以遍历两个列表并使用.contains()比较所有元素,但我想知道是否有更有效的方法。我找到了this我正在尝试实现建议的方法:Listlist1;Listlist2;booleananyMatch=list1.stream().anyMatch(x->x.equals(list2.stream()));System.out.println(anyMatch);当我这样做时,我经常得到false,即使我期望的是true。怎么会? 最佳答案 根据您的评论,您有两个列表,list

java - 如何从 spark 中设置和获取静态变量?

我有这样一个类:publicclassTest{privatestaticStringname;publicstaticStringgetName(){returnname;}publicstaticvoidsetName(Stringname){Test.name=name;}publicstaticvoidprint(){System.out.println(name);}}在我的Spark驱动程序中,我像这样设置名称并调用print()命令:publicfinalclassTestDriver{publicstaticvoidmain(String[]args)throwsExc