Geospatial three amigos: Python, Leaflet, and ElasticSearch. Roberto Rosario

Size: px
Start display at page:

Download "Geospatial three amigos: Python, Leaflet, and ElasticSearch. Roberto Rosario"

Transcription

1 Geospatial three amigos: Python, Leaflet, and ElasticSearch Roberto Rosario

2 Guest appearance Docker

3 Who am I?

4 Who am I? robertorosario.com

5 Who am I?

6 Who am I?

7 Who am I?

8 My map work

9 My map work

10 Learned things the hard way.

11 Problems with monolithic solutions =P4qCp_js2aA

12 Problems with monolithic solutions

13 Problems with monolithic solutions

14 Problems with monolithic solutions

15 Problems with monolithic solutions

16 Problems with monolithic solutions

17 Problems with monolithic solutions It was cool! And free! But...

18 Problems with monolithic solutions

19 Problems with monolithic solutions

20 Problems with monolithic solutions

21 Problems with monolithic solutions

22 Problems with monolithic solutions Some say software is more social than technical. If that s the case then we have to deal with a social reality.

23 Problems with monolithic solutions Hard stuff makes people feel dumb. Flashy, easy stuff makes them feel smart.

24 Problems with monolithic solutions 95% of your product users are of the second type.

25 Problems with monolithic solutions Code for the 95% of use cases.

26 Problems with monolithic solutions Forget about the stuff that is cool to you.

27 Problems with monolithic solutions Even if it is a framework you like.

28 Problems with monolithic solutions Easy to get started, hard to maintain Geospatial support in Django changes a lot Packaging of geospatial libraries is well... Only Postgres is feasible Django ORM is too slow for real time geospatial Serializing to GeoJSON in Django is slow No native support for serializing to GeoJSON No REST API querying solution Indexing is a nightmare Django ORM is not meant to be dynamic

29 Problems with monolithic solutions In conclusion: Django is not a good platform for open data geospatial applications.

30 Problems with monolithic solutions

31 Problems with monolithic solutions Don t kill me just yet Here is one more :)

32 Problems with monolithic solutions Admin interface Templating URL router Forms Migrations File storage Test framework Validators

33 Problems with monolithic solutions When it comes to open data geospatial apps, they are as useful as...

34 Problems with monolithic solutions

35 Problems with monolithic solutions Can I have your watch when you are dead?

36 What is the 95% of use cases?

37 95% of use cases Most spatial apps are lightweight on the frontend and the backend. Most spatial apps just do a simple fetch of geometries.

38 95% of use cases Do the heavy lifting during data loading, so that retrieval and usage are fast and lightweight.

39 Project guidelines

40 Layout Free software is not just an idea but an ecosystem with a lot of software available. How much you ask?

41 Layout

42 Layout Use Docker as a packaging solution. All elements of our stack are already available as images.

43 Layout Use GeoJSON. Simpler, better supported. CartoDB is cool, and probably better, but our frontend won t be doing projection transformations.

44 Layout Use geometries for all elements.

45 Layout Nowadays, there is no point in using just points :)

46 Layout

47 Layout Keep your frontend code and design simple, spatial is complicated enough. Calcite Maps and jquery are your friends.

48 Layout

49 Layout When it comes to data: Fetch only what you need. Your app may be fast but there is still network latency and throughput. If you can t reduce data, compress. This can be done almost transparently.

50 Layout Resist temptation to do data processing on the frontend, not everybody has your same portable mainframe as you.

51 Layout The browser is not a compute node, it a process with inherent OS limits, it is just a viewer.

52 Layout Framework, Compiler, Transpiler, Code Translator, etc, etc, etc.

53 Layout

54 Layout For every library you link you also include unused code.

55 Layout A.K.A. Dead weight

56 Layout

57 Layout

58 Layout

59 Layout Too many data points, use layers and clustering.

60 Layout

61 Layout

62 Layout

63 Layout

64 Layout Don t over engineer your app. It s an app not a platform.

65 Layout - Data loading ETL

66 Layout - Data loading ETL = Extract, Transform, Load

67 Layout - Data loading Extract = Get the data Transform = Fix the data Load = Put in the your datastore

68 Layout - Data loading

69 Layout - Database Easy to get started, hard to maintain Use Docker images Geospatial support in Django changes a lot ElasticSearch Packaging of geospatial libraries is well ElasticSearch Only Postgres is feasible ElasticSearch Django ORM is too slow for real time geospatial ElasticSearch Serializing to GeoJSON in Django is slow ElasticSearch No native support for serializing to GeoJSON ElasticSearch No REST API querying solution ElasticSearch Indexing is a nightmare ElasticSearch Django ORM is not meant to be dynamic ElasticSearch

70 Layout - Database

71 Layout - Database Lucene based Distributed Multitenant Full text search HTTP native Schema-free JSON documents Supports basic geospatial searches

72 Layout - Frontend

73 Layout - Frontend Simple Fast Stable Good API documentation Easily to extend via plugins

74 Layout - Final Webserver (NGINX) CSV Elastic petl Shape GeoJSON Calcite jquery Leaflet

75 Datastructure

76 Datastructure

77 Datastructure

78 Datastructure

79 Datastructure

80 Datastructure

81 Datastructure

82 Datastructure

83 Datastructure {"shape":{"type":"circle","coordinates":[ , ],"radius":1000}}}}}

84 Datastructure {"took":10,"timed_out":false,"_shards":{"total":5,"successful":5,"failed":0},"hits ":{"total":270966,"max_score":1.0,"hits":[{"_index":"location-app","_type":"per mit","_id":"avsnr7iq_25kflr_wofl","_score":1.0,"_source":{"geojson": {"geometry": {"type": "Point", "coordinates": [" ", " "]}, "type": "Feature", "properties": {"Status": "Expedido", "Catastro": " ", "Publico o Privado": "Privado", "Dueño del Proyecto": "EDWIN GONZÁLEZ VEGA", "Caso": " PCO-67440", "Trámite": "Permiso Construccion Cert.", "Nombre del Proyecto": "BAP Reconstrucción Edificio Comercial", "Costo Estimado": "$ "}}, "coordinates": {"type": "point", "coordinates": [" ", " "]}}}]}}

85 Datastructure {"took":10,"timed_out":false,"_shards":{"total":5,"successful":5,"failed":0},"hits ":{"total":270966,"max_score":1.0,"hits":[{"_index":"location-app","_type":"per mit","_id":"avsnr7iq_25kflr_wofl","_score":1.0,"_source":{"geojson": {"geometry": {"type": "Point", "coordinates": [" ", " "]}, "type": "Feature", "properties": {"Status": "Expedido", "Catastro": " ", "Publico o Privado": "Privado", "Dueño del Proyecto": "EDWIN GONZÁLEZ VEGA", "Caso": " PCO-67440", "Trámite": "Permiso Construccion Cert.", "Nombre del Proyecto": "BAP Reconstrucción Edificio Comercial", "Costo Estimado": "$ "}}, "coordinates": {"type": "point", "coordinates": [" ", " "]}}}]}}

86 Datastructure {"took":10,"timed_out":false,"_shards":{"total":5,"successful":5,"failed":0},"hits ":{"total":270966,"max_score":1.0,"hits":[{"_index":"location-app","_type":"per mit","_id":"avsnr7iq_25kflr_wofl","_score":1.0,"_source":{"geojson": {"geometry": {"type": "Point", "coordinates": [" ", " "]}, "type": "Feature", "properties": {"Status": "Expedido", "Catastro": " ", "Publico o Privado": "Privado", "Dueño del Proyecto": "EDWIN GONZÁLEZ VEGA", "Caso": " PCO-67440", "Trámite": "Permiso Construccion Cert.", "Nombre del Proyecto": "BAP Reconstrucción Edificio Comercial", "Costo Estimado": "$ "}}, "coordinates": {"type": "point", "coordinates": [" ", " "]}}}]}}

87 Datastructure {"took":10,"timed_out":false,"_shards":{"total":5,"successful":5,"failed":0},"hits ":{"total":270966,"max_score":1.0,"hits":[{"_index":"location-app","_type":"per mit","_id":"avsnr7iq_25kflr_wofl","_score":1.0,"_source":{"geojson": {"geometry": {"type": "Point", "coordinates": [" ", " "]}, "type": "Feature", "properties": {"Status": "Expedido", "Catastro": " ", "Publico o Privado": "Privado", "Dueño del Proyecto": "EDWIN GONZÁLEZ VEGA", "Caso": " PCO-67440", "Trámite": "Permiso Construccion Cert.", "Nombre del Proyecto": "BAP Reconstrucción Edificio Comercial", "Costo Estimado": "$ "}}, "coordinates": {"type": "point", "coordinates": [" ", " "]}}}]}}

88 Datastructure {"took":10,"timed_out":false,"_shards":{"total":5,"successful":5,"failed":0},"hits ":{"total":270966,"max_score":1.0,"hits":[{"_index":"location-app","_type":"per mit","_id":"avsnr7iq_25kflr_wofl","_score":1.0,"_source":{"geojson": {"geometry": {"type": "Point", "coordinates": [" ", " "]}, "type": "Feature", "properties": {"Status": "Expedido", "Catastro": " ", "Publico o Privado": "Privado", "Dueño del Proyecto": "EDWIN GONZÁLEZ VEGA", "Caso": " PCO-67440", "Trámite": "Permiso Construccion Cert.", "Nombre del Proyecto": "BAP Reconstrucción Edificio Comercial", "Costo Estimado": "$ "}}, "coordinates": {"type": "point", "coordinates": [" ", " "]}}}]}}

89 Python loader class Dataset(object): # Class methods def register, all, get, execute # Instance methods def get_filename(self): def download_file(self): def check_cache(self): def extract(self): raise NotImplementedError def transform(self): raise NotImplementedError def process(self): # extract(), transform(), load() def iterator(self): def load(self): # ES interface

90 Python loader

91 Python loader

92 Python loader

93 Python loader

94 Python loader

95 Python loader

96 Python loader

97 Python loader

98 Python loader Parse date and time Inverted coordinates

99 Python loader Spatial data file? You need the mini three amigos.

100 Python loader

101 Python loader Fiona, PyProj, and Shapely

102 Python loader

103 Python loader

104 Python loader

105 Python loader

106 GIS theory is not that hard

107 Python loader

108 Python loader

109 Frontend

110 Frontend - Template

111 Frontend - Template

112 Frontend - Template

113 Frontend - Template

114 Frontend - ElasticSearch Query client Simple wrapper of jquery s.getjson()

115 Frontend - Dataset

116 Frontend - Dataset

117 Frontend - Dataset

118 Frontend - Dataset

119 Frontend - Dataset

120 Frontend - Dataset

121 Frontend - Dataset

122 Frontend - Dataset

123 Frontend - Dataset

124 Frontend - Dataset

125 Frontend - Dataset

126 Frontend - Dataset

127 Frontend - Dataset

128 Three Amigos finally in sync.

129

130 Next, delivery.

131 Putting the three amigos in a single mule.

132

133 A.k.a. Packaging

134 Packaging

135 Packaging

136 Packaging

137 Packaging A bit of security to avoid unfortunate consequences.

138 Packaging

139 Packaging

140

141 We are almost there, hold on a bit longer.

142 Deploying

143 Deploying

144 Deploying

145 Deploying

146 Deploying

147 Deploying Easy to deploy, backup, restore, maintain, explain, and update.

148 Deploying Happy dance time!

149 Deploying

150 Live performance a.k.a. Demo

151

152 Questions?

153 Thank you! Roberto Rosario RobertoRosario.com

Realtime visitor analysis with Couchbase and Elasticsearch

Realtime visitor analysis with Couchbase and Elasticsearch Realtime visitor analysis with Couchbase and Elasticsearch Jeroen Reijn @jreijn #nosql13 About me Jeroen Reijn Software engineer Hippo @jreijn http://blog.jeroenreijn.com About Hippo Visitor Analysis OneHippo

More information

EXPERIENCES MOVING FROM DJANGO TO FLASK

EXPERIENCES MOVING FROM DJANGO TO FLASK EXPERIENCES MOVING FROM DJANGO TO FLASK DAN O BRIEN, VP OF ENGINEERING CRAIG LANCASTER, CTO Jana Mobile Inc. www.jana.com WHO WE ARE Jana is a startup company in Boston connecting advertising and marketing

More information

GraphQL in Python and Django. Patrick

GraphQL in Python and Django. Patrick GraphQL in Python and Django Patrick Arminio @patrick91 Who am I Patrick Arminio Backend Engineer @ Verve Chairperson at Python Italia @patrick91 online GraphQL? WEB 1.0 WEB 2.0 REST APIs While REST

More information

Working with Feature Layers. Russell Brennan Gary MacDougall

Working with Feature Layers. Russell Brennan Gary MacDougall Working with Feature Layers Russell Brennan Gary MacDougall Working with Feature Layers Session will focus on feature access and editing Highlight new features added over the last few releases Agenda Introduction

More information

Open Source Software: What and Why?

Open Source Software: What and Why? ESRI and Open Source A Love Story Presented by Bates Rambow Open Source Software: What and Why? What Software that has its source code published for anyone to inspect the source code. Generally released

More information

CONTRACTOR IS ACTING UNDER A FRAMEWORK CONTRACT CONCLUDED WITH THE COMMISSION

CONTRACTOR IS ACTING UNDER A FRAMEWORK CONTRACT CONCLUDED WITH THE COMMISSION Hands-on Session NoSQL DB Donato Summa THE CONTRACTOR IS ACTING UNDER A FRAMEWORK CONTRACT CONCLUDED WITH THE COMMISSION 1 Summary Elasticsearch How to get Elasticsearch up and running ES data organization

More information

Visual System Implementation

Visual System Implementation Visual System Implementation Shamal AL-Dohuki and Ye Zhao Shamal AL-Dohuki Ph.D. candidate in the Department of Computer Science at Kent State University, Ohio, USA. Software Development Lead of TrajAnalytics

More information

PROCE55 Mobile: Web API App. Web API. https://www.rijksmuseum.nl/api/...

PROCE55 Mobile: Web API App. Web API. https://www.rijksmuseum.nl/api/... PROCE55 Mobile: Web API App PROCE55 Mobile with Test Web API App Web API App Example This example shows how to access a typical Web API using your mobile phone via Internet. The returned data is in JSON

More information

The age of orchestration

The age of orchestration The age of orchestration From Docker basics to cluster management NICOLA PAOLUCCI DEVELOPER INSTIGATOR ATLASSIAN @DURDN Three minute Docker intro? Time me and ring a bell if I am over it. Just kidding

More information

Web Development for Dinosaurs An Introduction to Modern Web Development

Web Development for Dinosaurs An Introduction to Modern Web Development Web Development for Dinosaurs An Introduction to Modern Web Development 1 / 53 Who Am I? John Cleaver Development Team Lead at Factivity, Inc. An Introduction to Modern Web Development - PUG Challenge

More information

Seminar report Google App Engine Submitted in partial fulfillment of the requirement for the award of degree Of CSE

Seminar report Google App Engine Submitted in partial fulfillment of the requirement for the award of degree Of CSE A Seminar report On Google App Engine Submitted in partial fulfillment of the requirement for the award of degree Of CSE SUBMITTED TO: SUBMITTED BY: www.studymafia.org www.studymafia.org Acknowledgement

More information

Wakanda Architecture. Wakanda is made up of three main components: Wakanda Server Wakanda Studio Wakanda Client Framework

Wakanda Architecture. Wakanda is made up of three main components: Wakanda Server Wakanda Studio Wakanda Client Framework Wakanda Architecture Wakanda is made up of three main components: Wakanda Server Wakanda Studio Wakanda Client Framework Note: For a more general overview of Wakanda, please see What is Wakanda?) Wakanda

More information

Signals Documentation

Signals Documentation Signals Documentation Release 0.1 Yeti November 22, 2015 Contents 1 Quickstart 1 2 What is Signals? 3 3 Contents 5 3.1 Get Started................................................ 5 3.2 Try the Demo Server...........................................

More information

FLORIDA DEPARTMENT OF TRANSPORTATION PRODUCTION BIG DATA PLATFORM

FLORIDA DEPARTMENT OF TRANSPORTATION PRODUCTION BIG DATA PLATFORM FLORIDA DEPARTMENT OF TRANSPORTATION PRODUCTION BIG DATA PLATFORM RECOMMENDATION AND JUSTIFACTION Executive Summary: VHB has been tasked by the Florida Department of Transportation District Five to design

More information

ElasticSearch in Production

ElasticSearch in Production ElasticSearch in Production lessons learned Anne Veling, ApacheCon EU, November 6, 2012 agenda! Introduction! ElasticSearch! Udini! Upcoming Tool! Lessons Learned introduction! Anne Veling, @anneveling!

More information

Building a high-performance, scalable ML & NLP platform with Python. Sheer El Showk CTO, Lore Ai

Building a high-performance, scalable ML & NLP platform with Python. Sheer El Showk CTO, Lore Ai Building a high-performance, scalable ML & NLP platform with Python Sheer El Showk CTO, Lore Ai www.lore.ai Lore is a small startup focused on developing and applying machine-learning techniques to solve

More information

Using ElasticSearch to Enable Stronger Query Support in Cassandra

Using ElasticSearch to Enable Stronger Query Support in Cassandra Using ElasticSearch to Enable Stronger Query Support in Cassandra www.impetus.com Introduction Relational Databases have been in use for decades, but with the advent of big data, there is a need to use

More information

Real Life Web Development. Joseph Paul Cohen

Real Life Web Development. Joseph Paul Cohen Real Life Web Development Joseph Paul Cohen joecohen@cs.umb.edu Index 201 - The code 404 - How to run it? 500 - Your code is broken? 200 - Someone broke into your server? 400 - How are people using your

More information

Ingest. David Pilato, Developer Evangelist Paris, 31 Janvier 2017

Ingest. David Pilato, Developer Evangelist Paris, 31 Janvier 2017 Ingest David Pilato, Developer Evangelist Paris, 31 Janvier 2017 Data Ingestion The process of collecting and importing data for immediate use in a datastore 2 ? Simple things should be simple. Shay Banon

More information

ArcGIS for Server Michele Lundeen

ArcGIS for Server Michele Lundeen ArcGIS for Server 10.1 Michele Lundeen Summary Vision Installation and Configuration Architecture Publishing Functional Enhancements Cloud Migration and Best Practices Powerful GIS capabilities Delivered

More information

Ingest. Aaron Mildenstein, Consulting Architect Tokyo Dec 14, 2017

Ingest. Aaron Mildenstein, Consulting Architect Tokyo Dec 14, 2017 Ingest Aaron Mildenstein, Consulting Architect Tokyo Dec 14, 2017 Data Ingestion The process of collecting and importing data for immediate use 2 ? Simple things should be simple. Shay Banon Elastic{ON}

More information

Social Science Text Analysis with Python (&..)

Social Science Text Analysis with Python (&..) Social Science Text Analysis with Python (&..) November 22, 2017 Who am I ˆ ˆ Started: Basic on Acorn Electron ˆ Trained: UCU, U. Edinburgh (Informatics) ˆ PhD: "Semantic Network Analsyis" (VU AI + FSW)

More information

Tomasz Szumlak WFiIS AGH 23/10/2017, Kraków

Tomasz Szumlak WFiIS AGH 23/10/2017, Kraków Python in the Enterprise Django Intro Tomasz Szumlak WFiIS AGH 23/10/2017, Kraków Going beyond Django is a Web framework very popular! It is not the only one, and cannot do wonders There are many others:

More information

9 Reasons To Use a Binary Repository for Front-End Development with Bower

9 Reasons To Use a Binary Repository for Front-End Development with Bower 9 Reasons To Use a Binary Repository for Front-End Development with Bower White Paper Introduction The availability of packages for front-end web development has somewhat lagged behind back-end systems.

More information

RadiantBlue Technologies, Inc. Page 1

RadiantBlue Technologies, Inc. Page 1 vpiazza RadiantBlue Technologies, Inc. Page 1 vpiazza Enabling Government Teams to Share and Access Data in the Cloud in 2016 Michael P. Gerlek mgerlek@radiantblue.com 4 May 2016 RadiantBlue Technologies,

More information

Discover GraphQL with Python, Graphene and Odoo. FOSDEM Stéphane Bidoul Version 1.0.4

Discover GraphQL with Python, Graphene and Odoo. FOSDEM Stéphane Bidoul Version 1.0.4 Discover GraphQL with Python, Graphene and Odoo FOSDEM 2019-02-03 Stéphane Bidoul Version 1.0.4 2 / 47 A short story Why this talk 3 / 47 /me in a nutshell @sbidoul CTO of (https://acsone.eu)

More information

ArcGIS Enterprise Portal for ArcGIS

ArcGIS Enterprise Portal for ArcGIS Portal for ArcGIS Elzbieta Covington Outline This presentation is an overview of the components of ArcGIS Enterprise, including Installation Architecture Deployment 1 ArcGIS Online Both systems are complementary

More information

Search and Time Series Databases

Search and Time Series Databases Università degli Studi di Roma Tor Vergata Dipartimento di Ingegneria Civile e Ingegneria Informatica Search and Time Series Databases Corso di Sistemi e Architetture per Big Data A.A. 2016/17 Valeria

More information

ArcGIS for Server Performance and Scalability Optimizing GIS Services

ArcGIS for Server Performance and Scalability Optimizing GIS Services Esri International User Conference San Diego, California Technical Workshops July 26, 2012 ArcGIS for Server Performance and Scalability Optimizing GIS Services Andrea Rosso (Esri), Craig Williams (Esri),

More information

Integrate MATLAB Analytics into Enterprise Applications

Integrate MATLAB Analytics into Enterprise Applications Integrate Analytics into Enterprise Applications Lyamine Hedjazi 2015 The MathWorks, Inc. 1 Data Analytics Workflow Preprocessing Data Business Systems Build Algorithms Smart Connected Systems Take Decisions

More information

EmberJS A Fitting Face for a D8 Backend. Taylor Solomon

EmberJS A Fitting Face for a D8 Backend. Taylor Solomon EmberJS A Fitting Face for a D8 Backend Taylor Solomon taylor.solomon @jtsolomon http://interactivestrategies.com 2 Years Ago 2 Years Ago URL Ember Data assumes a few things. - Your API format is JSON

More information

"Stupid Easy" Scaling Tweaks and Settings. AKA Scaling for the Lazy

Stupid Easy Scaling Tweaks and Settings. AKA Scaling for the Lazy "Stupid Easy" Scaling Tweaks and Settings AKA Scaling for the Lazy I'm Lazy (and proud of it) The Benefits of "Lazy" Efficiency is king Dislike repetition Avoid spending a lot of time on things A Lazy

More information

Turbocharge your MySQL analytics with ElasticSearch. Guillaume Lefranc Data & Infrastructure Architect, Productsup GmbH Percona Live Europe 2017

Turbocharge your MySQL analytics with ElasticSearch. Guillaume Lefranc Data & Infrastructure Architect, Productsup GmbH Percona Live Europe 2017 Turbocharge your MySQL analytics with ElasticSearch Guillaume Lefranc Data & Infrastructure Architect, Productsup GmbH Percona Live Europe 2017 About the Speaker Guillaume Lefranc Data Architect at Productsup

More information

ArcGIS for Server: Administration and Security. Amr Wahba

ArcGIS for Server: Administration and Security. Amr Wahba ArcGIS for Server: Administration and Security Amr Wahba awahba@esri.com Agenda ArcGIS Server architecture Distributing and scaling components Implementing security Monitoring server logs Automating server

More information

Configuring and Customizing the ArcGIS Viewer for Silverlight. Katy Dalton

Configuring and Customizing the ArcGIS Viewer for Silverlight. Katy Dalton Configuring and Customizing the ArcGIS Viewer for Silverlight Katy Dalton kdalton@esri.com Agenda Overview of the ArcGIS Viewer for Silverlight Extensibility endpoints - Tools, Behaviors, Layouts, Controls

More information

Chris Schalk Ryan Boyd

Chris Schalk Ryan Boyd Creating Server-Side and Mobile Mashups with OpenSocial's JavaTM Client Libraries Chris Schalk Ryan Boyd Google JavaOne 2009 Agenda OpenSocial Background/Overview OpenSocial REST support Introducing the

More information

Administering Your ArcGIS Enterprise Portal Bill Major Craig Cleveland

Administering Your ArcGIS Enterprise Portal Bill Major Craig Cleveland Administering Your ArcGIS Enterprise Portal Bill Major Craig Cleveland Agenda Welcome & Introduction to ArcGIS Enterprise Portal for ArcGIS Administration - Basic Configuration - Advanced Configuration

More information

Search Engines and Time Series Databases

Search Engines and Time Series Databases Università degli Studi di Roma Tor Vergata Dipartimento di Ingegneria Civile e Ingegneria Informatica Search Engines and Time Series Databases Corso di Sistemi e Architetture per Big Data A.A. 2017/18

More information

The Art of Container Monitoring. Derek Chen

The Art of Container Monitoring. Derek Chen The Art of Container Monitoring Derek Chen 2016.9.22 About me DevOps Engineer at Trend Micro Agile transformation Micro service and cloud service Docker integration Monitoring system development Automate

More information

GeneXus for Smart Devices course - Architecture of Smart Device Applications

GeneXus for Smart Devices course - Architecture of Smart Device Applications GeneXus for Smart Devices course - Architecture of Smart Device Applications The problem to solve is the construction of a backend for a real estate office, with a web section and another section for smart

More information

The Future of the Realtime Web BETTER APIS WITH GRAPHQL. Josh

The Future of the Realtime Web BETTER APIS WITH GRAPHQL. Josh The Future of the Realtime Web BETTER APIS WITH GRAPHQL Josh Price @joshprice STEPPING STONES TO FP Language (Elixir) Strongly-Typed APIs (GraphQL) GRAPHQL WAS HERE? http://whiteafrican.com/2008/05/12/crossing-the-mapping-chasm/

More information

Why I still develop synchronous web in the asyncio era. April 7th, 2017 Giovanni Barillari - pycon otto - Firenze, Italy

Why I still develop synchronous web in the asyncio era. April 7th, 2017 Giovanni Barillari - pycon otto - Firenze, Italy Why I still develop synchronous web in the asyncio era April 7th, 2017 Giovanni Barillari - pycon otto - Firenze, Italy Who am I? I m Gio! pronounced as Joe trust me, I m a physicist :) code principally

More information

Localization and value creation

Localization and value creation Localization and value creation Table of Contents 1. Localization brings interesting new dimensions............................................. 1 a. Example - Facebook Local Awareness Feature 1 b. Example

More information

Monitor your containers with the Elastic Stack. Monica Sarbu

Monitor your containers with the Elastic Stack. Monica Sarbu Monitor your containers with the Elastic Stack Monica Sarbu Monica Sarbu Team lead, Beats team monica@elastic.co 3 Monitor your containers with the Elastic Stack Elastic Stack 5 Beats are lightweight shippers

More information

LIGHTWEIGHT REAL-TIME DISPLAY TOOL - USING OPEN SOURCE SOFTWARE

LIGHTWEIGHT REAL-TIME DISPLAY TOOL - USING OPEN SOURCE SOFTWARE LIGHTWEIGHT REAL-TIME DISPLAY TOOL - USING OPEN SOURCE SOFTWARE Item Type text; Proceedings Authors Ferrill, Micha Publisher International Foundation for Telemetering Journal International Telemetering

More information

Graphite and Grafana

Graphite and Grafana Introduction, page 1 Configure Grafana Users using CLI, page 3 Connect to Grafana, page 4 Grafana Administrative User, page 5 Configure Grafana for First Use, page 11 Manual Dashboard Configuration using

More information

Microservices. SWE 432, Fall 2017 Design and Implementation of Software for the Web

Microservices. SWE 432, Fall 2017 Design and Implementation of Software for the Web Micros SWE 432, Fall 2017 Design and Implementation of Software for the Web Today How is a being a micro different than simply being ful? What are the advantages of a micro backend architecture over a

More information

Insights into your WLC with Wireless Streaming Telemetry

Insights into your WLC with Wireless Streaming Telemetry Insights into your WLC with Wireless Streaming Telemetry Jeremy Cohoe Technical Marketing Engineer Cisco Spark How Questions? Use Cisco Spark to communicate with the speaker after the session 1. Find this

More information

Review of Mobile Web Application Frameworks

Review of Mobile Web Application Frameworks Review of Mobile Web Application Frameworks Article Number: 909 Rating: Unrated Last Updated: Mon, May 9, 2011 at 10:57 AM If you are serious about getting your website or web application mobile-friendly,

More information

Distributed CI: Scaling Jenkins on Mesos and Marathon. Roger Ignazio Puppet Labs, Inc. MesosCon 2015 Seattle, WA

Distributed CI: Scaling Jenkins on Mesos and Marathon. Roger Ignazio Puppet Labs, Inc. MesosCon 2015 Seattle, WA Distributed CI: Scaling Jenkins on Mesos and Marathon Roger Ignazio Puppet Labs, Inc. MesosCon 2015 Seattle, WA About Me Roger Ignazio QE Automation Engineer Puppet Labs, Inc. @rogerignazio Mesos In Action

More information

THE VOEIS HIS GATEWAY. A REST Interface for HydroServer using ODM 1.1

THE VOEIS HIS GATEWAY. A REST Interface for HydroServer using ODM 1.1 THE VOEIS HIS GATEWAY A REST Interface for HydroServer using ODM 1.1 WHO AM I? Pol Llovet Research Software Engineer Research Computing Group Montana State University HIS IS ESSENTIAL Data publishing Data

More information

Deployment. Chris Wilson, AfNOG / 26

Deployment. Chris Wilson, AfNOG / 26 Deployment Chris Wilson, AfNOG 2016 1 / 26 About this presentation Based on previous talks by Joel Jaeggli, Evelyn Namara and NSRC, with thanks! You can access this presentation at: Online: http://afnog.github.io/sse/apache/

More information

DECOUPLING PATTERNS, SERVICES AND CREATING AN ENTERPRISE LEVEL EDITORIAL EXPERIENCE

DECOUPLING PATTERNS, SERVICES AND CREATING AN ENTERPRISE LEVEL EDITORIAL EXPERIENCE DECOUPLING PATTERNS, SERVICES AND CREATING AN ENTERPRISE LEVEL EDITORIAL EXPERIENCE Who we are and Why we are here? Saurabh Chugh Started Drupal journey in 2010 with Drupal 6, long journey with Drupal

More information

welcome to BOILERCAMP HOW TO WEB DEV

welcome to BOILERCAMP HOW TO WEB DEV welcome to BOILERCAMP HOW TO WEB DEV Introduction / Project Overview The Plan Personal Website/Blog Schedule Introduction / Project Overview HTML / CSS Client-side JavaScript Lunch Node.js / Express.js

More information

ArcGIS Enterprise: Architecture & Deployment. Anthony Myers

ArcGIS Enterprise: Architecture & Deployment. Anthony Myers ArcGIS Enterprise: Architecture & Deployment Anthony Myers 1 2 3 4 5 Web GIS Overview of ArcGIS Enterprise Federation & Hosted Server Deployment Patterns Implementation 1 Web GIS ArcGIS Enabling GIS for

More information

Configuring ArcGIS Enterprise in Disconnected Environments

Configuring ArcGIS Enterprise in Disconnected Environments Configuring ArcGIS Enterprise in Disconnected Environments BILL MAJOR Disconnected Environments Not everyone has internet access? How many of you run disconnected today, i.e. no internet access? Many customers

More information

Web GIS: Principles and Applications. Pinde Fu, Ph.D. Project Lead / Senior Developer Professional Services Division

Web GIS: Principles and Applications. Pinde Fu, Ph.D. Project Lead / Senior Developer Professional Services Division Web GIS: Principles and Applications Pinde Fu, Ph.D. pfu@esri.com Project Lead / Senior Developer Professional Services Division 2 Web GIS: Principles and Applications Pinde Fu & Jiulin Sun Web GIS course

More information

Json Parse Error - No Json Object Could Be Decoded Django Rest Framework

Json Parse Error - No Json Object Could Be Decoded Django Rest Framework Json Parse Error - No Json Object Could Be Decoded Django Rest Framework It supports REST framework's flexible request parsing, rather than just supporting form data. ParseError: JSON parse error - No

More information

Scalable Microservice Based Architecture For Enabling DMTF Profiles

Scalable Microservice Based Architecture For Enabling DMTF Profiles Scalable Microservice Based Architecture For Enabling DMTF Profiles Divyanand Malavalli Client Manageability Group AMD India Pvt 102-103 EPIP, Whitefield, Bangalore, KA 560066 India Divyanand.Malavalli@amd.com

More information

Creating Web Mapping Applications. Nikki Golding

Creating Web Mapping Applications. Nikki Golding Creating Web Mapping Applications Nikki Golding Agenda Web Mapping and Map Services Fundamentals ArcGIS Web Mapping Applications - ArcGIS.com Viewer - ArcGIS Explorer Online - ArcGIS Viewer for Flex -

More information

AirBespoke Inventory Tracking System

AirBespoke Inventory Tracking System Colorado School of Mines Field Session AirBespoke Inventory Tracking System Client: Kylen McClintock Written by: Peter Palumbo, Kyle Thistlewood, Nhan Tran, Minh Vu June 22, 2016 Contents 1 Introduction

More information

Introduction to MySQL InnoDB Cluster

Introduction to MySQL InnoDB Cluster 1 / 148 2 / 148 3 / 148 Introduction to MySQL InnoDB Cluster MySQL High Availability made easy Percona Live Europe - Dublin 2017 Frédéric Descamps - MySQL Community Manager - Oracle 4 / 148 Safe Harbor

More information

Distributed Architectures & Microservices. CS 475, Spring 2018 Concurrent & Distributed Systems

Distributed Architectures & Microservices. CS 475, Spring 2018 Concurrent & Distributed Systems Distributed Architectures & Microservices CS 475, Spring 2018 Concurrent & Distributed Systems GFS Architecture GFS Summary Limitations: Master is a huge bottleneck Recovery of master is slow Lots of success

More information

Citizen developer tools are not just for citizen developers!

Citizen developer tools are not just for citizen developers! Citizen developer tools are not just for citizen developers! a.k.a Using Azure Functions and Cognitive Services Text API to enrich a Flow that fills Metadata for new items in a Modern SharePoint Team Site

More information

trevor.bramwell.net Documentation

trevor.bramwell.net Documentation trevor.bramwell.net Documentation Release Trevor Bramwell April 20, 2015 Contents 1 About Me 1 2 Posts 3 2.1 Field - extract fields from a file..................................... 3 2.2 Distribute Native

More information

Using Python and XMPP to build a decentralized social network

Using Python and XMPP to build a decentralized social network Using Python and XMPP to build a decentralized social network Jérôme Poisson (Goffi) FOSDEM Saturday 30th January 2016 Some words about the project a lot of features other interfaces about the technologies

More information

Monitor your infrastructure with the Elastic Beats. Monica Sarbu

Monitor your infrastructure with the Elastic Beats. Monica Sarbu Monitor your infrastructure with the Elastic Beats Monica Sarbu Monica Sarbu Team lead, Beats team Email: monica@elastic.co Twitter: 2 Monitor your servers Apache logs 3 Monitor your servers Apache logs

More information

An Overview of FMW MapViewer

An Overview of FMW MapViewer An Overview of FMW MapViewer Agenda What is MapViewer Select Features Getting Started Additional Resources 2 Copyright 2013, Oracle and/or its affiliates. All rights reserved. Oracle

More information

Biostar Central Documentation. Release latest

Biostar Central Documentation. Release latest Biostar Central Documentation Release latest Oct 05, 2017 Contents 1 Features 3 2 Support 5 3 Quick Start 7 3.1 Install................................................... 7 3.2 The biostar.sh manager..........................................

More information

Introduction to Sencha Ext JS

Introduction to Sencha Ext JS Introduction to Sencha Ext JS Olga Petrova olga@sencha.com Sales Engineer EMEA Agenda Use Case How It Works Advantages Demo Use case Ext JS a Javascript framework for building enterprise data-intensive

More information

Extend GIS. The Reach. Of Your GIS. Chris Cappelli Nathan Bennett

Extend GIS. The Reach. Of Your GIS. Chris Cappelli Nathan Bennett Extend The Reach GIS Of Your GIS Chris Cappelli Nathan Bennett Where do your co-workers, managers, customers, and citizens go when they want to find or make a map? GIS is a practical system for problem

More information

ADVANCED DATABASES CIS 6930 Dr. Markus Schneider. Group 5 Ajantha Ramineni, Sahil Tiwari, Rishabh Jain, Shivang Gupta

ADVANCED DATABASES CIS 6930 Dr. Markus Schneider. Group 5 Ajantha Ramineni, Sahil Tiwari, Rishabh Jain, Shivang Gupta ADVANCED DATABASES CIS 6930 Dr. Markus Schneider Group 5 Ajantha Ramineni, Sahil Tiwari, Rishabh Jain, Shivang Gupta WHAT IS ELASTIC SEARCH? Elastic Search Elasticsearch is a search engine based on Lucene.

More information

Simple AngularJS thanks to Best Practices

Simple AngularJS thanks to Best Practices Simple AngularJS thanks to Best Practices Learn AngularJS the easy way Level 100-300 What s this session about? 1. AngularJS can be easy when you understand basic concepts and best practices 2. But it

More information

An introduction to Docker

An introduction to Docker An introduction to Docker Ing. Vincenzo Maffione Operating Systems Security Container technologies on Linux Several light virtualization technologies are available for Linux They build on cgroups, namespaces

More information

Homework 8: Ajax, JSON and Responsive Design Travel and Entertainment Search (Bootstrap/Angular/AJAX/JSON/jQuery /Cloud Exercise)

Homework 8: Ajax, JSON and Responsive Design Travel and Entertainment Search (Bootstrap/Angular/AJAX/JSON/jQuery /Cloud Exercise) Homework 8: Ajax, JSON and Responsive Design Travel and Entertainment Search (Bootstrap/Angular/AJAX/JSON/jQuery /Cloud Exercise) 1. Objectives Get familiar with the AJAX and JSON technologies Use a combination

More information

Using the SDACK Architecture to Build a Big Data Product. Yu-hsin Yeh (Evans Ye) Apache Big Data NA 2016 Vancouver

Using the SDACK Architecture to Build a Big Data Product. Yu-hsin Yeh (Evans Ye) Apache Big Data NA 2016 Vancouver Using the SDACK Architecture to Build a Big Data Product Yu-hsin Yeh (Evans Ye) Apache Big Data NA 2016 Vancouver Outline A Threat Analytic Big Data product The SDACK Architecture Akka Streams and data

More information

CloudExpo November 2017 Tomer Levi

CloudExpo November 2017 Tomer Levi CloudExpo November 2017 Tomer Levi About me Full Stack Engineer @ Intel s Advanced Analytics group. Artificial Intelligence unit at Intel. Responsible for (1) Radical improvement of critical processes

More information

Scaling Marketplaces at Thumbtack QCon SF 2017

Scaling Marketplaces at Thumbtack QCon SF 2017 Scaling Marketplaces at Thumbtack QCon SF 2017 Nate Kupp Technical Infrastructure Data Eng, Experimentation, Platform Infrastructure, Security, Dev Tools Infrastructure from early beginnings You see that?

More information

Lessons Learned: Building Scalable & Elastic Akka Clusters on Google Managed Kubernetes. - Timo Mechler & Charles Adetiloye

Lessons Learned: Building Scalable & Elastic Akka Clusters on Google Managed Kubernetes. - Timo Mechler & Charles Adetiloye Lessons Learned: Building Scalable & Elastic Akka Clusters on Google Managed Kubernetes - Timo Mechler & Charles Adetiloye About MavenCode MavenCode is a Data Analytics software company offering training,

More information

David Pilato Developer Advanced search for your legacy application

David Pilato Developer Advanced search for your legacy application David Pilato Developer Evangelist @dadoonet Advanced search for your legacy application # 2 our legacy platform WEB APP DATABASE SQL JDBC HTTP / REST 3 4 our legacy domain / database demo time our legacy

More information

Etanova Enterprise Solutions

Etanova Enterprise Solutions Etanova Enterprise Solutions Server Side Development» 2018-06-28 http://www.etanova.com/technologies/server-side-development Contents.NET Framework... 6 C# and Visual Basic Programming... 6 ASP.NET 5.0...

More information

GraphQL. Concepts & Challenges. - I m Robert Mosolgo - Work from home Ruby developer - From Charlottesville VA - For GitHub

GraphQL. Concepts & Challenges. - I m Robert Mosolgo - Work from home Ruby developer - From Charlottesville VA - For GitHub GraphQL Concepts & Challenges - I m Robert Mosolgo - Work from home Ruby developer - From Charlottesville VA - For GitHub Rails API WHY - You have your Rails app, why bother with an API? - You have clients.

More information

run your own search engine. today: Cablecar

run your own search engine. today: Cablecar run your own search engine. today: Cablecar Robert Kowalski @robinson_k http://github.com/robertkowalski Search nobody uses that, right? Services on the Market Google Bing Yahoo ask Wolfram Alpha Baidu

More information

[ ]..,ru. GeoServer Beginner's Guide. open source^ software server. Share and edit geospatial data with this open source.

[ ]..,ru. GeoServer Beginner's Guide. open source^ software server. Share and edit geospatial data with this open source. GeoServer Beginner's Guide Share and edit geospatial data with this open source software server Stefano lacovella Brian Youngblood [ ]..,ru open source^ PUBLISHING community experience distilled BIRMINGHAMMUMBAI

More information

Deploying Spatial Applications in Oracle Public Cloud

Deploying Spatial Applications in Oracle Public Cloud Deploying Spatial Applications in Oracle Public Cloud David Lapp, Product Manager Oracle Spatial and Graph Oracle Spatial Summit at BIWA 2017 Safe Harbor Statement The following is intended to outline

More information

Website Design and Development CSCI 311

Website Design and Development CSCI 311 Website Design and Development CSCI 311 Learning Objectives Understand good practices in designing and developing web sites Learn some of the challenges web design Activity In pairs: describe how you d

More information

ArcGIS Enterprise: Portal Administration BILL MAJOR CRAIG CLEVELAND

ArcGIS Enterprise: Portal Administration BILL MAJOR CRAIG CLEVELAND ArcGIS Enterprise: Portal Administration BILL MAJOR CRAIG CLEVELAND Agenda Welcome & Introduction to ArcGIS Enterprise Portal for ArcGIS - Basic Configuration - Advanced Configuration - Deploying Apps

More information

Backend Development. SWE 432, Fall Web Application Development

Backend Development. SWE 432, Fall Web Application Development Backend Development SWE 432, Fall 2018 Web Application Development Review: Async Programming Example 1 second each Go get a candy bar Go get a candy bar Go get a candy bar Go get a candy bar Go get a candy

More information

Microservices Implementations not only with Java. Eberhard Wolff Fellow

Microservices Implementations not only with Java. Eberhard Wolff Fellow Microservices Implementations not only with Java Eberhard Wolff http://ewolff.com @ewolff Fellow http://continuous-delivery-buch.de/ http://continuous-delivery-book.com/ http://microservices-buch.de/ http://microservices-book.com/

More information

ElephantSQL. PostgreSQL as a Service. Product overview. Last Updated

ElephantSQL. PostgreSQL as a Service. Product overview. Last Updated ElephantSQL PostgreSQL as a Service Product overview Table of Contents...1 ElephantSQL...3 PostgreSQL as a Service...3 What is PostgreSQL?...3 Product overview...4 Product Details...4 SQL Browser...4 Other

More information

CNI, CRI, and OCI - Oh My!

CNI, CRI, and OCI - Oh My! CNI, CRI, and OCI - Oh My! Who are we? Elsie Phillips Paul Burt This talk is standards + containers What s a standard? Something those ISO folks make Whatever the country, whatever the language, we are

More information

Integrate MATLAB Analytics into Enterprise Applications

Integrate MATLAB Analytics into Enterprise Applications Integrate Analytics into Enterprise Applications Aurélie Urbain MathWorks Consulting Services 2015 The MathWorks, Inc. 1 Data Analytics Workflow Data Acquisition Data Analytics Analytics Integration Business

More information

DIGIT.B4 Big Data PoC

DIGIT.B4 Big Data PoC DIGIT.B4 Big Data PoC GROW Transpositions D04.01.Information System Table of contents 1 Introduction... 4 1.1 Context of the project... 4 1.2 Objective... 4 2 Technologies used... 5 2.1 Python... 5 2.2

More information

/ Cloud Computing. Recitation 5 February 14th, 2017

/ Cloud Computing. Recitation 5 February 14th, 2017 15-319 / 15-619 Cloud Computing Recitation 5 February 14th, 2017 1 Overview Administrative issues Office Hours, Piazza guidelines Last week s reflection Project 2.1, OLI Unit 2 modules 5 and 6 This week

More information

State of Enterprise Mobile App Development

State of Enterprise Mobile App Development State of Enterprise Mobile App Development - 2017 The Mobile Application Market 71% of enterprises regard mobility as a top priority, and Nasscom estimates the global enterprise mobility market to be worth

More information

PROCESSES AND THREADS THREADING MODELS. CS124 Operating Systems Winter , Lecture 8

PROCESSES AND THREADS THREADING MODELS. CS124 Operating Systems Winter , Lecture 8 PROCESSES AND THREADS THREADING MODELS CS124 Operating Systems Winter 2016-2017, Lecture 8 2 Processes and Threads As previously described, processes have one sequential thread of execution Increasingly,

More information

FIVE REASONS YOU SHOULD RUN CONTAINERS ON BARE METAL, NOT VMS

FIVE REASONS YOU SHOULD RUN CONTAINERS ON BARE METAL, NOT VMS WHITE PAPER FIVE REASONS YOU SHOULD RUN CONTAINERS ON BARE METAL, NOT VMS Over the past 15 years, server virtualization has become the preferred method of application deployment in the enterprise datacenter.

More information

The power of PostgreSQL exposed with automatically generated API endpoints. Sylvain Verly Coderbunker 2016Postgres 中国用户大会 Postgres Conference China 20

The power of PostgreSQL exposed with automatically generated API endpoints. Sylvain Verly Coderbunker 2016Postgres 中国用户大会 Postgres Conference China 20 The power of PostgreSQL exposed with automatically generated API endpoints. Sylvain Verly Coderbunker Development actors Frontend developer Backend developer Database administrator System administrator

More information

CSCI 1320 Creating Modern Web Applications. Content Management Systems

CSCI 1320 Creating Modern Web Applications. Content Management Systems CSCI 1320 Creating Modern Web Applications Content Management Systems Brown CS Website 2 Static Brown CS Website Up since 1994 5.9 M files (inodes) 1.6 TB of filesystem space 3 Static HTML Generators Convert

More information

Beating the Final Boss: Launch your game!

Beating the Final Boss: Launch your game! Beating the Final Boss: Launch your game! Ozkan Can Solutions Architect, AWS @_ozkancan ERROR The servers are busy at this time. Please try again later. (Error Code: 42 OOPS) Retry READY FOR LAUNCH?! WORST-CASE

More information