dylanlott / pangolin Goto Github PK
View Code? Open in Web Editor NEWa no:b:QL :b:ata:b:ase in Go
a no:b:QL :b:ata:b:ase in Go
The database should serve a simple GUI with some simple metrics displayed about the database's health, users, collections, anything relevant to the operation of it.
Implement a wrapper around gojsonq - https://github.com/thedevsaddam/gojsonq - for retrieve calls from the database
pkg/indexes/hashtable.go
holds the interfaces for hashtables.
These are necessary for creating indexes in the database.
They should use mmaped files as their persistence layer.
pkg/server
Related to #3
Use cobra to create a simple CLI for starting and interacting with the database
start
, stop
, get
and insert
commands might be cool for user-testing the database.
Collections should have fast searches (ideally, O(log)n
complexity at worst) so we should implement a tree in each collection that gets added to and updated on CRUD operations for that Collection.
AVL trees are probably the best way to achieve this. https://github.com/ancientlore/go-avltree would be a good start.
Ideally, the query wrapper would work with the avl tree service for Find's
On startup, the database should create an Admin user if none exists, and set the password for it, if no PANGOLIN_ROOT_PASSWORD environment variable is set.
The database should have a separate User's collection that is not exposed to the rest of the database and that manages connections to the database.
It should integrate with the server component.
Authentication should be enabled by default, none of this optional nonsense like Mongo.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.