小编osk*_*osk的帖子

如何在Scala中获取当前时间戳为不带空格的字符串?

我想要获取例如当前时间的字符串:“ 20180122_101043”。我怎样才能做到这一点?

我可以创建一个,val cal = Calendar.getInstance()但不确定如何处理。

scala

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

如果是向量中的对象,是否会调用析构函数?

这是我课程的作业,我很难理解背后的原因.

我们有一个没有指针和类Car的类Person,如下所示:

class Car{
public:
  //stuff
private:
  Person* owner;
};
Run Code Online (Sandbox Code Playgroud)

然后是一个如下功能:

void f() {
  vector<Car> v;
  // do stuff with the vector
}
Run Code Online (Sandbox Code Playgroud)

当函数完成时,存在内存泄漏,为了修复它,课程资料建议通过向量中的每个Car并删除函数f()末尾的所有者指针.简单地为Car写一个析构函数是不够的,它会删除它的所有者以防止内存泄漏?

只需在Car类中添加:

~Car() {
  delete owner;
}
Run Code Online (Sandbox Code Playgroud)

c++ memory destructor

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

在Scala / Spark的HDFS上将文件从一个文件夹移动到另一个文件夹

我有两个路径,一个用于文件,一个用于文件夹。我想将文件移到HDFS上的该文件夹中。我该如何在Scala中做到这一点?我也在用Spark

奖金,如果相同的代码将适用于Windows的路径工作太,就像读/ HDFS上写文件,但不是必需的。

我尝试了以下方法:

val fs = FileSystem.get(sc.hadoopConfiguration)
fs.moveFromLocalFile(something, something2)
Run Code Online (Sandbox Code Playgroud)

我得到以下错误:

线程“主”中的异常java.lang.IllegalArgumentException:错误的FS:hdfs:/user/o/datasets/data.txt,预期的是:file:///

同去的moveToLocalFile(),因为他们是为了传输文件的文件系统之间,没有一个文件系统中。我也尝试过,fs.rename()但这根本没有做任何事情(没有错误或任何错误)。

我基本上都在一个目录下创建文件(流写入到它们),一旦他们这样做,他们需要移动到不同的目录。这种不同的目录由星火流媒体监控和我有一些问题,当星火流尝试工作,没有完成的文件

hadoop scala hdfs apache-spark

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

C中的数组数组,其中数组的长度不同

我知道你可以轻松制作一个固定长度的矩阵:

double m[][2];
Run Code Online (Sandbox Code Playgroud)

但是,我希望有一个数据结构是一个数组,其中我存储了具有不同长度的double类型的数组.我怎么做?

一个例子是:

arr1 = {1,2,3,4};
arr2 = {1,2};
Run Code Online (Sandbox Code Playgroud)

c arrays

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

为什么即使没有新数据可用,Spark Streaming 也会执行 foreachRDD?

我有以下 Spark 流示例:

val conf = new SparkConf().setAppName("Name").setMaster("local")
val sc = new SparkContext(conf)
val ssc = new StreamingContext(sc, Seconds(2))

val directoryStream = ssc.textFileStream("""file:///C:/Users/something/something""")
directoryStream.foreachRDD(file => {
  println(file.count())
})

ssc.start()
ssc.awaitTermination()
Run Code Online (Sandbox Code Playgroud)

即使文件夹为空,它也会每 2 秒打印 0,就像文件夹中存在空文件一样。我希望它只foreachRDD在文件夹中存在新文件时才进入。有什么我做错了吗?

我使用的是 Spark 1.6 和 Scala 2.10.7。

scala apache-spark spark-streaming

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

IllegalArgumentException,从 s3 而不是 hdfs 指定输入/输出时出现错误的 FS

我一直在本地集群上运行我的 Spark 作业,该集群具有从中读取输入和写入输出的 hdfs。现在我已经设置了一个 AWS EMR 和一个 S3 存储桶,我可以在其中输入我的输入,并且我希望我的输出也写入 S3。

错误:

用户类抛出异常:java.lang.IllegalArgumentException:错误 FS:s3://something/input,预期:hdfs://ip-some-numbers.eu-west-1.compute.internal:8020

我尝试搜索相同的问题,并且有几个关于此问题的问题。有人建议它仅用于输出,但即使我禁用输出,也会出现相同的错误。

另一个建议是有问题 FileSystem我的代码有问题。以下是我的程序中出现的所有输入/输出:

第一次发生在我的 customFileInputFormatgetSplits(JobContext job),我实际上并没有修改自己,但我可以:

FileSystem fs = path.getFileSystem(job.getConfiguration());
Run Code Online (Sandbox Code Playgroud)

类似的情况在我的自定义中RecordReader,我自己也没有修改过:

final FileSystem fs = file.getFileSystem(job);
Run Code Online (Sandbox Code Playgroud)

nextKeyValue()RecordReader自己写的习惯中,我使用:

FileSystem fs = FileSystem.get(jc);
Run Code Online (Sandbox Code Playgroud)

最后,当我想检测我使用的文件夹中的文件数时:

val fs = FileSystem.get(sc.hadoopConfiguration)
val status = fs.listStatus(new Path(path))
Run Code Online (Sandbox Code Playgroud)

我认为问题出在我的代码上,但是如何修改FileSystem调用以支持来自 S3 的输入/输出?

filesystems amazon-s3 amazon-web-services hdfs

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

BeautifulSoup'NoneType'对象不可调用

我正在尝试这样做:

req = urllib.request.Request("http://en.wikipedia.org/wiki/Philosophy")
content = urllib.request.urlopen(req).read()
soup = bs4.BeautifulSoup(content, "html.parser")
content = strip_brackets(soup.find('div', id="bodyContent").p)

for link in bs4.BeautifulSoup(content, "html.parser").findAll("a"):
    print(link.get("href"))
Run Code Online (Sandbox Code Playgroud)

如果我改为这样做循环:

for link in soup.findAll("a"):
    print(link.get("href"))
Run Code Online (Sandbox Code Playgroud)

我不再遇到错误,但是我想先除去内容的括号,然后再获得内容的所有链接。

错误(第36行是for循环的行):

Traceback (most recent call last):
  File "....py", line 36, in <module>
    for link in bs4.BeautifulSoup(content, "html.parser").findAll("a"):
  File "C:\Users\...\AppData\Local\Programs\Python\Python35-32\lib\site-packages\bs4\__init__.py", line 191, in __init__
    markup = markup.read()
TypeError: 'NoneType' object is not callable
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

python beautifulsoup

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

Scala中两个时间戳之间的秒数差异

所以我有这样的时间戳:

1990-10-31 18:43:12

我想计算这两个时间戳之间的差异。

我尝试过的是:

val t1 = new java.text.SimpleDateFormat("yyyy-mm-dd HH:mm:ss")
val t2 = new java.text.SimpleDateFormat("yyyy-mm-dd HH:mm:ss")
t1.parse(timestamp1)
t2.parse(timestamp2)
Run Code Online (Sandbox Code Playgroud)

但是我该怎么办?

scala simpledateformat

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