Standard Grant Proposal: SiaDB - Distributed Database System

Standard Grant Proposal: SiaDB - Distributed Database System

Introduction

Project Name: SiaDB

Name of the individual submitting the proposal: Oliseh Genesis

Project Description

SiaDB aims to develop a distributed database system that leverages Sia’s decentralized storage network while providing PostgreSQL compatibility. This system will allow developers to use familiar SQL interfaces and tools while benefiting from the scalability, redundancy, and cost-effectiveness of Sia storage. SiaDB will act as a bridge between traditional Web2 database needs and the decentralized storage capabilities of Sia.

Alignment with Foundation’s Mission

By enabling PostgreSQL-compatible databases to run on Sia storage, SiaDB directly supports the Foundation’s mission of expanding user-owned data to more applications and use cases. This project will lower the barriers for existing Web2 applications to adopt decentralized storage, potentially leading to wider use of Sia and greater data sovereignty for users and organizations.

Grant Specifics

Requested Amount and Budget Breakdown

Total requested: $75,000 USD

Breakdown:

  1. Development costs: $60,000 (1200 hours at $50/hour)
  2. Testing infrastructure: $5,000
  3. Documentation and user guide creation: $3,000
  4. Security audit: $5,000
  5. Contingency: $2,000

Timeline and Milestones

Total duration: 6 months

  1. Month 1-2: Research and Design Phase
  2. Detailed architecture design
  3. PostgreSQL protocol analysis and compatibility planning
  4. Initial prototype development
  5. Month 3-4: Core Development Phase
  6. Implement database operations (CRUD) on Sia storage
  7. Develop PostgreSQL wire protocol compatibility layer
  8. Create connection pooling and query optimization systems
  9. Month 5: Advanced Features and Testing Phase
  10. Implement distributed transaction support
  11. Develop data replication and consistency mechanisms
  12. Comprehensive testing suite development
  13. Performance optimization
  14. Month 6: Documentation and Release Phase
  15. User and developer documentation
  16. Deployment guides for various environments
  17. Open-source release and community engagement

Goals

  1. Develop a distributed database system that stores data on the Sia network
  2. Implement PostgreSQL wire protocol compatibility for seamless integration with existing tools and applications
  3. Create a robust query execution engine that optimizes for Sia’s unique characteristics
  4. Implement ACID (Atomicity, Consistency, Isolation, Durability) compliant transaction support
  5. Develop data replication and consistency mechanisms suitable for decentralized storage
  6. Achieve performance comparable to traditional PostgreSQL for common operations
  7. Produce comprehensive documentation and guides for easy adoption

Potential Risks

  1. Complexity of implementing full PostgreSQL compatibility
  2. Potential performance challenges due to the distributed nature of Sia storage
  3. Ensuring data consistency and durability across the Sia network
  4. Managing the trade-offs between consistency, availability, and partition tolerance (CAP theorem)
  5. Potential scalability issues with large datasets or high concurrent users

Development Information

Open-Source Commitment

Yes, all code for this project will be open-source and available on GitHub.

Code Repository

The code will be accessible at: https://github.com/oliseh-genesis/siadb

Monthly Progress Reports

I agree to submit monthly progress reports on the Sia forum.

Contact Information

Email: [email protected]

Preferred contact method: Telegram @olisehgenesis

Thanks for your proposal to the Sia Foundation Grants Program.

The committee will be meeting next on October 15, 2024. They will attempt to review your grant then.