Skip to content

Simulation framework for the Python programming language specifically targeting the emulation of distributed file systems. Available features favor quick prototyping and ease of use rather than runtime efficiency.

License

Notifications You must be signed in to change notification settings

FranciscoKloganB/hive-p2p

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hive P2P Simulator

Hive is a simulation framework for Python language that favors quick algorithm implementation for researchers working on topics related to distributed file systems.

We release our program as open-source because we feel like there are few other alternatives for Pythonistas. PeerSim and Peerfact.KOM are both great P2P simulators, but they only support Java. Moreover, many other well-known simulators usually do not support Python as a programming language. An unfortunate fact, seeing that this simple yet powerful language offers some of the best mathematical and data science packages. It is also a possible alternative to the expensive and licensed Matlab.

This project does not focus on time efficiency. It supports at most 10000 network nodes efficiently. However, it is easy to configure, modify, and extend using inheritance and polymorphism features of the Python language. We bundle several classes representing Network Nodes, Master Servers, and Cluster Groups to the users' satisfaction. We believe that data and science should come before programming regarding research, hence our focus on usability rather than pure performance.

The project source code and docstrings follow the conventions enumerated in Google Styles Available. Documentation is also available at our docsite, where a quick-start guide is provided.

Credits:

  • Author and Developer: Francisco Teixeira de Barros from Instituto Superior Técnico - University of Lisbon
  • Project Coordinatior: Daniel Silvestre from Lisbon Institute for Systems and Robotics

About

Simulation framework for the Python programming language specifically targeting the emulation of distributed file systems. Available features favor quick prototyping and ease of use rather than runtime efficiency.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages