Skytable is a modern scalable NoSQL database with BlueQL, designed for performance, scalability and flexibility. Skytable gives you spaces, models, data types, complex collections and more to build powerful experiences
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Sayan Nandan f5866bc22e
Add new fury benchmark engine
10 months ago
.cargo Remove old tools 10 months ago
.github Implement new error tracing system 12 months ago
assets Rebrand from TerrabaseDB to Skybase (#90) 4 years ago
ci Remove old tools 10 months ago
cli Implement new benchmark engine 10 months ago
examples/config-files Remove old tools 10 months ago
harness Fix test harness 10 months ago
libsky Implement new benchmark engine 10 months ago
pkg Remove old tools 10 months ago
server Make sure that model drops are synchronized across the system 10 months ago
sky-bench Add new fury benchmark engine 10 months ago
sky-macros Clean up enum methods 1 year ago
.build.yml Fix CI script and resolve artifact name conflict 3 years ago
.ci.yml Upgrade deps and ignore tree test on M1 builder 2 years ago
.dockerignore Don't ignore `skysh` for Docker image build 2 years ago
.gitignore Implement new REPL and remove old impls 10 months ago
AUTHORS.md Enable string escaping with quotes for skysh 4 years ago
CHANGELOG.md Merge branch 'newbench' into next 2 years ago
CODEOWNERS Update CODEOWNERS 3 years ago
CODE_OF_CONDUCT.md Improve community documentation 4 years ago
CONTRIBUTING.md Update docs [skip ci] 3 years ago
CONTRIBUTORS.md Improve docs 4 years ago
Cargo.lock Add new fury benchmark engine 10 months ago
Cargo.toml Implement new benchmark tool 10 months ago
Dockerfile add skysh to dockerfile 2 years ago
LICENSE Formal terrapipe query parsing 4 years ago
Makefile Guard against allocation errors in `libstress` 2 years ago
README.md Revert #217 2 years ago
SECURITY.md Revoke old public security key 3 years ago
actiondoc.yml Fix returning values of LMOD_POP & LSET (#281) 2 years ago
pushrelease.sh Improve workflow and docs 4 years ago
release.sh Bump up version, add changelog and update scripts (#159) 3 years ago

README.md

<html>

Skytable

Your next NoSQL database

GitHub Workflow Status Development GitHub release (latest SemVer including pre-releases) Docs Contribute Now Discord

</html>

What is Skytable?

Skytable is a free and open-source NoSQL database that aims to provide flexible data modeling at scale. For us simplicity, performance and flexibility are our guiding design principles. We were previously known as TerrabaseDB or Skybase and are nicknamed Sky, SDB or STable by the community.

Features like keyspaces, tables, data types, authn+authz, snapshots and more are ready for you to use while we're working on several new data models and features. Skytable's key/value store is performant, secure and ready for you to deploy.

Getting started 🚀

  1. Download a bundle for your platform from here ⬇️
  2. Unzip the bundle
  3. Make the files executable (run chmod +x skyd skysh on *nix systems)
  4. First run skyd to start the database server and then run skysh to start the interactive shell
  5. Run commands like: SET foo bar , GET bar , UPDATE cat mitten or DEL proprietary on skysh!

You can learn more about installation here

Features

  • Insanely fast: Scale to millions of queries per second per node. See benchmarks here.
  • Multiple keyspaces/tables: Seamlessly integrates with actions to provide a SQL-like experience
  • Key/value store: GET , SET , UPDATE and all that stuff. With the str and binstr types.
  • Authn/Authz: Simple and secure authentication/authorization
  • Volatile tables: For all the caching you need
  • Snapshots: Automated (and tunable) snapshots for stress-free backups
  • Secure: Secure connections are built into Skytable with SSL/TLS
  • Multithreaded: Designed to exploit all CPU cores
  • Resource friendly: The database server doesn't need more than 1MB to run
  • Convenient: Without the setup hassle and system-specific dependencies

🛣️ There's a lot more coming! View our roadmap

Clients 🔌

The project currently maintains an official Rust driver and we have plans to support more languages along the way! We also maintain a list of community supported drivers here.

If you want to use a different language, for now you'll just need to implement the simple and performant Skyhash Protocol.

Community 👐

A project which is powered by the community believes in the power of community! If you get stuck anywhere - here are your options!

<html> </html>

Platforms 💻

Linux supported macOS supported Windows supported

Versioning

This project strictly follows semver, however, since this project is currently in the development phase (0.x.y), the API may change unpredictably

Contributing

Contribute Now

You are welcome to contribute to Skytable! Beginner friendly issues are marked with the label. Read the guide here.

Contributors

You can see a full list of contributors here

License

This project is licensed under the AGPL-3.0 License.