Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Advanced search for your Legacy application - J On The Beach

Advanced search for your Legacy application - J On The Beach

Talk given at J On The Beach 2016, Malaga - Spain

Dd9d954997353b37b4c2684f478192d3?s=128

Elastic Co

May 20, 2016
Tweet

More Decks by Elastic Co

Other Decks in Programming

Transcript

  1. ‹#› Advanced search for your legacy application David Pilato Developer

    | Evangelist @dadoonet J On The Beach
  2. 2

  3. our legacy platform 3 WEB APP HTTP / REST JDBC

    DATABASE SQL
  4. our legacy domain / database 4

  5. our legacy application 5 demo time $ git clone https://github.com/dadoonet/legacy-search.git

    $ git checkout 00-legacy $ mvn clean install jetty:run
  6. Connecting with our app Architecture 6

  7. DATABASE SQL ETL using a ETL 7 WEB APP HTTP

    / REST JDBC ELASTICSEARCH REST / JSON
  8. think document! • Change your mindset: ‒ Forget SQL! ‒

    Index what you want to find • A document ‒ A JSON object ‒ Core field types (string, numbers, booleans) ‒ Complex field types (arrays, objects) ‒ Additional field types (geo points, geo shapes) 8
  9. Do It Yourself Direct Connection 9

  10. DATABASE SQL direct connection 10 WEB APP HTTP / REST

    JDBC ES-CLIENT ELASTICSEARCH REST / JSON
  11. JSON document design 11 PUT /person/person/1 { "name":"Joe Pink", "dateOfBirth":"1971-12-26",

    "address_id":"2", "marketing_id":"3" } PUT /person/address/2 { "city":"Paris", "country":"France" } PUT /person/marketing/3 { "cars":1000, "food":1500 }
  12. JSON document design 12 PUT /person/person/1 { "name":"Joe Pink", "dateOfBirth":"1971-12-26",

    "address":{ "city":"Paris", "country":"France" }, "marketing":{ "cars":1000, "food":1500 } }
  13. direct connection 13 demo time $ git checkout 01-direct $

    git checkout 02-bulk $ git checkout 03-mapping $ git checkout 04-aggs $ git checkout 05-compute $ mvn clean install jetty:run $ cat README.markdown
  14. synchronous vs asynchronous 14

  15. DATABASE SQL using brokers 15 WEB APP HTTP / REST

    JDBC ES-CLIENT ELASTICSEARCH REST / JSON
  16. ELASTICSEARCH REST / JSON using brokers 16 WEB APP HTTP

    / REST JDBC ES-CLIENT DATABASE SQL
  17. ELASTICSEARCH REST / JSON using brokers 17 WEB APP HTTP

    / REST JDBC ES-CLIENT DATABASE SQL
  18. ‹#›

  19. ‹#›

  20. ‹#› thanks! David Pilato Developer | Evangelist @dadoonet https://www.elastic.co/subscriptions J

    On The Beach