Elasticsearch in an Hour

Поділитися
Вставка
  • Опубліковано 31 лип 2017
  • John Berryman
    pyohio.org/schedule/presentati...
    The use of search is ubiquitous. As a developer you need search in your technology tool belt. This talk introduces Elasticsearch, a front-running, open source search technology. We'll create an application, execute a search, and dive into internals so that you'll know where search is most useful.
    PyOhio is a free (thanks sponsors!) annual conference for Python programmers in and around Ohio and the entire Midwest.
    pyohio.org/

КОМЕНТАРІ • 30

  • @aeronesto
    @aeronesto 6 років тому +24

    Excellent introduction! Entertaining and eloquent speaker.

  • @ThomasBusby
    @ThomasBusby 5 років тому +35

    Great talk, but always repeat the questions. We're unaware what question is being answered.

  • @aniket.kumarr
    @aniket.kumarr 4 роки тому +4

    This video is gold hidden amongst rocks.
    Great presentation and explanation

  • @gary3900
    @gary3900 2 роки тому

    Amazing unfolding of the beautiful tech! The best material on ES I have viewed by far! Thank you Sir!

  • @bgbrunocom
    @bgbrunocom 6 років тому +1

    best showcase and explanation - thx John

  • @VipinKumar-bb2ow
    @VipinKumar-bb2ow 6 років тому +9

    Amazing, loved the way you started with sql and making a use case and then going to details of ES.
    Do you have anything similar for sql vs NoSQL dbs.. ???

  • @ShubhamMajmudar
    @ShubhamMajmudar 5 років тому

    Just what I was looking for, thanks!

  • @joymondal08
    @joymondal08 6 років тому

    Excellent Explanation.

  • @vimalk78
    @vimalk78 4 роки тому +7

    starts at 11:54

  • @arikc5201
    @arikc5201 6 років тому +2

    If you were having a hard time understanding TF-IDF check out: moz.com/blog/inverse-document-frequency-and-the-importance-of-uniqueness
    "Document frequency measures commonness, and we prefer to measure rareness. The classic way that this is done is with a formula that looks like this: IDFj = log(n/TFj)"
    For each term we are looking at, we take the total number of documents in the document set (n) and divide it by the number of documents containing our term (TFj). This gives us more of a measure of rareness. However, we don't want the resulting calculation to say that the word "mobilegeddon" is 1,000 times more important in distinguishing a document than the word "boat," as that is too big of a scaling factor.
    This is the reason we take the Log Base 10 of the result, to dampen that calculation. For those of you who are not mathematicians, you can loosely think of the Log Base 10 of a number as being a count of the number of zeros - i.e., the Log Base 10 of 1,000,000 is 6, and the log base 10 of 1,000 is 3. So instead of saying that the word "mobilegeddon" is 1,000 times more important, this type of calculation suggests it's three times more important, which is more in line with what makes sense from a search engine perspective."

  • @niteshrawat576
    @niteshrawat576 5 років тому

    hi all, gr8 video! can someone tell me how to use the elasticsearch for a seach api. (drf + elasticsearch). PS: i cant use any high level api like the elasticsearch-dsl . Many thanks:)

  • @naumanarif21
    @naumanarif21 4 роки тому +2

    Damn! This video is "under-viewed"!

  • @fc6827
    @fc6827 5 років тому

    Bro keep rocking

  • @SanthoshMaruthi
    @SanthoshMaruthi 4 роки тому +1

    Fun talk , but if want you want to get to the core subject just start @13:00

  • @siphamandlagcabashe5169
    @siphamandlagcabashe5169 6 років тому

    Hello John, I have been working on an App that is connected to firebase. I want to implement the elastic search to retrieve matching values in my database. Can i take a moment of your time and help me out?

  • @rembautimes8808
    @rembautimes8808 4 роки тому +1

    Cat farming is a good example

  • @MrOrcpro
    @MrOrcpro 5 років тому +6

    Actual lecture starts at 11:45.

  • @senteixTrader
    @senteixTrader Рік тому

    so we just change the horrible part on the where part for the horrible part iin everything else part with lot of brackets and more .. {}

  • @halohaalo2583
    @halohaalo2583 3 роки тому

    Python 2 ://

  • @cacheman
    @cacheman 7 років тому +7

    I wonder if the presenter is unaware of full-text search capabilities in RDBMSes, or just ignoring it for effect?
    The initial example (10:18) of building an SQL query with con-/disjunctions is cute, but also irrelevant because IF you've decided to use MySQL/innodb for search -- not saying it's good idea -- you would surely use the most powerful tool for it, which is to index text as FULLTEXT and use MATCH AGAINST queries, not LIKE-style queries.
    This would give you stemming and relevance scoring, basically fixing the problems of the example as given.
    That said, you should never use MySQL for anything.

    • @moy2010
      @moy2010 6 років тому +1

      I think he was just trying to give a quick example on why not to use your database for full text search purposes.

    • @erikvandeven100
      @erikvandeven100 6 років тому +1

      I think you have to decide what works best for your specific situation. I think the initial example was a pretty good example. While MySQL might work well in certain situations, it might not work well when you need to perform fulltext search on a couple of hundred-thousands or even millions of documents. Not even mentioning joined tables.
      RDBMS is great in storing structured data, Elasticsearch is great for search. I even have used both. I used PostgreSQL for storing my structured data and I indexed specific data (the columns which I needed for fulltext search) in Elasticsearch. Elasticsearch returned the results which included the id's (primary keys) from PostgreSQL, which I could use to select that specific record including the joined data from the database.

    • @fatihpy
      @fatihpy 6 років тому +1

      Why should we not use MySQL for anything?

    • @mikegirkin
      @mikegirkin 6 років тому +2

      Because it is his/her opinion.

    • @ffelix916
      @ffelix916 5 років тому +1

      For some data sets and query loads, MySQL/MariaDB/innodb would be completely inadequate, where Elasticsearch would shine, thanks to its ability to widely distribute and replicate data and query load. As long as Elasticsearch (and similar products) exists, and where the use case calls for these features, MySQL/Mariadb is simply irrelevant.