小编Ank*_*kur的帖子

在Cassandra中删除表或截断表,这是更好的

我们有一个用例,我们需要每天使用Cassandra中的当前数据重新创建一个表.为此我们应该使用drop table或truncate table,这会有效吗?我们不希望备份数据等?

谢谢Ankur

cassandra

10
推荐指数
2
解决办法
7605
查看次数

正则表达式使用Java8捕获traceroute中的组

我试图使用Regex解析Java8中的traceroute结果.

我使用下面的正则表达式来识别组.

^(\\d*).*[AS(\\d*)]?\\s+([\\w+\\.]+)\\s+\\(([\\d+\\.]+)\\)[\\s+(\\d+\\.\\d+)\\s+ms]+
Run Code Online (Sandbox Code Playgroud)

我需要解析的一些示例行是:

1  10.33.128.1 (10.33.128.1)  4.452 ms  3.459 ms  3.474 ms  
6  * [AS3356] 4.68.72.218 (4.68.72.218)  12.432 ms  11.819 ms  
 * 4.68.72.218 (4.68.72.218)  12.432 ms  11.819 ms  
  61.182.180.62 (61.182.180.62) 175.300 ms  203.001 ms
Run Code Online (Sandbox Code Playgroud)

我想提取跳数(如果可用),ASN(如果可用),主机名,IP和时间

但是使用上面的正则表达式,它匹配字符串1,2和4,这是我想要的,但只给我跳,主机和ASN.

我的代码是这样的:

Pattern hop_pattern = Pattern.compile(
        "^(\\d*).*[AS(\\d*)]?\\s+([\\w+\\.]+)\\s+\\(([\\d+\\.]+)\\)[\\s+(\\d+\\.\\d+)\\s+ms]+")
Matcher m = hop_pattern.matcher(target);

while(m.find()) {
    System.out.println("count: " + m.groupCount());
    for(int i = 1; i < m.groupCount() + 1; i++) {
        System.out.println(i + "->" + m.group(i));
    }
}
Run Code Online (Sandbox Code Playgroud)

我需要解析的一些示例行是:

1 10.33.128.1(10.33.128.1)4.452 ms 3.459 ms 3.474 ms
6*[AS3356] …

java regex java-8

5
推荐指数
1
解决办法
182
查看次数

Apache Spark 与数据集的交叉连接非常慢

我已经在 Spark 用户论坛上发布了这个问题,但没有收到回复,所以在这里再次询问。

我们有一个用例,需要进行笛卡尔连接,但由于某种原因,我们无法让它与数据集 API 一起工作。

我们有两个数据集:

  • 一个包含 2 个字符串列的数据集,例如 c1、c2。这是一个小型数据集,约有 100 万条记录。这两列都是 32 个字符的字符串,因此应小于 500 mb。

    我们广播这个数据集

  • 另一个数据集稍大一些,有约 1000 万条记录
val ds1 = spark.read.format("csv").option("header", "true").load(<s3-location>).select("c1", "c2")
ds1.count
val ds2 = spark.read.format("csv").load(<s3-location>).toDF("c11", "c12", "c13", "c14", "c15", "ts")
ds2.count
ds2.crossJoin(broadcast(ds1)).filter($"c1" <= $"c11" && $"c11" <= $"c2").count
Run Code Online (Sandbox Code Playgroud)

如果我使用 RDD api 实现它,在 ds1 中广播数据,然后在 ds2 中过滤数据,那么它工作得很好。

我已确认广播成功。

2019-02-14 23:11:55 INFO CodeGenerator:54 - 代码在 10.469136 ms 内生成 2019-02-14 23:11:55 INFO TorrentBroadcast:54 - 开始读取广播变量 29 2019-02-14 23:11:55 INFO TorrentBroadcast:54 - 读取广播变量 29 花费了 6 毫秒 …

join cross-join apache-spark apache-spark-dataset

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