Exemplo n.º 1
0
def build_session(job_id=None,
                  work_mode: WorkMode = WorkMode.STANDALONE,
                  backend: Backend = Backend.EGGROLL2,
                  persistent_engine: StoreTypes = StoreTypes.ROLLPAIR_LMDB):
    from arch.api.table import eggroll_util

    if backend.is_eggroll():
        from arch.api.table.eggroll import session_impl
        eggroll_session = eggroll_util.build_eggroll_session(
            work_mode=work_mode, job_id=job_id)
        session = session_impl.FateSessionImpl(eggroll_session, work_mode,
                                               persistent_engine)

    elif backend.is_spark():
        from arch.api.table.pyspark import session_impl
        eggroll_session = eggroll_util.build_eggroll_session(
            work_mode=work_mode, job_id=job_id)
        session = session_impl.FateSessionImpl(eggroll_session, work_mode,
                                               persistent_engine)
    elif backend.is_eggroll2():
        from eggroll.core.session import session_init
        from arch.api.table.eggroll2 import session_impl
        options = {}
        if work_mode == WorkMode.STANDALONE:
            options['eggroll.session.deploy.mode'] = "standalone"
        elif work_mode == WorkMode.CLUSTER:
            options['eggroll.session.deploy.mode'] = "cluster"

        er_session = session_init(session_id=job_id, options=options)
        session = session_impl.FateSessionImpl(er_session, work_mode,
                                               persistent_engine)
    else:
        raise ValueError(f"work_mode: {work_mode} not supported")

    return session
Exemplo n.º 2
0
 def __init__(self, session_id, options: dict = None):
     if options is None:
         options = {}
     if "eggroll.session.deploy.mode" not in options:
         options["eggroll.session.deploy.mode"] = "cluster"
     self._rp_session = session_init(session_id=session_id, options=options)
     self._rpc = runtime_init(session=self._rp_session)
     self._session_id = self._rp_session.get_session_id()
Exemplo n.º 3
0
 def create(self):
     from eggroll.core.session import session_init
     from eggroll.roll_pair.roll_pair import RollPairContext
     self._options['eggroll.session.deploy.mode'] = "cluster"
     self._rp_session = session_init(session_id=self._session_id,
                                     options=self._options)
     self._rpc = RollPairContext(session=self._rp_session)
     self._session_id = self._rp_session.get_session_id()
Exemplo n.º 4
0
def build_eggroll_session(job_id, work_mode: WorkMode, options: dict = None):
    from eggroll.core.session import session_init
    options = dict() if options is None else options
    if work_mode == WorkMode.STANDALONE:
        options['eggroll.session.deploy.mode'] = "standalone"
    elif work_mode == WorkMode.CLUSTER:
        options['eggroll.session.deploy.mode'] = "cluster"

    return session_init(session_id=job_id, options=options)
Exemplo n.º 5
0
 def __init__(self, session_id, options=None):
     super(StorageSession, self).__init__(session_id=session_id,
                                          engine=StorageEngine.EGGROLL)
     self._options = options if options else {}
     self._options['eggroll.session.deploy.mode'] = "cluster"
     self._rp_session = session_init(session_id=self._session_id,
                                     options=self._options)
     self._rpc = RollPairContext(session=self._rp_session)
     self._session_id = self._rp_session.get_session_id()
Exemplo n.º 6
0
 def __init__(self, session_id, work_mode, options: dict = None):
     if options is None:
         options = {}
     if work_mode == WorkMode.STANDALONE:
         options["eggroll.session.deploy.mode"] = "standalone"
     elif work_mode == WorkMode.CLUSTER:
         options["eggroll.session.deploy.mode"] = "cluster"
     self._rp_session = session_init(session_id=session_id, options=options)
     self._rpc = runtime_init(session=self._rp_session)
     self._session_id = self._rp_session.get_session_id()