So I have decided on using the week of year as the index and quotes as my 
type.  I want to clarfiy a couple of things that I am seeing.

first I create my index *curl 'http://localhost:9200/2014_6/quotes'*

then I set my mapping:

*curl -XPUT 'http://localhost:9200/2014_6/quotes/_mapping' -d '*

*{*

*  "quotes" : {*

*     "properties" : {*

*        "time_stamp": {"type":"date"},*

*        "symbol": {"type":"string"},*

*        "side" : {"type":"string"},*

*        "price" : {"type":"double"}*

*     },*

*    "_routing" : {*

*       "required": true,*

*      "path":"symbol"*

*   },*

*     "_timestamp" : {*

*        "enabled" : true,*

*        "path":  "time_stamp",*

*        "format": "date_hour_minute_second_millis"*

*     }*

*  }*

*}*

*'*
now because of this I understand when I am posting a new event to be 
indexed I do not need to specify quote?routing=<symbol>.  However my first 
question is that now I must include symbol in the json object I am posting, 
is this costing me more as far as storage?  If I do not do this via the 
mapping I have no problem adding the routing to the uri, especially if it 
saves me space.

second I am seeing a couple of weird things...
by running this:
*curl -XGET 'http://localhost:9200/2014_5/quotes/_search?routing=eurusd'*

i get the following, which is good, what I expect.
{"took":1,"timed_out":false,"_shards":{"total":1,"successful":1,"failed":0},"hits":{"total":3,"max_score":1.0,"hits":[{"_index":"2014_5","_type":"quotes","_id":"ZW5u1nCHTGW-xToRy8Yy5g","_score":1.0,
 
"_source" : 
{ "time_stamp":1391653001000, "symbol":"eurusd", "side":"a", 
"price":1.3456}},{"_index":"2014_5","_type":"quotes","_id":"ok4FLnrfR4u2CnJ3lVNKkg","_score":1.0,
 
"_source" : 
{ "time_stamp":1391653001000, "symbol":"eurusd", "side":"b", 
"price":1.3457}},{"_index":"2014_5","_type":"quotes","_id":"1eG5m0riSoiDEquQ3I-QSA","_score":1.0,
 
"_source" : 
{ "time_stamp":1391653001100, "symbol":"eurusd", "side":"b", 
"price":1.3458}}]}}

however if you will notice the first entry is of side "a".  by running the 
following I get nothing.
*url -XGET 'http://localhost:9200/2014_5/quotes/_search?routing=eurusd' -d 
'*
*{"query":{"filtered":{"query":{"match_all":{}},"filter":{"term":{"side":"a"}}}}}'*

however if I change side to "b" I get 2 as I would expect.  Is there some 
reserved feature that would limit me searching the a or is there some text 
search thing I am not thinking about.

Finally, I have added a few usdjpy quotes which are routed to a separate 
shard. In my query I accidentally type *usejpy *and I got the two eurusd 
events, even though it honored the side filter.
correcting the symbol I get what I would expect.  Is this another text 
search 'thing'?  All I can think of is that by mistyping the e matches the 
eur in the other indexed items.  

I just want to understand fully what I have going on there, thanks.







On Saturday, February 1, 2014 2:27:55 PM UTC-6, Bobby Richards wrote:
>
> Wanting to get some advice on how to go about design.  I have some 
> currency market data and I get roughly 10 million events a week currently 
> storing in postgres, it actually ends up being about 10 gigs, though I 
> would like to work on getting this down obviously.  The data is seldom 
> queried but I have all of my other data in elastic search which I love.  I 
> am trying to determine the best way to store this.
>
> I would like to query by symbol and time and indexing by month so I can 
> drop months whenever.  i guess that would mean 'month/symbol/(unixtime for 
> minute).
>
> I am far from a data guy, so I am looking for direction, thoughts, 
> etc...is this even a good use case for elastic search?
>
> Thanks,
> Bobby
>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elasticsearch/24b53357-be8b-4401-95eb-3581765af41a%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to