Kibana 4 - Visualization Question

2015-04-05 Thread SD
Hi,

I have a data set which includes the the medal types won by each country 
along with the year they won the medal. Below is the sample data..

"_source": { 
   
   - "message": [ 
  - "4183,1924-06-01,Summer,"NURMI, 
  Paavo",Men,FIN,Finland,Athletics,3000m team,Gold "
   ],
   - "@version": "1",
   - "@timestamp": "2015-04-06T00:19:35.657Z",
   - "MedalistID": "4183",
   - "Year": "1924-06-01",
   - "Season": "Summer",
   - "Athlete Name": "NURMI, Paavo",
   - "Gender": "Men",
   - "NOC": "FIN",
   - "Country": "Finland",
   - "Main Sport": "Athletics",
   - "Detailed Sport": "3000m team",
   - "Medal Type": "Gold"

}

I am trying to build the following visualization. 

Line Chart:
Filtered by Top 5 Countries (by count of rows)
Year on the X Axis
Count on the Y Axis
 
*Find the 5 countries with most medals over entire dataset, then plot their 
results for each year

I am struggling to build this aggregation in Kibana 4. If I first select 
Y-Axis as "Count" and X-Axis as "Terms Aggregation" with Top 5 Country, 
then I can't plot the results per year. 

And if I select Y-Axis as "Count" and X-Axis as "Date Histogram" with Year 
and then add a sub-aggregation of "Terms Aggregation" with Top 5 Country, 
then obviously the sub aggregation is per year and not over the entire data 
set. How do I get around this problem.

I want my top level aggregation to be Top 5 Country but the results need to 
be plotted per year. 

Thanks,
Shravanthi

-- 
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 elasticsearch+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elasticsearch/cdc8ad0a-164b-407b-b19c-1baee10410e4%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Determine Large Query Search

2014-12-08 Thread SD
Hi,

We are currently using Time Series Indexing (per day indexing for some 
types and per week indexing for some types). Our searches are also targeted 
searches meaning we calculate which indices should be searched on based on 
the date range in the query. We have fielddata enabled on fields we do 
aggregations and/or sorting on.

Even after this, whenever we perform search on a wide date range (which 
implies large number of indices), our cluster is still coming down. We are 
using Elasticsearch 1.3.1. One of the optimizations we are looking into is 
to clearing field data cache after performing large query search. 

Now my question is, whats the best way to determine whether the search is a 
large query search? Will the number of indices being targeted be a good 
metric to determine this?

Any advice is appreciated.

Thanks,
Shravanthi

-- 
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 elasticsearch+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elasticsearch/c6ecaa37-95c4-46a5-a410-25927e91353c%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Aggregations on unmapped fields

2014-12-02 Thread SD
Hi,

We are using Elasticsearch 1.3.2 and having issues running queries with 
aggregations on unmapped fields. Some documents in the index will have this 
nested aggregation field but some will not. Did some initial research but 
did not find a way to tell ES to ignore unmapped fields in aggregations. 
Looks like there is a setting to ignore unmapped fields for sort fields but 
not for aggregation fields. 

This is the exception that am getting

  "status" : 500,
  "reason" : 
"RemoteTransportException[[server][inet[/server:9300]][search/phase/query]];
 
nested: AggregationExecutionException[[nested] nested path [fieldName] not 
found]; "


According to this 
, aggregations 
should work fine on unmapped fields. Is that in a different version of ES?

Any input is appreciated.

Thanks,
Shravanthi


-- 
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 elasticsearch+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elasticsearch/976d9964-c6fe-4953-99da-bf470b887a0a%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Kibana browser support

2014-05-08 Thread sd

   Kibana supports the latest browsers.
   What are the minimum browser versions supported by Kibana 3  for IE, 
Chrome, Mozilla, Safari ?

-- 
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 elasticsearch+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elasticsearch/0e09eedb-568d-4bcd-a177-4f6d1c0f4420%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: Issue with unit testing TransportClient

2014-02-13 Thread SD
Jörg,

Thanks for your response. I see that in your example you create the Node 
and get the client in the buildNode() method used by the tests..But my 
requirement is different.

I want to be able to start a test elastic search server and make my code in 
the app (not the test) use this server to give me the client..

For Example:

Lets say this is how my code is organised

-src package
   -  class ElasticSearchExtension { Client getClient() {  return new 
TransportClient().addTransportAddress(new 
InetSocketTransportAddress(config.get("host"), config.get("port"))); } }
-tests package
   -  class ElasticSearchExtensionTest {  testGetClient() { } }

Now in my ElasticSearchExtensionTest, I want to be able to start up a test 
elastic server and tell the getClient() in ElasticSearchExtension  to use 
the test server and give me the client...I don't want to get the client 
directly in ElasticSearchExtensionTest.

Also, thanks for your note. But we instantiate the client only once per 
module using Akka's Extensions and Bootable implementations.

Thanks,
SD

On Thursday, February 13, 2014 10:48:20 AM UTC-6, Jörg Prante wrote:
>
> The NodeBuilder can start an embedded Elasticsearch cluster, this is 
> exactly what you want for unit tests with a TransportClient.
>
> To see how this works, you can also consult my elasticsearch-support tests 
> which I stole from the original Elasticearch test code:
>
>
> https://github.com/jprante/elasticsearch-support/blob/master/src/test/java/org/xbib/elasticsearch/support/AbstractNodeTest.java
>
> Note, is is rather bad practice to issue a "new TransportClient()" each 
> time you want a client instance. Create just a singleton TransportClient 
> and pass this instance around. At instantiation, the TransportClient starts 
> the full discovery and cluster rendevzous, which takes a lng time.
>
> Jörg
>
>

-- 
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 elasticsearch+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elasticsearch/9305fe60-9ef7-48e0-a6bd-82d7a788bb6d%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Issue with unit testing TransportClient

2014-02-13 Thread SD
Hi guys,

We are integrating ElasticSearch into our Akka framework. We are using 
Akka's Extensions (in case someone here is familiar with Akka) to create 
the client like below

public Client getClient() {
   return new TransportClient().addTransportAddress(new 
InetSocketTransportAddress("localhost", 9300));
}

Now in my unit test, I want to test the method getClient()...

Here are my thoughts to achieve this..

1. Start up an elastic search test server in my unit test class with a 
different cluster name and different port
2. Pass these modified configuration parameters to getClient()
3. Test whether the client is created or not..

I am stuck on step 1 itself..I am looking at documentation and various 
examples online...Most of them show the ability to create a test Node using 
NodeBuilder and getting the client in the test itself or creating a 
TransportClient in the test itself..But I need the ability to start the 
test elastic server in my unit test and then make my app code to use that 
server to get the client..

Any thoughts on how I can achieve this?

Thanks,
SD 

-- 
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 elasticsearch+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elasticsearch/ff2f5a29-59ff-4668-ade2-fbe1091fc926%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.