-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Proposal: OTERCAL for querying data from OlegDB #160
Comments
Holy shit I love you
|
This is awesome |
@Xe Proposal for starting/aborting/commiting transactions? |
|
What should the replies look like? Also, the requirement for tables in queries might make it a pain to implement, since opening/closing of extra databases are then involved. Any thought on the matter? What about cursor iteration? |
I am not comfortable with the idea of endless despair in olegdb. I already have enough of that IRL |
|
Okay so I really, really love this idea. This is also an excellent time to put some cool shit into the Go side of OlegDB. I really want this to get done, and I think a lot of people are intimidated by the C side of Oleg so this is probably a good idea and I think you've all had enough
|
@Hamcha doesn't the Go frontend keep the tables open until olegdb an heroes? |
Yeah, it keeps them open until the whole thing shuts down.
|
That was an open bug as well, we always had a need for a timeout or something. |
Maybe this could be a set of commands:
|
@qpfiffer we can pair sometime soon and take a look at the Go AST. Go is written in Go so it will give us some good ideas for writing an AST for the query language. |
@kyleterry Calm down there ranchero let's just do it with regex, GRESHUNKEL style 6️⃣ 6️⃣ 6️⃣ |
Regexp considered harmful, proper stateful parsing > * On 7 March 2015 at 06:53, Quinlan P. [email protected] wrote:
|
You can always use regex for the tokenization step, might even turn out to be saner and more flexible. |
One of the examples says As far as i know, with |
@dequis The transition from datastore to database will be silent and slow. The double-quotes won't even see it coming. |
We need a hero. OlegDB is that hero.
I propose we have a new OlegDB Query Language (OTERCAL for obvious reasons which are an exercise best left to the reader) for better querying the key-value pairs we all know and love.
This specification's use of the keywords "must", "must not", "required", "shall", "shall not", "should", "should not", "recommended", "not recommended", "may", and "optional". These are to be interpreted as described in RFC2119.
Basic Syntax
All statements must be terminated with the "endless happiness" operator
:D
.Verbs
JAR
<key>
to<table>
with the contents of<value>
ol_jar
UNJAR
<key>
from<table>
ol_unjar
SNIFF
<key>
from<table>
ol_expiration_time
SCOOP
<key>
from<table>
ol_scoop
UPTIME
ol_uptime
SPOIL
<key>
in<table>
to have an expiry date of<value>
ol_spoil
SELECT
<table>
with<key>
as the prefix to match againstol_prefix_match
SELECT *
<table>
.ol_key_dump
INVENTORY
<key>
exists in<table>
ol_exists
SQUISH
ol_squish
CRAZY
<key>
in<table>
against<value>
This could make OlegDB the truly cloud scale performant monster we all know and love.
The text was updated successfully, but these errors were encountered: