iot realized - the connected car

Post on 16-Apr-2017

1.188 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

SPRINGONE2GX WASHINGTON, DC

Unless otherwise indicated, these sl ides are © 2013-2015 Pivotal Software, Inc. and l icensed under a Creat ive Commons Attr ibut ion-NonCommercial l icense: ht tp: / /creat ivecommons.org/ l icenses/by-nc/3.0/

IoT Realized The Connected Car

By Phil Berman, Michael Minella, and Derrick Shields @pivotalphil, @michaelminella

Michael Minella Twitter: @michaelminella Podcast: http://javaOffHeap.com or @OffHeap Website: http://spring.io Derrick Shields Website: http://pivotal.io

Phil Berman Twitter: @pberman Website: http://pivotal.io

https://github.com/pivotal/IoT-ConnectedCar

B A C K T O T H E BEGINNING

REALLY COOL IoT PROJECT

COVERED BY AN

NDA

CONNECTED

CAR

P R E D I C T T H E DESTINATION

PREDICT THE RANGE

PIECES ARE THE

SAME

I o T I S A B O U T OPERATIONAL EFFECIENCIES

GE Video?

1% I S A

BIG DEAL

W O R L D W I D E 1 BILLION CARS

2 0 3 5 2 BILLION CARS

BARRELS PER DAY 120 MILLION

AS MUCH CARBON AS

CONNECTED

CAR

Storage

Ingest Process Analyze Edge

Applications React

Edge

Applications React

Process Analyze

Storage

Ingest

HOW DOES THIS

WORK?

START IN THE

CAR

ON BOARD DIAGNOSTICS

OBD II

01 0D !01 0D !18 DA F1 11 03 41 0D 30 !> !

PHONE PROVIDES CONNECTIVITY

127.0.0.1:9000

{ ! "vehicle_speed":103, ! "obd_standards":2, ! "intake_manifold_pressure":"", ! "accelerator_throttle_pos_e":14, ! "engine_load":89, ! "maf_airflow":33, ! "latitude":"32.897554", ! "vin":"1HGCM82633A004352", ! "bearing":"343.922580", ! "catalyst_temp":779, ! "relative_throttle_pos":12, ! "fuel_level_input":89, ! "fuel_system_status":[2,0], ! "accelerator_throttle_pos_d":29, ! "acceleration":"0.953", ! "throttle_position":21, ! "barometric_pressure":97, ! "control_module_voltage":13, ! "longitude":"-96.810236", ! "distance_with_mil_on":0, ! "coolant_temp":94, ! "intake_air_temp":34, ! "rpm":1593, ! "short_term_fuel":-2, ! "time_since_engine_start":4054, ! "absolute_throttle_pos_b":38, ! "long_term_fuel":3 !} !

TCP SOCKET OVER

BLUETOOTH HTTP POST

OVER CELLULAR

O N T H E SERVER

EASY 1

MATURE 2

NOT DEPENDENT 3

SPRING CLOUD STREAM

EVOLUTION OF DATA APPLICATIONS

MONOLITHS

EXISTING INTEGRATION AND BATCH

DATA MICROSERVICES

CLOUD NATIVE

DEVELOPED AND TESTED IN ISOLATION

APPLY MICROSERVICES PATTERNS

OPERATIONALLY EASY TO

GOVERN

DATA INTEGRATION AS A SERVICE

COMPOSTION OF MICROSERVICES

<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://www.springframework.org/schema/batch http://www.springframework.org/schema/batch/spring-batch.xsd

http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

<job id="ioSampleJob" xmlns="http://www.springframework.org/schema/batch">

<step id="step1"> <tasklet> <chunk reader="itemReader" processor="itemProcessor" writer="itemWriter"

commit-interval="2" />

</tasklet> </step> </job>

<bean id="itemProcessor" class="org.springframework.batch.sample.domain.trade.internal.CustomerCreditIncreaseProcessor" />

</beans>

ZERO CODING

OPERATIONAL AND ORCHESTRATION COVERAGE

WARS AND APP SERVERS

DECOMPOSE INTO BOOT MICROSERVICES

SPRING CLOUD STREAMS

SPRING XD EXTREME DATA

Processor Sink

Bus

Source

transformer

Redis

http

filter

hdfs type-transformer

python gemfire

transformer http filter hdfs

type-transformer

python

Gemfire

REST

Hadoop

Gemfire

transformer http filter hdfs

type-transformer

python

Gemfire

REST

Hadoop

Gemfire

/** ! * Perfo

rms the domain t

ransformation in

to an acme motor

s specific domai

n

model. ! * ! * @auth

or gfoster!

* ! */ !public c

lass AcmeMotorEn

richingTransform

er implements Tr

ansformer{ !

! @Bean !public M

essage<?> transf

orm(final Messag

e<?> message) { !

final Object pay

load = message.g

etPayload(); !

Map<String, Obje

ct> = new HashMa

p<>(); !

try { !

if (

payload != null)

{ !

map = mapper.r

eadValue(payload

.toString(),

Map.class);

} ! map.put(“times

tamp”,

System.currentTi

meMillis());

} !

map.put(“guid”

, UUID.randomUUI

D()); !

} !

} catch (fina

l Exception e) {

!

REALTIME DATA SCIENCE

1 PREDICT JOURNEY

2 PREDICT RANGE

HOW DOES I T

WORK?

STORE SENSOR

DATA

OFFLINE BATCH TRAINING

J O U R N E Y CLUSTERS

INITIAL PREDICTION

DRIVING HOME TO WORK

DRIVING WORK TO HOME

… !"Predictions": { ! "ClusterPredictions": { ! "0": { ! "EndLocation": [ ! 32.98525175453122, ! -96.70940837440399 ! ], ! "MPG_Journey": 25.60900810315203, ! "Probability": 0.63736 ! }, !… !

REALTIME EVALUATION

0.05

0.10

0.15

0.20

0.25

0 1 2 3 4 5 6 7 8 9 10Minute

Med

ian

Log−

Loss

PERFORMANCE OF CLASSIFICATION

RANGE PREDICTION

R E A LT I M E DASHBOARD

GEMFIRE 1

REST 2

YOEMAN 3

ANGULARJS 4

SOLUTION AT SCALE

100,000’s OF CLIENTS

MILLIONS OF MESSAGES

PER MINUTE OVER

100 GB

IoT

ISSUES

COMPATIBILITY

CONNECTIVITY

SECURITY

A D D I T I O N A L USE CASES

Q U A L I T Y FEEDBACK

F L E E T MANAGEMENT

Spring XD

Data Science Data Warehouse

Gemfire

Greenplum

A C C I D E N T ASSISTANCE

IoT PRESENTS UNIQUE CHALLENGES

IF YOU CAN BRIDGE THE GAPS

SPRING CLOUD MAKES THE REST EASY

Unless otherwise indicated, these sl ides are © 2013-2015 Pivotal Software, Inc. and l icensed under a Creat ive Commons Attr ibut ion-NonCommercial l icense: ht tp: / /creat ivecommons.org/ l icenses/by-nc/3.0/ 98

Visit spring.io for more information about Spring Cloud

Attend the keynote tonight to learn more about the connected fleet app

Learn More. Stay Connected.

@springcentral Spring.io/video

top related