Skip to content

@IceFireLabs -> IceFireDB is a database built for web3.0 It strives to fill the gap between web2 and web3.0 with a friendly database experience, making web3 application data storage more convenient, and making it easier for web2 applications to achieve decentralization and data immutability.

License

Notifications You must be signed in to change notification settings

IceFireDB/IceFireDB

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

πŸš€ IceFireDB

Decentralized Database Infrastructure for Web2 & Web3

Go Version License Tests Build FOSSA Status

IceFireDB Logo

A high-performance, decentralized database engine bridging Web2 and Web3 ecosystems with advanced distributed consensus and storage capabilities.


πŸ“– Table of Contents

🌟 Overview

IceFireDB is an advanced decentralized database infrastructure that bridges traditional Web2 applications with the emerging Web3 ecosystem. Built on cutting-edge distributed systems research, it provides a robust foundation for building decentralized applications with enterprise-grade performance and reliability.

Core Innovations

  • Hybrid Consensus: Combines Raft for intra-site consistency with P2P CRDT for cross-site synchronization
  • Multi-Storage Support: Seamlessly integrates disk storage, OSS, and IPFS for flexible data persistence
  • Protocol Compatibility: Supports both SQL (MySQL protocol) and NoSQL (Redis RESP protocol) interfaces
  • Decentralized Networking: Enables automatic P2P networking for distributed data synchronization

✨ Key Features

Feature Status Description
πŸš€ High Performance πŸ”„ Ongoing Optimization Optimized for low-latency, high-throughput operations
πŸ’Ύ Multi-Storage Support βœ… Implemented LSM disk, OSS, IPFS, and hybrid storage drivers
πŸ”„ Distributed Consistency βœ… Implemented Raft, P2P-CRDT, and IPFS-LOG consensus modes
🌐 IPFS Integration πŸ§ͺ Beta Persistent decentralized storage layer
πŸ€– P2P Auto-Networking πŸ§ͺ Beta Automatic decentralized network formation
πŸ”‘ KV Storage Engine πŸ§ͺ Beta CRDT-based and IPFS-LOG based KV stores
🧠 AI Vector Database πŸ”„ In Progress Vector storage and similarity search capabilities
πŸ“‘ NATS Integration πŸ”„ In Progress High-performance decentralized messaging
πŸ“ Tamper-Resistant Logs πŸ“‹ Planned Auditable, scalable logging with QED integration
πŸŒ‰ Web2-Web3 Bridge πŸ“‹ Planned Immutable data witness layer
πŸ”„ Hot/Cold Storage βœ… Implemented Tiered storage via hybriddb driver

πŸ—οΈ Architecture

IceFireDB Architecture

Decentralized Database Engine

IceFireDB Bridge Architecture

IceFireDB is designed as a bridge between Web2 and Web3 worlds, enabling:

  • Web2 Migration: Traditional applications can gradually adopt decentralization
  • Web3 Native: Built-in support for decentralized storage and consensus
  • Data Immutability: Ensures data integrity and auditability
  • Protocol Flexibility: Supports both SQL and NoSQL interfaces
Project Purpose

πŸ“š Documentation

IceFireDB Detailed Architecture

πŸ“– Comprehensive Documentation

Visit our official documentation center for detailed guides, API references, and architectural deep dives:

πŸ”— Documentation Center - https://docs.icefiredb.xyz/icefiredb_docs/

Our documentation includes:

  • πŸš€ Quick start guides
  • πŸ—οΈ Architecture overviews
  • πŸ”§ Installation and configuration
  • πŸ“š API references
  • 🎯 Best practices
  • πŸ” Troubleshooting guides

πŸ”§ Project Components

IceFireDB is composed of several specialized components that work together to provide comprehensive decentralized database capabilities:

πŸ—„οΈ IceFireDB-SQLite

A decentralized SQLite database that enables global distributed SQL operations:

  • MySQL Protocol Support: Write data using standard MySQL protocol
  • P2P Synchronization: Automatic data synchronization across nodes
  • SQLite Backend: Leverages SQLite for local data persistence
  • Global Distribution: Build global distributed database systems

Decentralized SQL database networking system for traditional Web2 databases:

  • Web2 Migration: Enables gradual decentralization of existing MySQL databases
  • Command Synchronization: Automatic command replication across network nodes
  • MySQL Integration: Seamless integration with existing MySQL infrastructure
  • Global Storage: Build globally distributed storage with automatic networking

Adds decentralization capabilities to traditional Redis databases:

  • Redis Protocol: Full Redis RESP protocol compatibility
  • Decentralized Middleware: Network proxy for Redis decentralization
  • Cluster Support: Works with Redis clusters and single instances
  • Data Synchronization: Automatic instruction synchronization across nodes

High-performance decentralized publish-subscribe system:

  • Redis PubSub Compatibility: Seamless migration from Redis pub/sub
  • High Availability: Built-in redundancy and failover mechanisms
  • P2P Networking: Decentralized peer-to-peer subscription network
  • Web2 Migration: Easy transition for existing Redis pub/sub applications

πŸ—ƒοΈ IceFireDB-NoSQL

Core NoSQL database engine with multiple operational modes:

  • Web2 Mode: Distributed Raft-based disk Redis database
  • Web3 Mode: Decentralized IPFS storage mode
  • Hybrid Operation: Support for both traditional and decentralized storage
  • Protocol Support: Full Redis RESP protocol implementation

πŸ“‹ Command Support

IceFireDB provides comprehensive Redis-compatible command support across all major data types:

πŸ“ Strings

  • Basic Operations: SET, GET, DEL, EXISTS, INCR, DECR, APPEND
  • Bit Operations: SETBIT, GETBIT, BITCOUNT, BITOP, BITPOS
  • Range Operations: GETRANGE, SETRANGE, GETSET
  • Expiration: SETEX, SETEXAT, EXPIRE, EXPIREAT, TTL
  • Batch Operations: MGET, MSET

πŸ—‚οΈ Hashes

  • Field Operations: HSET, HGET, HDEL, HEXISTS, HGETALL
  • Incremental: HINCRBY
  • Key Management: HKEYS, HVALS, HLEN, HSTRLEN
  • Batch Operations: HMSET, HMGET
  • Expiration: HEXPIRE, HEXPIREAT, HTTL, HKEYEXIST
  • Management: HCLEAR, HMCLEAR, HSETEX

πŸ“‹ Lists

  • Push/Pop: LPUSH, RPUSH, LPOP, RPOP, RPOPLPUSH
  • Access: LINDEX, LRANGE, LSET, LLEN
  • Management: LTRIM, LCLEAR, LMCLEAR
  • Expiration: LEXPIRE, LEXPIREAT, LTTL, LKEYEXISTS

πŸ”’ Sets

  • Membership: SADD, SREM, SISMEMBER, SMEMBERS
  • Operations: SINTER, SUNION, SDIFF
  • Store Operations: SINTERSTORE, SUNIONSTORE, SDIFFSTORE
  • Management: SCARD, SCLEAR, SMCLEAR
  • Expiration: SEXPIRE, SEXPIREAT, STTL, SPERSIST, SKEYEXISTS

πŸ“Š Sorted Sets

  • Score Operations: ZADD, ZSCORE, ZINCRBY
  • Range Operations: ZRANGE, ZREVRANGE, ZRANGEBYSCORE, ZREVRANGEBYSCORE
  • Rank Operations: ZRANK, ZREVRANK
  • Management: ZCARD, ZCOUNT, ZREM, ZCLEAR
  • Range Removal: ZREMRANGEBYSCORE, ZREMRANGEBYRANK

βš™οΈ System Design

IceFireDB implements a sophisticated layered architecture with the following core components:

Component Description Technologies
🌐 Network Layer Multi-protocol networking with hybrid consensus P2P, RAFT, NATS
πŸ’Ύ Storage Layer Multi-engine storage abstraction with Web2/Web3 compatibility goleveldb, badger, hybriddb, IPFS, CRDT, IPFS-LOG, IPFS-SYNCKV, OSS
πŸ“‘ Protocol Layer Multi-protocol support for broad application compatibility RESP, SQL
πŸ”§ Codec Layer Core data abstraction and encoding/decoding engine KV, Strings, Hashes, Lists, Sorted Sets, Sets, SQL, PubSub

πŸš€ Quick Start

Get started with IceFireDB in minutes with our comprehensive quick start guide:

πŸ”— Quick Start Guide

🎯 Roadmap

IceFireDB originated as a distributed NoSQL database for Web2 scenarios and continues to evolve:

  • Web2 Support: Ongoing support for traditional distributed NoSQL databases
  • Web3 Expansion: Increased focus on decentralized database technologies
  • Hybrid Approach: Bridging Web2 and Web3 ecosystems with seamless migration paths
  • Community Driven: Development guided by community needs and contributions

We're grateful for our community partners and contributors who continue to drive innovation forward.

πŸ“„ License

IceFireDB is released under the Apache License 2.0:

FOSSA Status

πŸ“ Legal Disclaimer

Important: By using this software, you acknowledge and agree that:

  • The authors, maintainers, and contributors of IceFireDB are not liable for any risks, costs, or problems you may encounter
  • This is open-source software provided "as-is" without warranties of any kind
  • If you discover software defects or bugs, we encourage you to submit patches to help improve the project
  • Users are responsible for evaluating the software's suitability for their specific use cases

Built with ❀️ by the IceFireLabs

πŸ“š Documentation β€’ πŸ› Report Issues β€’

About

@IceFireLabs -> IceFireDB is a database built for web3.0 It strives to fill the gap between web2 and web3.0 with a friendly database experience, making web3 application data storage more convenient, and making it easier for web2 applications to achieve decentralization and data immutability.

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 32

Languages