小编jus*_*zzy的帖子

使用Flume从同一网络上的远程服务器(没有Flume)获取实时日志数据

我有安装了Hadoop和Flume的服务器X,而且我的服务器Y既没有,也没有在同一个网络上.

服务器Y当前将数据存储到一个连续写入的日志文件中,直到在当天结束时附加日期戳并启动新的日志文件.

目标是使用flume将日志从服务器Y直播到服务器X,处理数据并将其放入HDFS.

我认为,最好的办法是在服务器Y上的syslog守护进程转发TCP通过这些事件,但有很多篮球的组织内逐步完成,即使知道可以这样做.另一个选项是(选项2 :)以某种方式从服务器Y的目录中的文件中读取,或者(选项3 :)将目录安装到服务器X,将目录视为假脱机目录.选项2的问题在于服务器Y没有安装水槽,这样做是不可能的.选项2和3的问题在于传入的信息可能不是活动的,并且在每天结束的过渡期间可能存在数据丢失.还有一个身份验证问题,必须使用单独的用户名和密码登录到服务器Y. 我们显然无法将信息硬编码到连接配置中.

我的主要问题是:是否需要在源服务器上安装Flume才能使此设置生效?水槽代理可以专门在服务器X上运行吗?哪个选项是理想的?

streaming logging hadoop syslog flume

5
推荐指数
0
解决办法
444
查看次数

创建新的 pandas 数据框列,其中包含搜索子字符串的布尔输出

我想创建一个新列,如果在现有列中找到子字符串,它将返回 True,反之亦然。

因此,在这个示例中,我想在 a 列中搜索子字符串“abc”,并创建一个布尔列 b,无论 a 列是否包含该字符串。

a      b
zabc   True
wxyz   False
abcy   True
defg   False
Run Code Online (Sandbox Code Playgroud)

我尝试过类似的东西

df['b'] = df['a'].map(lambda x: True if 'abc' in x else False)
Run Code Online (Sandbox Code Playgroud)

但这给了我一个错误,说“‘NoneType’类型的参数不可迭代”

我也尝试过

df['b'] = False
df['b'][df['a'].str.contains('abc')] = True
Run Code Online (Sandbox Code Playgroud)

但我收到错误“无法使用包含 NA / NaN 值的向量进行索引”

有人可以解释一下这些错误以及我能做些什么吗?我已确认 ['a'] 存在并包含值。但有些行包含 None 值。

python dataframe pandas

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

标签 统计

dataframe ×1

flume ×1

hadoop ×1

logging ×1

pandas ×1

python ×1

streaming ×1

syslog ×1