El proyecto Dingo-Store es un sistema de almacenamiento KV distribuido basado en múltiples grupos de replicación de balsa, que también proporciona la capacidad de descarga de cálculo de capa de almacenamiento. El servicio de capa superior de este proyecto es DINGODB basado en SQL, y también puede proporcionar una capacidad de almacenamiento de servicio de alta frecuencia basada en KV. La arquitectura general del proyecto es la siguiente:

El clúster de almacenamiento en Dingodb, Dingo-Store, contiene los siguientes roles:
El coordinador sirve como componente de gestión de metadatos centrales para todo el clúster DingodB, utilizando el protocolo de consenso de balsa. Mantiene los metadatos que detallan la distribución de datos y la topología general del clúster Dingodb. A menudo conocido como 'el cerebro' del sistema DINGODB, el coordinador no solo contiene los metadatos del clúster sino que también supervisa la asignación de recursos. Para la robustez y la alta disponibilidad, el coordinador opera con un mínimo de tres nodos. Se recomienda un número impar de nodos coordinadores para una implementación óptima.
Dingo-Store ofrece un mecanismo multirreplica basado en el protocolo de balsa, lo que garantiza la consistencia de los datos. También proporciona capacidades como replicación de registro, elección del líder, migración de grupos de balsas, instalación de instantáneas y división automática según el tamaño de los datos. Además, Dingo-Store asigna todos los modelos de datos comerciales a un modelo de datos de valor clave, que ofrece capacidades de lectura de lectura de llave de alta frecuencia de alta frecuencia perfecta. Por ejemplo, transforma los modelos de tabla y los modelos de índice completamente en representaciones de KV.
Dingo-Index es una versión especializada de Dingo-Store. No solo ofrece capacidades de almacenamiento de datos distribuidos, sino que también garantiza la construcción en tiempo real de datos vectoriales de alta dimensión y su indexación. Proporciona amplias capacidades de búsqueda en espacios de alta dimensión. El sistema admite formatos de índice vectorial como HNSW y FIV.
Bienvenido a visitar Dingodb. La documentación de DINGODB se encuentra en el sitio web: https://dingodb.readthedocs.io. Los principales proyectos sobre DINGODB son los siguientes:
Dingo-Store es un proyecto híbrido de C ++ y Java, donde C ++ proporciona capacidades de almacenamiento y computación distribuida, mientras que la capa Java proporciona interfaces API básicas.
git submodule sync --recursive
git submodule update --init --recursive
mkdir build && cd build
# Release
cmake -DCMAKE_BUILD_TYPE=Release -DTHIRD_PARTY_BUILD_TYPE=Release -DDINGO_BUILD_STATIC=ON -DBUILD_UNIT_TESTS=OFF ..
# Debug
cmake -DCMAKE_BUILD_TYPE=Debug -DTHIRD_PARTY_BUILD_TYPE=Debug -DDINGO_BUILD_STATIC=ON -DBUILD_UNIT_TESTS=ON ..
# RelWithDebInfo
cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DTHIRD_PARTY_BUILD_TYPE=RelWithDebInfo -DDINGO_BUILD_STATIC=ON -DBUILD_UNIT_TESTS=ON ..
make cd java && mvn clean package - DskipTests Para obtener información más detallada, consulte: Guía de contribución
Dingo-store es un proyecto de código abierto con licencia en Apache License versión 2.0 , agradece cualquier comentario de la comunidad. Para cualquier soporte o sugerencia, contáctenos.
