52
www.einnovator.org; Info: [email protected] © 2011-2016 EInnovator, EM – LTD 1 EInnovator IT Training, Consultancy, Solutions Solutions Training 2020 Q1 Consultancy

EInnovator 2020Q1

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 1

EInnovatorIT Training, Consultancy, Solutions

Solutions

Training

2020Q1

Consultancy

Page 2: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 2

InnovationSoftware as the Engine of Change

Why Innovate?Software drives the modern economy. The companies that thrive are the ones that rip the benefits of software automation and integration capabilities. They create user experiences that bring customer satisfaction, and service or product choice through proper online and mobile interaction.

Many are the recent examples of new companies that disrupted existing markets, and companies that were able to achieve exponential scale growth – most of which afforded by the internet and global end-consumer connectivity. Very soon, most if not all relevant companies will become software-driven companies.

How To Innovate?Software driven innovation comes with a combination of change of culture and appropriate technological choices. Beyond a clear business vision and sense of opportunity, the path to innovation includes the building of reliable, scalable, and fast time-to-market software. Automation of software delivery pipelines, appropriate component and distributed architectures, identifying the most suitable technologies, and knowing how to use them, are all must haves for business success and relevance trough innovation.

How Can EInnovator Help?EInnovator brings to enterprises the technological and educational expertise that is needed for project and business success.Trough investment on the continuous education of in-house IT and software development staff, enterprises will be able to move beyond the technological hurdles, and focus on building business value, achieve costumer satisfaction, and ensure growth.

Page 3: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 3

IT TrainingCourses, Areas, Technologies

Technologies & Training AreasModern software architectures are characterized by demanding and varied requirements and constraints that can only be meet by using the appropriate combination of tools & technologies for each task at hand. Consequently, successful software projects, and the architects and developers that build them, need to be polyglot in knowledge and the technologies they use. Understanding the match between task and technology, the trade-offs between different designs and configurations, and the approaches that lead to seemly integration between technologies, is a must to achieve success.

EInnovator selection of technologies and training offerings reflects the multiplicity of dimensions, layers, and component parts, required to build modern software systems. Focusing on selected best-of-breed technologies, courses give the conceptual and hands-on knowledge that is required to help IT practitioners to make suitable project decisions, develop technical proficiency, and work with high productivity.

Spring Framework – Core, Boot, MVC, Security

Cloud Computing – Cloud Foundry

Micro-Service Architectures – Spring Cloud, Docker

Messaging Middleware – RabbitMQ, Kaffka

NoSql Databases – Redis, Riak, CouchDB, Spring Data

BigData Processing – Hadoop, Spark

Analytics & AI – Machine Learning, MLLib, MadLib

IoT – Spring XD, Akka, Apache Storm

Java – Core Java, Java 8, JEE

Web Development – JS/HTML5/CSS3, W3C, JQuery,

Angular, Node.js

Programming Languages – Scala, Erlang, Go, C#

Software Engineering – Modern Techniques

Page 4: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 4

PartnersTraining & Technology, Certifications

PartnersPartnerships with leading technology companies ensures that EInnovator can deliver out-of-the-source authority and quality, with continuously updated courseware covering the core and latest features of software technologies.

Participation in certification programs allows training delegates to obtain qualifying credentials that promote individual careers and carry a seal of excellence and professionalism that is reflected in project outcomes.

upcoming

upcoming

upcoming

upcoming

upcoming

Page 5: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 5

Area Page Course Duration Page

Spring Framework

10

Core Spring 4 days 18

Enterprise Spring 4 days 19

Spring Web 4 days 20

JPA/Hibernate with Spring 3 days 21

Cloud Computing

11Application Development with Cloud Foundry 3 days 22

Cloud Foundry Immersion – Installation, Configuration, and Management 4 days 23

Micro-Services

12Micro-Service Architectures 3 days 24

Spring MicroServices 3 days 25

Messaging 13RabbitMQ Application Development – Java Track, C# Track 3 days 26

RabbitMQ Installation, Configuration, and Management 2 days 27

NoSql 14Redis Application Development – Java Track, C# Track 2 days 28

Redis Installation, Configuration, and Management 2 days 29

CatalogueAreas & Course Index – I

Page 6: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 6

Area Page Course Duration Page

BigData 15

BigData Processing with Hadoop and PHD 4 days 30

BigData Processing and Analytics with Hadoop and Spark 4 days 31

Big Data Analytics & Machine Learning with Spark 2 days 32

IoT 16Spring XD – IOT Application Development and Analytics 4 days 33

Celery – Development and Administration 2 days 34

Java 17

Java – Core Java, Java 8, Enterprise Java Intro 5 days 35

Java 8 – Functional Programming with Java 1 days 35

Core Java Programming 3 days 35

Enterprise Java (JEE) 4 days 36

CatalogueAreas & Course Index – II

Page 7: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 7

Area Course Duration

Cloud Computing

Docker – Containers and Orchestration 2 days

MessagingKafka – Administration 2 days

Kafka – Development 2 days

NoSql

CouchBase – Administration 3 days

CouchBase – Development – Java Track, C# Track 3 days

Riak – Administration 3 days

Riak – Development – Java Track, C# Track 3 days

IoT Apache Storm – IOT Application Development 2 days

Programming

GO Language Development 2 days

Ruby Development 2 days

Java Reactive Programming 2 day

Scala and Akka 2 day

WebDevelopment

Angular – Web Development 2 day

DevOpsJenkins – Continuous integration Pipelines 2 days

Chef & Puppet 2 days

CatalogueUpcoming Courses

Page 8: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 8

ClientsEnabling the Leaders

1

Page 9: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 9

Keep up the good work. Dedication and hard working at its finest. Very Good instructor.

S. H., Cairo

EInnovator instructor was excellent he showed an in-depth understanding of the subject matter and was able to give valuable practical examples.

B. D., Dublin

TestimoniesWhat Delegates are Saying

” It was grand.”

Best course I have attended.

H. T., Dublin””

Page 10: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 10

Spring FrameworkCertified Training – Pivotal

Why Spring Framework ?Spring Framework is the leading middleware framework for the Java ecosystem. It provides comprehensive comprehensive infrastructural support to meet the needs of applications and developers, with a wide range of modules in the core framework, and many satellite projects that address specific application needs – from security, to web development, cloud computing, and enterprise integration.

Relying in a light-weighted, intuitive, and non-intrusive programming model, based on dependency-injection, aspect-oriented programming, and a general POJO philosophy, Spring Framework allows applications to be empowered with enterprise graded features, needed in mission critical projects, with minimum fuss.

Technologies of ChoiceThe Core Spring Framework lays the foundation for the all Spring Framework Ecosystem. With a reflection based dependency-injection framework at its core, developers are free to choose among several styles of configuration for the applications. Combined with modules like declarative transaction management, data-access and ORM integration support, and web app development and REST-WS with Spring MVC, allows multi-layered applications to be easily developed, tested, and reconfigured. Spring Boot further simplifies development of Spring application trough auto-configuration.

Spring Security provides a flexible and multi-level security model for Java applications. Uses a simple configuration model based on XML and/or Java annotations.

Spring Integration bring the power of enterprise integration pattern to Spring. Allows the seemly integration of many sub-systems by using a plug&play programming model, where out-of-the-box components, communicating trough in-memory communication channels, combine with application logic to take software engineering to the next level of simplicity and abstraction.

Course Catalogue Duration Page

Core Spring 4 days 18

Enterprise Spring 4 days 19

Spring Web 4 days 20

JPA/Hibernate with Spring 3 days 21

Page 11: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 11

Cloud ComputingCloud Foundry

Why Cloud Computing?Cloud Computing allows the virtualization of computing resources such as VMs, Disk-Storage, and Networking. Application deployed to the cloud can be made to scale to meet the needs to growing and varying application load, across a single or multiple data-centers, regions, or availability zones.

Why a Cloud Native Platform?A cloud native platform (CNA) – or 2th-generation Platform as Service (PasS) – takes cloud computing to the next level, by providing abstractions and operations close to developers and devops needs. Rather than work with low-level virtualization abstraction, a CNA automates most or all steps required to deploy and scale apps in a close literally at the call of a command or press of a button. A CNA changes the focus of cloud computing from the “Where” to the “How”.

Technologies of ChoiceCloud Foundry is the leading industry de facto standard for a Cloud Native Platform. Applications can be seemly deployed and scaled in a Cloud Foundry, with a variety features provided automatically, such as – load-balancing across multiple application instances, software containerization of application instances, automatic download and recreation of application run-times for multiple languages (trough the buildpack abstraction), failure detection and automatic recovery at the levels of the VMs, software containers, and application instances, auto-scaling based on application load, and integration and binding of services trough a service marketplace and/or user-provided services.

Cloud Foundry can be deployed in a variety of settings and configuration to create private clouds on self managed data-center or a cloud provider, or used to create shared public clouds.

Course Catalogue Duration Page

Application Development with Cloud Foundry 3 days 22

Cloud Foundry Immersion – Installation, Configuration, and Management 4 days 23

Page 12: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 12

Micro-ServicesSpring Cloud, Docker, Software Containers

Why Micro-Services ?Traditional monolithic applications present a limitation challenge for continuous delivery and scalability. Delivering a new feature, improving an existing one, or fixing a bug, requires a checkpoint across all the code-base to create a consistent release-bundle, and deploying it requires the shutdown and restart of the complete system.

Micro-Services style architectures decompose project functionally in independently deployed and scaled components – the services. Deploying a new feature is nothing more than adding another application to a existing running distributed system. Improving a feature or fixing bugs can be done without affecting other parts of the system too. Different services can also be scaled at different levels, depending on the expected load.

Technologies of ChoiceSpring Cloud is a collection of middleware projects aimed to simplify development of cloud deployable and micro-services style software architectures. Includes Spring Cloud Connectors – providing abstraction to achieve cloud portability and production-development parity; Spring Cloud Config – allowing distributed configuration of many applications in a simple way; and Spring Cloud Eureka – a service for dynamic registration and discovery of application instance, and Spring Hystrix Circuit-Breakers a AOP based based on Netflix OSS.

Micro-Services benefit from Cloud Native Platforms like Cloud Foundry due to the simplicity of deployment and scaling. Alternative deployment approaches are also possible by wrapping application services in Docker software containers and deploy them to a cluster orchestration platform specific for Docker containers.

Course Catalogue Duration Page

Micro-Service Architectures 3 days 24

Spring Micro-Services 3 days 25

Page 13: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 13

MessagingRabbitMQ, AMQP

Why Messaging ?Messaging-based communication allows the development of loosely-coupled system, where application processes interact asynchronously and indirectly throw a reliable messaging broker. Producer and consumer applications can be replaced, upgraded, and load-balanced gracefully and independently, without disrupting other parts of the system. The broker ensures a suitable QoS, providing buffering and flow-control, persistence and transactions. Multi-server installations are used for scalability and high-availability.Software architectures based on message-based IPC achieve a level of resilience and modular deployment, hard to match trough traditional monolithic architectures.

Technologies of ChoiceRabbitMQ is the leading AMQP based messaging broker, that achieves reliable high-throughput message delivery. Administration is done trough an excellent management web UI, and powerful set of management tools. Cluster based deployments are used to achieve high-availability. While federated server deployments are used to create multi data-center internet-scale scalable architectures.Drivers/Bindings exist for many programming languages, including Java and C#/.Net, among other. High-level programming framework such as Spring AMQP and Spring .NET AMQP further simplify the development of RabbitMQ and AMQP based applications.

Course Catalogue Duration Page

RabbitMQ Application Development – Java Track, C# Track 3 days 26

RabbitMQ Installation, Configuration, and Management 2 days 27

Page 14: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 14

NoSqlRedis, Spring Data

Why NoSql ?Complexity and heterogeneity of data, internet-scale horizontal-scaling, just-enough consistency, and performance requirements make the traditional approach to data-store based on only Relational Databased (RDBMS) ineffective. Modern applications are required to use databases whose data-model, queries, and consistency and distribution model, offer the right match to the task at hand, and provide the right balance between feature-set and implementation performance.

Why a Data-Structure Store ?Key-Value stores provide a simple an efficient model for data persistence, where simple keys are used to lookup associated value. A Data-Structure stores takes this approach one step beyond, by providing a rich set of persistent data-structures that map naturally program data-structures used by developers.

Technologies of ChoiceRedis is a fast data-structure NoSql database. Going beyond traditional key–value stores, Redis provides a rich set of canonical data-structures that are efficiently persisted, including: raw byte arrays and strings, lists/queues, hashes, sets, sorted sets, and hyperloglogs. Redis support multiple deployment modes, from single-server, master-slave replication, and high-availability with a strong-consistency sentinel-driven failover on quorum, and clustering for with data replication and partitioning (sharding).Drivers/Bindings exist for many programming languages, including Java and C#/.Net, among other. High-level programming framework such as Spring Data Redis further simplify the development of RabbitMQ and AMQP based applications.

Course Catalogue Duration Page

Redis Application Development – Java Track, C# Track 3 days 28

Redis Installation, Configuration, and Management 2 days 29

Page 15: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 15

BigData & AnalyticsHadoop, PHD, Spark, HAWQ/HDB

Why BigData Processing ?Globally accessible internet-scale applications gather and produce large-amount of data, that can not be effectively processed using traditional model of data-storage and computation. Alternatively approaches are required to handle this deluge of data. Modern big-data storage and processing software achieve this by using storage, distribution, and processing model that scale horizontally using commodity hardware in a reliable way. required to in useful time and in a reliable way.

Why Advanced Analytics ?Advanced analytics and machine-learning algorithms reinforce the power of BigData processing, by being able to infer patterns and provide actionable insight on response to the data. Knowledge of the science and technology required to benefit from this data is a distinguishing feature of cutting-edge enterprises.

Technologies of ChoiceHadoop is the de-facto standard open-source solution for BigData processing. Inspired in Google's research and internally used architectures, Hadoop allies the power of a massively scalable and reliable distributed file-systems – HDFS, with a cluster management and task scheduler – YARN, and a distributed data processing model – Map–Reduce.Spark provide an alternative model of BigData distributed computation through a functional programming model on immutable data-streams (RDDs). More expressive and efficient than Map-Reduce, it is a highly popular approach for BigData Processing.HAWQ/HDB provides a high-performance PostGres SQL engine on top of Hadoop/HDFS, that brings the convenience of OLAP warehouses and analytics databases to Hadoop world. Beats Hadoop native SQL engine – Hive – by a considerable margin.

Course Catalogue Duration Page

BigData Processing with Hadoop and PHD 4 days 30

BigData Processing and Analytics with Hadoop and Spark 4 days 31

Big Data Analytics & Machine Learning with Spark 2 days 32

Page 16: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 16

IoTSpring XD/DataFlow, Akka, Storm

Why IoT ?The miniaturization of electronics, sensing and actuators devices, coupled with constant high-throughput internet connectivity, allows the creation of solutions and applications where networks of physical objects – such as gadgets, vehicles, and buildings – are remotely controlled and monitored. From smart grids, to smart homes, to intelligent transportation and smart cities, the physical world can seemly merge with the software world – creating an Internet-Of-Things.Due to its expected ubiquity, IoT presents great opportunities and great challenges to enterprises and IT companies, which need to rely on technologies for high-performance event-processing combined with BigData storage and historical data batch processing.

Technologies of ChoiceSpring XD/DataFlow is a distributed event processing technology with a powerful DSL inspired in UNIX-pipelines to express data processing pipelines. A large library of modules is provided based on battle-harden Spring Integration components. Integration with Spring Batch and other Batch processing technologies, allows Spring XD to be use as an orchestration tool to quasi real-time and historical batch data processing – in the form of a Lambda Architecture. Spring DataFlow extends on Spring XD to support multiple deployment run-times – from local containers, to cluster managed containers, to cloud applications.

Apache Storm is a seminal high-performance data ingestion and procession pipeline for Java. A simple programming framework allow the creation of data-processing DAGs that can ingest data from many many sources and to send it to many sinks.

Course Catalogue Duration Page

Spring XD/Data Flow – IOT Application Development and Analytics 3 days 33

Celery – Application Development 2 days 34

Page 17: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 17

JavaCore Java, Java 8, JEE

Why Java ?Java

TM has been for the last 20+ years, and continues to be, the

dominant programming language in the enterprise software world. Therefore, mastering the in&outs of the language and the overall ecosystem – from the language syntax, the APIs, the new functional programming style, and JEE technologies and standards – is a must for the productive and successful Java developer.

Either for the experienced Java developer, the junior developer, or the veteran programmer transitioning from legacy programming language to Java, continuous education and updates on Java can be an opportunity to become a better enterprise software engineer.

Technologies of ChoiceJava 8 functional programming style – with lambda expression and functional interfaces, streams API, and aggregators API – bring to Java the same kind of fluency and brevity available in other pure-functional and multi-paradigm programming languages. Tasks like implementing complex data-streams processing pipeline become highly simplified using Java 8.

Core Java training allows developers new to Java to get a full & comprehensive coverage of the language, including – the language syntax, object-oriented design principles and design patterns with Java, and the full gamete of JDK APIs.

JEE training allows developers to get proficient in the wide range of technologies part of JEE – from persistence with JPA, and dependency-injection with CDI, to REST-WS. An excellent complement to Spring Framework training.

Course Catalogue Duration Page

Java – Core Java, Java 8, Enterprise Java Intro 5 days 35

Java 8 – Functional Programming with Java 1 days 35

Core Java Programming 3 days 35

Enterprise Java (JEE) 4 days 36

Page 18: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 18

Spring FrameworkCore Spring – Training

Core SpringIn this course, delegates learn how to use the Spring Framework to build mission-critical enterprise-graded Java applications, using a comprehensive set of modules – from application configuration with multiple styles of dependency-injection, to component enhancement with Spring AOP, to data-access neutral declarative transaction management, and introduction to web-development and REST-WS with Spring MVC. Simplification of configuration with Spring Boot , securing web application with Spring Security, and introduction to Spring Cloud is also covered.

CertificationCompletion of this training entitles each student to receive a free voucher to schedule an exam and become a Pivotal certified Spring Certified Professional.

Duration4 days

Datasheetwww.einnovator.org/course/core-spring

Topics● Dependency-Injection

– Java Config, Annotations, and XML● Spring AOP – Aspect-Oriented Programming● Spring Test

– Unit, Integration, and Out-of-Container Testing● Spring JDBC● Transaction Management● JPA/ORM Integration● Spring MVC● Spring Boot● REST-WS● Spring Security

QuickGuides

Spring 4 Dependency-Injection

Annotations

Spring Boot

Page 19: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 19

Spring FrameworkEnterprise Spring – Training

Enterprise SpringIn this course, delegates learn how to use the Spring Framework and ecosystem to develop enterprise integration solutions. Technologies and topics covered, include: implement different styles of integration with Spring, build enterprise integration patterns with Spring Integration, and implement reliable data processing with Spring Batch. Introduction to real-time IoT event-processing with Spring XD is also covered.

CertificationCompletion of this training entitles each student to receive a free voucher to schedule an exam and become a Pivotal certified Spring Integration Specialist.

Duration4 days

Datasheetwww.einnovator.org/course/enterprise-spring

Topics● Enterprise Integration Patterns● Styles of Integration● Spring Tasks and Concurrency● Advanced REST-WS with Spring MVC● Spring JMS● JTA – Global Transaction Management● Spring Integration● Spring Batch● Spring XD Intro● Spring SOAP Web-Services [complementary]● Spring AMQ Intro [complementary]

QuickGuides

Spring 4Dependency-Injection

Annotations

Spring Integration

Page 20: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 20

Spring FrameworkSpring Web – Training

Spring WebIn this course, delegates learn how to build modern Web Application using the Spring Framework and ecosystem. Topics covered include Spring MVC ins&outs, how to write Web MVC controllers, support for reusable page layouts, and multiple view types, form processing, AJAX requests with Spring MVC enabled REST-WS backends, asynchronous events propagation with Web-Sockets, security, and testing. Implementation of stateful constraint navigation in web apps with Spring WebFlow is also covered on request.

CertificationCompletion of this training entitles each student to receive a free voucher to schedule an exam and become a Pivotal certified Spring Web Developer.

Duration4 days

Datasheetwww.einnovator.org/course/spring-web

Topics● Spring MVC Controllers● Spring MVC Configuration● View Layouts and Composition

– Tiles with Spring MVC● VDLs and Views Types● Form Processing● AJAX and REST-WS Controllers● Web-Socket s● Web Security● Web Application Testing● WebFlow [complementary]

QuickGuides

Spring 4 Dependency-Injection

Annotations

Spring MVC Spring WebFlow[coming soon]

Page 21: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 21

Spring FrameworkJPA/Hibernate with Spring – Training

JPA/Hibernate with SpringIn this course, delegates learn how to use JPA and Hibernate to implement a Java Data-Access Layer based on Relational-Databases and Object-Relation-Mapping (ORM) technologies, and how to integrate JPA and Hibernate in Spring-enabled application. Topics covered include all aspects of ORM technologies, such as: how to configure entity classes and associations in with an annotation-driven approach, the JPA/Hibernate API, the JPQL/HQL query language, inheritance mapping strategies, ID generation strategies, how to perform concurrency control, and performance-enabling caching. Spring specific topics include how to configure JPA/Hibernate with Spring, and how to use Spring declarative transaction management with JPA/Hibernate, how to use JPA/Hibernate in web applications.

Duration3 days

Datasheetwww.einnovator.org/course/spring-jpa

Topics● JPA/Hibernate Annotation-Driven Mappings● Association Mapping Strategies● Inheritance Mapping strategies● JPA/Hibernate configuration with Spring● JPA EntityManager API; Hibernate Session API● JPA/Hibernate Query Language● JPA/Hibernate Criteria API● ID Generation Strategies● Concurrency Control and Web-App integration● Spring Transaction Management for JPA/Hibernate● Advanced JPA/Hibernate Topics

– Caching, Batching, Event Listeners– JPA 2.1 Features

QuickGuides

JPA[coming soon]

Page 22: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 22

Cloud ComputingCloud Foundry For Developers – Training

Cloud Foundry for DevelopersIn this course, delegates learn how to use Cloud Foundry to deploy and scale application. Topics covered include: Cloud Foundry CLI, Cloud Foundry Architecture, the features that make it a popular Cloud Native Platform, and a wide variety of techniques available in cloud computing and how they are used in Cloud Foundry. Design-principles and techniques used in implementing Cloud-Native application are also covered, with a focus on Spring Framework and Java applications as main use-case.

Duration3 days

Datasheetwww.einnovator.org/course/cloud-foundry-developer

Topics● Introduction to Cloud Computing – IasS, PasS, SasS● Cloud Foundry Architecture● Cloud Foundry Command Line Tool● Pushing Applications to Cloud Foundry● Cloud Foundry IDE/STS Plugin Integration● Configuration with Manifest Files● OS Environment in Cloud Foundry● Cloud Foundry Services● Logging and Application Monitoring● Zero-Downtime deployments● Cloud Development Principles (12-Factor apps)● Porting Applications to the Cloud● Rapid Application Development with Spring● Introduction to Spring Cloud

QuickGuides

Cloud Foundy

Page 23: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 23

Cloud ComputingCloud Foundry Immersion – Training

Cloud Foundry ImmersionIn this course, delegates learn how to use install, configure, and manage Pivotal Cloud Foundry, with a vShpere or AWS as cloud infrastructure, using Bosh and OpsManager UI. Topics covered include: Cloud Foundry Architecture, Bosh architecture, and Bosh deployments, installation of Cloud Foundry elastic run-time, create and install service brokers, configuration of security groups, logging and monitoring a Cloud Foundry platform.

Duration3 days

Datasheetwww.einnovator.org/course/cloud-foundry-immersion

Topics● Introduction to Cloud Computing – IasS, PasS, SasS● Cloud Foundry Architecture● Cloud Foundry Command Line Tool● Pushing Applications to Cloud Foundry● Cloud Foundry Installation● BOSH deployments● Cloud Foundry Elastic Runtime● Installing Service Brokers● Monitoring Cloud Foundry ● Security Groups

QuickGuides

Cloud Foundy Bosh[coming soon]

Page 24: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 24

Micro-ServicesMicroServices Architectures

Micro-Service ArchitecturesIn this course, participants learn the characteristics and benefits of micro-services architectures, how to implement them using a variety of open-source technologies. Topics covered include: Integration Styles and Design-Patterns for Micro-Services, REST-WS, load-balancing, polyglot programming, polyglot persistence, alternative approaches to messaging, and OAuth2 Security.

Duration3 days

Datasheetwww.einnovator.org/course/microservices

Cloud Foundy Spring Cloud

Topics● Micro-Services Architectures

– Limitations of Monolithic Architectures– Integration Styles for Micro-Services– Refactoring Monolithic Architectures– Design Principles

● Distributed Configuration● Service Discovery● Advanced Techniques in REST-WS● Load Balancing● Messaging Middleware● Reliability with Circuit Breaks● Polyglot Persistence● Deploying Applications to the Cloud● Cloud Portability● Distributed Security with OAuth2● Distributed Monitoring and Tracing

QuickGuides

Page 25: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 25

Micro-ServicesSpring MicroServices – Training

Spring Micro-ServicesIn this course, participants learn the characteristics and benefits of micro-services architectures, how to build them using the Spring Framework, Spring Boot, Spring Cloud, and the services Pivotal Cloud Foundry. Topics covered include: Microservices vs. Monoliths, Refactoring Monoliths, Spring Boot Overview, Spring Cloud Config and Spring Cloud Bus, Spring Cloud Netflix Eureka, and Spring Cloud Circuit-Breakers, Polyglot persistence with Spring Data, Spring OAuth2 Security.

Duration3 days

Datasheetwww.einnovator.org/course/spring-microservices

Topics● Micro-Services Architectures

– Micro-Services vs. Monoliths– Refactoring Monoliths

● Spring Boot Overview● Cloud Portability with Spring Cloud Connectors● Distributed Configuration

– Spring Cloud Config, Spring Cloud Bus● Service Discovery with Spring Cloud

– Netflix Eureka● Reliability with Circuit Breaks

– Spring Cloud Netflix Hysterix ● Polyglot Persistence with Spring Data● REST-WS – Spring MVC, Spring Data REST● Deploying Applications to Cloud Foundry● Distributed Security with OAuth2

QuickGuides

Cloud Foundy Spring Cloud

Page 26: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 26

MessagingRabbitMQ Administration – Training

RabbitMQ Administration – Installation, Configuration, and ManagementIn this course, participants learn all the steps required to install, configure, and manage RabbitMQ. Including, installation in multiple OS, setup multi-server RabbitMQ clusters, define policies for replicated queues and master-slave synchronization, multi data-center message dissemination using the Federation plugin, security configuration, and approaches to monitor RabbitMQ.

Duration2 days

Datasheetwww.einnovator.org/course/rabbitmq-administration

Topics● Introduction to Messaging Middleware● RabbitMQ Installation and Configuration● Overview of RabbitMQ Development● RabbitMQ Reliability● RabbitMQ Cluster● High-Availability with Mirrored Queues● RabbitMQ Plugins

– STOMP Plugin– Shovel Plugin– Federation Plugin

● Performance● RabbitMQ Security● Monitoring RabbitMQ

QuickGuides

RabbitMQ

Page 27: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 27

MessagingRabbitMQ for Developers – Training

RabbitMQ Application DevelopmentIn this course, participants learn how to develop messaging application that work with a RabbitMQ broker. Topics include all administration topics covered in the course “Rabbit MQ – Administration” plus developer specific topics. Course is delivered in two track format, including a main Java track, and a complementary C# track. Topics covered include: using the RabbitMQ Driver API to connect, send, and receive message, implement reliability mechanisms such as transactions, acknowledges strategies, and flow control, and use of high-level framework such as Spring AMQP.

Duration3 days

Datasheetwww.einnovator.org/course/rabbitmq

Topics● Introduction to Messaging Middleware● RabbitMQ Installation and Configuration● RabbitMQ Development

– Java Track; C# Track● RabbitMQ Reliability

– Java Track; C# Track● RabbitMQ Cluster● High-Availability with Mirrored Queues● RabbitMQ Plugins

– STOMP Plugin– Shovel Plugin– Federation Plugin

● Performance● Spring AMQP● RabbitMQ Security● Monitoring RabbitMQ

QuickGuides

RabbitMQ

Page 28: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 28

NoSQLRedis Administration – Training

Redis Administration – Installation, Configuration, and ManagementIn this course, participants learn all the steps required to install, configure, and manage Redis NoSQL Data-structures Store.

Topics include: installation of Redis in multiple OS, approaches to configure Redis, persistence strategies with RDB snapshot file and AOF append-only file, master-slave replication, high-availability with Redis Sentinel, data partitioning (sharding) with Redis Cluster, performance measuring and monitoring, security configuration, and client connection management.

Duration2 days

Datasheetwww.einnovator.org/course/redis-administration

Topics● Introduction to Redis

– User-Cases– Redis vs. RDBMS

● Installing Redis● Configuring Redis● Redis Persistence Strategies RDB and AOF● Redis Master-Slave Replication● Redis High-Availability with Sentinels● Redis Cluster and Data Partitioning● Redis Performance and Benchmarking● Redis Monitoring● Redis Security

QuickGuides

Redis

Page 29: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 29

NoSQLRedis for Developers – Training

Redis Application DevelopmentJava Track | C# TrackIn this course, participants learn how to develop applications with Redis NoSQL Data-structures Store. Course is delivered as extension to “Redis – Administration”, adding developer specific topics. Course is delivered in two track format, including a main Java track, and a complementary C# track. Topics covered include: Redis data-structures and operations, connecting to Redis servers, sentinel, and cluster, strategies to implement Data Repositories with Redis Data-Types, high-level framework abstractions such as Spring Data Redis Repositories, building messaging application Redis PubSub channels, and advanced topics such as transactions, pipelining, and LUA scripts.

Duration2 days

Datasheetwww.einnovator.org/course/redis-development

Topics● Introduction to Redis

– User-Cases– Redis vs. RDBMS

● Connection to Redis● Redis Operations● Redis DataTypes

– Lists, Hashes, Sets, SortedSets, HyperLogLogs● Redis Repositories

– Approaches, Serialization, Indexes● Redis Transactions and Pipelining● Redis Lua Scripts● High-Availability with Redis● Redis Cluster

QuickGuides

Java Track

C#/.Net Track Redis

Page 30: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 30

BigData & AnalyticsHadoop, PHD, HAWQ/HDB – Training

BigData Processing with Hadoop and PHDIn this course, participants learn how to setup a BigData processing infrastructure based on PHD, Pivotal Hadoop-based distribution. Topics include: installation of PHD, operate with HDFS file-system, how to implement and run Map-Reduce in Hadoop, how to use Pig scripting language, and write and execute Hive “SQL” Query Language for Hadoop. Also covered is HAWQ/HDB high-performance SQL and analytics OLAP engine for HDFS/Hadoop.

Duration4 days

Datasheetwww.einnovator.org/course/bigdata-phd

Topics● Hadoop/PHD Ecosystem● HDFS File-System● HDFS Advanced topics● Map-Reduce● Map-Reduce Advanced Topics● NoSql in Hadoop● Pig● Hive Query Language● HAWQ/HDB Architecture● HAWQ/HDB Query Language● HAWQ/HDB Query Plans

QuickGuides

Hadoop[coming soon]

Page 31: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 31

BigData & AnalyticsHadoop, Spark – Training

BigData Processing and Analytics with Hadoop and SparkIn this course, participants learn how to setup a BigData processing infrastructure based on Apache Hadoop and Spark. Topics include: overview of BigData problems, installation and operation of HDFS, how to implement and run Map-Reduce in Hadoop, how to use Pig scripting language, and write and execute Hive “SQL” Query Language for Hadoop. Also covered is BigData Processing with Spark distributed engine, and introduction to advanced analytics with MLLib.

Duration4 days

Datasheetwww.einnovator.org/course/bigdata-processing-analytics

Topics● Hadoop Ecosystem● Hadoop Installation and Configuration● HDFS File-System● HDFS Advanced topics● Zoo-Keeper● HDFS High-Availability● Map-Reduce● Map-Reduce Advanced Topics● Map-Reduce Design-Patterns● Pig● Hive Query Language● Spark Architecture● Spark SQL● Spark MLLib● Analytics with MLLib

QuickGuides

Spark[coming soon]

Hadoop[coming soon]

Page 32: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 32

BigData & AnalyticsSpark – Training

Big Data Analytics & Machine Learning with SparkIn this course, participants learn how to setup solve BigData processing and analytics problems with Spark and Spark's machine-learning library MLLib Topics include: Spark Architecture, Spark functional programming with Spark, Spark SQL, Spark streaming, data-representation in MLLib, and Machine Learning Algorithm in MLLib.

Duration2 days

Datasheetwww.einnovator.org/course/spark

Topics● BigData Problems● Hadoop Ecosystem● HDFS File-System● Spark Architecture● Functional Programming with Spark● Spark SQL● Spark Streaming

– Kaffka, RabbitMQ Integration● Spark MLLib Analytics● Machine Learning with MLLib

– Regression and Gradient-Descend– Decision Trees and Random Forests– Bayesian Inference– Clustering with K-Means

QuickGuides

Spark[coming soon]

Page 33: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 33

IoTSpring XD/DataFlow – Training

Spring XD/DataFlowIn this course, participants learn how to create IoT quasi real-time event processing pipelines with Spring XD/DataFlow. Topics include: overview of IoT problems and the Lambda architecture approach to combine real-time processing and batch processing, how to install Spring XD/DataFow in multiple environments, including cloud infrastructures, defining streams in a DSL, how to ingest and export data to/from multiple sources/sinks, such as Relational and NoSql Databases, Hadoop/HDFS, and HTTP, AMQP, or SYSLOG channels, how to create custom modules for Spring XD/DataFow based on Spring Integration, integrate batch processing with streams processing, how to capture metrics on stream data, how to integrate advanced analytics engines with Spring XD/DataFlow.

Duration3 days

Datasheetwww.einnovator.org/course/spring-xd

Topics● (Quasi) Real-Time Event Processing

– Lambda Architecture– Spring XD/DataFlow Architecture

● Streams DSL– Sinks,Source,Processors– Taps, Queue/Topics

● Spring DataFlow Multi-Runtime● Custom Modules● Batch Processing with Spring XD● Spring XD Metrics● Advanced Analytics with PMML Integration

QuickGuides

Spring XD

Page 34: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 34

IoTCelery – Training

Celery – Development & AdministrationIn this course, participants learn how to develop distributed Tasks–Queue applications with Celery framework.They learn the Python APIs of Celery, the techniques use to define and run tasks, how to define complex task workflows, how to configure and administer Celery, and to perform monitoring and management.

Duration2 days

Datasheetwww.einnovator.org/course/celery

Topics● Celery Architecture● Writing Tasks● Running Tasks● Celery Configuration● Brokers and Backends Integration● Scheduling Tasks● Tasks Workflows● Worker Concurrency● Monitoring & Management Celery● Security Considerations

QuickGuides

Celery[coming soon]

Page 35: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 35

JavaCore Java – Training

Core JavaIn this course, participants learn how to develop application with Java going from zero to expert in a week. First 3 days cover the essential Core Java, including language syntax, object-oriented development and design-patterns, generics and collections API, standard Java APIs for File IO, database access, threads and concurrency, sockets.

Day 4 cover Java 8 functional programming, with lambda expressions, streams processing, and collectors.

Day 5 gives an introduction to selected topis in Enterprise Java, with JEE and other open-source frameworks.

This course enables participants to take the Java OracleTM certifications.

Duration3 days | 4 days | 5 days

Datasheetwww.einnovator.org/course/java

Topics● Getting Started with Java● Java Language Syntax● Object-Oriented Programming● Design Principles and Design-Patterns● Java Generic Types● Java Collections● Java IO● Regular Expressions● JDBC● Threads & Concurrency● Sockets

Day 4● Java 8 essentials – Functional Programming

Day 5● JEE essentials

QuickGuides

Java 8

Page 36: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 36

Java Enterprise Java JEE – Training

Enterprise Java – JEEIn this course, participants learn how to develop enterprise Java application with JEE collection of standards. Topics covered, include application configuration by dependency-injection with CDI, persistence with JPA, web development with Servlets, JSP, and extensive coverage of JSF, Rest-WS, Messaging with JMS, Security, and Batch.

A critical discussion and evaluation is done throughout the course, relating the JEE standard specification with complementary or alternative features provided by high-level frameworks such as Spring Framework, among other.

This course enables participants to take the Java OracleTM certifications.

Duration4 days

Datasheetwww.einnovator.org/course/jee

Topics● Dependency Injection with CDI

– Components and Scopes– Producers– Stereotypes– Interceptors and Decorators

● Java Persistence Architecture (JPA)– Annotation-Driven Entity Mappings– Persistence API– Query Language– Transaction Management

● Web Development and Java Server Faces– Servlets and JSP– JSF Pages and Components– JSF Form Processing

● REST-WS with JAX-RS● JMS – Message Driven Beans● Security in Servlet Container● Java Batch

QuickGuides

Java 8

Page 37: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 37

PeopleManagement, Authors, Trainers

Jorge Simão, Ph.D.Director of Education & ConsultancySoftware Engineer, IT Trainer, ConsultantPh.D, M.Sc., B.Sc., Computer Science and EngineeringTrainer, Author/Courseware Developer

Marta FloresGlobal Sales & Marketing Manager

Julia RochaFinance & Accounting Manager

Page 38: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 38

PeopleTrainers, Consultants

Our TrainersAll our trainers are accomplished IT professionals and software engineers, with combined background of education in the industry and academy. With a hard-won and long experience of enterprise software development and/or innovation research, they combine the ideal skills and knowledge to bring the most value learning experience to enterprises.

Allying deep and broad understanding of the subject matter, with hands-on knowledge of technologies, trainers are certified by selected partner companies (when applicable), to deliver training engagements that are most enriching and rewarding to delegates, guaranteed to increase delegates productivity immediately after training.

Detailed trainer profile and CV, describing expertise, technical and educational experience, and credentials & certifications, available on request.

Filipe Silva, Edu.Software Engineer, IT Trainer, ConsultantB.Sc., Computer Science and Informatics EducationExpertise: Java, Spring, Web Development

David Navalho, Ph.D.Software Engineer, IT Trainer, ConsultantPh.D, M.Sc., B.Sc., Computer Science and EngineeringExpertise: BigData, Hadoop, Spark, Scala, Akka

Valter Balegas, Ph.D.Software Engineer, IT Trainer, ConsultantPh.D, M.Sc., B.Sc., Computer Science and EngineeringExpertise: NoSql Databases, Redis, Riak, RabbitMQ

Aleksander Fafula, Ph.D.Data Scientist, IT Trainer, ConsultantPh.D, M.Sc., B.Sc., Data Science and AnalyticsExpertise: Data-Science, Machine Learning, Sentiment Analysis, Hadoop, Hive, HBase, Sqoop, Spark

Page 39: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 39

EInnovatorConsultancy – Architecture Design

ConsultancyReal-world project requirements and constraints often deviate from a straightforward “out-of-the-book” usage of technologies – as covered in formal training sections. On the other hand, training engagements are an excellent opportunity to leverage the on-site presence of EInnovator expert-trainers. They will be in the right-place & right-time to listen, discuss, and inspect architectures and code bases, and make an external critical evaluation of design and implementation decisions.

Enterprises are encourage to invite EInnovator expert-trainers to continue the training engagement for a few extra days, in same week or following one, for consultancy sessions.

The Right Architecture – TogetherFinding the right combination of technologies, inter-component workflows, and identifying the trade-offs between alternative distributed solutions, requires a multi-dimensional critical evaluation taking in consideration many issues, like: performance, scalability, security, simplicity of implementation, infrastructure management, resource usage, time-lines and budget.

EInnovator consultants can help your organization project managers, architects, and developers to be guided trough the many challenging decisions required to converge to a suitable project architecture. Working together, in-house architects and EInnovator consultants can create a blueprint for project development during initial phases of a project, or define a roadmap to improve an existing system to meet new requirements as they emerge.

XY

DB

Page 40: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 40

Spring FrameworkApplication Architectures

Spring Integration PipelinesSpring Integration provides a consistent programming model – based on the concepts of enterprise integration patterns – to interconnect many different kinds of systems, using heterogeneous protocols and data formats. Familiarity with the many different types components available out-of-the box in the Spring Integration framework, and understanding the different ways they can be connected, allow for sophisticated data-processing pipelines to be build in a simple and productive way.

EInnovator can help by assisting project architects in selecting, defining, and configuring the most suitable Spring Integration components and pipelines to solve complex enterprise integration problems.

Spring Powered Multi-Tier ApplicationsDecomposing a mission critical Enterprise Application into suitable modules, layers, and components is essential for its long-term maintainability. Spring Framework provides the right set of abstractions that when combined with architectural and implementation best-practices allows applications to meet business functionality, be easily tested, and guarantee the long term scalability of projects and the productive of developers.

EInnovator can help by bringing years long experience in Spring powered architectures and project development, and guide projects in the right track from the start.

Infrastructure Layer

Data-Access Layer

Service Layer

Web UILayer

Web-ServiceLayer

DBSpring

Container

MessagingLayer

Page 41: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 41

HealthManager

VM DEA/CellVM DEA/Cell

Cloud ComputingCloud Foundry Architecture

GoRouter

Container

App

Container Container Container

Cloud Controller

Messaging NATS

> cf DB

ServiceBroker

DB Store

App App App

Cloud Foundry Installation & WorkflowsCloud Foundry follows a micro-service style architecture, where which component has a well defined role and can be deployed and scaled independently. Different operational contexts require the dimensioning of a Cloud Foundry installation appropriately, trading off scalability, fault-tolerance, and resource usage. Mixed installations combining a private cloud, running in an internal data-center, and public cloud for non-sensitive applications or handle burst of activity, require also appropriate configuration.

EInnovator can help by setting-up a CloudFoundry installation as your organization private cloud. Partnership with Pivotal ensures the use of the best tools for installing and managing Cloud Foundy. Alternatively, EInnovator can setup a vanilla open-source CloudFoundry, or work with your organization to setup a custom cloud infrastructure build out of CloudFoundry component parts and/or other open source technologies for load-balancing, container orchestration, and application monitoring, and deployment automation.

Cloud Foundry is an ideal platform for extending a continous-integration practice with a continous-delivery to the cloud. Automation of all steps of the release cycle ensures that applications' updates are deployed with minimal delay and minimal fuss.

Einnovator can also help in showing how to setup your continous integration workflows, based on tools such as Jenkins, with Cloud Foundry.

<dev>

CI/CD

Page 42: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 42

Micro-ServicesPatterns & Architectures

η-Service

η-Service

η-Service

Gateway

Micro-Services Design PatternsMicro-Service Architectures use already well established techniques, styles of integration, and design patterns to fully realize the promised of distributed deployments. Beyond following appropriated criteria to decompose the functionality of applications, Micro-Services pattern need to ensure that client applications response time is low, that failure of some micro-services don't cascade into a global system failure, and that security requirements are meet without reducing the usability of the system.

Combining intuition about the business domain, sensitivity to trade-offs in distributed computing, relying on battle-harden service discovery and configuration services, use of suitable inter-process communication abstractions, and setting up continuous delivery and cloud deployment strategies, are all required ingredient to reap all the benefits of micro-service architectures.

EInnovator can help by providing guidelines, and concrete design suggestions on how to split application functionality into semi-independent micro-services, and the implementation strategy to use to realize that architecture. The toolkit of technologies and techniques recommended include: REST APIs, loosely-coupled message passing, polyglot persistence, polyglot programming, distributed configuration, service discovery, functionality decomposition between UI gateways and back-end micro-services, circuit-breaker for reliability, and cloud deployment for scalability and operational simplicity.

DB

DB

DB

CircuitBreaker

Page 43: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 43

MessagingRabbitMQ – Deployment Architectures

Cluster & HA Queues (LAN)

Federation (WAN)

P

C

P

C

C

RabbitMQ Based ArchitecturesRabbitMQ supports multiple deployment modes that gives maximum flexibility to setup a high-performance messaging service. Understanding the trade-off between tightly-couple clusters, high-availability queues, and loosely-couple multi-server federations is a must to make sound architectural decisions.

EInnovator can help by matching application and infrastructure requirements to the architectural and design decisions, by showing the concrete steps to follow to setup a security policy for servers and projects, and how to articulate the messaging architecture with other aspects of application development including the persistence solution.

Use Cases: Loosely-coupled IPC, real-time notifications, large-scale information dissemination, user notifications and SMTP/Email integration.

Page 44: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 44

NoSqlRedis Deployment Architectures

App

Master-Slave Replication

Master

Sentinel-Driven HA

Slave

Cluster Data-Sharding

Slave Slave

App Master Slave

App

SentinelSentinel

Master

Master

App Master

Redis Based ArchitecturesRedis provides multiple mechanisms for distributed installation whose goals are are to increase fault-tolerance, high-availability, and partition data in order to deal with the limitations of memory-driven storage of data. Functionally correct applications, need to be complemented with equally sound architectures for the in-memory storage of data as done by Redis.

EInnovator can help setting up and validating Redis based solutions, and polyglot solutions based on a combination of NoSql and RDBMS databases, trough advise on architecture, configuration details, operational procedures, and application development best-practices.

Use Cases: Caching, Fast-Data, In-Memory Data Partitioning, Polyglot persistence.

Page 45: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 45

BigData ProcesingHadoop – HDFS & MapReduce

FS

Data Node Data Node Data Node

App /Job

Data Node Data Node

Hadoop/HDFS Storage

NameNode

Hadoop Infrastructure – HDFS & YARN Hadoop/HDFS is the de-facto standard solution for BigData ingestion and storage. Many of the platforms used for BigData processing and analytics rely on HDFS for storage, including: Hadoop's native Map-Reduce, Pig, and Hive, and also Spark, and HAWQ/HDB.

Hadoop/YARN is the standard cluster resource manager for Hadoop. It allows jobs to be concurrently scheduled and executed for multiple BigData processing framework, in a resource efficient and fair way.

EInnovator can help your organization defining and setting up Hadoop clusters, using our favourite Hadoop distribution – including Apache Hadoop, Pivotal's PHD, among other, and dimensioning and configuring the system to provide the desired QoS.

Map-Reduce – BigData ProcessingMap-Reduce framework, and the higher-level languages of Pig and Hive, define powerful abstractions to define BigData progressing jobs that are executed in a massively parallel way.

EInnovator can help you identify business use cases that benefit from BigData processing, which data to gather and use, and how to implement data processing jobs using Hadoop frameworks.

Page 46: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 46

BigData AnalyticsBigData Processing Architectures

SparkRDD Processing

Master

Worker

DataNode

Worker

Worker

App /Job

DataNode

DataNode

HDFS

HAWQ/HDBSQL Query Engine

Master

Segment

Segment

Segment

App /Job query

plan

localplan

localplan

localplan

DataNode

DataNode

partition

partition

partition

RDDplan

Spark & MLLibSpark provide a very flexible functional programming model for BigData processing. Advanced analytics also be performed within the Spark ecosystem using MLLib machine-learning library.

EInnovator can help you identify business use cases that benefit from distributed processing architecture, and programming model of Spark, and how to solve and deploy advanced analytics problems using MLLib.

HAWQ/HDB & MadLibHAWQ/HDB provides familiar SQL interface to BigData processing, while levering on the massive storage capacity of HDFS and optimized query plans for distributed execution, bringing high performance and interactive usage in BigData processing tasks. Advanced analytics also be performed within the HAWQ/HDB ecosystem using MadLib machine-learning library.

EInnovator can help adapt your organization intrinsic skills in SQL to a BigData context, and explore the ways by which distributed BigData processing can be used to improved business processes and solutions. Advanced modelling and predictive analytics using Madlib can also be to bring new insights from data.

Use Cases: Analysis of user interaction patterns in websites, sentiment analytics from social media data, workflows and process analysis from email messages, fraud-detection, credit simulations.

Page 47: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 47

IoTSpring XD/DataFlow, Storm

Sink

DB

Source Processor

IoT PipelinesIoT event processing workflows allow data gathered from a diverse set of sources – from social media to sensors – to be processed in real-time for monitoring and control purposes. Storage of historical event data complements real-time processing by allowing a more deep and encompassing analysis of the data.

Spring XD/DataFlow large set of out-of-box modules and DSL, provides a simple programming model where such pipelines can be easily realized. But the challenges of integrating real-time event processing and batch processing of historical data, implementing rich UI dashboards, visualization data, and training and evaluation of predictive models

EInnovator can help identifying business workflows where real-time event processing is needed or beneficial, and define an encompassing architecture and implementation strategy combining – data acquisition and processing, and storage backends, dashboard feature design, definition of predictive model to use, how implementation strategy.

Use Cases: Real-time analysis of user behavior in websites, real-time sentiment analytics from social media data, monitoring with physical sensor devices, fleet management, GPS navigation, automated trading.

HDFS

Page 48: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 48

Co

ntin

uo

usly

SolutionsDevelop with EInnovator

SolutionsPractices of agility, quality through consistent and continuous testing, and rapid time-to-market with continuous delivery pipelines, go beyond methodological and technological changes. They are also cultural changes.

EInnovator can help you streamline your project development lifecycle, trough a combination of a sound architecture, selection of best languages, databases, frameworks, practices of test-driven-development, build automation, integration testing, continuous-delivery, and cloud deployments.

Depending on the the project requirements and nature, Einnovator will propose one of the two following engagements:

● Have one or more EInnovator consultant architect/developer in the premises of your organization during key stages of the execution of the project.

● Out-sourcing your project development (in part or in full) by bringing one or more of your developers and architects to EInnovator office to develop the project together, and ensure a streamlined delivery and integration of the solution back to your organization.

{ }

Test

Build

Deploy

Code

Design

Page 49: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 49

SupportDevelop with EInnovator

SupportSuccessful, on-budget, and timely development of projects can be guaranteed with a dedicated email and phone hotline connecting your developers, architects, and IT operations staff to EInnovator technology specialists, that can be use to support them technically and helping them make sound and quick decisions on every day basis till project is completed.

● Uncertain how to implement the planned architecture ?!?

● Framework API twists ?!?

● Configuration parameter fine-tuning ?!?

● Failed builds ?!?

● App deployment issues ?!?

● Security Concerns ?!?

● Production Anomalies ?!?

● Scalability or performance issues ?!?

Keep your IT staff focused and productive.

Email or call us for support, and EInnovator will help you cover all aspects of project development and moving it forward like a breeze.

@{ }

@

@

Page 50: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 50

Stacks & PipelinesJava/Spring, JUnit, Jenkins, Cloud Foundry

Java/Spring StackJava is by far the leading language used in enterprise development. Relying on Spring Framework programming model, mission-critical applications can be build and tested easily by keeping developers focused on business issues, rather than low-level system and middleware details.

Jenkins Continuous Integration PipelinesJenkins is the de facto standard tool to define, manage, and run continuous integration pipelines, and articulate all the aspects of application build, test, and deployment. Using a combination of plugins to integrate with build tools – such as Maven – multiple SCM systems – such as GIT – and allowing the definition of several build policies and deployment strategies, is the ideal tool to automate application releases from concept coding to production.

Continuous Delivery with Cloud FoundryCloud foundry streamlines application deployment and scaling by automating all aspects required to run applications – from load balancing, to containerization, and failure and recovery detection, while givin freedom for selection of language, frameworks, and backing services.

Page 51: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 51

EInnovatorContacts – Ask How We Can Help...

Ask for More InfoWant to know more details about training offerings, course content and datasheets, promptly availability of EInnovator trainers, pricing, and other general information?!? Contact us... or send a request to be contacted by phone, or email.

A dedicated client assistant team will be at our disposal to answer all your questions and put you in direct contact with a trainer, so you can engage in the more technical discussion about the course content and format. After training, you may opt for a follow up on additional training sessions, consultancy sessions, and/or participatory solution co-development and support.

Ask for a Free Life WebinarNot sure if a technology or course if suitable for your needs?!? Ask for a free life online webinar, where a trainer will go trough an overview of the topics covered in a course. Webinars are usually 30-45 minutes long, with plenty of extra time for Questions&Answers. Date&time of your choice.

Schedule an On-Site Training EventReady to enable your team to reach the next level?!? Schedule a training event on-site, or ask for schedule of next public event. Select from EInnovator's wide range of training offerings, with quality guaranteed by painstaking prepared courseware material and highly skilled and experienced trainers. Combined courses and custom content also available on request.

ContactsEmail: [email protected]

[email protected]

Website: www.einnovator.org

Phone/Whatsapp:

Ireland/UK: +351 916 631 916

US: +351 916 631 916

Portugal: +351 916 631 916

Page 52: EInnovator 2020Q1

www.einnovator.org; Info: [email protected]© 2011-2016 EInnovator, EM – LTD 52

EInnovatorThe next step... to enable your next big step...