SlideShare une entreprise Scribd logo
1  sur  162
Télécharger pour lire hors ligne
Hadoop Application
Architectures: Fraud
Detection
Strata + Hadoop World, London 2016
tiny.cloudera.com/app-arch-london
tiny.cloudera.com/app-arch-questions
Gwen Shapira | @gwenshap
Jonathan Seidman | @jseidman
Ted Malaska | @ted_malaska
Mark Grover | @mark_grover
Questions? tiny.cloudera.com/app-arch-questions
Logistics
§ Break at 10:30 – 11:00 AM
§ Questions at the end of each section
§ Slides at tiny.cloudera.com/app-arch-london
§ Code at https://github.com/hadooparchitecturebook/fraud-
detection-tutorial
Questions? tiny.cloudera.com/app-arch-questions
About the book
§ @hadooparchbook
§ hadooparchitecturebook.com
§ github.com/hadooparchitecturebook
§ slideshare.com/hadooparchbook
Questions? tiny.cloudera.com/app-arch-questions
About the presenters
§ Principal Solutions Architect
at Cloudera
§ Previously, lead architect at
FINRA
§ Contributor to Apache
Hadoop, HBase, Flume,
Avro, Pig and Spark
§ Senior Solutions Architect/
Partner Enablement at
Cloudera
§ Contributor to Apache
Sqoop.
§ Previously, Technical Lead
on the big data team at
Orbitz, co-founder of the
Chicago Hadoop User
Group and Chicago Big Data
Ted Malaska Jonathan Seidman
Questions? tiny.cloudera.com/app-arch-questions
About the presenters
§ System Architect at
Confluent
§ Committer on Apache
Kafka, Sqoop
§ Contributor to Apache
Flume
§ Software Engineer on
Spark at Cloudera
§ Committer on Apache
Bigtop, PMC member on
Apache Sentry(incubating)
§ Contributor to Apache
Spark, Hadoop, Hive,
Sqoop, Pig, Flume
Gwen Shapira Mark Grover
Case Study Overview
Fraud Detection
Questions? tiny.cloudera.com/app-arch-questions
Credit Card Transaction Fraud
Questions? tiny.cloudera.com/app-arch-questions
Video Game Strategy
Questions? tiny.cloudera.com/app-arch-questions
Health Insurance Fraud
Questions? tiny.cloudera.com/app-arch-questions
Network anomaly detection
Ok, enough with the
use-cases
Can we move on?
Questions? tiny.cloudera.com/app-arch-questions
How Do We React
§  Human Brain at Tennis
-  Muscle Memory
-  Fast Thought
-  Slow Thought
Questions? tiny.cloudera.com/app-arch-questions
§  Muscle memory – for quick action (e.g. reject events)
-  Real time alerts
-  Real time dashboard
§  Platform for automated learning and improvement
-  Real time (fast thought)
-  Batch (slow thought)
§  Slow thought
-  Audit trail and analytics for human feedback
Back to network anomaly detection
Use case
Network Anomaly Detection
Questions? tiny.cloudera.com/app-arch-questions
§  “Beaconing” – Malware “phoning home”.
Use Case – Network Anomaly Detection
myserver.com
badhost.com
Questions? tiny.cloudera.com/app-arch-questions
§  Distributed Denial of Service attacks.
Use Case – Network Anomaly Detection
myserver.com
badhost.combadhost.combadhost.combadhost.combadhost.combadhost.combadhost.combadhost.combadhost.combadhost.combadhost.combadhost.combadhost.combadhost.com
Questions? tiny.cloudera.com/app-arch-questions
Use Case – Network Anomaly Detection
§  Network intrusion attempts – attempted or successful break-ins to a network.
Questions? tiny.cloudera.com/app-arch-questions
Use Case – Network Anomaly Detection
All of these require the ability to detect deviations from known patterns.
Questions? tiny.cloudera.com/app-arch-questions
Other Use Cases
Could be used for any system requiring detection of anomalous events:
Credit card transactions Market transactions Internet of Things
Etc…
Questions? tiny.cloudera.com/app-arch-questions
§  Standard protocol defining a format for capturing network traffic flow through
routers.
§  Captures network data as flow records. These flow records provide information
on source and destination IP addresses, traffic volumes, ports, etc.
§  We can use this data to detect normal and anomalous patterns in network
traffic.
Input Data – NetFlow
Why is Hadoop a great
fit?
Questions? tiny.cloudera.com/app-arch-questions
Hadoop
§ In traditional sense
- HDFS (append-only file system)
- MapReduce (really slow but robust execution engine)
§ Is not a great fit
Questions? tiny.cloudera.com/app-arch-questions
Why is Hadoop a Great Fit?
§ But the Hadoop ecosystem is!
§ More than just MapReduce + YARN + HDFS
Questions? tiny.cloudera.com/app-arch-questions
Volume
§ Have to maintain millions of device profiles
§ Retain flow history
§ Make and keep track of automated rule changes
Questions? tiny.cloudera.com/app-arch-questions
Velocity
§ Events arriving concurrently and at high velocity
§ Make decisions in real-time
Questions? tiny.cloudera.com/app-arch-questions
Variety
§ Maintain simple counters in profile (e.g. throughput
thresholds, purchase thresholds)
§ Iris or finger prints that need to be matched
Questions? tiny.cloudera.com/app-arch-questions
Challenges of Hadoop Implementation
Questions? tiny.cloudera.com/app-arch-questions
Challenges of Hadoop Implementation
Questions? tiny.cloudera.com/app-arch-questions
Challenges - Architectural Considerations
§  Storing state (for real-time decisions):
-  Local Caching? Distributed caching (e.g. Memcached)? Distributed storage (e.g. HBase)?
§  Profile Storage
-  HDFS? HBase?
§  Ingestion frameworks (for events):
-  Flume? Kafka? Sqoop?
§  Processing engines (for background processing):
-  Storm? Spark? Trident? Flume interceptors? Kafka Streams?
§  Data Modeling
§  Orchestration
-  Do we still need it for real-time systems?
Case Study
Requirements
Overview
Questions? tiny.cloudera.com/app-arch-questions
But First…
Real-Time? Near Real-Time? Stream Processing?
Questions? tiny.cloudera.com/app-arch-questions
Some Definitions
§  Real-time – well, not really. Most of what we’re talking about here is…
§  Near real-time:
-  Stream processing – continual processing of incoming data.
-  Alerting – immediate (well, as fast as possible) responses to incoming events.
Getting closer to real-time.
Data
Sources Extract
Transform
Load
Stream
Processing
millisecondsseconds
Alerts
!
Typical Hadoop Processing – Minutes to Hours Fraud Detection
Questions? tiny.cloudera.com/app-arch-questions
Requirements – Storage/Modeling
§  Need long term storage for large volumes of profile, event, transaction, etc. data.
Questions? tiny.cloudera.com/app-arch-questions
Requirements – Storage/Modeling
§  Need to be able to quickly retrieve specific profiles and respond quickly to incoming
events.
Questions? tiny.cloudera.com/app-arch-questions
Requirements – Storage/Modeling
§  Need to store sufficient data to analyze whether or not fraud is present.
Questions? tiny.cloudera.com/app-arch-questions
Requirements – Alerts
§  Need to be able to respond to incoming events quickly (milliseconds).
§  Need high throughput and low latency.
§  Processing requirements are minimal.
§  Two types of alerts: “atomic”, and “atomic with context”
Questions? tiny.cloudera.com/app-arch-questions
Requirements – Ingestion
Questions? tiny.cloudera.com/app-arch-questions
Requirements – Ingestion
§  Reliable – we don’t want to lose events.
event,event,event,event,event,event…
Questions? tiny.cloudera.com/app-arch-questions
Requirements – Ingestion
§  Support for multiple targets.
Storage
Data Sources
Questions? tiny.cloudera.com/app-arch-questions
Requirements – Ingestion
§  Needs to support high throughput of large volumes of events.
Questions? tiny.cloudera.com/app-arch-questions
Requirements – Stream Processing
§  A few seconds to minutes response times.
§  Need to be able to detect trends, thresholds, etc. across profiles.
§  Quick processing more important than 100% accuracy.
Questions? tiny.cloudera.com/app-arch-questions
Requirements – Batch Processing
§  Non real-time, “off-line”, exploratory processing and reporting.
§  Data needs to be available for analysts and users to analyze with tools of choice –
SQL, MapReduce, etc.
§  Results need to be able to feed back into NRT processing to adjust rules, etc.
"Parmigiano reggiano factory". Licensed under CC BY-SA 3.0 via Commons - https://commons.wikimedia.org/wiki/File:Parmigiano_reggiano_factory.jpg#/media/File:Parmigiano_reggiano_factory.jpg
High level architecture
Questions? tiny.cloudera.com/app-arch-questions
Events
Buffer
Anomaly
detector
Alerts/Events
Profiles/Rules
Long term
storage
Buffer
NRT
engine
Batch processing (ML/
manual adjustments)
Reporting info
Analytics interface
Real time
dashboard
Storage
NRT processing
External
systems
Batch
processing
High level architecture
Questions? tiny.cloudera.com/app-arch-questions
Events
Buffer
Anomaly
detector
Alerts/Events
Profiles/Rules
Long term
storage
Buffer
NRT
engine
Batch processing (ML/
manual adjustments)
Reporting info
Analytics interface
Real time
dashboard
Storage
NRT processing
External
systems
Batch
processing
High level architecture
Questions? tiny.cloudera.com/app-arch-questions
Hadoop Cluster II
Storage
Batch Processing
Hadoop Cluster I
Flume
(Sink)
HBase and/or
Memory Store
HDFS
HBase
Impala
Map/Reduce
Spark
Automated & Manual
Analytical Adjustments and
Pattern detection
Fetching & Updating Profiles/Rules
Batch Time
Adjustments
NRT/Stream Processing
Spark Streaming
Adjusting
NRT stats
Kafka
Events
Reporting
Flume
(Source)
Interceptor(Rules)
Flume
(Source)
Flume
(Source)
Interceptor (Rules)
Kafka
Alerts/Events
Flume Channel
Events
Alerts
Hadoop Cluster I
HBase and/or
Memory Store
Full Architecture
Storage Layer
Considerations
Questions? tiny.cloudera.com/app-arch-questions
Storage Layer Considerations
§ Two likely choices for long-term storage of data:
Questions? tiny.cloudera.com/app-arch-questions
Data Storage Layer Choices
§ Stores data directly as files
§ Fast scans
§ Poor random reads/writes
§ Stores data as Hfiles on HDFS
§ Slow scans
§ Fast random reads/writes
Questions? tiny.cloudera.com/app-arch-questions
Storage Considerations
§  Batch processing and reporting requires access to all raw and processed data.
§  Stream processing and alerting requires quickly fetching and saving profiles.
Questions? tiny.cloudera.com/app-arch-questions
Data Storage Layer Choices
§ For ingesting raw data.
§ Batch processing, also
some stream processing.
§ For reading/writing profiles.
§ Fast random reads and writes
facilitates quick access to
large number of profiles.
Questions? tiny.cloudera.com/app-arch-questions
But…
Is HBase fast enough for fetching profiles?
HBase and/or
Memory StoreFetching & Updating Profiles/Rules
Flume
(Source)
Interceptor(Rules)
Flume
(Source)
Flume
(Source)
Interceptor (Rules)
Hadoop Cluster I
HBase and/or
Memory Store
Questions? tiny.cloudera.com/app-arch-questions
What About Caching?
microseconds
Process
Memory
milliseconds
Questions? tiny.cloudera.com/app-arch-questions
Caching Options
§  Local in-memory cache (on-heap, off-heap).
§  Remote cache
-  Distributed cache (Memcached, Oracle Coherence, etc.)
-  HBase BlockCache
Questions? tiny.cloudera.com/app-arch-questions
§  Allows us to keep recently used data blocks in memory.
§  Note that this will require recent versions of HBase and specific configurations
on our cluster.
Caching – HBase BlockCache
Questions? tiny.cloudera.com/app-arch-questions
Hadoop Cluster II
Storage
Batch Processing
Hadoop Cluster I
Flume
(Sink)
HBase and/or
Memory Store
HDFS
HBase
Impala
Map/Reduce
Spark
Automated & Manual
Analytical Adjustments and
Pattern detection
Fetching & Updating Profiles/Rules
Batch Time
Adjustments
NRT/Stream Processing
Spark Streaming
Adjusting
NRT stats
Kafka
Events
Reporting
Flume
(Source)
Interceptor(Rules)
Flume
(Source)
Flume
(Source)
Local Cache (Profiles)
Kafka
Alerts/Events
Flume Channel
Events
Alerts
Hadoop Cluster I
HBase and/or
Memory Store
Our Storage Choices
HBase Data Modeling
Considerations
Questions? tiny.cloudera.com/app-arch-questions
Tables
HBase Data Modeling Considerations
Row Key ColumnValues
Questions? tiny.cloudera.com/app-arch-questions
HBase Data Modeling Considerations
§  Tables
-  Minimize # of Tables
-  Reduce/Remove Joins
-  # Region
-  Split policy
Questions? tiny.cloudera.com/app-arch-questions
HBase Data Modeling Considerations
§  RowKeys
-  Location Location Location
-  Salt is good for you
Questions? tiny.cloudera.com/app-arch-questions
HBase Data Modeling Considerations
Questions? tiny.cloudera.com/app-arch-questions
What is a Salt
# # # # Date Time
Date Time
Math.abs(DateTime.hash() % numOfSplits)
Questions? tiny.cloudera.com/app-arch-questions
Scan a Salted Table
Mapper
Region Server
Region
Mapper
Region
Mapper
Region Server
Region
Mapper
Region
Questions? tiny.cloudera.com/app-arch-questions
Scan a Salted Table
Mapper
RegionServer
Region
Filter
Mapper
Region
0001
0001
0002
0002
0002
…
Filtering on Client
Questions? tiny.cloudera.com/app-arch-questions
Scan a Salted Table
Region
0001
Filtered
Needed
Filtered
Filtered
Filtered
Filtered
0002
Filtered
Needed
Filtered
Filtered
Filtered
Filtered
…
Filtered
Needed
Filtered
Filtered
Filtered
Filtered
0060
Filtered
Needed
Filtered
Filtered
Filtered
Filtered
Mapper (One Big Scan)
Questions? tiny.cloudera.com/app-arch-questions
Scan a Salted Table
Region
0001
Filtered
Needed
Filtered
Filtered
Filtered
Filtered
0002
Filtered
Needed
Filtered
Filtered
Filtered
Filtered
…
Filtered
Needed
Filtered
Filtered
Filtered
Filtered
0060
Filtered
Needed
Filtered
Filtered
Filtered
Filtered
Mapper (Scan Per Salt)
Questions? tiny.cloudera.com/app-arch-questions
HBase Data Modeling Considerations
§  Columns
-  Mega Columns
-  Single Value Columns
-  Millions of Columns
-  Increment Values
Ingest and Near Real-
Time Alerting
Considerations
Questions? tiny.cloudera.com/app-arch-questions
Hadoop Cluster II
Storage
Batch Processing
Hadoop Cluster I
Flume
(Sink)
HBase and/or
Memory Store
HDFS
HBase
Impala
Map/Reduce
Spark
Automated & Manual
Analytical Adjustments and
Pattern detection
Fetching & Updating Profiles/Rules
Batch Time
Adjustments
NRT/Stream Processing
Spark Streaming
Adjusting
NRT stats
Kafka
Events
Reporting
Flume
(Source)
Interceptor(Rules)
Flume
(Source)
Flume
(Source)
Interceptor (Rules)
Kafka
Alerts/Events
Flume Channel
Events
Alerts
Hadoop Cluster I
HBase and/or
Memory Store
Questions? tiny.cloudera.com/app-arch-questions
The basic workflow
Network
Device
Network
Events
Queue
Event
Handler
Data Store
Fetch & Update
Profiles
Here is an event. Is it suspicious?
Queue
1 2
3
Questions? tiny.cloudera.com/app-arch-questions
The Queue
§  What makes Apache Kafka a good choice?
-  Low latency
-  High throughput
-  Partitioned and replicated
-  Easy to plug to applications
1
Questions? tiny.cloudera.com/app-arch-questions
The Basics
§ Messages are organized into topics
§ Producers push messages
§ Consumers pull messages
§ Kafka runs in a cluster. Nodes are called brokers
Questions? tiny.cloudera.com/app-arch-questions
Topics, Partitions and Logs
Questions? tiny.cloudera.com/app-arch-questions
Each partition is a log
Questions? tiny.cloudera.com/app-arch-questions
Each Broker has many partitions
Partition 0 Partition 0
Partition 1 Partition 1
Partition 2
Partition 1
Partition 0
Partition 2 Partion 2
Questions? tiny.cloudera.com/app-arch-questions
Producers load balance between partitions
Partition 0
Partition 1
Partition 2
Partition 1
Partition 0
Partition 2
Partition 0
Partition 1
Partion 2
Client
Questions? tiny.cloudera.com/app-arch-questions
Producers load balance between partitions
Partition 0
Partition 1
Partition 2
Partition 1
Partition 0
Partition 2
Partition 0
Partition 1
Partion 2
Client
Questions? tiny.cloudera.com/app-arch-questions
Consumers
Consumer Group Y
Consumer Group X
Consumer
Kafka Cluster
Topic
Partition A (File)
Partition B (File)
Partition C (File)
Consumer
Consumer
Consumer
Order retained within
partition
Order retained with in
partition but not over
partitionsOffSetX
OffSetX
OffSetX
OffSetYOffSetYOffSetY
Offsets are kept per
consumer group
Questions? tiny.cloudera.com/app-arch-questions
In our use-case
§  Topic for profile updates
§  Topic for current events
§  Topic for alerts
§  Topic for rule updates
Partitioned by device ID
Questions? tiny.cloudera.com/app-arch-questions
The event handler
§  Very basic pattern:
-  Consume a record
-  “do something to it”
-  Produce zero, one, or more results
Kafka Processor Pattern
2
Questions? tiny.cloudera.com/app-arch-questions
Easier than you think
§  Kafka provides load balancing and availability
-  Add processes when needed – they will get their share of partitions
-  You control partition assignment strategy
-  If a process crashes, partitions will get automatically reassigned
-  You control when an event is “done”
-  Send events safely and asynchronously
§  So you focus on the use-case, not the framework
Questions? tiny.cloudera.com/app-arch-questions
Inside The Processor
Flume Source
Flume Source
Kafka
Events Topic
Flume Source
Flume Interceptor
Event Processing Logic
Local
Memory
HBase Client
Kafka
Alerts Topic
KafkaConsumer
KafkaProducer
HBase
Kafka
Profile/Rules Updates Topic
Kafka
Rules Topic
Questions? tiny.cloudera.com/app-arch-questions
Scaling the Processor
Flume Source
Flume Source
Kafka
Initial Events Topic
Flume Source
Flume Interceptor
Event Processing Logic
Local
Memory
HBase
Client
Kafka
Alerts Topic
HBase
KafkaConsumer
KafkaProducer
Events Topic
Partition A
Partition B
Partition C
Producer
Partitioner
Producer
Partitioner
Producer
Partitioner
Better use of local
memory
Kafka
Profile/Rules Topic
Profile/Rules Topic
Partition A
Questions? tiny.cloudera.com/app-arch-questions
Ingest – Gateway to deep analytics
§  Data needs to end up in:
-  SparkStreaming
-  Can read directly from Kafka
-  HBase
-  HDFS
3
Questions? tiny.cloudera.com/app-arch-questions
Considerations for Ingest
§  Async – nothing can slow down the immediate reaction
-  Always ingest the data from a queue in separate thread or process
to avoid write-latency
§  Push vs Pull
§  Useful end-points – integrates with variety of data sources and sinks
§  Supports standard formats and possibly some transformations
-  Data format inside the queue can be different than in the data store
For example Avro -> Parquet
Questions? tiny.cloudera.com/app-arch-questions
More considerations - Safety
§  Reliable – data loss is not acceptable
-  Either “at-least-once” or “exactly-once”
-  When is “exactly-once” possible?
§  Error handling – reasonable reaction to unreasonable data
§  Security – Authentication, authorization, audit, lineage
Questions? tiny.cloudera.com/app-arch-questions
Good Patterns
§  Ingest all things. Events, evidence, alerts
-  It has potential value
-  Especially when troubleshooting
-  And for data scientists
§  Make sure you take your schema with you
-  Yes, your data probably has a schema
-  Everyone accessing the data (web apps, real time, stream, batch) will need to
know about it
-  So make it accessible in a centralized schema registry
Questions? tiny.cloudera.com/app-arch-questions
Choosing Ingest
Flume
• Part of Hadoop
• Key-value based
• Supports HDFS and
HBase
• Easy to configure
• Serializers provide
conversions
• At-least once delivery
guarantee
• Proven in huge
production environments
Kafka Connect
• Part of Apache Kafka
• Schema preserving
• Many connectors
• Well integrated support for
Parquet, Avro and JSON
• Exactly-once delivery
guarantee
• Easy to manage and scale
Spark Streaming
• Part of Hadoop
• Very strong transformation
story
• Not as simple as Flume or
Connect
• Supports HDFS and HBase
• Smart Kafka Integration
• Exactly-once guarantee
from Kafka
Our choice for
this example
Questions? tiny.cloudera.com/app-arch-questions
Ingestion - Flume
Flume HDFS Sink
Kafka Cluster
Topic
Partition A
Partition B
Partition C
Sink
Sink
Sink
HDFS
Flume SolR Sink
Sink
Sink
Sink
SolR
Flume HBase Sink
Sink
Sink
Sink
HBase
Questions? tiny.cloudera.com/app-arch-questions
Ingestion – Kafka Connect
Kafka Cluster
Topic
Partition A
Partition B
Partition C
Offsets
Configuration
Schemata
Copycat Worker
Convertalizer Connector
HDFS
Copycat Worker
Convertalizer Connector
Copycat Worker
Convertalizer Connector
Questions? tiny.cloudera.com/app-arch-questions
Alternative Architectures
§  What if…
Questions? tiny.cloudera.com/app-arch-questions
Do we really need HBase?
§  What if… Kafka would store all information used for real-time processing?
Network
Device
Network
Events
Queue Event handler
Fetch & Update
Profiles
Here is an event. Is is authorized?
Questions? tiny.cloudera.com/app-arch-questions
Log Compaction in Kafka
§  Kafka stores a “change log” of profiles
§  But we want the latest state
§  log.cleanup.policy = {delete / compact}
Questions? tiny.cloudera.com/app-arch-questions
Do we really need Spark Streaming?
§  What if… we could do low-latency single event processing and complex stream
processing analytics in the same system?
Network
Device
Network
Events
Queue Event handler Data StoreQueue
Spark Streaming
Adjust rules and statistics
Do we really need two of these?
Questions? tiny.cloudera.com/app-arch-questions
Is complex processing of single events possible?
§  The challenge:
-  Low latency vs high throughput
-  No data loss
-  Windows, aggregations, joins
-  Late data
Questions? tiny.cloudera.com/app-arch-questions
Solutions?
§  Apache Flink
-  Process each event, checkpoint in batches
-  Local and distributed state, also checkpointed
§  Apache Samza
-  State is persisted to Kafka (Change log pattern)
-  Local state cached in RocksDB
§  Kafka Streams
-  Similar to Samza
-  But in simple library that is part of Apache Kafka.
-  Late data as updates to state
Questions? tiny.cloudera.com/app-arch-questions
You Probably Don’t Need
Orchestration
Processing
Considerations
Questions? tiny.cloudera.com/app-arch-questions
Hadoop Cluster II
Storage
Batch Processing
Hadoop Cluster I
Flume
(Sink)
HBase and/or
Memory Store
HDFS
HBase
Impala
Map/Reduce
Spark
Automated & Manual
Analytical Adjustments and
Pattern detection
Fetching & Updating Profiles/Rules
Batch Time
Adjustments
NRT/Stream Processing
Spark Streaming
Adjusting
NRT stats
Kafka
Events
Reporting
Flume
(Source)
Interceptor(Rules)
Flume
(Source)
Flume
(Source)
Interceptor (Rules)
Kafka
Alerts/Events
Flume Channel
Events
Alerts
Hadoop Cluster I
HBase and/or
Memory Store
Reminder: Full Architecture
Questions? tiny.cloudera.com/app-arch-questions
Processing
Hadoop Cluster II
Storage
Batch Processing
HDFS
Impala
Map/Reduce
Spark
NRT/Stream Processing
Spark Streaming
Questions? tiny.cloudera.com/app-arch-questions
Two Kinds of Processing
Streaming Batch
NRT/Stream Processing
Spark Streaming
Batch Processing
Impala
Map/Reduce
Spark
Stream Processing
Considerations
Questions? tiny.cloudera.com/app-arch-questions
Stream Processing Options
1.  Storm
2.  Spark Streaming
3.  KafkaStreams
4.  Flink
Questions? tiny.cloudera.com/app-arch-questions
Why Spark Streaming?
§  There’s one engine to know.
§  Micro-batching helps you scale reliably.
§  Exactly once counting
§  Hadoop ecosystem integration is baked in.
§  No risk of data loss.
§  It’s easy to debug and run.
§  State management
§  Huge eco-system backing
§  You have access to ML libraries.
§  You can use SQL where needed.
§  Wide-spread use and hardened
Questions? tiny.cloudera.com/app-arch-questions
Spark Streaming Example
1.  val conf = new SparkConf().setMaster("local[2]”)
2.  val ssc = new StreamingContext(conf, Seconds(1))
3.  val lines = ssc.socketTextStream("localhost", 9999)
4.  val words = lines.flatMap(_.split(" "))
5.  val pairs = words.map(word => (word, 1))
6.  val wordCounts = pairs.reduceByKey(_ + _)
7.  wordCounts.print()
8.  SSC.start()
Questions? tiny.cloudera.com/app-arch-questions
Spark Streaming Example
1.  val conf = new SparkConf().setMaster("local[2]”)
2.  val sc = new SparkContext(conf)
3.  val lines = sc.textFile(path, 2)
4.  val words = lines.flatMap(_.split(" "))
5.  val pairs = words.map(word => (word, 1))
6.  val wordCounts = pairs.reduceByKey(_ + _)
7.  wordCounts.print()
Questions? tiny.cloudera.com/app-arch-questions
§  Catalyst
-  Spark SQL’s optimizer
§  Bringing Catalyst and Spark SQL integration to streaming
Spark SQL and Spark Streaming
Questions? tiny.cloudera.com/app-arch-questions
DStream
DStream
DStream
Spark Streaming
Single Pass
Source Receiver RDD
Source Receiver RDD
RDD
Filter Count Print
Source Receiver RDD
RDD
RDD
Single Pass
Filter Count Print
First
Batch
Second
Batch
Questions? tiny.cloudera.com/app-arch-questions
DStream
DStream
DStream
Single Pass
Source Receiver RDD
Source Receiver RDD
RDD
Filter Count
Print
Source Receiver
RDD
partitions
RDD
Parition
RDD
Single Pass
Filter Count
Pre-first
Batch
First
Batch
Second
Batch
Stateful RDD 1
Print
Stateful RDD 2
Stateful RDD 1
Spark Streaming
Questions? tiny.cloudera.com/app-arch-questions
Spark Streaming and HBase
Driver
Configs
Executor
Static Space
HConnection
Tasks Tasks
Tasks Tasks
Executor
Static Space
HConnection
Tasks Tasks
Tasks Tasks
Questions? tiny.cloudera.com/app-arch-questions
HBase-Spark Module
• 	BulkPut	
• 	BulkDelete	
• 	BulkGet	
• 	BulkLoad	(Wide	and	Tail)	
• 	ForeachPar99on(It,	Conn)	
• 	MapPar99on(it,	Conn)	
• 	Spark	SQL
Questions? tiny.cloudera.com/app-arch-questions
HBase-Spark	Module	
val hbaseContext = new HBaseContext(sc, config);
hbaseContext.bulkDelete[Array[Byte]](rdd,
tableName,
putRecord => new Delete(putRecord),
4);
val hbaseContext = new HBaseContext(sc, config)
rdd.hbaseBulkDelete(hbaseContext,
tableName,
putRecord => new Delete(putRecord),
4)
Questions? tiny.cloudera.com/app-arch-questions
HBase-Spark Module
val hbaseContext = new HBaseContext(sc, config)
rdd.hbaseBulkDelete(tableName)
Questions? tiny.cloudera.com/app-arch-questions
HBase-Spark Module
val hbaseContext = new HBaseContext(sc, config)
rdd.hbaseForeachPartition(hbaseContext, (it, conn) => {
val bufferedMutator = conn.getBufferedMutator(TableName.valueOf("t1"))
...
bufferedMutator.flush()
bufferedMutator.close()
})
val getRdd = rdd.hbaseMapPartitions(hbaseContext, (it, conn) => {
val table = conn.getTable(TableName.valueOf("t1"))
var res = mutable.MutableList[String]()
...
})
Questions? tiny.cloudera.com/app-arch-questions
HBase-Spark Module
rdd.hbaseBulkLoad (tableName,
t => {
Seq((new KeyFamilyQualifier(t.rowKey, t.family,
t.qualifier), t.value)).
iterator
},
stagingFolder)
Questions? tiny.cloudera.com/app-arch-questions
HBase-Spark Module
val df = sqlContext.load("org.apache.hadoop.hbase.spark",
Map("hbase.columns.mapping" -> "KEY_FIELD STRING :key, A_FIELD STRING c:a,
B_FIELD STRING c:b,",
"hbase.table" -> "t1"))
df.registerTempTable("hbaseTmp")
sqlContext.sql("SELECT KEY_FIELD FROM hbaseTmp " +
"WHERE " +
"(KEY_FIELD = 'get1' and B_FIELD < '3') or " +
"(KEY_FIELD <= 'get3' and B_FIELD = '8')").foreach(r => println(" - " + r))
Questions? tiny.cloudera.com/app-arch-questions
Demo Architecture
Generator Kafka
Spark
Streaming ???
Impala
SparkSQL
Spark
MlLib
SparkSQL
Questions? tiny.cloudera.com/app-arch-questions
§  Event-at-a-time processing
§  State-full processing
§  Windowing with out-of-order data
§  Auto scaling / fault tolerant / reprocessing / etc
KafkaStreams
Questions? tiny.cloudera.com/app-arch-questions
public static void main(String[] args) {
// specify the processing topology by first reading in a stream from a topic
Kstream<String, String> words = builder.stream(“topic1”);
// count the words in this stream as an aggregated table
Ktable<String, Long> counts = words.countByKey(“Counts”);
// write the result table to a new topic
counts.to(“topic2”)
// create stream processing instance and run in
KafkaStreams streams = new KafkaStreams(builder, config);
streams.start();
}
KafkaStreams Example
Questions? tiny.cloudera.com/app-arch-questions
§  Operators (join, aggregate, source, sink) are nodes in DAG
§  Stateful operators are persisted to Kafka – process states are a STREAM
§  Data parallelism via topic partitions
§  STREAM can be a changelog of a TABLE
§  TABLE is a snapshot of a STREAM
§  Flow is based on event time (when the event was created)
Key KafkaStreams Ideas
Questions? tiny.cloudera.com/app-arch-questions
New Hadoop Storage Option
Use	case	break	up	
Structured Data
SQL + Scan Use Cases
Unstructured
Data
Deep Storage
Scan Use Cases
Fixed Columns
Schemas
SQL + Scan Use
Cases
Any Type of Column
Schemas
Gets / Puts / Micro
Scans
Questions? tiny.cloudera.com/app-arch-questions
New Hadoop Storage Option
Use	case	break	up	
Structured Data
SQL + Scan Use Cases
Unstructured
Data
Deep Storage
Scan Use Cases
Fixed Columns
Schemas
SQL + Scan Use
Cases
Any Type of Column
Schemas
Gets / Puts / Micro
Scans
Questions? tiny.cloudera.com/app-arch-questions
Real-Time Analytics with Kudu
Generator Kafka
Spark
Streaming Kudu
Impala
SparkSQL
Spark
Mllib
SparkSQL
Questions? tiny.cloudera.com/app-arch-questions
Kudu and Spark
h-ps://github.com/tmalaska/SparkOnKudu	
	
Same	Development	From	HBase-Spark	is	now	on	Kudu	and	Spark	
•  Full	Spark	RDD	integraDon	
•  Full	Spark	Streaming	integraDon	
•  IniDal	SparkSQL	integraDon
Processing
Batch
Questions? tiny.cloudera.com/app-arch-questions
Why batch in a NRT use case?
§ For background processing
- To be later used for quick decision making
§ Exploratory analysis
- Machine Learning
§ Automated rule changes
- Based on new patterns
§ Analytics
- Who’s attacking us?
Questions? tiny.cloudera.com/app-arch-questions
Processing Engines (Past)
§  Hadoop = HDFS (distributed FS) + MapReduce (Processing engine)
Questions? tiny.cloudera.com/app-arch-questions
Processing Engines (present)
Hadoop&Storage&managers&(HDFS/HBase/Solr)&
Hive&
Pig&
Tez&
Cascading&
MapReduce&
Hive&
Cascading&
Crunch&
Pig&
Mahout&
Giraph&
Dato&(Graphlab)&
Spark&
Hive&(in&beta)&
Cascading&
Crunch&
Pig&&
MLlib&
GraphX&SQL&engines&
General&purpose&
execuHon&engines&
Storage&
managers&
Impala&
Drill&
H20&
Oryx&
Graph&processing&
engines&
Machine&Learning&
engines&
AbstracHon&
engines&
Storm/Trident&
Spark&Streaming&
RealOHme&&
frameworks&
Spark&SQL&
Presto&
Questions? tiny.cloudera.com/app-arch-questions
Processing Engines
§  MapReduce
§  Abstractions
§  Spark
§  Impala
Questions? tiny.cloudera.com/app-arch-questions
MapReduce
§  Oldie but goody
§  Restrictive Framework / Innovative Workarounds
§  Extreme Batch
Questions? tiny.cloudera.com/app-arch-questions
MapReduce Basic High Level
Mapper
HDFS
(Replicated)
Native File System
Block of
Data
Temp Spill
Data
Partitioned
Sorted Data
Reducer
Reducer
Local Copy
Output File
Questions? tiny.cloudera.com/app-arch-questions
Abstractions
§  SQL
-  Hive
§  Script/Code
-  Pig: Pig Latin
-  Crunch: Java/Scala
-  Cascading: Java/Scala
Questions? tiny.cloudera.com/app-arch-questions
Spark
§  The New Kid that isn’t that New Anymore
§  Easily 10x less code
§  Extremely Easy and Powerful API
§  Very good for iterative processing (machine learning, graph processing, etc.)
§  Scala, Java, and Python support
§  RDDs
§  Has Graph, ML and SQL engines built on it
§  R integration (SparkR)
Questions? tiny.cloudera.com/app-arch-questions
Spark - DAG
Questions? tiny.cloudera.com/app-arch-questions
Spark - DAG
Filter KeyBy
KeyBy
TextFile
TextFile
Join Filter Take
Questions? tiny.cloudera.com/app-arch-questions
Spark - DAG
Filter KeyBy
KeyBy
TextFile
TextFile
Join Filter Take
Good
Good
Good
Good
Good
Good
Good-Replay
Good-Replay
Good-Replay
Good
Good-Replay
Good
Good-Replay
Lost Block
Replay
Good-Replay
Lost Block
Good
Future
Future
Future
Future
Questions? tiny.cloudera.com/app-arch-questions
Is Spark replacing Hadoop?
§  Spark is an execution engine
-  Much faster than MR
-  Easier to program
§  Spark is replacing MR
Questions? tiny.cloudera.com/app-arch-questions
Impala
§  MPP Style SQL Engine on top of Hadoop
§  Very Fast
§  High Concurrency
§  Analytical windowing functions
Questions? tiny.cloudera.com/app-arch-questions
Impala – Broadcast Join
Impala Daemon
Smaller Table
Data Block
100% Cached
Smaller Table
Smaller Table
Data Block
Impala Daemon
100% Cached
Smaller Table
Impala Daemon
100% Cached
Smaller Table
Impala Daemon
Hash Join Function
Bigger Table
Data Block
100% Cached
Smaller Table
Output
Impala Daemon
Hash Join Function
Bigger Table
Data Block
100% Cached
Smaller Table
Output
Impala Daemon
Hash Join Function
Bigger Table
Data Block
100% Cached
Smaller Table
Output
Questions? tiny.cloudera.com/app-arch-questions
Impala – Partitioned Hash Join
Impala Daemon
Smaller Table
Data Block
~33% Cached
Smaller Table
Smaller Table
Data Block
Impala Daemon
~33% Cached
Smaller Table
Impala Daemon
~33% Cached
Smaller Table
Hash Partitioner Hash Partitioner
Impala Daemon
BiggerTable Data
Block
Impala Daemon Impala Daemon
Hash Partitioner
Hash Join Function
33% Cached
Smaller Table
Hash Join Function
33% Cached
Smaller Table
Hash Join Function
33% Cached
Smaller Table
Output Output Output
BiggerTable Data
Block
Hash Partitioner
BiggerTable Data
Block
Hash Partitioner
Questions? tiny.cloudera.com/app-arch-questions
Presto
§  Facebook’s SQL engine replacement for Hive
§  Written in Java
§  Doesn’t build on top of MapReduce
§  Very few commercial vendors supporting it
Batch processing in
our use-case
Questions? tiny.cloudera.com/app-arch-questions
Batch processing in fraud-detection
§  Reporting
-  How many events come daily?
-  How does it compare to last year?
§  Machine Learning
-  Automated rules changes
§  Other processing
-  Tracking device history and updating profiles
Questions? tiny.cloudera.com/app-arch-questions
Reporting
§  Need a fast JDBC-compliant SQL framework
§  Impala or Hive or Presto?
§  We choose Impala
-  Fast
-  Highly concurrent
-  JDBC/ODBC support
Questions? tiny.cloudera.com/app-arch-questions
Machine Learning
§  Options
-  MLLib (with Spark)
-  Oryx
-  H2O
-  Mahout
§  We recommend MLLib because of larger use of Spark in our architecture.
Questions? tiny.cloudera.com/app-arch-questions
Other Processing
§  Options:
-  MapReduce
-  Spark
§  We choose Spark
-  Much faster than MR
-  Easier to write applications due to higher level API
-  Re-use of code between streaming and batch
Overall Architecture
Overview
Questions? tiny.cloudera.com/app-arch-questions
Events
Buffer
Anomaly
detector
Alerts/Events
Profiles/Rules
Long term
storage
Buffer
NRT
engine
Batch processing (ML/
manual adjustments)
Reporting info
Analytics interface
Real time
dashboard
Storage
NRT processing
External
systems
Batch
processing
High level architecture
Questions? tiny.cloudera.com/app-arch-questions
Hadoop Cluster II
Storage
Batch Processing
Hadoop Cluster I
Flume
(Sink)
HBase and/or
Memory Store
HDFS
HBase
Impala
Map/Reduce
Spark
Automated & Manual
Analytical Adjustments and
Pattern detection
Fetching & Updating Profiles/Rules
Batch Time
Adjustments
NRT/Stream Processing
Spark Streaming
Adjusting
NRT stats
Kafka
Events
Reporting
Flume
(Source)
Interceptor(Rules)
Flume
(Source)
Flume
(Source)
Interceptor (Rules)
Kafka
Alerts/Events
Flume Channel
Events
Alerts
Hadoop Cluster I
HBase and/or
Memory Store
Questions? tiny.cloudera.com/app-arch-questions
Hadoop Cluster II
Storage
Batch Processing
Hadoop Cluster I
Flume
(Sink)
HBase and/or
Memory Store
HDFS
HBase
Impala
Map/Reduce
Spark
Automated & Manual
Analytical Adjustments and
Pattern detection
Fetching & Updating Profiles/Rules
Batch Time
Adjustments
NRT/Stream Processing
Spark Streaming
Adjusting
NRT stats
Kafka
Events
Reporting
Flume
(Source)
Interceptor(Rules)
Flume
(Source)
Flume
(Source)
Interceptor (Rules)
Kafka
Alerts/Events
Flume Channel
Events
Alerts
Hadoop Cluster I
HBase and/or
Memory Store
Storage
Questions? tiny.cloudera.com/app-arch-questions
HDFS
Raw and Processed
Events
HBase
Profiles
(Disk/Cache)
Local Cache
Profiles
Questions? tiny.cloudera.com/app-arch-questions
Hadoop Cluster II
Storage
Batch Processing
Hadoop Cluster I
Flume
(Sink)
HBase and/or
Memory Store
HDFS
HBase
Impala
Map/Reduce
Spark
Automated & Manual
Analytical Adjustments and
Pattern detection
Fetching & Updating Profiles/Rules
Batch Time
Adjustments
NRT/Stream Processing
Spark Streaming
Adjusting
NRT stats
Kafka
Events
Reporting
Flume
(Source)
Interceptor(Rules)
Flume
(Source)
Flume
(Source)
Interceptor (Rules)
Kafka
Alerts/Events
Flume Channel
Events
Alerts
Hadoop Cluster I
HBase and/or
Memory Store
NRT Processing/Alerting
Questions? tiny.cloudera.com/app-arch-questions
Flume Source
Flume Source
Kafka
Transactions Topic
Flume Source
Flume Interceptor
Event Processing Logic
Local
Memory
HBase Client
Kafka
Replies Topic
KafkaConsumer
KafkaProducer
HBase
Kafka
Updates Topic
Kafka
Rules Topic
Questions? tiny.cloudera.com/app-arch-questions
Hadoop Cluster II
Storage
Batch Processing
Hadoop Cluster I
Flume
(Sink)
HBase and/or
Memory Store
HDFS
HBase
Impala
Map/Reduce
Spark
Automated & Manual
Analytical Adjustments and
Pattern detection
Fetching & Updating Profiles/Rules
Batch Time
Adjustments
NRT/Stream Processing
Spark Streaming
Adjusting
NRT stats
Kafka
Events
Reporting
Flume
(Source)
Interceptor(Rules)
Flume
(Source)
Flume
(Source)
Interceptor (Rules)
Kafka
Alerts/Events
Flume Channel
Events
Alerts
Hadoop Cluster I
HBase and/or
Memory Store
Ingestion
Questions? tiny.cloudera.com/app-arch-questions
Flume HDFS Sink
Kafka Cluster
Topic
Partition A
Partition B
Partition C
Sink
Sink
Sink
HDFS
Flume SolR Sink
Sink
Sink
Sink
SolR
Flume Hbase Sink
Sink
Sink
Sink
HBase
Questions? tiny.cloudera.com/app-arch-questions
Hadoop Cluster II
Storage
Batch Processing
Hadoop Cluster I
Flume
(Sink)
HBase and/or
Memory Store
HDFS
HBase
Impala
Map/Reduce
Spark
Automated & Manual
Analytical Adjustments and
Pattern detection
Fetching & Updating Profiles/Rules
Batch Time
Adjustments
NRT/Stream Processing
Spark Streaming
Adjusting
NRT stats
Kafka
Events
Reporting
Flume
(Source)
Interceptor(Rules)
Flume
(Source)
Flume
(Source)
Interceptor (Rules)
Kafka
Alerts/Events
Flume Channel
Events
Alerts
Hadoop Cluster I
HBase and/or
Memory Store
Processing
Questions? tiny.cloudera.com/app-arch-questions
Hadoop Cluster II
Storage
Batch Processing
HDFS
Impala
Map/Reduce
Spark
NRT/Stream Processing
Spark Streaming
Reporting
Stream
Processing
Batch, ML,
etc.
Demo!
Where else to find us?
Questions? tiny.cloudera.com/app-arch-questions
Book Signing!
§  This evening at 5:35 PM at the Cloudera booth.
Questions? tiny.cloudera.com/app-arch-questions
Other Sessions
§  Ask Us Anything session (all) – Thursday, 2:05 pm
§  Reliability guarantees in Kafka (Gwen) – Thursday, 12:05 pm
§  Putting Kafka into overdrive (Gwen) – Thursday, 5:25 pm
§  Introduction to Apache Spark for Java and Scala developers (Ted) – Friday, 2:05
pm
Thank you!
@hadooparchbook
tiny.cloudera.com/app-arch-london
Gwen Shapira | @gwenshap
Jonathan Seidman | @jseidman
Ted Malaska | @ted_malaska
Mark Grover | @mark_grover

Contenu connexe

Tendances

Application Architectures with Hadoop
Application Architectures with HadoopApplication Architectures with Hadoop
Application Architectures with Hadoophadooparchbook
 
Architecting next generation big data platform
Architecting next generation big data platformArchitecting next generation big data platform
Architecting next generation big data platformhadooparchbook
 
Architecting a Fraud Detection Application with Hadoop
Architecting a Fraud Detection Application with HadoopArchitecting a Fraud Detection Application with Hadoop
Architecting a Fraud Detection Application with HadoopDataWorks Summit
 
Hadoop Application Architectures tutorial - Strata London
Hadoop Application Architectures tutorial - Strata LondonHadoop Application Architectures tutorial - Strata London
Hadoop Application Architectures tutorial - Strata Londonhadooparchbook
 
Streaming architecture patterns
Streaming architecture patternsStreaming architecture patterns
Streaming architecture patternshadooparchbook
 
Fraud Detection using Hadoop
Fraud Detection using HadoopFraud Detection using Hadoop
Fraud Detection using Hadoophadooparchbook
 
Strata NY 2014 - Architectural considerations for Hadoop applications tutorial
Strata NY 2014 - Architectural considerations for Hadoop applications tutorialStrata NY 2014 - Architectural considerations for Hadoop applications tutorial
Strata NY 2014 - Architectural considerations for Hadoop applications tutorialhadooparchbook
 
Application Architectures with Hadoop - Big Data TechCon SF 2014
Application Architectures with Hadoop - Big Data TechCon SF 2014Application Architectures with Hadoop - Big Data TechCon SF 2014
Application Architectures with Hadoop - Big Data TechCon SF 2014hadooparchbook
 
Architectural considerations for Hadoop Applications
Architectural considerations for Hadoop ApplicationsArchitectural considerations for Hadoop Applications
Architectural considerations for Hadoop Applicationshadooparchbook
 
Architectures styles and deployment on the hadoop
Architectures styles and deployment on the hadoopArchitectures styles and deployment on the hadoop
Architectures styles and deployment on the hadoopAnu Ravindranath
 
Application Architectures with Hadoop - UK Hadoop User Group
Application Architectures with Hadoop - UK Hadoop User GroupApplication Architectures with Hadoop - UK Hadoop User Group
Application Architectures with Hadoop - UK Hadoop User Grouphadooparchbook
 
Hadoop Application Architectures tutorial at Big DataService 2015
Hadoop Application Architectures tutorial at Big DataService 2015Hadoop Application Architectures tutorial at Big DataService 2015
Hadoop Application Architectures tutorial at Big DataService 2015hadooparchbook
 
Architectural Patterns for Streaming Applications
Architectural Patterns for Streaming ApplicationsArchitectural Patterns for Streaming Applications
Architectural Patterns for Streaming Applicationshadooparchbook
 
Application architectures with Hadoop – Big Data TechCon 2014
Application architectures with Hadoop – Big Data TechCon 2014Application architectures with Hadoop – Big Data TechCon 2014
Application architectures with Hadoop – Big Data TechCon 2014hadooparchbook
 
Application architectures with Hadoop and Sessionization in MR
Application architectures with Hadoop and Sessionization in MRApplication architectures with Hadoop and Sessionization in MR
Application architectures with Hadoop and Sessionization in MRmarkgrover
 
Architecting a Next Generation Data Platform
Architecting a Next Generation Data PlatformArchitecting a Next Generation Data Platform
Architecting a Next Generation Data Platformhadooparchbook
 
Strata EU tutorial - Architectural considerations for hadoop applications
Strata EU tutorial - Architectural considerations for hadoop applicationsStrata EU tutorial - Architectural considerations for hadoop applications
Strata EU tutorial - Architectural considerations for hadoop applicationshadooparchbook
 
Application Architectures with Hadoop
Application Architectures with HadoopApplication Architectures with Hadoop
Application Architectures with Hadoophadooparchbook
 
Big Data Anti-Patterns: Lessons From the Front LIne
Big Data Anti-Patterns: Lessons From the Front LIneBig Data Anti-Patterns: Lessons From the Front LIne
Big Data Anti-Patterns: Lessons From the Front LIneDouglas Moore
 
Intro to hadoop tutorial
Intro to hadoop tutorialIntro to hadoop tutorial
Intro to hadoop tutorialmarkgrover
 

Tendances (20)

Application Architectures with Hadoop
Application Architectures with HadoopApplication Architectures with Hadoop
Application Architectures with Hadoop
 
Architecting next generation big data platform
Architecting next generation big data platformArchitecting next generation big data platform
Architecting next generation big data platform
 
Architecting a Fraud Detection Application with Hadoop
Architecting a Fraud Detection Application with HadoopArchitecting a Fraud Detection Application with Hadoop
Architecting a Fraud Detection Application with Hadoop
 
Hadoop Application Architectures tutorial - Strata London
Hadoop Application Architectures tutorial - Strata LondonHadoop Application Architectures tutorial - Strata London
Hadoop Application Architectures tutorial - Strata London
 
Streaming architecture patterns
Streaming architecture patternsStreaming architecture patterns
Streaming architecture patterns
 
Fraud Detection using Hadoop
Fraud Detection using HadoopFraud Detection using Hadoop
Fraud Detection using Hadoop
 
Strata NY 2014 - Architectural considerations for Hadoop applications tutorial
Strata NY 2014 - Architectural considerations for Hadoop applications tutorialStrata NY 2014 - Architectural considerations for Hadoop applications tutorial
Strata NY 2014 - Architectural considerations for Hadoop applications tutorial
 
Application Architectures with Hadoop - Big Data TechCon SF 2014
Application Architectures with Hadoop - Big Data TechCon SF 2014Application Architectures with Hadoop - Big Data TechCon SF 2014
Application Architectures with Hadoop - Big Data TechCon SF 2014
 
Architectural considerations for Hadoop Applications
Architectural considerations for Hadoop ApplicationsArchitectural considerations for Hadoop Applications
Architectural considerations for Hadoop Applications
 
Architectures styles and deployment on the hadoop
Architectures styles and deployment on the hadoopArchitectures styles and deployment on the hadoop
Architectures styles and deployment on the hadoop
 
Application Architectures with Hadoop - UK Hadoop User Group
Application Architectures with Hadoop - UK Hadoop User GroupApplication Architectures with Hadoop - UK Hadoop User Group
Application Architectures with Hadoop - UK Hadoop User Group
 
Hadoop Application Architectures tutorial at Big DataService 2015
Hadoop Application Architectures tutorial at Big DataService 2015Hadoop Application Architectures tutorial at Big DataService 2015
Hadoop Application Architectures tutorial at Big DataService 2015
 
Architectural Patterns for Streaming Applications
Architectural Patterns for Streaming ApplicationsArchitectural Patterns for Streaming Applications
Architectural Patterns for Streaming Applications
 
Application architectures with Hadoop – Big Data TechCon 2014
Application architectures with Hadoop – Big Data TechCon 2014Application architectures with Hadoop – Big Data TechCon 2014
Application architectures with Hadoop – Big Data TechCon 2014
 
Application architectures with Hadoop and Sessionization in MR
Application architectures with Hadoop and Sessionization in MRApplication architectures with Hadoop and Sessionization in MR
Application architectures with Hadoop and Sessionization in MR
 
Architecting a Next Generation Data Platform
Architecting a Next Generation Data PlatformArchitecting a Next Generation Data Platform
Architecting a Next Generation Data Platform
 
Strata EU tutorial - Architectural considerations for hadoop applications
Strata EU tutorial - Architectural considerations for hadoop applicationsStrata EU tutorial - Architectural considerations for hadoop applications
Strata EU tutorial - Architectural considerations for hadoop applications
 
Application Architectures with Hadoop
Application Architectures with HadoopApplication Architectures with Hadoop
Application Architectures with Hadoop
 
Big Data Anti-Patterns: Lessons From the Front LIne
Big Data Anti-Patterns: Lessons From the Front LIneBig Data Anti-Patterns: Lessons From the Front LIne
Big Data Anti-Patterns: Lessons From the Front LIne
 
Intro to hadoop tutorial
Intro to hadoop tutorialIntro to hadoop tutorial
Intro to hadoop tutorial
 

En vedette

Hadoop application architectures - using Customer 360 as an example
Hadoop application architectures - using Customer 360 as an exampleHadoop application architectures - using Customer 360 as an example
Hadoop application architectures - using Customer 360 as an examplehadooparchbook
 
Top 5 mistakes when writing Spark applications
Top 5 mistakes when writing Spark applicationsTop 5 mistakes when writing Spark applications
Top 5 mistakes when writing Spark applicationshadooparchbook
 
Data warehousing with Hadoop
Data warehousing with HadoopData warehousing with Hadoop
Data warehousing with Hadoophadooparchbook
 
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...SPTechCon
 
The Power of Both Choices: Practical Load Balancing for Distributed Stream Pr...
The Power of Both Choices: Practical Load Balancing for Distributed Stream Pr...The Power of Both Choices: Practical Load Balancing for Distributed Stream Pr...
The Power of Both Choices: Practical Load Balancing for Distributed Stream Pr...Anis Nasir
 
Hadoop & Cloud Storage: Object Store Integration in Production
Hadoop & Cloud Storage: Object Store Integration in ProductionHadoop & Cloud Storage: Object Store Integration in Production
Hadoop & Cloud Storage: Object Store Integration in ProductionDataWorks Summit/Hadoop Summit
 
Office 365 Tip: Create a team site on SharePoint
Office 365 Tip: Create a team site on SharePointOffice 365 Tip: Create a team site on SharePoint
Office 365 Tip: Create a team site on SharePointMicrosoft India
 
Architecting a Scalable Hadoop Platform: Top 10 considerations for success
Architecting a Scalable Hadoop Platform: Top 10 considerations for successArchitecting a Scalable Hadoop Platform: Top 10 considerations for success
Architecting a Scalable Hadoop Platform: Top 10 considerations for successDataWorks Summit
 
SharePoint & The Road Ahead: SharePoint 2016 & Office 365
SharePoint & The Road Ahead: SharePoint 2016 & Office 365 SharePoint & The Road Ahead: SharePoint 2016 & Office 365
SharePoint & The Road Ahead: SharePoint 2016 & Office 365 Richard Harbridge
 
Operational Tips For Deploying Apache Spark
Operational Tips For Deploying Apache SparkOperational Tips For Deploying Apache Spark
Operational Tips For Deploying Apache SparkDatabricks
 
Evolving Hadoop into an Operational Platform with Data Applications
Evolving Hadoop into an Operational Platform with Data ApplicationsEvolving Hadoop into an Operational Platform with Data Applications
Evolving Hadoop into an Operational Platform with Data ApplicationsDataWorks Summit
 
Spark: Interactive To Production
Spark: Interactive To ProductionSpark: Interactive To Production
Spark: Interactive To ProductionJen Aman
 
Chris O'Brien - Modern SharePoint sites and the SharePoint Framework - reference
Chris O'Brien - Modern SharePoint sites and the SharePoint Framework - referenceChris O'Brien - Modern SharePoint sites and the SharePoint Framework - reference
Chris O'Brien - Modern SharePoint sites and the SharePoint Framework - referenceChris O'Brien
 
Top 5 mistakes when writing Spark applications
Top 5 mistakes when writing Spark applicationsTop 5 mistakes when writing Spark applications
Top 5 mistakes when writing Spark applicationshadooparchbook
 
How Big Data and Hadoop Integrated into BMC ControlM at CARFAX
How Big Data and Hadoop Integrated into BMC ControlM at CARFAXHow Big Data and Hadoop Integrated into BMC ControlM at CARFAX
How Big Data and Hadoop Integrated into BMC ControlM at CARFAXBMC Software
 

En vedette (16)

Hadoop application architectures - using Customer 360 as an example
Hadoop application architectures - using Customer 360 as an exampleHadoop application architectures - using Customer 360 as an example
Hadoop application architectures - using Customer 360 as an example
 
Top 5 mistakes when writing Spark applications
Top 5 mistakes when writing Spark applicationsTop 5 mistakes when writing Spark applications
Top 5 mistakes when writing Spark applications
 
Data warehousing with Hadoop
Data warehousing with HadoopData warehousing with Hadoop
Data warehousing with Hadoop
 
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
 
The Power of Both Choices: Practical Load Balancing for Distributed Stream Pr...
The Power of Both Choices: Practical Load Balancing for Distributed Stream Pr...The Power of Both Choices: Practical Load Balancing for Distributed Stream Pr...
The Power of Both Choices: Practical Load Balancing for Distributed Stream Pr...
 
Hadoop & Cloud Storage: Object Store Integration in Production
Hadoop & Cloud Storage: Object Store Integration in ProductionHadoop & Cloud Storage: Object Store Integration in Production
Hadoop & Cloud Storage: Object Store Integration in Production
 
Office 365 Tip: Create a team site on SharePoint
Office 365 Tip: Create a team site on SharePointOffice 365 Tip: Create a team site on SharePoint
Office 365 Tip: Create a team site on SharePoint
 
Architecting a Scalable Hadoop Platform: Top 10 considerations for success
Architecting a Scalable Hadoop Platform: Top 10 considerations for successArchitecting a Scalable Hadoop Platform: Top 10 considerations for success
Architecting a Scalable Hadoop Platform: Top 10 considerations for success
 
SharePoint & The Road Ahead: SharePoint 2016 & Office 365
SharePoint & The Road Ahead: SharePoint 2016 & Office 365 SharePoint & The Road Ahead: SharePoint 2016 & Office 365
SharePoint & The Road Ahead: SharePoint 2016 & Office 365
 
Operational Tips For Deploying Apache Spark
Operational Tips For Deploying Apache SparkOperational Tips For Deploying Apache Spark
Operational Tips For Deploying Apache Spark
 
RHadoop, R meets Hadoop
RHadoop, R meets HadoopRHadoop, R meets Hadoop
RHadoop, R meets Hadoop
 
Evolving Hadoop into an Operational Platform with Data Applications
Evolving Hadoop into an Operational Platform with Data ApplicationsEvolving Hadoop into an Operational Platform with Data Applications
Evolving Hadoop into an Operational Platform with Data Applications
 
Spark: Interactive To Production
Spark: Interactive To ProductionSpark: Interactive To Production
Spark: Interactive To Production
 
Chris O'Brien - Modern SharePoint sites and the SharePoint Framework - reference
Chris O'Brien - Modern SharePoint sites and the SharePoint Framework - referenceChris O'Brien - Modern SharePoint sites and the SharePoint Framework - reference
Chris O'Brien - Modern SharePoint sites and the SharePoint Framework - reference
 
Top 5 mistakes when writing Spark applications
Top 5 mistakes when writing Spark applicationsTop 5 mistakes when writing Spark applications
Top 5 mistakes when writing Spark applications
 
How Big Data and Hadoop Integrated into BMC ControlM at CARFAX
How Big Data and Hadoop Integrated into BMC ControlM at CARFAXHow Big Data and Hadoop Integrated into BMC ControlM at CARFAX
How Big Data and Hadoop Integrated into BMC ControlM at CARFAX
 

Similaire à Hadoop application architectures - Fraud detection tutorial

Event Detection Pipelines with Apache Kafka
Event Detection Pipelines with Apache KafkaEvent Detection Pipelines with Apache Kafka
Event Detection Pipelines with Apache KafkaDataWorks Summit
 
Architecting a next-generation data platform
Architecting a next-generation data platformArchitecting a next-generation data platform
Architecting a next-generation data platformhadooparchbook
 
Architecting a Next Gen Data Platform – Strata New York 2018
Architecting a Next Gen Data Platform – Strata New York 2018Architecting a Next Gen Data Platform – Strata New York 2018
Architecting a Next Gen Data Platform – Strata New York 2018Jonathan Seidman
 
Architecting a Next Gen Data Platform – Strata London 2018
Architecting a Next Gen Data Platform – Strata London 2018Architecting a Next Gen Data Platform – Strata London 2018
Architecting a Next Gen Data Platform – Strata London 2018Jonathan Seidman
 
Huawei Advanced Data Science With Spark Streaming
Huawei Advanced Data Science With Spark StreamingHuawei Advanced Data Science With Spark Streaming
Huawei Advanced Data Science With Spark StreamingJen Aman
 
The Heart of the Data Mesh Beats in Real-Time with Apache Kafka
The Heart of the Data Mesh Beats in Real-Time with Apache KafkaThe Heart of the Data Mesh Beats in Real-Time with Apache Kafka
The Heart of the Data Mesh Beats in Real-Time with Apache KafkaKai Wähner
 
ProtectWise Revolutionizes Enterprise Network Security in the Cloud with Data...
ProtectWise Revolutionizes Enterprise Network Security in the Cloud with Data...ProtectWise Revolutionizes Enterprise Network Security in the Cloud with Data...
ProtectWise Revolutionizes Enterprise Network Security in the Cloud with Data...DataStax Academy
 
Processing Real-Time Data at Scale: A streaming platform as a central nervous...
Processing Real-Time Data at Scale: A streaming platform as a central nervous...Processing Real-Time Data at Scale: A streaming platform as a central nervous...
Processing Real-Time Data at Scale: A streaming platform as a central nervous...confluent
 
Engineering Machine Learning Data Pipelines Series: Streaming New Data as It ...
Engineering Machine Learning Data Pipelines Series: Streaming New Data as It ...Engineering Machine Learning Data Pipelines Series: Streaming New Data as It ...
Engineering Machine Learning Data Pipelines Series: Streaming New Data as It ...Precisely
 
Cassandra summit-2013
Cassandra summit-2013Cassandra summit-2013
Cassandra summit-2013dfilppi
 
Architecting a Next Generation Data Platform – Strata Singapore 2017
Architecting a Next Generation Data Platform – Strata Singapore 2017Architecting a Next Generation Data Platform – Strata Singapore 2017
Architecting a Next Generation Data Platform – Strata Singapore 2017Jonathan Seidman
 
First in Class: Optimizing the Data Lake for Tighter Integration
First in Class: Optimizing the Data Lake for Tighter IntegrationFirst in Class: Optimizing the Data Lake for Tighter Integration
First in Class: Optimizing the Data Lake for Tighter IntegrationInside Analysis
 
Using Machine Learning to Understand Kafka Runtime Behavior (Shivanath Babu, ...
Using Machine Learning to Understand Kafka Runtime Behavior (Shivanath Babu, ...Using Machine Learning to Understand Kafka Runtime Behavior (Shivanath Babu, ...
Using Machine Learning to Understand Kafka Runtime Behavior (Shivanath Babu, ...confluent
 
[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...
[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...
[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...Ludovic Piot
 
Operating Kafka on AutoPilot mode @ DBS Bank (Arpit Dubey, DBS Bank) Kafka Su...
Operating Kafka on AutoPilot mode @ DBS Bank (Arpit Dubey, DBS Bank) Kafka Su...Operating Kafka on AutoPilot mode @ DBS Bank (Arpit Dubey, DBS Bank) Kafka Su...
Operating Kafka on AutoPilot mode @ DBS Bank (Arpit Dubey, DBS Bank) Kafka Su...confluent
 
Выявление и локализация проблем в сети с помощью инструментов Riverbed
Выявление и локализация проблем в сети с помощью инструментов RiverbedВыявление и локализация проблем в сети с помощью инструментов Riverbed
Выявление и локализация проблем в сети с помощью инструментов RiverbedElena Marianenko
 
Approaches for application request throttling - Cloud Developer Days Poland
Approaches for application request throttling - Cloud Developer Days PolandApproaches for application request throttling - Cloud Developer Days Poland
Approaches for application request throttling - Cloud Developer Days PolandMaarten Balliauw
 
Introduction to Apache NiFi 1.11.4
Introduction to Apache NiFi 1.11.4Introduction to Apache NiFi 1.11.4
Introduction to Apache NiFi 1.11.4Timothy Spann
 
Webinar How to Achieve True Scalability in SaaS Applications
Webinar How to Achieve True Scalability in SaaS ApplicationsWebinar How to Achieve True Scalability in SaaS Applications
Webinar How to Achieve True Scalability in SaaS ApplicationsTechcello
 

Similaire à Hadoop application architectures - Fraud detection tutorial (20)

Event Detection Pipelines with Apache Kafka
Event Detection Pipelines with Apache KafkaEvent Detection Pipelines with Apache Kafka
Event Detection Pipelines with Apache Kafka
 
Architecting a next-generation data platform
Architecting a next-generation data platformArchitecting a next-generation data platform
Architecting a next-generation data platform
 
Architecting a Next Gen Data Platform – Strata New York 2018
Architecting a Next Gen Data Platform – Strata New York 2018Architecting a Next Gen Data Platform – Strata New York 2018
Architecting a Next Gen Data Platform – Strata New York 2018
 
Architecting a Next Gen Data Platform – Strata London 2018
Architecting a Next Gen Data Platform – Strata London 2018Architecting a Next Gen Data Platform – Strata London 2018
Architecting a Next Gen Data Platform – Strata London 2018
 
Huawei Advanced Data Science With Spark Streaming
Huawei Advanced Data Science With Spark StreamingHuawei Advanced Data Science With Spark Streaming
Huawei Advanced Data Science With Spark Streaming
 
IoT Austin CUG talk
IoT Austin CUG talkIoT Austin CUG talk
IoT Austin CUG talk
 
The Heart of the Data Mesh Beats in Real-Time with Apache Kafka
The Heart of the Data Mesh Beats in Real-Time with Apache KafkaThe Heart of the Data Mesh Beats in Real-Time with Apache Kafka
The Heart of the Data Mesh Beats in Real-Time with Apache Kafka
 
ProtectWise Revolutionizes Enterprise Network Security in the Cloud with Data...
ProtectWise Revolutionizes Enterprise Network Security in the Cloud with Data...ProtectWise Revolutionizes Enterprise Network Security in the Cloud with Data...
ProtectWise Revolutionizes Enterprise Network Security in the Cloud with Data...
 
Processing Real-Time Data at Scale: A streaming platform as a central nervous...
Processing Real-Time Data at Scale: A streaming platform as a central nervous...Processing Real-Time Data at Scale: A streaming platform as a central nervous...
Processing Real-Time Data at Scale: A streaming platform as a central nervous...
 
Engineering Machine Learning Data Pipelines Series: Streaming New Data as It ...
Engineering Machine Learning Data Pipelines Series: Streaming New Data as It ...Engineering Machine Learning Data Pipelines Series: Streaming New Data as It ...
Engineering Machine Learning Data Pipelines Series: Streaming New Data as It ...
 
Cassandra summit-2013
Cassandra summit-2013Cassandra summit-2013
Cassandra summit-2013
 
Architecting a Next Generation Data Platform – Strata Singapore 2017
Architecting a Next Generation Data Platform – Strata Singapore 2017Architecting a Next Generation Data Platform – Strata Singapore 2017
Architecting a Next Generation Data Platform – Strata Singapore 2017
 
First in Class: Optimizing the Data Lake for Tighter Integration
First in Class: Optimizing the Data Lake for Tighter IntegrationFirst in Class: Optimizing the Data Lake for Tighter Integration
First in Class: Optimizing the Data Lake for Tighter Integration
 
Using Machine Learning to Understand Kafka Runtime Behavior (Shivanath Babu, ...
Using Machine Learning to Understand Kafka Runtime Behavior (Shivanath Babu, ...Using Machine Learning to Understand Kafka Runtime Behavior (Shivanath Babu, ...
Using Machine Learning to Understand Kafka Runtime Behavior (Shivanath Babu, ...
 
[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...
[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...
[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...
 
Operating Kafka on AutoPilot mode @ DBS Bank (Arpit Dubey, DBS Bank) Kafka Su...
Operating Kafka on AutoPilot mode @ DBS Bank (Arpit Dubey, DBS Bank) Kafka Su...Operating Kafka on AutoPilot mode @ DBS Bank (Arpit Dubey, DBS Bank) Kafka Su...
Operating Kafka on AutoPilot mode @ DBS Bank (Arpit Dubey, DBS Bank) Kafka Su...
 
Выявление и локализация проблем в сети с помощью инструментов Riverbed
Выявление и локализация проблем в сети с помощью инструментов RiverbedВыявление и локализация проблем в сети с помощью инструментов Riverbed
Выявление и локализация проблем в сети с помощью инструментов Riverbed
 
Approaches for application request throttling - Cloud Developer Days Poland
Approaches for application request throttling - Cloud Developer Days PolandApproaches for application request throttling - Cloud Developer Days Poland
Approaches for application request throttling - Cloud Developer Days Poland
 
Introduction to Apache NiFi 1.11.4
Introduction to Apache NiFi 1.11.4Introduction to Apache NiFi 1.11.4
Introduction to Apache NiFi 1.11.4
 
Webinar How to Achieve True Scalability in SaaS Applications
Webinar How to Achieve True Scalability in SaaS ApplicationsWebinar How to Achieve True Scalability in SaaS Applications
Webinar How to Achieve True Scalability in SaaS Applications
 

Dernier

FUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENTFUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENTSneha Padhiar
 
Novel 3D-Printed Soft Linear and Bending Actuators
Novel 3D-Printed Soft Linear and Bending ActuatorsNovel 3D-Printed Soft Linear and Bending Actuators
Novel 3D-Printed Soft Linear and Bending ActuatorsResearcher Researcher
 
US Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of ActionUS Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of ActionMebane Rash
 
STATE TRANSITION DIAGRAM in psoc subject
STATE TRANSITION DIAGRAM in psoc subjectSTATE TRANSITION DIAGRAM in psoc subject
STATE TRANSITION DIAGRAM in psoc subjectGayathriM270621
 
DEVICE DRIVERS AND INTERRUPTS SERVICE MECHANISM.pdf
DEVICE DRIVERS AND INTERRUPTS  SERVICE MECHANISM.pdfDEVICE DRIVERS AND INTERRUPTS  SERVICE MECHANISM.pdf
DEVICE DRIVERS AND INTERRUPTS SERVICE MECHANISM.pdfAkritiPradhan2
 
Virtual memory management in Operating System
Virtual memory management in Operating SystemVirtual memory management in Operating System
Virtual memory management in Operating SystemRashmi Bhat
 
Curve setting (Basic Mine Surveying)_MI10412MI.pptx
Curve setting (Basic Mine Surveying)_MI10412MI.pptxCurve setting (Basic Mine Surveying)_MI10412MI.pptx
Curve setting (Basic Mine Surveying)_MI10412MI.pptxRomil Mishra
 
Comparative study of High-rise Building Using ETABS,SAP200 and SAFE., SAFE an...
Comparative study of High-rise Building Using ETABS,SAP200 and SAFE., SAFE an...Comparative study of High-rise Building Using ETABS,SAP200 and SAFE., SAFE an...
Comparative study of High-rise Building Using ETABS,SAP200 and SAFE., SAFE an...Erbil Polytechnic University
 
priority interrupt computer organization
priority interrupt computer organizationpriority interrupt computer organization
priority interrupt computer organizationchnrketan
 
Mine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptxMine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptxRomil Mishra
 
CME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTES
CME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTESCME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTES
CME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTESkarthi keyan
 
Turn leadership mistakes into a better future.pptx
Turn leadership mistakes into a better future.pptxTurn leadership mistakes into a better future.pptx
Turn leadership mistakes into a better future.pptxStephen Sitton
 
TEST CASE GENERATION GENERATION BLOCK BOX APPROACH
TEST CASE GENERATION GENERATION BLOCK BOX APPROACHTEST CASE GENERATION GENERATION BLOCK BOX APPROACH
TEST CASE GENERATION GENERATION BLOCK BOX APPROACHSneha Padhiar
 
Katarzyna Lipka-Sidor - BIM School Course
Katarzyna Lipka-Sidor - BIM School CourseKatarzyna Lipka-Sidor - BIM School Course
Katarzyna Lipka-Sidor - BIM School Coursebim.edu.pl
 
2022 AWS DNA Hackathon 장애 대응 솔루션 jarvis.
2022 AWS DNA Hackathon 장애 대응 솔루션 jarvis.2022 AWS DNA Hackathon 장애 대응 솔루션 jarvis.
2022 AWS DNA Hackathon 장애 대응 솔루션 jarvis.elesangwon
 
SOFTWARE ESTIMATION COCOMO AND FP CALCULATION
SOFTWARE ESTIMATION COCOMO AND FP CALCULATIONSOFTWARE ESTIMATION COCOMO AND FP CALCULATION
SOFTWARE ESTIMATION COCOMO AND FP CALCULATIONSneha Padhiar
 
A brief look at visionOS - How to develop app on Apple's Vision Pro
A brief look at visionOS - How to develop app on Apple's Vision ProA brief look at visionOS - How to develop app on Apple's Vision Pro
A brief look at visionOS - How to develop app on Apple's Vision ProRay Yuan Liu
 
『澳洲文凭』买麦考瑞大学毕业证书成绩单办理澳洲Macquarie文凭学位证书
『澳洲文凭』买麦考瑞大学毕业证书成绩单办理澳洲Macquarie文凭学位证书『澳洲文凭』买麦考瑞大学毕业证书成绩单办理澳洲Macquarie文凭学位证书
『澳洲文凭』买麦考瑞大学毕业证书成绩单办理澳洲Macquarie文凭学位证书rnrncn29
 
Robotics Group 10 (Control Schemes) cse.pdf
Robotics Group 10  (Control Schemes) cse.pdfRobotics Group 10  (Control Schemes) cse.pdf
Robotics Group 10 (Control Schemes) cse.pdfsahilsajad201
 
Comprehensive energy systems.pdf Comprehensive energy systems.pdf
Comprehensive energy systems.pdf Comprehensive energy systems.pdfComprehensive energy systems.pdf Comprehensive energy systems.pdf
Comprehensive energy systems.pdf Comprehensive energy systems.pdfalene1
 

Dernier (20)

FUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENTFUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
 
Novel 3D-Printed Soft Linear and Bending Actuators
Novel 3D-Printed Soft Linear and Bending ActuatorsNovel 3D-Printed Soft Linear and Bending Actuators
Novel 3D-Printed Soft Linear and Bending Actuators
 
US Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of ActionUS Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of Action
 
STATE TRANSITION DIAGRAM in psoc subject
STATE TRANSITION DIAGRAM in psoc subjectSTATE TRANSITION DIAGRAM in psoc subject
STATE TRANSITION DIAGRAM in psoc subject
 
DEVICE DRIVERS AND INTERRUPTS SERVICE MECHANISM.pdf
DEVICE DRIVERS AND INTERRUPTS  SERVICE MECHANISM.pdfDEVICE DRIVERS AND INTERRUPTS  SERVICE MECHANISM.pdf
DEVICE DRIVERS AND INTERRUPTS SERVICE MECHANISM.pdf
 
Virtual memory management in Operating System
Virtual memory management in Operating SystemVirtual memory management in Operating System
Virtual memory management in Operating System
 
Curve setting (Basic Mine Surveying)_MI10412MI.pptx
Curve setting (Basic Mine Surveying)_MI10412MI.pptxCurve setting (Basic Mine Surveying)_MI10412MI.pptx
Curve setting (Basic Mine Surveying)_MI10412MI.pptx
 
Comparative study of High-rise Building Using ETABS,SAP200 and SAFE., SAFE an...
Comparative study of High-rise Building Using ETABS,SAP200 and SAFE., SAFE an...Comparative study of High-rise Building Using ETABS,SAP200 and SAFE., SAFE an...
Comparative study of High-rise Building Using ETABS,SAP200 and SAFE., SAFE an...
 
priority interrupt computer organization
priority interrupt computer organizationpriority interrupt computer organization
priority interrupt computer organization
 
Mine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptxMine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptx
 
CME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTES
CME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTESCME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTES
CME 397 - SURFACE ENGINEERING - UNIT 1 FULL NOTES
 
Turn leadership mistakes into a better future.pptx
Turn leadership mistakes into a better future.pptxTurn leadership mistakes into a better future.pptx
Turn leadership mistakes into a better future.pptx
 
TEST CASE GENERATION GENERATION BLOCK BOX APPROACH
TEST CASE GENERATION GENERATION BLOCK BOX APPROACHTEST CASE GENERATION GENERATION BLOCK BOX APPROACH
TEST CASE GENERATION GENERATION BLOCK BOX APPROACH
 
Katarzyna Lipka-Sidor - BIM School Course
Katarzyna Lipka-Sidor - BIM School CourseKatarzyna Lipka-Sidor - BIM School Course
Katarzyna Lipka-Sidor - BIM School Course
 
2022 AWS DNA Hackathon 장애 대응 솔루션 jarvis.
2022 AWS DNA Hackathon 장애 대응 솔루션 jarvis.2022 AWS DNA Hackathon 장애 대응 솔루션 jarvis.
2022 AWS DNA Hackathon 장애 대응 솔루션 jarvis.
 
SOFTWARE ESTIMATION COCOMO AND FP CALCULATION
SOFTWARE ESTIMATION COCOMO AND FP CALCULATIONSOFTWARE ESTIMATION COCOMO AND FP CALCULATION
SOFTWARE ESTIMATION COCOMO AND FP CALCULATION
 
A brief look at visionOS - How to develop app on Apple's Vision Pro
A brief look at visionOS - How to develop app on Apple's Vision ProA brief look at visionOS - How to develop app on Apple's Vision Pro
A brief look at visionOS - How to develop app on Apple's Vision Pro
 
『澳洲文凭』买麦考瑞大学毕业证书成绩单办理澳洲Macquarie文凭学位证书
『澳洲文凭』买麦考瑞大学毕业证书成绩单办理澳洲Macquarie文凭学位证书『澳洲文凭』买麦考瑞大学毕业证书成绩单办理澳洲Macquarie文凭学位证书
『澳洲文凭』买麦考瑞大学毕业证书成绩单办理澳洲Macquarie文凭学位证书
 
Robotics Group 10 (Control Schemes) cse.pdf
Robotics Group 10  (Control Schemes) cse.pdfRobotics Group 10  (Control Schemes) cse.pdf
Robotics Group 10 (Control Schemes) cse.pdf
 
Comprehensive energy systems.pdf Comprehensive energy systems.pdf
Comprehensive energy systems.pdf Comprehensive energy systems.pdfComprehensive energy systems.pdf Comprehensive energy systems.pdf
Comprehensive energy systems.pdf Comprehensive energy systems.pdf
 

Hadoop application architectures - Fraud detection tutorial