• Stars
    star
    2,720
  • Rank 16,742 (Top 0.4 %)
  • Language
    Go
  • License
    BSD 2-Clause "Sim...
  • Created over 11 years ago
  • Updated about 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A rudimentary implementation of a basic document (NoSQL) database in Go

2021-09-05: thanks for evaluating tiedot! The project started as a short programming exercise and I am very grateful for the small user base it has received. I am afraid the project has been dormant since 2016, the feature set is minimal and lacking for a modern application. Please consider other embedded DB engine alternatives. In the meanwhile, check out this actively maintained open source project of mine: laitos - Top geek's chindogu.

tiedot

Build Status codecov GoDoc

Documentation

Keywords: Golang, go, document database, NoSQL, JSON

Golang logo

tiedot - Your NoSQL database powered by Golang

tiedot is a document database engine that uses JSON as document notation; it has a powerful query processor that supports advanced set operations; it can be embedded into your program, or run a stand-alone server using HTTP for an API. It runs on *nix and Windows operating systems.

tiedot has fault-tolerant data structures that put your data safety first, while easily scales to 4+ CPU cores.

tiedot has very stable performance, even with millions of records! It consistently achieves high throughput - swallow more than 120k records or 80k complicated queries per second with confidence.

Get tiedot!

tiedot is distributed under the Simplified BSD license.

The newest version 3.4 comes with general performance and compatibility improvements. Find out more in releases.

Running in Docker

Run tiedot with help from docker and docker compose:

$ docker-compose build
$ docker-compose up -d

To view the logs:

$ docker-compose logs

References

... and more

Contributions welcome!

tiedot is a very small project in the large open source community - it is growing fast thanks to the 800+ stars and watchers, as well as many contributors for their feedback, comments, ideas and code. Your contribution matters a lot!

Pull requests/forks all welcome, and please share your thoughts, questions and feature requests in Issues section.

Let me know what you think about tiedot, I'd love to hear from you! Please Email me, follow my Twitter and blog.

The Go gopher was designed by Renee French. (http://reneefrench.blogspot.com/). The Go gopher is covered by the Creative Commons Attribution 3.0 license.

More Repositories

1

laitos

Top geek's chindogu - personal assistant over satellite/telephone/SMS/chatbot, plus web infrastructure servers (web & mail, ad-free DNS, TCP-over-DNS, web proxy, etc)
Go
253
star
2

headmore

Top geek’s VNC client that runs in Linux terminal (Linux VT console, xterm, and more)
C
122
star
3

schale

A subprocess interface for Scala
Scala
97
star
4

DBGo

This is a programming exercise, do not use in serious code.
Go
64
star
5

Aurinko

Aurinko - a document database engine implementation in Clojure
Clojure
58
star
6

cryptctl

A disk encryption utility that helps setting up LUKS-based disk encryption using randomly generated keys, and keeps all keys on a dedicated key server.
Go
25
star
7

markafile

File tagging solution for Linux and Unix
Python
13
star
8

Aurinko2

An XML document database engine implementation in Scala
Scala
9
star
9

saptune

Comprehensive system tuning management for SAP solutions
Go
8
star
10

reconn

Self-hosted voice clone and inference service
Go
6
star
11

PerlDB

This is a programming exercise, do not use in serious code.
Perl
6
star
12

docker-golang-eclipse-che

An optimised and feature rich docker image for programming Go in Eclipse Che.
Dockerfile
5
star
13

LinuxManagementConsole

WIP: a cool config management tool that won't make user feel stupid. Not to be confused with "SomeSetupTool".
Go
4
star
14

bark-with-voice-clone

A fork of serp-ai/bark-with-voice-clone
Jupyter Notebook
4
star
15

net.houzuo.android.privacyprotector

Privacy Protector (No root) for Android
Java
4
star
16

esp32-wifi-gps-tracker

A GPS tracker program that uses nearby open WiFi hotspots to transmit tracked object's location.
C++
3
star
17

HANA-Firewall

Generate firewalld service definitions for SAP HANA
Go
3
star
18

busybox-from-a-to-z

Give every busybox command a try - and see what they do.
3
star
19

contained.sh

Rudimentary sandbox for running a program in its independent PID/hostname/mount namespaces, and with restricted access to file system, limited resource usage, optional privileged capabilities.
Shell
3
star
20

websh

"websh" is now "laitos", see README.md
2
star
21

go-web-streaming-benchmark

A simple web video server for benchmarking video streaming performance
JavaScript
2
star
22

ttgo-tbeam-ttn

A minimal program for TTGO T-Beam v0.7 to send fixed coordinates over The Things Network (LoRAWAN) to be mapped on TTN Mapper.
C++
2
star
23

ham-radio-study

My ham radio study notes.
1
star
24

MUT

MUT makes testing your Scala class instance state-transition a lot more easier.
Scala
1
star
25

hello-ebpf

An eBPF programming exercise.
C
1
star
26

optionalcloud

An example AWS API Gateway program that runs both on and off-cloud
Go
1
star
27

bashbench

Linux system and shell benchmark tool
Shell
1
star
28

statsd-mini

A variation of statsd client & it pushes stats to Ganglia
Go
1
star
29

hzgl-lora-communicator

An open source software for a battery-powered two-way messaging device. It uses The Things Network Community Edition (LoRaWAN) for bi-directional data connectivity.
C++
1
star
30

personal-radio-beacon

HZGLRB (HZGL-PRB): My journey toward creating a personal radio beacon using a WiFi+Bluetooth+LoRA micro-controller chip.
C++
1
star
31

net.houzuo.android.autonotes

AutoNotes for Android
Java
1
star
32

procshave

A process activity monitor powered by eBPF.
Go
1
star