SlideShare a Scribd company logo
1 of 24
Download to read offline
© Hitachi America, Ltd. 2017. All rights reserved.
Updates on webSpoon
and other innovations from Hitachi R&D
11/11/2017
Researcher at Hitachi America, Ltd.
Hiromu Hota, PhD
@HiromuHota, hiromu.hota@hal.hitachi.com
© Hitachi America, Ltd. 2017. All rights reserved.
Contents
1
• webSpoon
– Demo
– Updates since PCM16 and missings
– Use cases
© Hitachi America, Ltd. 2017. All rights reserved.
webSpoon: a browser-based Spoon
2
• webSpoon works on any latest browser, accessible over a network.
• webSpoon has advantages:
• webSpoon is NOT supported by Pentaho or by Hitachi.
Smartphone/tablet
CloudData security Ease of mgmt.Remote use
Desktop/laptop
© Hitachi America, Ltd. 2017. All rights reserved.
Demo
3
1. webSpoon (demo instance in AWS)
2. Multi-tenancy (demo instance in local Docker)
© Hitachi America, Ltd. 2017. All rights reserved.
Updates since PCM16
4
• webSpoon became matured in its stability, functionality, and usability.
• Stability
– Fixed many things: menubar, shortcuts, scrollbar/zooming, copy/paste
– Automated UI Testing
– CI/CD (nightly build for every commit)
• Functionality
– Lots of steps/job entries and other type of plugins confirmed to be compatible
– Carte integration
– Multi-user/-tenant
• Usability
– FileDialog to open from the server’s file system / Import from the client’s
– Dockerized
– No longer 9051 port mapping
© Hitachi America, Ltd. 2017. All rights reserved.
Cloud / Scalability
5
• webSpoon is easily deployable to the cloud
– E.g., AWS Elastic Beanstalk
• webSpoon is scalable
webSpoon
Load Balancer
Clients
webSpoon instances
© Hitachi America, Ltd. 2017. All rights reserved.
• webSpoon serves multiple users
– User authentication
– User configuration
– Incomplete privacy among users
• Alice can see Bob’s configuration files
• Alice can see Bob’s Kettle files
(only when they are locally stored)
• webSpoon serves multiple tenants
– I’d assign dedicated instances for each tenant for the privacy concern,
though some argues that this arch is multi-instance, not multi-tenancy [1].
Multi-user / Multi-tenancy
6
webSpoon instances
Alice
Bob
Carol
Dave
Tenant A Tenant B
[1] Krebs, Rouven (2012). "Architectural Concerns in Multi-tenant SaaS Applications".
Proc. 2nd Int. Conf. on Cloud Computing and Services Science (CLOSER 2012).
Alice
Bob
: User authentication
© Hitachi America, Ltd. 2017. All rights reserved.
Compatible with Python/R steps
7
• Most of steps/job entries have been confirmed to be compatible with
webSpoon, including
– Python (CPython Script Executor)
– R (Execute R Script)
– R (R script executor, EE only)
• The rest of steps/job entries is just left un-tested.
© Hitachi America, Ltd. 2017. All rights reserved.
What’s still missing?
8
• Security
– End-users inherit the privileges of the user who runs the Tomcat.
• If root runs the Tomcat, all end-users have the root permission.
– Incomplete privacy among end-users:
• Alice can see Bob’s configuration files.
• Alice can see Bob’s Kettle files (when they are locally stored).
• Integration with Pentaho Server
– Not realized yet due to un-resolved conflicts.
• Some EE features
– DET (Data Exploration Tool)
© Hitachi America, Ltd. 2017. All rights reserved.
Use cases
9
© Hitachi America, Ltd. 2017. All rights reserved.
Data Security: Keep data where they should be
10
Spoon webSpoon
• Data engineers should physically
be near data.
• They might be tempted to
download data to work in their
office.
• They can work from office, home,
or wherever comfortable.
Hospital/Government/Bank
Data
When data cannot leave facility/country due to some regulations,
© Hitachi America, Ltd. 2017. All rights reserved.
Data integration of sensor data in remote sites
12
Thai factory
Tokyo office
Skilled engineer
1. Kettle files need updating frequently for many reasons:
• New machine, new sensor, new analytics, etc.
2. But, remote desktop (RDP) is prohibited and travel costs.
Data copy/move
User interaction
Travel costs
RDP
Remote desktop prohibited
Sensor
Database
Spoon
*Kettle file: Transformation or Job written in PDI
(Cropped) Asia - Single Color by FreeVectorMaps.com
© Hitachi America, Ltd. 2017. All rights reserved.
Data integration of sensor data in remote sites
13
Tokyo office
*HTTPS: HTTP Secure
Skilled engineer
Data copy/move
User interaction
No travel
General protocol
HTTPS
Thai factory
Sensor
Database
webSpoon
(Cropped) Asia - Single Color by FreeVectorMaps.com
1. Kettle files need updating frequently for many reasons:
• New machine, new sensor, new analytics, etc.
2. But, remote desktop (RDP) is prohibited and travel costs.
© Hitachi America, Ltd. 2017. All rights reserved.
Managed Pentaho development environment
15
• Different version, plugin, etc.
slows down collaboration.
• Could possibly be
– Outdated.
– Malicious plugins & drivers.
Spoon webSpoon
Bob Alice
Ver. X.X Ver. Y.Y
Your Kettle file does not
run in my environment!
• All Kettle files run in coworker’s
screen.
• No installation/upgrade/update
required (by end-users).
• Only desired plugins & drivers.
Your Kettle file runs
in my environment!
*Kettle file: Transformation or Job written in PDI
Plugin A
Driver B
Plugin A
Driver C
Bob Alice
© Hitachi America, Ltd. 2017. All rights reserved.
webSpoon streamlines the ML Workflow even more
16
• Data engineers/scientists share
– Tools (Pentaho/Python/R)
– Data stores
– Git repository
– Computing resources (e.g., Hadoop, Spark)
• As a result, collaboration between them becomes even more seamless
– Less dependent on IT staffs to setup tools, data stores, etc.
– No data copy/movement, no data dispersion
Data scientistsData engineers
webSpoon
Data stores
© Hitachi America, Ltd. 2017. All rights reserved.
Resources
17
• Source and binary
– https://github.com/HiromuHota/pentaho-kettle
• Docker image
– https://hub.docker.com/r/hiromuhota/webspoon
© Hitachi America, Ltd. 2017. All rights reserved.
One more thing...
18
© Hitachi America, Ltd. 2017. All rights reserved.
SpoonGit (Git client integrated with Spoon)
19
© Hitachi America, Ltd. 2017. All rights reserved.
Resources
20
• Source and binary
– https://github.com/HiromuHota/pdi-git-plugin
• Binary
– Pentaho Marketplace (in preparation)
© Hitachi America, Ltd. 2016. All rights reserved.
Trademarks and copyrights
21
• Pentaho is a trademark registered by Hitachi Vantara.
• Apache Hadoop and its logo are either registered trademarks or trademarks of
the Apache Software Foundation (ASF).
• Apache Spark, Spark and the Spark logo are trademarks of ASF.
• The Git Logo by Jason Long is licensed under the Creative Commons Attribution
3.0 Unported License.
• The R logo is © 2016 The R Foundation.
• RStudio and the RStudio logo are all registered trademarks of RStudio.
• The Python logo is a trademark of the Python Software Foundation.
• Jupyter and the Jupyter logs are trademarks of the NumFOCUS foundation.
• Docker and the Docker logo are trademarks or registered trademarks of Docker,
Inc. in the United States and/or other countries.
• The Jenkins logo is licensed under the Creative Commons Attribution-ShareAlike
3.0 Unported License.
• GitHub is a trademark registered in the United States by GitHub, Inc.
• Other company and product names mentioned in this document may be the
trademarks of their respective owners.
© Hitachi America, Ltd. 2017. All rights reserved.
Appendix
23
© Hitachi America, Ltd. 2017. All rights reserved.
webSpoon = Spoon - SWT + RWT
24
• Spoon relies on SWT for UI widgets (e.g., button, dialog, canvas).
• RWT is a web alternative to SWT and “largely” implements SWT APIs,
meaning Spoon can become a web app with most codes intact.
• There are
– Unimplemented SWT APIs (e.g., a part of GC, some Mouse events)
– RWT-specific additional APIs (e.g., Multi-user, File Up/Download).
Image adapted from https://angelozerr.wordpress.com/2011/05/24/rap_step5/
Operating System Servlet Container Web Browser
SWT RWT (Server) RWT (Client)
JFace JFace
HTTP
Spoon webSpoon
© Hitachi America, Ltd. 2017. All rights reserved.
1. Local files
– Spoon: local files of the laptop/desktop
– webSpoon: local files of the (remote) server
2. Clipboard
– Spoon and webSpoon do not share the clipboard.
– In other words, no copy & paste between Spoon and webSpoon.
How is webSpoon different from Spoon?
25
File A is local File B is local
File A is local
File B is remote
File A File B
webSpoon
Spoon

More Related Content

What's hot

2019 Chef InSpec Jumpstart Part 1 of 2
2019 Chef InSpec Jumpstart Part 1 of 22019 Chef InSpec Jumpstart Part 1 of 2
2019 Chef InSpec Jumpstart Part 1 of 2Larry Eichenbaum
 
Sync async-blocking-nonblocking-io
Sync async-blocking-nonblocking-ioSync async-blocking-nonblocking-io
Sync async-blocking-nonblocking-ioCheoloh Bae
 
Utilizing SharePoint for Project Management
Utilizing SharePoint for Project ManagementUtilizing SharePoint for Project Management
Utilizing SharePoint for Project ManagementGregory Zelfond
 
What's new with OneDrive for Business - SharePoint Fest DC 2019
What's new with OneDrive for Business - SharePoint Fest DC 2019What's new with OneDrive for Business - SharePoint Fest DC 2019
What's new with OneDrive for Business - SharePoint Fest DC 2019Drew Madelung
 
Introduction to Git / Github
Introduction to Git / GithubIntroduction to Git / Github
Introduction to Git / GithubPaige Bailey
 
OneDrive to Rule Them All
OneDrive to Rule Them AllOneDrive to Rule Them All
OneDrive to Rule Them AllAptera Inc
 
What is OneDrive for Business and What Does it Do?
What is OneDrive for Business and What Does it Do?What is OneDrive for Business and What Does it Do?
What is OneDrive for Business and What Does it Do?ShareGate
 
FootfallCam- People Counting Solution
FootfallCam- People Counting Solution FootfallCam- People Counting Solution
FootfallCam- People Counting Solution FootfallCam
 
Video Streaming - 4.ppt
Video Streaming - 4.pptVideo Streaming - 4.ppt
Video Streaming - 4.pptVideoguy
 
Git - Get Ready To Use It
Git - Get Ready To Use ItGit - Get Ready To Use It
Git - Get Ready To Use ItDaniel Kummer
 
A Practical Introduction to git
A Practical Introduction to gitA Practical Introduction to git
A Practical Introduction to gitEmanuele Olivetti
 
Power point 2016 module 4 ppt presentation
Power point 2016 module 4 ppt presentationPower point 2016 module 4 ppt presentation
Power point 2016 module 4 ppt presentationdgdotson
 
WebRTC, RED and Janus @ ClueCon21
WebRTC, RED and Janus @ ClueCon21WebRTC, RED and Janus @ ClueCon21
WebRTC, RED and Janus @ ClueCon21Lorenzo Miniero
 
Introducing GitLab (September 2018)
Introducing GitLab (September 2018)Introducing GitLab (September 2018)
Introducing GitLab (September 2018)Noa Harel
 

What's hot (20)

2019 Chef InSpec Jumpstart Part 1 of 2
2019 Chef InSpec Jumpstart Part 1 of 22019 Chef InSpec Jumpstart Part 1 of 2
2019 Chef InSpec Jumpstart Part 1 of 2
 
Sync async-blocking-nonblocking-io
Sync async-blocking-nonblocking-ioSync async-blocking-nonblocking-io
Sync async-blocking-nonblocking-io
 
Multimedia
MultimediaMultimedia
Multimedia
 
Utilizing SharePoint for Project Management
Utilizing SharePoint for Project ManagementUtilizing SharePoint for Project Management
Utilizing SharePoint for Project Management
 
What's new with OneDrive for Business - SharePoint Fest DC 2019
What's new with OneDrive for Business - SharePoint Fest DC 2019What's new with OneDrive for Business - SharePoint Fest DC 2019
What's new with OneDrive for Business - SharePoint Fest DC 2019
 
Introduction to Git / Github
Introduction to Git / GithubIntroduction to Git / Github
Introduction to Git / Github
 
Basic Git Intro
Basic Git IntroBasic Git Intro
Basic Git Intro
 
OneDrive to Rule Them All
OneDrive to Rule Them AllOneDrive to Rule Them All
OneDrive to Rule Them All
 
What is OneDrive for Business and What Does it Do?
What is OneDrive for Business and What Does it Do?What is OneDrive for Business and What Does it Do?
What is OneDrive for Business and What Does it Do?
 
Devops and git basics
Devops and git basicsDevops and git basics
Devops and git basics
 
FootfallCam- People Counting Solution
FootfallCam- People Counting Solution FootfallCam- People Counting Solution
FootfallCam- People Counting Solution
 
Video Streaming - 4.ppt
Video Streaming - 4.pptVideo Streaming - 4.ppt
Video Streaming - 4.ppt
 
Git - Get Ready To Use It
Git - Get Ready To Use ItGit - Get Ready To Use It
Git - Get Ready To Use It
 
Git 101
Git 101Git 101
Git 101
 
A Practical Introduction to git
A Practical Introduction to gitA Practical Introduction to git
A Practical Introduction to git
 
Power point 2016 module 4 ppt presentation
Power point 2016 module 4 ppt presentationPower point 2016 module 4 ppt presentation
Power point 2016 module 4 ppt presentation
 
WebRTC, RED and Janus @ ClueCon21
WebRTC, RED and Janus @ ClueCon21WebRTC, RED and Janus @ ClueCon21
WebRTC, RED and Janus @ ClueCon21
 
Introducing GitLab (September 2018)
Introducing GitLab (September 2018)Introducing GitLab (September 2018)
Introducing GitLab (September 2018)
 
Tutorial de Windows Movie Maker
Tutorial de Windows Movie MakerTutorial de Windows Movie Maker
Tutorial de Windows Movie Maker
 
Sharepoint 2019 Training
Sharepoint 2019 TrainingSharepoint 2019 Training
Sharepoint 2019 Training
 

Viewers also liked

Understanding the Pentaho CDE NewMapComponent
Understanding the Pentaho CDE NewMapComponentUnderstanding the Pentaho CDE NewMapComponent
Understanding the Pentaho CDE NewMapComponentKleyson Rios
 
Pentaho 8 Reporting for Java Developers - Because details matter
Pentaho 8 Reporting for Java Developers - Because details matterPentaho 8 Reporting for Java Developers - Because details matter
Pentaho 8 Reporting for Java Developers - Because details matterFrancesco Corti
 
Pentaho PDI and the Jare Ruleengine
Pentaho PDI and the Jare RuleenginePentaho PDI and the Jare Ruleengine
Pentaho PDI and the Jare Ruleengineuwe geercken
 
Continuous ETL Testing for Pentaho Data Integration (kettle)
Continuous ETL Testing for Pentaho Data Integration (kettle)Continuous ETL Testing for Pentaho Data Integration (kettle)
Continuous ETL Testing for Pentaho Data Integration (kettle)Slawomir Chodnicki
 
私はこうやってSlackを社内で流行らせました
私はこうやってSlackを社内で流行らせました私はこうやってSlackを社内で流行らせました
私はこうやってSlackを社内で流行らせましたNHN テコラス株式会社
 

Viewers also liked (6)

Understanding the Pentaho CDE NewMapComponent
Understanding the Pentaho CDE NewMapComponentUnderstanding the Pentaho CDE NewMapComponent
Understanding the Pentaho CDE NewMapComponent
 
Pentaho 8 Reporting for Java Developers - Because details matter
Pentaho 8 Reporting for Java Developers - Because details matterPentaho 8 Reporting for Java Developers - Because details matter
Pentaho 8 Reporting for Java Developers - Because details matter
 
Pentaho PDI and the Jare Ruleengine
Pentaho PDI and the Jare RuleenginePentaho PDI and the Jare Ruleengine
Pentaho PDI and the Jare Ruleengine
 
Continuous ETL Testing for Pentaho Data Integration (kettle)
Continuous ETL Testing for Pentaho Data Integration (kettle)Continuous ETL Testing for Pentaho Data Integration (kettle)
Continuous ETL Testing for Pentaho Data Integration (kettle)
 
javascriptのデータ構造の話
javascriptのデータ構造の話javascriptのデータ構造の話
javascriptのデータ構造の話
 
私はこうやってSlackを社内で流行らせました
私はこうやってSlackを社内で流行らせました私はこうやってSlackを社内で流行らせました
私はこうやってSlackを社内で流行らせました
 

Similar to Updates on webSpoon and other innovations from Hitachi R&D

Overview of webSpoon @ Pentaho Community Meeting 2016 (PCM16)
Overview of webSpoon @ Pentaho Community Meeting 2016 (PCM16)Overview of webSpoon @ Pentaho Community Meeting 2016 (PCM16)
Overview of webSpoon @ Pentaho Community Meeting 2016 (PCM16)Hiromu Hota
 
INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...
INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...
INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...Heiko Voigt
 
IBM ConnectED SPOT104: Lightning-Fast Development of Native Mobile Apps for I...
IBM ConnectED SPOT104: Lightning-Fast Development of Native Mobile Apps for I...IBM ConnectED SPOT104: Lightning-Fast Development of Native Mobile Apps for I...
IBM ConnectED SPOT104: Lightning-Fast Development of Native Mobile Apps for I...darwinodb
 
Http Services in Rust on Containers
Http Services in Rust on ContainersHttp Services in Rust on Containers
Http Services in Rust on ContainersAnton Whalley
 
Serverless computing with Google Cloud
Serverless computing with Google CloudServerless computing with Google Cloud
Serverless computing with Google Cloudwesley chun
 
Approaches to debugging mixed-language HPC apps
Approaches to debugging mixed-language HPC appsApproaches to debugging mixed-language HPC apps
Approaches to debugging mixed-language HPC appsRogue Wave Software
 
Serverless Computing with Google Cloud
Serverless Computing with Google CloudServerless Computing with Google Cloud
Serverless Computing with Google Cloudwesley chun
 
How to integrate OpenStack Swift to your "legacy" system
How to integrate OpenStack Swift to your "legacy" systemHow to integrate OpenStack Swift to your "legacy" system
How to integrate OpenStack Swift to your "legacy" systemMasaaki Nakagawa
 
Ai pipelines powered by jupyter notebooks
Ai pipelines powered by jupyter notebooksAi pipelines powered by jupyter notebooks
Ai pipelines powered by jupyter notebooksLuciano Resende
 
Advanced Strategies for Testing Responsive Web
Advanced Strategies for Testing Responsive WebAdvanced Strategies for Testing Responsive Web
Advanced Strategies for Testing Responsive WebPerfecto by Perforce
 
Web Technologies in Automotive & Robotics (BlinkOn 10)
Web Technologies in Automotive & Robotics (BlinkOn 10)Web Technologies in Automotive & Robotics (BlinkOn 10)
Web Technologies in Automotive & Robotics (BlinkOn 10)Igalia
 
Apache MXNet for IoT with Apache NiFi
Apache MXNet for IoT with Apache NiFiApache MXNet for IoT with Apache NiFi
Apache MXNet for IoT with Apache NiFiTimothy Spann
 
Cloud-Native .Net des applications containerisées .Net sur Linux, Windows e...
 Cloud-Native .Net des applications containerisées .Net sur Linux, Windows e... Cloud-Native .Net des applications containerisées .Net sur Linux, Windows e...
Cloud-Native .Net des applications containerisées .Net sur Linux, Windows e...VMware Tanzu
 
Streams GitHub Products Overview for IBM InfoSphere Streams V4.0
Streams GitHub Products Overview for IBM InfoSphere Streams V4.0Streams GitHub Products Overview for IBM InfoSphere Streams V4.0
Streams GitHub Products Overview for IBM InfoSphere Streams V4.0lisanl
 
IoT with Apache MXNet and Apache NiFi and MiniFi
IoT with Apache MXNet and Apache NiFi and MiniFiIoT with Apache MXNet and Apache NiFi and MiniFi
IoT with Apache MXNet and Apache NiFi and MiniFiDataWorks Summit
 

Similar to Updates on webSpoon and other innovations from Hitachi R&D (20)

Overview of webSpoon @ Pentaho Community Meeting 2016 (PCM16)
Overview of webSpoon @ Pentaho Community Meeting 2016 (PCM16)Overview of webSpoon @ Pentaho Community Meeting 2016 (PCM16)
Overview of webSpoon @ Pentaho Community Meeting 2016 (PCM16)
 
SamSegalResume
SamSegalResumeSamSegalResume
SamSegalResume
 
INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...
INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...
INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...
 
IBM ConnectED SPOT104: Lightning-Fast Development of Native Mobile Apps for I...
IBM ConnectED SPOT104: Lightning-Fast Development of Native Mobile Apps for I...IBM ConnectED SPOT104: Lightning-Fast Development of Native Mobile Apps for I...
IBM ConnectED SPOT104: Lightning-Fast Development of Native Mobile Apps for I...
 
Http Services in Rust on Containers
Http Services in Rust on ContainersHttp Services in Rust on Containers
Http Services in Rust on Containers
 
Cloud Foundry Summit 2017
Cloud Foundry Summit 2017Cloud Foundry Summit 2017
Cloud Foundry Summit 2017
 
Serverless computing with Google Cloud
Serverless computing with Google CloudServerless computing with Google Cloud
Serverless computing with Google Cloud
 
Approaches to debugging mixed-language HPC apps
Approaches to debugging mixed-language HPC appsApproaches to debugging mixed-language HPC apps
Approaches to debugging mixed-language HPC apps
 
Serverless Computing with Google Cloud
Serverless Computing with Google CloudServerless Computing with Google Cloud
Serverless Computing with Google Cloud
 
How to integrate OpenStack Swift to your "legacy" system
How to integrate OpenStack Swift to your "legacy" systemHow to integrate OpenStack Swift to your "legacy" system
How to integrate OpenStack Swift to your "legacy" system
 
Ai pipelines powered by jupyter notebooks
Ai pipelines powered by jupyter notebooksAi pipelines powered by jupyter notebooks
Ai pipelines powered by jupyter notebooks
 
Advanced Strategies for Testing Responsive Web
Advanced Strategies for Testing Responsive WebAdvanced Strategies for Testing Responsive Web
Advanced Strategies for Testing Responsive Web
 
Sam segal resume
Sam segal resumeSam segal resume
Sam segal resume
 
Apache deep learning 101
Apache deep learning 101Apache deep learning 101
Apache deep learning 101
 
Web Technologies in Automotive & Robotics (BlinkOn 10)
Web Technologies in Automotive & Robotics (BlinkOn 10)Web Technologies in Automotive & Robotics (BlinkOn 10)
Web Technologies in Automotive & Robotics (BlinkOn 10)
 
02 intro
02   intro02   intro
02 intro
 
Apache MXNet for IoT with Apache NiFi
Apache MXNet for IoT with Apache NiFiApache MXNet for IoT with Apache NiFi
Apache MXNet for IoT with Apache NiFi
 
Cloud-Native .Net des applications containerisées .Net sur Linux, Windows e...
 Cloud-Native .Net des applications containerisées .Net sur Linux, Windows e... Cloud-Native .Net des applications containerisées .Net sur Linux, Windows e...
Cloud-Native .Net des applications containerisées .Net sur Linux, Windows e...
 
Streams GitHub Products Overview for IBM InfoSphere Streams V4.0
Streams GitHub Products Overview for IBM InfoSphere Streams V4.0Streams GitHub Products Overview for IBM InfoSphere Streams V4.0
Streams GitHub Products Overview for IBM InfoSphere Streams V4.0
 
IoT with Apache MXNet and Apache NiFi and MiniFi
IoT with Apache MXNet and Apache NiFi and MiniFiIoT with Apache MXNet and Apache NiFi and MiniFi
IoT with Apache MXNet and Apache NiFi and MiniFi
 

Recently uploaded

How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesVictorSzoltysek
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfVishalKumarJha10
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech studentsHimanshiGarg82
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024Mind IT Systems
 

Recently uploaded (20)

How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 

Updates on webSpoon and other innovations from Hitachi R&D

  • 1. © Hitachi America, Ltd. 2017. All rights reserved. Updates on webSpoon and other innovations from Hitachi R&D 11/11/2017 Researcher at Hitachi America, Ltd. Hiromu Hota, PhD @HiromuHota, hiromu.hota@hal.hitachi.com
  • 2. © Hitachi America, Ltd. 2017. All rights reserved. Contents 1 • webSpoon – Demo – Updates since PCM16 and missings – Use cases
  • 3. © Hitachi America, Ltd. 2017. All rights reserved. webSpoon: a browser-based Spoon 2 • webSpoon works on any latest browser, accessible over a network. • webSpoon has advantages: • webSpoon is NOT supported by Pentaho or by Hitachi. Smartphone/tablet CloudData security Ease of mgmt.Remote use Desktop/laptop
  • 4. © Hitachi America, Ltd. 2017. All rights reserved. Demo 3 1. webSpoon (demo instance in AWS) 2. Multi-tenancy (demo instance in local Docker)
  • 5. © Hitachi America, Ltd. 2017. All rights reserved. Updates since PCM16 4 • webSpoon became matured in its stability, functionality, and usability. • Stability – Fixed many things: menubar, shortcuts, scrollbar/zooming, copy/paste – Automated UI Testing – CI/CD (nightly build for every commit) • Functionality – Lots of steps/job entries and other type of plugins confirmed to be compatible – Carte integration – Multi-user/-tenant • Usability – FileDialog to open from the server’s file system / Import from the client’s – Dockerized – No longer 9051 port mapping
  • 6. © Hitachi America, Ltd. 2017. All rights reserved. Cloud / Scalability 5 • webSpoon is easily deployable to the cloud – E.g., AWS Elastic Beanstalk • webSpoon is scalable webSpoon Load Balancer Clients webSpoon instances
  • 7. © Hitachi America, Ltd. 2017. All rights reserved. • webSpoon serves multiple users – User authentication – User configuration – Incomplete privacy among users • Alice can see Bob’s configuration files • Alice can see Bob’s Kettle files (only when they are locally stored) • webSpoon serves multiple tenants – I’d assign dedicated instances for each tenant for the privacy concern, though some argues that this arch is multi-instance, not multi-tenancy [1]. Multi-user / Multi-tenancy 6 webSpoon instances Alice Bob Carol Dave Tenant A Tenant B [1] Krebs, Rouven (2012). "Architectural Concerns in Multi-tenant SaaS Applications". Proc. 2nd Int. Conf. on Cloud Computing and Services Science (CLOSER 2012). Alice Bob : User authentication
  • 8. © Hitachi America, Ltd. 2017. All rights reserved. Compatible with Python/R steps 7 • Most of steps/job entries have been confirmed to be compatible with webSpoon, including – Python (CPython Script Executor) – R (Execute R Script) – R (R script executor, EE only) • The rest of steps/job entries is just left un-tested.
  • 9. © Hitachi America, Ltd. 2017. All rights reserved. What’s still missing? 8 • Security – End-users inherit the privileges of the user who runs the Tomcat. • If root runs the Tomcat, all end-users have the root permission. – Incomplete privacy among end-users: • Alice can see Bob’s configuration files. • Alice can see Bob’s Kettle files (when they are locally stored). • Integration with Pentaho Server – Not realized yet due to un-resolved conflicts. • Some EE features – DET (Data Exploration Tool)
  • 10. © Hitachi America, Ltd. 2017. All rights reserved. Use cases 9
  • 11. © Hitachi America, Ltd. 2017. All rights reserved. Data Security: Keep data where they should be 10 Spoon webSpoon • Data engineers should physically be near data. • They might be tempted to download data to work in their office. • They can work from office, home, or wherever comfortable. Hospital/Government/Bank Data When data cannot leave facility/country due to some regulations,
  • 12. © Hitachi America, Ltd. 2017. All rights reserved. Data integration of sensor data in remote sites 12 Thai factory Tokyo office Skilled engineer 1. Kettle files need updating frequently for many reasons: • New machine, new sensor, new analytics, etc. 2. But, remote desktop (RDP) is prohibited and travel costs. Data copy/move User interaction Travel costs RDP Remote desktop prohibited Sensor Database Spoon *Kettle file: Transformation or Job written in PDI (Cropped) Asia - Single Color by FreeVectorMaps.com
  • 13. © Hitachi America, Ltd. 2017. All rights reserved. Data integration of sensor data in remote sites 13 Tokyo office *HTTPS: HTTP Secure Skilled engineer Data copy/move User interaction No travel General protocol HTTPS Thai factory Sensor Database webSpoon (Cropped) Asia - Single Color by FreeVectorMaps.com 1. Kettle files need updating frequently for many reasons: • New machine, new sensor, new analytics, etc. 2. But, remote desktop (RDP) is prohibited and travel costs.
  • 14. © Hitachi America, Ltd. 2017. All rights reserved. Managed Pentaho development environment 15 • Different version, plugin, etc. slows down collaboration. • Could possibly be – Outdated. – Malicious plugins & drivers. Spoon webSpoon Bob Alice Ver. X.X Ver. Y.Y Your Kettle file does not run in my environment! • All Kettle files run in coworker’s screen. • No installation/upgrade/update required (by end-users). • Only desired plugins & drivers. Your Kettle file runs in my environment! *Kettle file: Transformation or Job written in PDI Plugin A Driver B Plugin A Driver C Bob Alice
  • 15. © Hitachi America, Ltd. 2017. All rights reserved. webSpoon streamlines the ML Workflow even more 16 • Data engineers/scientists share – Tools (Pentaho/Python/R) – Data stores – Git repository – Computing resources (e.g., Hadoop, Spark) • As a result, collaboration between them becomes even more seamless – Less dependent on IT staffs to setup tools, data stores, etc. – No data copy/movement, no data dispersion Data scientistsData engineers webSpoon Data stores
  • 16. © Hitachi America, Ltd. 2017. All rights reserved. Resources 17 • Source and binary – https://github.com/HiromuHota/pentaho-kettle • Docker image – https://hub.docker.com/r/hiromuhota/webspoon
  • 17. © Hitachi America, Ltd. 2017. All rights reserved. One more thing... 18
  • 18. © Hitachi America, Ltd. 2017. All rights reserved. SpoonGit (Git client integrated with Spoon) 19
  • 19. © Hitachi America, Ltd. 2017. All rights reserved. Resources 20 • Source and binary – https://github.com/HiromuHota/pdi-git-plugin • Binary – Pentaho Marketplace (in preparation)
  • 20. © Hitachi America, Ltd. 2016. All rights reserved. Trademarks and copyrights 21 • Pentaho is a trademark registered by Hitachi Vantara. • Apache Hadoop and its logo are either registered trademarks or trademarks of the Apache Software Foundation (ASF). • Apache Spark, Spark and the Spark logo are trademarks of ASF. • The Git Logo by Jason Long is licensed under the Creative Commons Attribution 3.0 Unported License. • The R logo is © 2016 The R Foundation. • RStudio and the RStudio logo are all registered trademarks of RStudio. • The Python logo is a trademark of the Python Software Foundation. • Jupyter and the Jupyter logs are trademarks of the NumFOCUS foundation. • Docker and the Docker logo are trademarks or registered trademarks of Docker, Inc. in the United States and/or other countries. • The Jenkins logo is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License. • GitHub is a trademark registered in the United States by GitHub, Inc. • Other company and product names mentioned in this document may be the trademarks of their respective owners.
  • 21.
  • 22. © Hitachi America, Ltd. 2017. All rights reserved. Appendix 23
  • 23. © Hitachi America, Ltd. 2017. All rights reserved. webSpoon = Spoon - SWT + RWT 24 • Spoon relies on SWT for UI widgets (e.g., button, dialog, canvas). • RWT is a web alternative to SWT and “largely” implements SWT APIs, meaning Spoon can become a web app with most codes intact. • There are – Unimplemented SWT APIs (e.g., a part of GC, some Mouse events) – RWT-specific additional APIs (e.g., Multi-user, File Up/Download). Image adapted from https://angelozerr.wordpress.com/2011/05/24/rap_step5/ Operating System Servlet Container Web Browser SWT RWT (Server) RWT (Client) JFace JFace HTTP Spoon webSpoon
  • 24. © Hitachi America, Ltd. 2017. All rights reserved. 1. Local files – Spoon: local files of the laptop/desktop – webSpoon: local files of the (remote) server 2. Clipboard – Spoon and webSpoon do not share the clipboard. – In other words, no copy & paste between Spoon and webSpoon. How is webSpoon different from Spoon? 25 File A is local File B is local File A is local File B is remote File A File B webSpoon Spoon