Diese Präsentation wurde erfolgreich gemeldet.
Die SlideShare-Präsentation wird heruntergeladen. ×

Interactive learning analytics dashboards with ELK (Elasticsearch Logstash Kibana) - LASI 2016 - Andrii Vozniuk, Maria Rodriguez-Triana, Denis Gillet

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Hier ansehen

1 von 69 Anzeige

Interactive learning analytics dashboards with ELK (Elasticsearch Logstash Kibana) - LASI 2016 - Andrii Vozniuk, Maria Rodriguez-Triana, Denis Gillet

Herunterladen, um offline zu lesen

My workshop at the Learning Analytics Summer Institute (LASI) 2016: http://lasi16.snola.es/#!/schedule/113

Educational data continues to grow in volume, velocity and variety. Making sense of the educational data in such conditions requires deployment and usage of appropriate scalable, real-time processing tools supporting a flexible data schema. Elasticsearch is one of the popular open-source tools meeting the enlisted requirements. Initially envisioned as a search engine capable of operating at scale and in real time, Elasticsearch is used by organisations such as Wikimedia and Github, which deal with big data on daily basis. In addition, Elasticsearch is used increasingly often as analytics platform thanks to its scalable architecture and expressive query language. Until recently, the exploitation of Elasticsearch for (learning) analytical purposes by practitioners was hindered by a high entrance barrier due to the complexity of the query language and the query specificities. This is currently changing with the ongoing development of Kibana, an open-source tool that allows to conduct analysis and build visualisations of Elasticsearch data through a graphical user interface. Kibana does not require the user to dive into technical details of the queries (although it is still possible) and hence makes big educational data visualisations accessible to regular users. The additional value of Kibana comes in play whenever several visualisations are combined on a single dashboard, enabling to use multiple coordinated views for an interactive explorative analysis. Both Elasticsearch and Kibana, together with Logstash are part of an analytics stack often referred to as ELK. Logstash supports data acquisition from multiple sources (including twitter, RSS, event logs) thanks to its rich set of available connectors. Custom connectors can be developed for case-specific sources. In addition to the mentioned values, ELK enables building analytics infrastructures decoupled from the learning platform, i.e., it allows to host separately the learning environment (with the analytics functionalities) and the data storage without affecting the end-user experience.

My workshop at the Learning Analytics Summer Institute (LASI) 2016: http://lasi16.snola.es/#!/schedule/113

Educational data continues to grow in volume, velocity and variety. Making sense of the educational data in such conditions requires deployment and usage of appropriate scalable, real-time processing tools supporting a flexible data schema. Elasticsearch is one of the popular open-source tools meeting the enlisted requirements. Initially envisioned as a search engine capable of operating at scale and in real time, Elasticsearch is used by organisations such as Wikimedia and Github, which deal with big data on daily basis. In addition, Elasticsearch is used increasingly often as analytics platform thanks to its scalable architecture and expressive query language. Until recently, the exploitation of Elasticsearch for (learning) analytical purposes by practitioners was hindered by a high entrance barrier due to the complexity of the query language and the query specificities. This is currently changing with the ongoing development of Kibana, an open-source tool that allows to conduct analysis and build visualisations of Elasticsearch data through a graphical user interface. Kibana does not require the user to dive into technical details of the queries (although it is still possible) and hence makes big educational data visualisations accessible to regular users. The additional value of Kibana comes in play whenever several visualisations are combined on a single dashboard, enabling to use multiple coordinated views for an interactive explorative analysis. Both Elasticsearch and Kibana, together with Logstash are part of an analytics stack often referred to as ELK. Logstash supports data acquisition from multiple sources (including twitter, RSS, event logs) thanks to its rich set of available connectors. Custom connectors can be developed for case-specific sources. In addition to the mentioned values, ELK enables building analytics infrastructures decoupled from the learning platform, i.e., it allows to host separately the learning environment (with the analytics functionalities) and the data storage without affecting the end-user experience.

Anzeige
Anzeige

Weitere Verwandte Inhalte

Diashows für Sie (20)

Andere mochten auch (20)

Anzeige

Ähnlich wie Interactive learning analytics dashboards with ELK (Elasticsearch Logstash Kibana) - LASI 2016 - Andrii Vozniuk, Maria Rodriguez-Triana, Denis Gillet (20)

Anzeige

Interactive learning analytics dashboards with ELK (Elasticsearch Logstash Kibana) - LASI 2016 - Andrii Vozniuk, Maria Rodriguez-Triana, Denis Gillet

  1. 1. Interactive Learning Analytics
 with ELK
 (Elasticsearch Logstash Kibana) Andrii Vozniuk, María Jesús Rodríguez-Triana, Denis Gillet The copyright of images belongs to their authors. I will remove them on demand. Contact me at andrii.vozniuk@epfl.ch Bilbao, June 2016 Learning Analytics Summer Institute (LASI) Workshop description: http://lasi16.snola.es/#!/schedule/113
  2. 2. REACT - EPFL - Lausanne
  3. 3. Goals of the Workshop 1. Get understanding of modern, scalable analytics tools: Elasticsearch & Kibana 2. Get hands-on experience of interactive learning analytics with the tools 3. Elaborate on how the tools can be useful in your specific cases
  4. 4. Agenda My presentation (40 minutes) Groupwork (30 minutes) Discussion (20 minutes)
  5. 5. Motivation
  6. 6. REACT
 =
 Coordination & Interaction Systems Group
  7. 7. SpeakUp is a co-located social media to improve audience interaction speakup.info
  8. 8. graasp.eu Graasp a social media as a personal and collaborative learning environment
  9. 9. graspeo.org Graspeo a social media as a knowledge sharing platform for humanitarian orgs
  10. 10. How the tools are being used ?We (researchers) want to know it
 Teachers want to know it
 Even students want to know it
 Knowledge managers as well for awareness & reflection
  11. 11. Approach
  12. 12. Interaction Traces ✓Record ✓Store ✓Visualise ✓Interact
  13. 13. Interactive
 User-oriented
 Analytics Learning Dashboards
  14. 14. Capturing Interactions with xAPI
  15. 15. What is the purpose of xAPI? xAPI = Experience API It is a standard to capture in a unified way experiences of the user, in our case user-tool interactions
  16. 16. Source: http://www.slideshare.net/aaronesilvers/going-with-xapi xAPI
  17. 17. How does xAPI Work? Users interact with tools These interactions are observed and recorded by the tools as xAPI statements The tools [store] and send the statements to a central system (Learning Record Store or LRS) for further usage, for instance, Analysis
  18. 18. xAPI Format Specification • When? - timestamp • Who? - actor • Did what? - verb • With what? - object • With what result? - result • In which context? - context Today at 10:15 (time) Andrii (actor) answered (verb) the question five (object) with the grade four (result), while it was raining outside (context)
  19. 19. xAPI Statement Example
  20. 20. OK, we track the interactions with xAPI.
 
 What’s next?
  21. 21. ✓Visualisation ✓Interactive Visualisation ✓Visual Analysis ✓Dashboards ✓Recommendations
  22. 22. ELK =
 Elasticsearch + Logstash
 + Kibana <-This is an elk as well
  23. 23. The ELK Stack Elasticsearch - search and analytics database based on Lucene Logstash - data ingestion and transformation Kibana - Interactive data visualisation
  24. 24. Have you used Elasticsearch or Logstash or Kibana?
  25. 25. Logstash Elasticsearch Date Source Kibana Reads Transforms Sends Maps Indexes Visualises Interaction Processing Pipeline
  26. 26. elastic.co/products/logstash
  27. 27. Logs are not the best format for analysis Especially, when coming from multiple systems
  28. 28. Getting timestamp should be easy, right? • Apache [19/Feb/2015:19:00:00 +0000] • Unix timestamp 1424372400 • log4j [2015-02-19 19:00:00,000] • postfix.log Feb 19 19:00:00 • ISO 8601 2015-02-19T19:00:00+02:00 • … Over 40 formats Not sexy work to do
  29. 29. Logstash Solves the Problem It collects, transforms and transmits logs (streams) So they can be stored and analysed in a centralised and unified way
  30. 30. Logstash Processing Pipeline Filter OutputInput file syslog jdbc log4j couchdb s3 twitter … elasticsearch jira hipchat s3 http sqs zeromq … anonymise aggregate csv date clone geoip prune ...
  31. 31. 31 but there is more than that elastic.co/products/elasticsearch
  32. 32. 32 Elasticsearch Users Source: http://www.slideshare.net/OleksiyPanchenko/elasticsearch-51730805
  33. 33. Source: http://www.slideshare.net/ruslanzavackiy/introduction-to-elasticsearch-45118828
  34. 34. Source: http://www.slideshare.net/ruslanzavackiy/introduction-to-elasticsearch-45118828
  35. 35. Mapping Analysis QueryData
  36. 36. Relational DBs vs Elasticsearch Database Table Row Column Schema Index Type Document Field Mapping
  37. 37. Default mapping is created automatically Mapping Differently from relational databases, where schema is static, in Elasticsearch mapping is flexible Core types: string, integer/long, float/double, boolean, and null Other types: Array, Object, Nested, IP, GeoPoint, GeoShape, Attachment Tells Elasticsearch how to treat the data
  38. 38. Mapping for xAPI Statements …
  39. 39. Analysis Analysis is about extracting terms from a given text
  40. 40. Query Elasticsearch provides an expressive Query Domain Specific Language to query the data Can be thought as SQL for non- relational data. The query itself is a JSON Object.
  41. 41. Sample Query Contains
 - query
 - filter
 - highlight
  42. 42. We mapped and indexed the data
 in Elasticsearch What’s next?
  43. 43. elastic.co/products/kibana
  44. 44. Kibana is for Interactive Dashboards
  45. 45. Another example
 with light colors scheme
  46. 46. Kibana • Enables near-real-time analysis and visualisation of streaming data • Allows interactive data exploration and supports cross-filtering • Multiple chart types: bar charts, line and scatter plots, histograms, pie charts, maps • No need to know programming or query language in most of the cases • It’s open-source, there are extensions
  47. 47. Logstash Elasticsearch Date Source Kibana Again, what is ELK?
  48. 48. I stop talking!
 We start doing real things together!
  49. 49. Let’s Form Groups 4-5 per group Time to try it yourself!
  50. 50. Generating xAPI Stream My open-source xAPI Stream Generator We can have fun seeing it all update in real-time github.com/voz/xapi-generator
  51. 51. Sample Generated xAPI Statement • timestamp • actor • id • name • mbox • verb • id • display • object • id • definition • name • description • objectType • context • ipAddress • location • city • countryCode • countryName
  52. 52. Interaction Types • abandoned • answered • asked • attempted • attended • commented • completed • exited • experienced • failed • imported • initialized • interacted • launched • mastered • passed • preferred • progressed • registered • responded • resumed • satisfied • scored • shared • suspended • terminated • voided • waived • messaged • invited • mentioned …many of them
  53. 53. Demo Time
  54. 54. go.epfl.ch/lasi2016 login: admin pass: lasi2016 A running Elasticsearch cluster on A 14-day free trial cluster
 * they don’t pay me :) www.elastic.co/cloud
  55. 55. Group Work What to do? 1. Formulate a research question 2. Build a visualisation to answer it, save it 3. If you have time left, repeat 1 and 2 :) Possible research question examples • Who are the most active users? And per country? • What are the most popular types of interaction in general? • What are the content items (objects) used the most per country (per user)? • What types of interaction are the most common? Per country? Per user? • With whom the most active users communicate (message or mention)? • From which countries most of the interactions happen? go.epfl.ch/lasi2016 login: admin pass: lasi2016
  56. 56. Embedded &
 Contextual Analytics
  57. 57. Analytics as a part of the Interaction Context Try yourself on graasp.net
  58. 58. Analytics as a part of the Interaction Context We call it “User-oriented” analytics
  59. 59. Data Ownership
  60. 60. Who owns learning data? Institution? Learner? Parents? Who can use it and for what?
  61. 61. Source: https://www.flickr.com/photos/gforsythe/8508041553/ It’s complicated
  62. 62. Possible Architecture Platform provides a UI to interact with the data
 without storing the data Data is stored on premises:
 in a LRS of a school or of a user Push the traces Get the analysis
  63. 63. Other Possible Applications
  64. 64. Elasticsearch is about search Has powerful NLP toolkit in place
 For Content Analytics

  65. 65. Learning Resources
  66. 66. Online https://www.elastic.co/guide/en/elasticsearch/reference/current/index.html Go through it. It is really good. Elasticsearch Reference Multiple tutorials http://www.elasticsearchtutorial.com/ https://www.elastic.co/guide/index.html ELK Guides YouTube Videos https://www.youtube.com/watch?v=Kqs7UcCJquM
 https://www.youtube.com/watch?v=wHWb1d_VGp8 https://www.youtube.com/watch?v=1gnpzL9jBqY https://www.youtube.com/watch?v=SH5hLM2asB8
  67. 67. Books
  68. 68. Books
  69. 69. Questions? Feedback? about.me/vozniuk Andrii@Vozniuk.com

×