SlideShare una empresa de Scribd logo
1 de 84
DEVDAY 2018
Da Nang - Apr 2018
Elasticsearch Learn & Play
www.axon.vnfb.com/AxonActiveVietNam
Who we are?
Lương Văn Thắng
www.axon.vnfb.com/AxonActiveVietNam
Who we are?
Đỗ Việt Trung
www.axon.vnfb.com/AxonActiveVietNam
1. LEARN
a. OVERVIEW
b. Searching
c. SCALE
d. SECURITY
e. MIGRATION
2. PLAY - workshop with exercises
Agenda
www.axon.vnfb.com/AxonActiveVietNam
OVERVIEW
www.axon.vnfb.com/AxonActiveVietNam
What is Elasticsearch?
❖ Search engine based on Lucene
❖ Real-time distributed, full-text search engine
❖ RESTful API
❖ Schema-free
❖ First public release in Feb 2010
Wikipedia
www.axon.vnfb.com/AxonActiveVietNam
WHO are using ELASTICSEARCH?
www.axon.vnfb.com/AxonActiveVietNam
WhY Elasticsearch?
● NoSQL DB for indexing JSON contents
● Schema-free
● Distributed
● High performance
● REST semantics
● Graph capabilities
● Great documentation
● Open source!
www.axon.vnfb.com/AxonActiveVietNam
WhY Elasticsearch?
www.axon.vnfb.com/AxonActiveVietNam
WORK WITH Big data
www.axon.vnfb.com/AxonActiveVietNam
Searching – faster and smarter
www.axon.vnfb.com/AxonActiveVietNam
Searching – poor performance
www.axon.vnfb.com/AxonActiveVietNam
Schema changes frequently
www.axon.vnfb.com/AxonActiveVietNam
Scaling database
www.axon.vnfb.com/AxonActiveVietNam
Our solution
www.axon.vnfb.com/AxonActiveVietNam
Search In Action
www.axon.vnfb.com/AxonActiveVietNam
Get started
www.axon.vnfb.com/AxonActiveVietNam
❖Node – a started instance of Elasticsearch
❖Cluster - collection of connected nodes of
Elasticsearch
Cluster and Nodes
www.axon.vnfb.com/AxonActiveVietNam
Cluster and Nodes
www.axon.vnfb.com/AxonActiveVietNam
❖Similar to database
❖A collection of types
Indexes
www.axon.vnfb.com/AxonActiveVietNam
❖Similar to table
❖Collection of documents
❖Has schema (implicit or explicit)
Types
www.axon.vnfb.com/AxonActiveVietNam
❖Similar to record
❖Self-contained data
❖Have id
❖Have schema
Documents
www.axon.vnfb.com/AxonActiveVietNam
❖Similar to column
❖Documents are structured in fields
❖Special fields: _id, _uid, _index, _type, _all, _source, …
Fields
www.axon.vnfb.com/AxonActiveVietNam
❖ text, keyword
❖ long, integer, short, double, float, byte
❖ date
❖ boolean
❖ binary
❖ geo
❖ object
❖ nested
❖ ip
❖ arrays
❖ …
Data types
www.axon.vnfb.com/AxonActiveVietNam
Mappings and settings
www.axon.vnfb.com/AxonActiveVietNam
Mappings and settings
Mappings – schema of documents
+ dynamic mappings
+ explicit mappings
Settings – configured for each index
+ good enough when using default settings
+ index analysis – expert users
www.axon.vnfb.com/AxonActiveVietNam
Download and setup
https://www.elastic.co/guide/en/elasticsearch/reference/5.4/setup.html
www.axon.vnfb.com/AxonActiveVietNam
Config/elasticsearch.yml
www.axon.vnfb.com/AxonActiveVietNam
Elasticsearch
www.axon.vnfb.com/AxonActiveVietNam
{
"from": 0,
"size": 20,
"min_score": 5,
"query": {
"bool": {
"should": [],
"must": [],
"must_not": [],
"filter": {}
}
},
"sort": [],
"aggs": {}
}
Query structure
www.axon.vnfb.com/AxonActiveVietNam
{
"from": 0,
"size": 20,
"min_score": 5,
"query": {
"bool": {
"should": [],
"must": [],
"must_not":
[],
"filter": {}
}
},
"sort": [],
"aggs": {}
}
Query structure
// do pagination
www.axon.vnfb.com/AxonActiveVietNam
{
"from": 0,
"size": 20,
"min_score": 5,
"query": {
"bool": {
"should": [],
"must": [],
"must_not": [],
"filter": {}
}
},
"sort": [],
"aggs": {}
}
Query structure
// limit hitlist return
www.axon.vnfb.com/AxonActiveVietNam
{
"from": 0,
"size": 20,
"min_score": 5,
"query": {
"bool": {
"should": [],
"must": [],
"must_not": [],
"filter": {}
}
},
"sort": [],
"aggs": {}
}
Query structure
// statistic
www.axon.vnfb.com/AxonActiveVietNam
{
"from": 0,
"size": 20,
"min_score": 5,
"query": {
"bool": {
"should": [{..}, {..},..],
"must": [{..}, {..},..],
"must_not": [{..}, {..},..],
"filter": {} // not impact to total score
}
},
"sort": [],
"aggs": {}
}
Query structure
// and
// or
// not
www.axon.vnfb.com/AxonActiveVietNam
{
"bool": {
"must": [
{“strong”},
{“is man”}
]
}
}
Exercise 1
www.axon.vnfb.com/AxonActiveVietNam
{
"bool": {
"must": [
{“strong”},
{“is man”}]
}
}
Exercise 1
www.axon.vnfb.com/AxonActiveVietNam
{
"bool": {
"must":
[{“has red on suite”}],
“should“:
[{“strong”},{“is man”}]
}
}
Exercise 2
www.axon.vnfb.com/AxonActiveVietNam
{
"bool": {
"must": [{“has red on suite”}],
"should":[{“strong”},{“is man”}]
}
}
Exercise 2
www.axon.vnfb.com/AxonActiveVietNam
Exercise 3
{
"bool": {
"must":
[{“strong”},{“has cape”}],
“must_not“:
[{“be seen the face”} ]
}
}
www.axon.vnfb.com/AxonActiveVietNam
{
"bool": {
"must":
[{“strong”},
{“has cape”}],
“must_not“:
[{“be seen the face”}]
}
}
Exercise 3
www.axon.vnfb.com/AxonActiveVietNam
building a query
www.axon.vnfb.com/AxonActiveVietNam
Synonym
www.axon.vnfb.com/AxonActiveVietNam
Synonym token filter
www.axon.vnfb.com/AxonActiveVietNam
Synonym token filter
www.axon.vnfb.com/AxonActiveVietNam
SCALing
www.axon.vnfb.com/AxonActiveVietNam
What – Why?
www.axon.vnfb.com/AxonActiveVietNam
How to Scale
www.axon.vnfb.com/AxonActiveVietNam
How to Scale
www.axon.vnfb.com/AxonActiveVietNam
SECURITY
www.axon.vnfb.com/AxonActiveVietNam
WHY
Elasticsearch has no concept of a user.
Essentially, anyone that can send arbitrary requests to your
cluster is a “super user”.
www.axon.vnfb.com/AxonActiveVietNam
WHAT
❖ Authentication & authorization
❖ Access control
❖ Encryption
❖ Auditing
www.axon.vnfb.com/AxonActiveVietNam
www.axon.vnfb.com/AxonActiveVietNam
Authentication
& Authorization
Role-based
access control
Encryption
Auditing
License PaidPaid/UnpaidPaid/Unpaid Paid/Unpaid
www.axon.vnfb.com/AxonActiveVietNam
Prevent unauthorized access
Keep Data Integrity
what happen on system
www.axon.vnfb.com/AxonActiveVietNam
Installing….
www.axon.vnfb.com/AxonActiveVietNam
User Authentication
www.axon.vnfb.com/AxonActiveVietNam
Identify who send the request
www.axon.vnfb.com/AxonActiveVietNam
built-in users
elastic kibana logstash_system
www.axon.vnfb.com/AxonActiveVietNam
ADD More User
PUT localhost:9200/_xpack/security/user/trungdo
{
"full_name" : "Trung Do",
"email" : "trung.do@axonactive.com",
"password" : "axonvn",
"roles" : [ "admin", "superior", "kibana_user" ],
"metadata" : {
"workingYear" : 5
},
"enabled": true
}
www.axon.vnfb.com/AxonActiveVietNam
How authentication works
Native
(Basic Auth)
LDAP
file
(Basic Auth)
Active
Directory
PKI Custom
Realms
www.axon.vnfb.com/AxonActiveVietNam
Realms chain
Native file LDAP1 LDAP2
www.axon.vnfb.com/AxonActiveVietNam
xpack.security.authc:
realms:
file: //id of realm
type: file //type of realm
order: 0 //order in chain
native:
type: native
order: 1
ldap1:
type: ldap
order: 2
enabled: false
url: 'url_to_ldap1'
…
ldap2:
type: ldap
order: 3
enabled: false
url: 'url_to_ldap2'
Configure realms
chain
elasticsearch.yml
www.axon.vnfb.com/AxonActiveVietNam
Authorization
www.axon.vnfb.com/AxonActiveVietNam
❖ Identify permission to execute request
❖ Support by Role Based Access Control (RBAC)
www.axon.vnfb.com/AxonActiveVietNam
Secured Resource
RBAC
Role
Privilege
Permissions
User
www.axon.vnfb.com/AxonActiveVietNam
Secured Resource
Object need to be restricted accessity
Indices Document Field
User Cluster
www.axon.vnfb.com/AxonActiveVietNam
Privilege
❖ One or group of actions user can execute
❖ Two types: Cluster and Indice
all read create index delete
See full privileges: https://www.elastic.co/guide/en/x-pack/5.4/security-privileges.html
all monitor manage_watcher manage_security
Indice privilege
Cluster privilege
www.axon.vnfb.com/AxonActiveVietNam
Permission
Set of privileges on a secured resource
read on kibana
indices
monitor on cluster
write on kibana
indices
kibana system permission
www.axon.vnfb.com/AxonActiveVietNam
Built-in Role
superuser kibana_user kibana_system logstash_system
monitoring_user reporting_user watcher_admin watcher_user machine_learning_user
See more at: https://www.elastic.co/guide/en/x-pack/5.4/built-in-roles.html
www.axon.vnfb.com/AxonActiveVietNam
ADD ROLE
POST localhost:9200/_xpack/security/role/scrum_admin
{
"run_as": [ ... ],
"cluster": [ ... ],
"indices": [ ... ]
}
//submit request on behalf of other user
//privilege on cluster
//permission entry on indices
www.axon.vnfb.com/AxonActiveVietNam
ADD ROLE
POST localhost:9200/_xpack/security/role/scrum_admin
{
"run_as": [ "khangvu" ],
"cluster": [ "monitor" ],
"indices": [
{
"names": [ "scrum*" ],
"privileges": [ "read" ],
"field_security" : {
"grant" : [ "category", "@timestamp", "message" ]
},
"query": "{"match": {"event.type": "technical"}}"
}
]
//scrum_admin can submit request for khangvu user
//can monitor cluster
//name of targeted-indices: all indexes started with scrum
//privilege on targeted-indices
//allowed field to access
//list of targeted-document
www.axon.vnfb.com/AxonActiveVietNam
Auditing
❖ Audit activities/events that occur in the system
❖ Output to logfile or index
❖ Enable this feature by
xpack.security.audit.enabled to true in elasticsearch.yml.
See more at https://www.elastic.co/guide/en/x-pack/5.4/auditing.html
www.axon.vnfb.com/AxonActiveVietNam
www.axon.vnfb.com/AxonActiveVietNam
SECURITY
www.axon.vnfb.com/AxonActiveVietNam
www.axon.vnfb.com/AxonActiveVietNam
migration with logstash
www.axon.vnfb.com/AxonActiveVietNam
Logstash is data collector pipeline
www.axon.vnfb.com/AxonActiveVietNam
How ?
❖ Event processing pipeline
❖ Has three stages:
➢ Input
➢ Filter
➢ Output
❖ Has bunch of plugins for you to play with
www.axon.vnfb.com/AxonActiveVietNam
usecase - Collect rdbms to es server
Database Logstash filter ElasticSearch
Store Read
Kibana
www.axon.vnfb.com/AxonActiveVietNam
www.axon.vnfb.com/AxonActiveVietNam
Exercise 1 (3 points):
- Install ElasticSearch, Kibana
- Import ~5000 films to Elastic
- Install & configure User and Role with X-Pack
Exercise 2 (4 points):
- Query films by some criterias on Kibana
Exercise 3 (5 points):
- Install and configure Logstash
- Filter films by Logstash
- Import CSV File to ElasticSearch
- Query new films by some criteria
www.axon.vnfb.com/AxonActiveVietNam
How to run the exercises
● Register with speaker
● Divide by group of 4
● Time for each group: 45 minutes
● Reach the checkpoint to get score
● Gifts:
○ First finish/highest score team - T-shirt
○ Runner-up - Bag
○ Rest - Paper & Pen
www.axon.vnfb.com/AxonActiveVietNam

Más contenido relacionado

La actualidad más candente

jQuery Anti-Patterns for Performance & Compression
jQuery Anti-Patterns for Performance & CompressionjQuery Anti-Patterns for Performance & Compression
jQuery Anti-Patterns for Performance & Compression
Paul Irish
 
Djangoアプリのデプロイに関するプラクティス / Deploy django application
Djangoアプリのデプロイに関するプラクティス / Deploy django applicationDjangoアプリのデプロイに関するプラクティス / Deploy django application
Djangoアプリのデプロイに関するプラクティス / Deploy django application
Masashi Shibata
 
Appsec usa2013 js_libinsecurity_stefanodipaola
Appsec usa2013 js_libinsecurity_stefanodipaolaAppsec usa2013 js_libinsecurity_stefanodipaola
Appsec usa2013 js_libinsecurity_stefanodipaola
drewz lin
 
Bcblackpool jquery tips
Bcblackpool jquery tipsBcblackpool jquery tips
Bcblackpool jquery tips
Jack Franklin
 
Javascript done right - Open Web Camp III
Javascript done right - Open Web Camp IIIJavascript done right - Open Web Camp III
Javascript done right - Open Web Camp III
Dirk Ginader
 
Zepto.js, a jQuery-compatible mobile JavaScript framework in 2K
Zepto.js, a jQuery-compatible mobile JavaScript framework in 2KZepto.js, a jQuery-compatible mobile JavaScript framework in 2K
Zepto.js, a jQuery-compatible mobile JavaScript framework in 2K
Thomas Fuchs
 

La actualidad más candente (20)

The Spirit of Testing
The Spirit of TestingThe Spirit of Testing
The Spirit of Testing
 
jQuery Anti-Patterns for Performance & Compression
jQuery Anti-Patterns for Performance & CompressionjQuery Anti-Patterns for Performance & Compression
jQuery Anti-Patterns for Performance & Compression
 
Polyglot payloads in practice by avlidienbrunn at HackPra
Polyglot payloads in practice by avlidienbrunn at HackPraPolyglot payloads in practice by avlidienbrunn at HackPra
Polyglot payloads in practice by avlidienbrunn at HackPra
 
Djangoアプリのデプロイに関するプラクティス / Deploy django application
Djangoアプリのデプロイに関するプラクティス / Deploy django applicationDjangoアプリのデプロイに関するプラクティス / Deploy django application
Djangoアプリのデプロイに関するプラクティス / Deploy django application
 
Appsec usa2013 js_libinsecurity_stefanodipaola
Appsec usa2013 js_libinsecurity_stefanodipaolaAppsec usa2013 js_libinsecurity_stefanodipaola
Appsec usa2013 js_libinsecurity_stefanodipaola
 
jQuery Performance Tips and Tricks (2011)
jQuery Performance Tips and Tricks (2011)jQuery Performance Tips and Tricks (2011)
jQuery Performance Tips and Tricks (2011)
 
jQuery (BostonPHP)
jQuery (BostonPHP)jQuery (BostonPHP)
jQuery (BostonPHP)
 
jQuery (MeshU)
jQuery (MeshU)jQuery (MeshU)
jQuery (MeshU)
 
XSS - Do you know EVERYTHING?
XSS - Do you know EVERYTHING?XSS - Do you know EVERYTHING?
XSS - Do you know EVERYTHING?
 
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
 
Five Pound App talk: hereit.is, Web app architecture, REST, CSS3
Five Pound App talk: hereit.is, Web app architecture, REST, CSS3Five Pound App talk: hereit.is, Web app architecture, REST, CSS3
Five Pound App talk: hereit.is, Web app architecture, REST, CSS3
 
Bcblackpool jquery tips
Bcblackpool jquery tipsBcblackpool jquery tips
Bcblackpool jquery tips
 
JavaScript Libraries (Kings of Code)
JavaScript Libraries (Kings of Code)JavaScript Libraries (Kings of Code)
JavaScript Libraries (Kings of Code)
 
The DOM is a Mess @ Yahoo
The DOM is a Mess @ YahooThe DOM is a Mess @ Yahoo
The DOM is a Mess @ Yahoo
 
An Introduction to Jquery
An Introduction to JqueryAn Introduction to Jquery
An Introduction to Jquery
 
Web Security Horror Stories
Web Security Horror StoriesWeb Security Horror Stories
Web Security Horror Stories
 
JavaScript Libraries (@Media)
JavaScript Libraries (@Media)JavaScript Libraries (@Media)
JavaScript Libraries (@Media)
 
Javascript done right - Open Web Camp III
Javascript done right - Open Web Camp IIIJavascript done right - Open Web Camp III
Javascript done right - Open Web Camp III
 
JavaScript & HTML5 - Brave New World
JavaScript & HTML5 - Brave New WorldJavaScript & HTML5 - Brave New World
JavaScript & HTML5 - Brave New World
 
Zepto.js, a jQuery-compatible mobile JavaScript framework in 2K
Zepto.js, a jQuery-compatible mobile JavaScript framework in 2KZepto.js, a jQuery-compatible mobile JavaScript framework in 2K
Zepto.js, a jQuery-compatible mobile JavaScript framework in 2K
 

Similar a [DevDay2018] PLAY & LEARN with Elasticsearch Workshop - By: Thang Luong and Trung Do, Developer at Axon Active Viet Nam

Jarv.us Showcase — SenchaCon 2011
Jarv.us Showcase — SenchaCon 2011Jarv.us Showcase — SenchaCon 2011
Jarv.us Showcase — SenchaCon 2011
Chris Alfano
 
Developing your first application using FI-WARE
Developing your first application using FI-WAREDeveloping your first application using FI-WARE
Developing your first application using FI-WARE
Fermin Galan
 
Evaluating Your Learning to Rank Model: Dos and Don’ts in Offline/Online Eval...
Evaluating Your Learning to Rank Model: Dos and Don’ts in Offline/Online Eval...Evaluating Your Learning to Rank Model: Dos and Don’ts in Offline/Online Eval...
Evaluating Your Learning to Rank Model: Dos and Don’ts in Offline/Online Eval...
Sease
 
Developing your first application using FIWARE
Developing your first application using FIWAREDeveloping your first application using FIWARE
Developing your first application using FIWARE
FIWARE
 

Similar a [DevDay2018] PLAY & LEARN with Elasticsearch Workshop - By: Thang Luong and Trung Do, Developer at Axon Active Viet Nam (20)

[HCM Scrum Breakfast - January 2018] ElasticSearch In Action
[HCM Scrum Breakfast - January 2018] ElasticSearch In Action[HCM Scrum Breakfast - January 2018] ElasticSearch In Action
[HCM Scrum Breakfast - January 2018] ElasticSearch In Action
 
Human programming
Human programmingHuman programming
Human programming
 
The Ring programming language version 1.7 book - Part 47 of 196
The Ring programming language version 1.7 book - Part 47 of 196The Ring programming language version 1.7 book - Part 47 of 196
The Ring programming language version 1.7 book - Part 47 of 196
 
The Ring programming language version 1.5.4 book - Part 43 of 185
The Ring programming language version 1.5.4 book - Part 43 of 185The Ring programming language version 1.5.4 book - Part 43 of 185
The Ring programming language version 1.5.4 book - Part 43 of 185
 
Jarv.us Showcase — SenchaCon 2011
Jarv.us Showcase — SenchaCon 2011Jarv.us Showcase — SenchaCon 2011
Jarv.us Showcase — SenchaCon 2011
 
[DN Scrum Breakfast] Automation E2E Testing with Chimp Framework and WebdriverIO
[DN Scrum Breakfast] Automation E2E Testing with Chimp Framework and WebdriverIO[DN Scrum Breakfast] Automation E2E Testing with Chimp Framework and WebdriverIO
[DN Scrum Breakfast] Automation E2E Testing with Chimp Framework and WebdriverIO
 
Hyperproductive JSF 2.0 @ JavaOne Brazil 2010
Hyperproductive JSF 2.0 @ JavaOne Brazil 2010Hyperproductive JSF 2.0 @ JavaOne Brazil 2010
Hyperproductive JSF 2.0 @ JavaOne Brazil 2010
 
Spark IT 2011 - Simplified Web Development using Java Server Faces 2.0
Spark IT 2011 - Simplified Web Development using Java Server Faces 2.0Spark IT 2011 - Simplified Web Development using Java Server Faces 2.0
Spark IT 2011 - Simplified Web Development using Java Server Faces 2.0
 
Gits class #22: [ONLINE] Analyze Your User's Activities Using BigQuery and Da...
Gits class #22: [ONLINE] Analyze Your User's Activities Using BigQuery and Da...Gits class #22: [ONLINE] Analyze Your User's Activities Using BigQuery and Da...
Gits class #22: [ONLINE] Analyze Your User's Activities Using BigQuery and Da...
 
Developing your first application using FI-WARE
Developing your first application using FI-WAREDeveloping your first application using FI-WARE
Developing your first application using FI-WARE
 
Accessibility Testing using Axe
Accessibility Testing using AxeAccessibility Testing using Axe
Accessibility Testing using Axe
 
Serverless Java on Kubernetes
Serverless Java on KubernetesServerless Java on Kubernetes
Serverless Java on Kubernetes
 
Evaluating Your Learning to Rank Model: Dos and Don’ts in Offline/Online Eval...
Evaluating Your Learning to Rank Model: Dos and Don’ts in Offline/Online Eval...Evaluating Your Learning to Rank Model: Dos and Don’ts in Offline/Online Eval...
Evaluating Your Learning to Rank Model: Dos and Don’ts in Offline/Online Eval...
 
APIdays Zurich 2019 - Specification Driven Development for REST APIS Alexande...
APIdays Zurich 2019 - Specification Driven Development for REST APIS Alexande...APIdays Zurich 2019 - Specification Driven Development for REST APIS Alexande...
APIdays Zurich 2019 - Specification Driven Development for REST APIS Alexande...
 
APIdays Helsinki 2019 - Specification-Driven Development of REST APIs with Al...
APIdays Helsinki 2019 - Specification-Driven Development of REST APIs with Al...APIdays Helsinki 2019 - Specification-Driven Development of REST APIs with Al...
APIdays Helsinki 2019 - Specification-Driven Development of REST APIs with Al...
 
Xitrum Web Framework Live Coding Demos / Xitrum Web Framework ライブコーディング
Xitrum Web Framework Live Coding Demos / Xitrum Web Framework ライブコーディングXitrum Web Framework Live Coding Demos / Xitrum Web Framework ライブコーディング
Xitrum Web Framework Live Coding Demos / Xitrum Web Framework ライブコーディング
 
Xitrum @ Scala Matsuri Tokyo 2014
Xitrum @ Scala Matsuri Tokyo 2014Xitrum @ Scala Matsuri Tokyo 2014
Xitrum @ Scala Matsuri Tokyo 2014
 
Data manipulation for configuration management using Ansible
Data manipulation for configuration management using AnsibleData manipulation for configuration management using Ansible
Data manipulation for configuration management using Ansible
 
Developing your first application using FIWARE
Developing your first application using FIWAREDeveloping your first application using FIWARE
Developing your first application using FIWARE
 
Null Bachaav - May 07 Attack Monitoring workshop.
Null Bachaav - May 07 Attack Monitoring workshop.Null Bachaav - May 07 Attack Monitoring workshop.
Null Bachaav - May 07 Attack Monitoring workshop.
 

Más de DevDay.org

Más de DevDay.org (20)

[DevDay2019] Lean UX - By Bryant Castro, Bryant Castro at Wizeline
[DevDay2019] Lean UX - By  Bryant Castro,  Bryant Castro at Wizeline[DevDay2019] Lean UX - By  Bryant Castro,  Bryant Castro at Wizeline
[DevDay2019] Lean UX - By Bryant Castro, Bryant Castro at Wizeline
 
[DevDay2019] Why you'll lose without UX Design - By Szilard Toth, CTO at e·pi...
[DevDay2019] Why you'll lose without UX Design - By Szilard Toth, CTO at e·pi...[DevDay2019] Why you'll lose without UX Design - By Szilard Toth, CTO at e·pi...
[DevDay2019] Why you'll lose without UX Design - By Szilard Toth, CTO at e·pi...
 
[DevDay2019] Things i wish I knew when I was a 23-year-old Developer - By Chr...
[DevDay2019] Things i wish I knew when I was a 23-year-old Developer - By Chr...[DevDay2019] Things i wish I knew when I was a 23-year-old Developer - By Chr...
[DevDay2019] Things i wish I knew when I was a 23-year-old Developer - By Chr...
 
[DevDay2019] Designing design teams - Christopher Nguyen, UX Manager at Wizeline
[DevDay2019] Designing design teams - Christopher Nguyen, UX Manager at Wizeline[DevDay2019] Designing design teams - Christopher Nguyen, UX Manager at Wizeline
[DevDay2019] Designing design teams - Christopher Nguyen, UX Manager at Wizeline
 
[DevDay2019] Growth Hacking - How to double the benefits of your startup with...
[DevDay2019] Growth Hacking - How to double the benefits of your startup with...[DevDay2019] Growth Hacking - How to double the benefits of your startup with...
[DevDay2019] Growth Hacking - How to double the benefits of your startup with...
 
[DevDay2019] Collaborate or die: The designers’ guide to working with develop...
[DevDay2019] Collaborate or die: The designers’ guide to working with develop...[DevDay2019] Collaborate or die: The designers’ guide to working with develop...
[DevDay2019] Collaborate or die: The designers’ guide to working with develop...
 
[DevDay2019] How AI is changing the future of Software Testing? - By Vui Nguy...
[DevDay2019] How AI is changing the future of Software Testing? - By Vui Nguy...[DevDay2019] How AI is changing the future of Software Testing? - By Vui Nguy...
[DevDay2019] How AI is changing the future of Software Testing? - By Vui Nguy...
 
[DevDay2019] Hands-on Machine Learning on Google Cloud Platform - By Thanh Le...
[DevDay2019] Hands-on Machine Learning on Google Cloud Platform - By Thanh Le...[DevDay2019] Hands-on Machine Learning on Google Cloud Platform - By Thanh Le...
[DevDay2019] Hands-on Machine Learning on Google Cloud Platform - By Thanh Le...
 
[DevDay2019] Micro Frontends Architecture - By Thang Pham, Senior Software En...
[DevDay2019] Micro Frontends Architecture - By Thang Pham, Senior Software En...[DevDay2019] Micro Frontends Architecture - By Thang Pham, Senior Software En...
[DevDay2019] Micro Frontends Architecture - By Thang Pham, Senior Software En...
 
[DevDay2019] Power of Test Automation and DevOps combination - One click savi...
[DevDay2019] Power of Test Automation and DevOps combination - One click savi...[DevDay2019] Power of Test Automation and DevOps combination - One click savi...
[DevDay2019] Power of Test Automation and DevOps combination - One click savi...
 
[DevDay2019] How do I test AI models? - By Minh Hoang, Senior QA Engineer at KMS
[DevDay2019] How do I test AI models? - By Minh Hoang, Senior QA Engineer at KMS[DevDay2019] How do I test AI models? - By Minh Hoang, Senior QA Engineer at KMS
[DevDay2019] How do I test AI models? - By Minh Hoang, Senior QA Engineer at KMS
 
[DevDay2019] How to quickly become a Senior Engineer - By Tran Anh Minh, CEO ...
[DevDay2019] How to quickly become a Senior Engineer - By Tran Anh Minh, CEO ...[DevDay2019] How to quickly become a Senior Engineer - By Tran Anh Minh, CEO ...
[DevDay2019] How to quickly become a Senior Engineer - By Tran Anh Minh, CEO ...
 
[Devday2019] Dev start-up - By Le Trung, Founder & CEO at Hifiveplus and Edu...
[Devday2019]  Dev start-up - By Le Trung, Founder & CEO at Hifiveplus and Edu...[Devday2019]  Dev start-up - By Le Trung, Founder & CEO at Hifiveplus and Edu...
[Devday2019] Dev start-up - By Le Trung, Founder & CEO at Hifiveplus and Edu...
 
[DevDay2019] Web Development In 2019 - A Practical Guide - By Hoang Nhu Vinh,...
[DevDay2019] Web Development In 2019 - A Practical Guide - By Hoang Nhu Vinh,...[DevDay2019] Web Development In 2019 - A Practical Guide - By Hoang Nhu Vinh,...
[DevDay2019] Web Development In 2019 - A Practical Guide - By Hoang Nhu Vinh,...
 
[DevDay2019] Opportunities and challenges for human resources during the digi...
[DevDay2019] Opportunities and challenges for human resources during the digi...[DevDay2019] Opportunities and challenges for human resources during the digi...
[DevDay2019] Opportunities and challenges for human resources during the digi...
 
[DevDay2019] Python Machine Learning with Jupyter Notebook - By Nguyen Huu Th...
[DevDay2019] Python Machine Learning with Jupyter Notebook - By Nguyen Huu Th...[DevDay2019] Python Machine Learning with Jupyter Notebook - By Nguyen Huu Th...
[DevDay2019] Python Machine Learning with Jupyter Notebook - By Nguyen Huu Th...
 
[DevDay2019] Do you dockerize? Are your containers safe? - By Pham Hong Khanh...
[DevDay2019] Do you dockerize? Are your containers safe? - By Pham Hong Khanh...[DevDay2019] Do you dockerize? Are your containers safe? - By Pham Hong Khanh...
[DevDay2019] Do you dockerize? Are your containers safe? - By Pham Hong Khanh...
 
[DevDay2019] Develop a web application with Kubernetes - By Nguyen Xuan Phong...
[DevDay2019] Develop a web application with Kubernetes - By Nguyen Xuan Phong...[DevDay2019] Develop a web application with Kubernetes - By Nguyen Xuan Phong...
[DevDay2019] Develop a web application with Kubernetes - By Nguyen Xuan Phong...
 
[DevDay2019] Paradigm shift towards effective Scrum - By Tam Doan, Agile Coac...
[DevDay2019] Paradigm shift towards effective Scrum - By Tam Doan, Agile Coac...[DevDay2019] Paradigm shift towards effective Scrum - By Tam Doan, Agile Coac...
[DevDay2019] Paradigm shift towards effective Scrum - By Tam Doan, Agile Coac...
 
[DevDay2019] JAM Stack - By Ngo Thi Ni, Web Developer at Agility IO
[DevDay2019] JAM Stack - By Ngo Thi Ni, Web Developer at Agility IO[DevDay2019] JAM Stack - By Ngo Thi Ni, Web Developer at Agility IO
[DevDay2019] JAM Stack - By Ngo Thi Ni, Web Developer at Agility IO
 

Último

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Último (20)

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 

[DevDay2018] PLAY & LEARN with Elasticsearch Workshop - By: Thang Luong and Trung Do, Developer at Axon Active Viet Nam