加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

scala – 如何在spark中执行初始化?

发布时间:2020-12-16 18:53:03 所属栏目:安全 来源:网络整理
导读:我想在spark中执行我的数据的geoip查找.要做到这一点,我正在使用MaxMind的geoIP数据库. 我想要做的是在每个分区上初始化一次geoip数据库对象,然后使用它来查找与IP地址相关的城市. spark是否有每个节点的初始化阶段,或者我应该检查实例变量是否未定义,如果是
我想在spark中执行我的数据的geoip查找.要做到这一点,我正在使用MaxMind的geoIP数据库.

我想要做的是在每个分区上初始化一次geoip数据库对象,然后使用它来查找与IP地址相关的城市.

spark是否有每个节点的初始化阶段,或者我应该检查实例变量是否未定义,如果是,请在继续之前初始化它?例如.类似的东西(这是python,但我想要一个scala解决方案):

class IPLookup(object):
    database = None

    def getCity(self,ip):
      if not database:
        self.database = self.initialise(geoipPath)
  ...

当然,这样做需要spark会将整个对象序列化,这是文档提醒的.

解决方法

这似乎是广播变量的良好用法.您是否查看过该功能的文档?如果您这样做,它无法满足您的要求?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读