You have to do this:
curl -XPUT 'localhost:9200/_river/my_jdbc_river/_meta' -d '{
"type" : "jdbc",
"jdbc" : {
"url" : "jdbc:mysql://localhost:3306/test",
"user" : "",
"password" : "",
"sql" : "select * from orders"
}
}'
Then if you did not set the index name you want your docs to be put in, search in default index which is I think here: the river name: my_jdbc_river
GET /my_jdbc_river/_search should give you results.
If not, check your logs. May be bad driver installation???
--
David Pilato | Technical Advocate | Elasticsearch.com
@dadoonet | @elasticsearchfr
Le 25 juin 2014 à 16:45:02, Jorge von Rudno (jorge.vonrudno.gp@googlemail.com) a écrit:
David when you say that I have to create the river in _river special index, this mean that I have to use the word "_river" as a Index or that I have to use the word "/_meta" as Id or I have to do some special configuration? Sorry if the question sound a little dumm.
Could you write for me an example, please?
2014-06-25 15:54 GMT+02:00 David Pilato david@pilato.fr:
You need to create the river in _river special index. Otherwise it won't be considered as a river.
--
David Pilato | Technical Advocate | Elasticsearch.com
@dadoonet | @elasticsearchfr
Le 25 juin 2014 à 15:21:10, Jorge von Rudno (jorge.vonrudno.gp@googlemail.com) a écrit:
Hi David,
When I run I "GET /_search", I get some documents but not what I expect (some index about ".marvel" . The river should be generate around 1 million documents.
I just delete all and change the index name by "cm_customer"
PUT /cm_customer/customers/
{
"type" : "jdbc",
"jdbc" : {
"url" : "jdbc:postgresql://192.168.20.27:5432/kunden",
"user" : "postgres",
"password" : "",
"sql" : "SELECT ba.kundennummer, ba.firma, ba.anschrift, ba.plz, ba.ort, ba.telefon, ba.telefax, ba.latitude, ba.longitude, rd.status, branchenid, kb.hauptbranche, sortierung FROM basiseintrag ba LEFT JOIN rechnungsdaten rd ON ba.kundennummer = rd.kundennummer LEFT JOIN kundenbranchen AS kb ON ba.kundennummer = kb.kundennummer WHERE ba.main = 1 AND rd.status != 5",
"index" : "cm_customers",
"type" : "customers",
"strategy" : "oneshot"
}
}
The first quetion is: Whit this command I get the message: "No handler found for uri [/cm_/customers/] and method [PUT]".
If I give an Id like: PUT /cm_customer/customers/1 the mistake is gone, but think that if river generate a lot of documents, it should generate the Id automatic.
The result is:
{
"took": 1,
"timed_out": false,
"_shards": {
"total": 5,
"successful": 5,
"failed": 0
},
"hits": {
"total": 1,
"max_score": 1,
"hits": [
{
"_index": "cm_customer",
"_type": "customers",
"_id": "1",
"_score": 1,
"_source": {
"type": "jdbc",
"jdbc": {
"url": "jdbc:postgresql://192.168.20.27:5432/kunden",
"user": "postgres",
"password": "",
"sql": "SELECT ba.kundennummer, ba.firma, ba.anschrift, ba.plz, ba.ort, ba.telefon, ba.telefax, ba.latitude, ba.longitude, rd.status, branchenid, kb.hauptbranche, sortierung FROM basiseintrag ba LEFT JOIN rechnungsdaten rd ON ba.kundennummer = rd.kundennummer LEFT JOIN kundenbranchen AS kb ON ba.kundennummer = kb.kundennummer WHERE ba.main = 1 AND rd.status != 5",
"index": "cm_customers",
"type": "customers",
"strategy": "oneshot"
}
}
}
]
}
}
2014-06-25 11:00 GMT+02:00 Jorge von Rudno jorge.vonrudno.gp@googlemail.com:
Dear colleagues,
I just start to work with ES and after read the documentation, I am trying to load the data from my postgres db. To do this I found that the plugin river jdbc should be work for this purpose.
After following the instruction to install the plugin, I run the following command and my expectation is to have the whole data in the index created for river:
curl -XPUT 'http://localhost:9200/_river/customers/_meta' -d'
{
"type" : "jdbc",
"jdbc" : {
"url" : "jdbc:postgresql://192.100.10.17:5432/customers",
"user" : "postgres",
"password" : "",
"sql" : "SELECT ba.customernumber, ba.company, ba.address, ba.zipcode, ba.city, ba.telefon, ba.telefax, ba.latitude, ba.longitude, rd.status, branchenid, kb.mainbranch, sort FROM basis ba LEFT JOIN aditionaldata rd ON ba.customernumber = rd.customernumber LEFT JOIN customerbranch AS kb ON ba.customernumber = kb.customernumber WHERE ba.main = 1 AND rd.status != 5",
"strategy" : "oneshot"
}
}'
After run the command I get the notification message:
{"_index":"_river","_type":"customers","_id":"_meta","_version":1,"created":true}
As I say before I was expecting to get all the data but if I make a query I just get:
{
"took": 1,
"timed_out": false,
"_shards": {
"total": 1,
"successful": 1,
"failed": 0
},
"hits": {
"total": 1,
"max_score": 1,
"hits": [
{
"_index": "_river",
"_type": "customers",
"_id": "_meta",
"_score": 1,
"_source": {
"type": "jdbc",
"jdbc": {
"url": "jdbc:postgresql://192.100.10.17:5432/kunden",
"user": "postgres",
"password": "",
"sql": "SELECT ba.customernumber, ba.company, ba.address, ba.zipcode, ba.city, ba.telefon, ba.telefax, ba.latitude, ba.longitude, rd.status, branchenid, kb.mainbranch, sort FROM basis ba LEFT JOIN aditionaldata rd ON ba.customernumber = rd.customernumber LEFT JOIN customerbranch AS kb ON ba.customernumber = kb.customernumber WHERE ba.main = 1 AND rd.status != 5",
"strategy": "oneshot"
}
}
}
]
}
}
My question is if I just omit something or I am doing something wrong.
In advance thanks a lot.
Regards
Jorge von Rudno
You received this message because you are subscribed to a topic in the Google Groups "elasticsearch" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/elasticsearch/ULC8-xaimLs/unsubscribe.
To unsubscribe from this group and all its topics, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/dafcf553-14fb-4ee9-b52e-380341b3ab1c%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
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+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/CAFqKu%3DYM1UHDET0QxmBOKQw%2BErBa1wu3ErCCPQEMebxzXu-iXQ%40mail.gmail.com.
You received this message because you are subscribed to a topic in the Google Groups "elasticsearch" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/elasticsearch/ULC8-xaimLs/unsubscribe.
To unsubscribe from this group and all its topics, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/etPan.53aad4b1.257130a3.9da9%40MacBook-Air-de-David.local.
For more options, visit https://groups.google.com/d/optout.
--
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+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/CAFqKu%3DZv9aL_f0Xtut5g8PpwTQActsBFei%3D4dZoG9jN%3DExqGZA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.
--
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+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/etPan.53aae1c0.4353d0cd.9da9%40MacBook-Air-de-David.local.
For more options, visit https://groups.google.com/d/optout.