Global indexing view
Reported by Yurii Rashkovskii | April 29th, 2008 @ 09:53 AM | in 0.0.3
We need a view that will allow to query documents using find(:slot => ... , :another_slot => ...) form; we can start with a simplistic approach (no ORs, etc.) just like we have in master.
We also need #find methods use it for documents search
Comments and changes to this ticket
-
Yurii Rashkovskii April 29th, 2008 @ 01:15 PM
- → Assigned user changed from to Yurii Rashkovskii
-
Oleg Andreev April 30th, 2008 @ 12:18 AM
- → State changed from new to open
- → Assigned user changed from Yurii Rashkovskii to Oleg Andreev
-
-
Oleg Andreev May 1st, 2008 @ 10:05 PM
Raw ideas:
0) Semantics are the same, MySQL has: try the longest keys prefix to use an index, then filter the data with a brute force.
1) DSL: index_slots :a, :b, [:x, :y]
2) find(:a => 1) uses the index upon :a, find(:x=>) or find(:x=>, :y=>) uses the index upon both slots :x and :y.
3) Don't try to put hash values into the key: there's absolutely no sense in searching by the hash value (also, ordering issues arise).
In-depth search (kinda xpath or inverted index species) can be implemented in a different configurable views.
-
Yurii Rashkovskii May 23rd, 2008 @ 03:08 AM
just as a crazy idea: will it make any sense to define some slots indexable when they're queried first time?
Please Login or create a free account to add a new comment.
You can update this ticket by sending an email to from your email client. (help)
Create your profile
Help contribute to this project by taking a few moments to create your personal profile. Create your profile »
StrokeDB is an embeddable distributed document database written in Ruby
