-
Notifications
You must be signed in to change notification settings - Fork 5
RavSock
RavSock is the second most crucial building block of the framework. It sits between the developer(who create ops and write algorithms) and the contributor who contribute the idle computing power. It facilitates the efficient distribution of ops and the efficient merging of results.
conda create -n <env_name> python=3.8
git clone https://github.com/ravenprotocol/ravsock.git
sh setup.sh
Navigate to ravsock/config.py
and set the FTP_ENVIRON_DIR
variable to the bin
folder of your python virtual environment. For instance:
FTP_ENVIRON_DIR = "~/miniconda/envs/<env_name>/bin"
Note: Set ENCRYPTION = True
in the same file if a layer of homomorphic encryption needs to be added for Federated Analytics.
Set RDF_DATABASE_URI
in the same file.
RDF_DATABASE_URI = "sqlite:///rdf.db?check_same_thread=False"
Create database with tables required for the project.
python reset.py
The server is now configured correctly and ready to be fired up.
Ravsock is a crucial component of RDF that facilitates both federated and distributed functionalities of the framework.
It sits between the developer(who creates ops and writes algorithms) and the contributor who contributes the idle computing power. It's scheduling algorithm oversees the distribution and statuses of different Ops, Graphs and Subgraphs across multiple Clients.
python3 run.py