SlideShare une entreprise Scribd logo
1  sur  72
Télécharger pour lire hors ligne
Hive	Bucketing	in
Apache	Spark
Tejas	Patil
Facebook
Agenda
• Why	bucketing	?
• Why	is	shuffle	bad	?
• How	to	avoid	shuffle	?
• When	to	use	bucketing	?
• Spark’s	bucketing	support
• Bucketing	semantics	of	Spark	vs	Hive
• Hive	bucketing	support	in	Spark
• SQL	Planner	improvements
Why	bucketing	?
Table	A Table	B
.	.	.	.	.	.	 .	.	.	.	.	.	JOIN
Table	A Table	B
.	.	.	.	.	.	 .	.	.	.	.	.	JOIN
Broadcast	hash	join
- Ship	smaller	table	to	all	nodes
- Stream	the	other	table
Table	A Table	B
.	.	.	.	.	.	 .	.	.	.	.	.	JOIN
Broadcast	hash	join Shuffle	hash	join
- Ship	smaller	table	to	all	nodes
- Stream	the	other	table
- Shuffle	both	tables,
- Hash	smaller	one,	stream	the	
bigger	one
Table	A Table	B
.	.	.	.	.	.	 .	.	.	.	.	.	JOIN
Broadcast	hash	join Shuffle	hash	join
- Ship	smaller	table	to	all	nodes
- Stream	the	other	table
- Shuffle	both	tables,
- Hash	smaller	one,	stream	the	
bigger	one
Sort	merge	join
- Shuffle	both	tables,
- Sort	both	tables,	buffer	one,	
stream	the	bigger	one
Table	A Table	B
.	.	.	.	.	.	 .	.	.	.	.	.	JOIN
Broadcast	hash	join Shuffle	hash	join Sort	merge	join
- Ship	smaller	table	to	all	nodes
- Stream	the	other	table
- Shuffle	both	tables,
- Hash	smaller	one,	stream	the	
bigger	one
- Shuffle	both	tables,
- Sort	both	tables,	buffer	one,	
stream	the	bigger	one
Table	A Table	B
.	.	.	.	.	.	 .	.	.	.	.	.	
Sort	Merge	Join
Table	A Table	B
.	.	.	.	.	.	 .	.	.	.	.	.	
Shuffle ShuffleShuffleShuffle
Sort	Merge	Join
Table	A Table	B
.	.	.	.	.	.	 .	.	.	.	.	.	
Sort Sort Sort Sort
Shuffle ShuffleShuffleShuffle
Sort	Merge	Join
Table	A Table	B
.	.	.	.	.	.	 .	.	.	.	.	.	
Sort
Join
Sort
Join
Sort
Join
Sort
Join
Shuffle ShuffleShuffleShuffle
Sort	Merge	Join
Sort	Merge	Join
Why	is	shuffle	bad	?
Table	A Table	B
.	.	.	.	.	.	 .	.	.	.	.	.	
Disk Disk
Disk	IO	for	shuffle	outputs
Why	is	shuffle	bad	?
Table	A Table	B
.	.	.	.	.	.	 .	.	.	.	.	.	
Shuffle Shuffle Shuffle Shuffle
M	*	R	network	connections
Why	is	shuffle	bad	?
How	to	avoid	shuffle	?
student	s JOIN	attendance	a	
ON	s.id =	a.student_id
student	s	JOIN	results	r	
ON	s.id =	r.student_id
student	s	JOIN	course_registrationc
ON	s.id =	c.student_id
……..
……..
student	s	JOIN	attendance	a	
ON	s.id =	a.student_id
student	s	JOIN	results	r	
ON	s.id =	r.student_id
student	s	JOIN	attendance	a	
ON	s.id =	a.student_id
student	s	JOIN	results	r	
ON	s.id =	r.student_id
Pre-compute	at	
table	creation
Bucketing	=
pre-(shuffle	+	sort)	inputs
on	join	keys
Without	
bucketing
Job(s)	populating	input	table
Without	
bucketing
With
bucketing
Job(s)	populating	input	table
Performance	comparison
0
100
200
300
400
500
600
700
800
900
Before After	Bucketing
Reserved	CPU	time	(days)
0
1
2
3
4
5
6
7
8
Before After	Bucketing
Latency	(hours)
When	to	use	bucketing	?
• Tables	used	frequently	in	JOINs	with	same	key
• Student	->	student_id
• Employee	->	employee_id
• Users	->	user_id
When	to	use	bucketing	?
• Tables	used	frequently	in	JOINs	with	same	key
• Student	->	student_id
• Employee	->	employee_id
• Users	->	user_id
….	=>	Dimension	tables
When	to	use	bucketing	?
• Tables	used	frequently	in	JOINs	with	same	key
• Student	->	student_id
• Employee	->	employee_id
• Users	->	user_id
• Loading	daily	cumulative	tables
• Both	base	and	delta	tables	could	be	bucketed	on	a	common	column
When	to	use	bucketing	?
• Tables	used	frequently	in	JOINs	with	same	key
• Student	->	student_id
• Employee	->	employee_id
• Users	->	user_id
• Loading	daily	cumulative	tables
• Both	base	and	delta	tables	could	be	bucketed	on	a	common	column
• Indexing	capability
Spark’s	bucketing	support
Creation	of	bucketed	tables
df.write
.bucketBy(numBuckets,	 "col1",	...)
.sortBy("col1",	...)
.saveAsTable("bucketed_table")
via	Dataframe API
Creation	of	bucketed	tables
CREATE	TABLE	bucketed_table(
column1	INT,
...
)	USING	parquet
CLUSTERED	BY	(column1,	…)
SORTED	BY	(column1,	…)
INTO	`n`	BUCKETS
via	SQL	statement
Check	bucketing	spec
scala>	sparkContext.sql("DESC	FORMATTED	student").collect.foreach(println)
[#	col_name,data_type,comment]
[student_id,int,null]
[name,int,null]
[#	Detailed	Table	Information,,]
[Database,default,]
[Table,table1,]
[Owner,tejas,]
[Created,Fri May	12	08:06:33	PDT	2017,]
[Type,MANAGED,]
[Num Buckets,64,]
[Bucket	Columns,[`student_id`],]
[Sort	Columns,[`student_id`],]
[Properties,[serialization.format=1],]
[Serde Library,org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe,]
[InputFormat,org.apache.hadoop.mapred.SequenceFileInputFormat,]
Bucketing	config
SET	spark.sql.sources.bucketing.enabled=true
[SPARK-15453]	Extract	bucketing	info	in	
FileSourceScanExec
SELECT	*	FROM	tableA JOIN	tableB ON	tableA.i=	tableB.i AND	tableA.j=	tableB.j
[SPARK-15453]	Extract	bucketing	info	in	
FileSourceScanExec
SELECT	*	FROM	tableA JOIN	tableB ON	tableA.i=	tableB.i AND	tableA.j=	tableB.j
Sort	Merge	Join
Sort
Exchange
TableScan
Sort
Exchange
TableScan Already	bucketed	on	columns	(i,	j)
Shuffle	on	columns	(i,	j)
Sort	on	columns	(i,	j)
Join	on	[i,j],	[i,j]	respectively	of	relations
[SPARK-15453]	Extract	bucketing	info	in	
FileSourceScanExec
SELECT	*	FROM	tableA JOIN	tableB ON	tableA.i=	tableB.i AND	tableA.j=	tableB.j
Sort	Merge	Join
Sort
Exchange
TableScan
Sort
Exchange
TableScan Already	bucketed	on	columns	(i,	j)
Shuffle	on	columns	(i,	j)
Sort	on	columns	(i,	j)
Join	on	[i,j],	[i,j]	respectively	of	relations
[SPARK-15453]	Extract	bucketing	info	in	
FileSourceScanExec
SELECT	*	FROM	tableA JOIN	tableB ON	tableA.i=	tableB.i AND	tableA.j=	tableB.j
Sort	Merge	Join
TableScan TableScan
Sort	Merge	Join
TableScan TableScanSort
Exchange
Sort
Exchange
Bucketing	semantics	of
Spark	vs	Hive
Bucketing	semantics	of	Spark	vs	Hive
bucket	0 bucket	1
bucket
(n-1)
…..
Hive
my_bucketed_table
Bucketing	semantics	of	Spark	vs	Hive
bucket	0 bucket	1
bucket
(n-1)
…..
Hive Spark
bucket	0 bucket	1
bucket
(n-1)
…..
bucket	0
bucket	0
bucket	1
bucket
(n-1)bucket
(n-1)bucket
(n-1)
my_bucketed_tablemy_bucketed_table
Bucketing	semantics	of	Spark	vs	Hive
bucket	0 bucket	1
bucket
(n-1)
…..
Hive
M M M M M
R R R
…..
Bucketing	semantics	of	Spark	vs	Hive
bucket	0 bucket	1
bucket
(n-1)
…..
Hive Spark
M M M M M
R R R
…..
bucket	0 bucket	1
bucket
(n-1)
…..
M M M M M…..
bucket	0
bucket	0
bucket	1
bucket
(n-1)bucket
(n-1)bucket
(n-1)
Bucketing	semantics	of	Spark	vs	Hive
Hive Spark
Model Optimizes	 reads,	writes	are	costly Writes	are	cheaper,	 reads	are	
costlier
Bucketing	semantics	of	Spark	vs	Hive
Hive Spark
Model Optimizes	 reads,	writes	are	costly Writes	are	cheaper,	 reads	are	
costlier
Unit	of	bucketing A	single	file	represents	 a	 single	
bucket
A	collection	 of	files	together	
comprise	 a	single	bucket
Bucketing	semantics	of	Spark	vs	Hive
Hive Spark
Model Optimizes	 reads,	writes	are	costly Writes	are	cheaper,	 reads	are	
costlier
Unit	of	bucketing A	single	file	represents	 a	 single	
bucket
A	collection	 of	files	together	
comprise	 a	single	bucket
Sort	ordering Each	bucket	is	sorted	globally.	 This	
makes	it	easy	to	optimize	 queries	
reading	this	data
Each	file	is	individually	 sorted	 but	
the	“bucket”	as	a	whole	is	not	
globally	 sorted
Bucketing	semantics	of	Spark	vs	Hive
Hive Spark
Model Optimizes	 reads,	writes	are	costly Writes	are	cheaper,	 reads	are	
costlier
Unit	of	bucketing A	single	file	represents	 a	 single	
bucket
A	collection	 of	files	together	
comprise	 a	single	bucket
Sort	ordering Each	bucket	is	sorted	globally.	 This	
makes	it	easy	to	optimize	 queries	
reading	this	data
Each	file	is	individually	 sorted	 but	
the	“bucket”	as	a	whole	is	not	
globally	 sorted
Hashing	function Hive’s	 inbuilt	 hash Murmur3Hash
[SPARK-19256] Hive	bucketing	support
• Introduce	Hive’s	hashing	function	[SPARK-17495]
• Enable	creating	hive	bucketed	tables	[SPARK-17729]
• Support	Hive’s	`Bucketed	file	format`
• Propagate	Hive	bucketing	information	to	planner	[SPARK-17654]
• Expressing	outputPartitioning and	requiredChildDistribution
• Creating	empty	bucket	files	when	no	data	for	a	bucket
• Allow	Sort	Merge	join	over	tables	with	number	of	buckets	
multiple	of	each	other
• Support	N-way	Sort	Merge	Join
[SPARK-19256]	Hive	bucketing	support
• Introduce	Hive’s	hashing	function	[SPARK-17495]
• Enable	creating	hive	bucketed	tables	[SPARK-17729]
• Support	Hive’s	`Bucketed	file	format`
• Propagate	Hive	bucketing	information	to	planner	[SPARK-17654]
• Expressing	outputPartitioning and	requiredChildDistribution
• Creating	empty	bucket	files	when	no	data	for	a	bucket
• Allow	Sort	Merge	join	over	tables	with	number	of	buckets	
multiple	of	each	other
• Support	N-way	Sort	Merge	Join
Merged	in
upstream
[SPARK-19256]	Hive	bucketing	support
• Introduce	Hive’s	hashing	function	[SPARK-17495]
• Enable	creating	hive	bucketed	tables	[SPARK-17729]
• Support	Hive’s	`Bucketed	file	format`
• Propagate	Hive	bucketing	information	to	planner	[SPARK-17654]
• Expressing	outputPartitioning and	requiredChildDistribution
• Creating	empty	bucket	files	when	no	data	for	a	bucket
• Allow	Sort	Merge	join	over	tables	with	number	of	buckets	
multiple	of	each	other
• Support	N-way	Sort	Merge	Join
FB-prod	(6	months)
SQL	Planner	improvements
[SPARK-19122]	Unnecessary	shuffle+sort added	if	
join	predicates	ordering	differ	from	bucketing	and	
sorting	order
SELECT	*	FROM	a	JOIN	b	ON	a.x=b.xAND	a.y=b.y
[SPARK-19122]	Unnecessary	shuffle+sort added	if	
join	predicates	ordering	differ	from	bucketing	and	
sorting	order
Sort	Merge	Join
TableScan TableScan
SELECT	*	FROM	a	JOIN	b	ON	a.x=b.xAND	a.y=b.y
[SPARK-19122]	Unnecessary	shuffle+sort added	if	
join	predicates	ordering	differ	from	bucketing	and	
sorting	order
SELECT	*	FROM	a	JOIN	b	ON	a.x=b.xAND	a.y=b.y
Sort	Merge	Join
TableScan TableScan
SELECT	*	FROM	a	JOIN	b	ON	a.y=b.y AND	a.x=b.x
[SPARK-19122]	Unnecessary	shuffle+sort added	if	
join	predicates	ordering	differ	from	bucketing	and	
sorting	order
Sort	Merge	Join
Exchange
TableScan
Sort
Exchange
TableScan
Sort
Sort	Merge	Join
TableScan TableScan
SELECT	*	FROM	a	JOIN	b	ON	a.x=b.xAND	a.y=b.y SELECT	*	FROM	a	JOIN	b	ON	a.y=b.y AND	a.x=b.x
[SPARK-19122]	Unnecessary	shuffle+sort added	if	
join	predicates	ordering	differ	from	bucketing	and	
sorting	order
Sort	Merge	Join
Exchange
TableScan
Sort
Exchange
TableScan
Sort
Sort	Merge	Join
TableScan TableScan
SELECT	*	FROM	a	JOIN	b	ON	a.x=b.xAND	a.y=b.y SELECT	*	FROM	a	JOIN	b	ON	a.y=b.y AND	a.x=b.x
[SPARK-19122]	Unnecessary	shuffle+sort added	if	
join	predicates	ordering	differ	from	bucketing	and	
sorting	order
Sort	Merge	Join
TableScan TableScan
SELECT	*	FROM	a	JOIN	b	ON	a.x=b.xAND	a.y=b.y SELECT	*	FROM	a	JOIN	b	ON	a.y=b.y AND	a.x=b.x
Sort	Merge	Join
TableScan TableScan
[SPARK-17271]	Planner	adds	un-necessary	Sort	
even	if	child	ordering	is	semantically	same	as	
required	ordering
SELECT	*	FROM	table1	a	JOIN	table2	b	ON	a.col1=b.col1
[SPARK-17271]	Planner	adds	un-necessary	Sort	
even	if	child	ordering	is	semantically	same	as	
required	ordering
SELECT	*	FROM	table1	a	JOIN	table2	b	ON	a.col1=b.col1
Sort	Merge	Join
Sort
TableScan
Sort
TableScan Already	bucketed	on	column	`col1`
Sort	on	columns	(a.col1	and	b.col1)
Join	on	[col1],	[col1]	respectively	of	relations
[SPARK-17271]	Planner	adds	un-necessary	Sort	
even	if	child	ordering	is	semantically	same	as	
required	ordering
SELECT	*	FROM	table1	a	JOIN	table2	b	ON	a.col1=b.col1
Sort	Merge	Join
TableScan TableScan Already	bucketed	on	column	`col1`
Sort	on	columns	(a.col1	and	b.col1)Sort Sort
Join	on	[col1],	[col1]	respectively	of	relations
[SPARK-17271]	Planner	adds	un-necessary	Sort	
even	if	child	ordering	is	semantically	same	as	
required	ordering
SELECT	*	FROM	table1	a	JOIN	table2	b	ON	a.col1=b.col1
Sort	Merge	Join
TableScan TableScan
Sort Sort
Sort	Merge	Join
TableScan TableScan
[SPARK-17698]	Join	predicates	should	not	
contain	filter	clauses
SELECT	a.id,	b.id FROM	table1	a	FULL	OUTER	JOIN	table2	b	ON	a.id=	b.id AND	a.id='1'	AND	b.id='1'
[SPARK-17698]	Join	predicates	should	not	
contain	filter	clauses
SELECT	a.id,	b.id FROM	table1	a	FULL	OUTER	JOIN	table2	b	ON	a.id=	b.id AND	a.id='1'	AND	b.id='1'
Sort	Merge	Join
TableScan TableScan
Sort
Exchange
Sort
Exchange
Already	bucketed	on	column	[id]
Shuffle	on	columns	[id,	1,	id]	and	[id,	id,	1]
Sort	on	columns	[id,	id,	1]	and	[id,	1,	id]	
Join	on	[id,	id,	1],	[id,	1,	id]	respectively	of	relations
[SPARK-17698]	Join	predicates	should	not	
contain	filter	clauses
SELECT	a.id,	b.id FROM	table1	a	FULL	OUTER	JOIN	table2	b	ON	a.id =	b.id AND a.id='1'	AND b.id='1'
Sort	Merge	Join
TableScan TableScan
Sort
Exchange
Sort
Exchange
Already	bucketed	on	column	[id]
Shuffle	on	columns	[id,	1,	id]	and	[id,	id,	1]
Sort	on	columns	[id,	id,	1]	and	[id,	1,	id]	
Join	on	[id,	id,	1],	[id,	1,	id]	respectively	of	relations
[SPARK-17698]	Join	predicates	should	not	
contain	filter	clauses
SELECT	a.id,	b.id FROM	table1	a	FULL	OUTER	JOIN	table2	b	ON	a.id =	b.id AND a.id='1'	AND b.id='1'
Sort	Merge	Join
TableScan TableScan
Sort
Exchange
Sort
Exchange
Already	bucketed	on	column	[id]
Shuffle	on	columns	[id,	1,	id]	and	[id,	id,	1]
Sort	on	columns	[id,	id,	1]	and	[id,	1,	id]	
Join	on	[id,	id,	1],	[id,	1,	id]	respectively	of	relations
[SPARK-17698]	Join	predicates	should	not	
contain	filter	clauses
SELECT	a.id,	b.id FROM	table1	a	FULL	OUTER	JOIN	table2	b	ON	a.id =	b.id AND a.id='1'	AND b.id='1'
Sort	Merge	Join
TableScan TableScan
Sort	Merge	Join
TableScan TableScanSort
Exchange
Sort
Exchange
[SPARK-13450]	Introduce	
ExternalAppendOnlyUnsafeRowArray
[SPARK-13450]	Introduce	
ExternalAppendOnlyUnsafeRowArray
Buffered	
relation
Streamed	
relation
If	there	are	a	lot	of	rows	to	be	
buffered	(eg.	Skew),	
the	query	would	OOM
row	with	
key=`foo`
rows	with	
key=`foo`
[SPARK-13450]	Introduce	
ExternalAppendOnlyUnsafeRowArray
Buffered	
relation
Streamed	
relation
row	with	
key=`foo`
rows	with	
key=`foo`
Disk
buffer	would	spill	to	disk	
after	reaching	a	threshold
spill
Summary
• Shuffle	and	sort	is	costly	due	to	disk	and	network	IO
• Bucketing	will	pre-(shuffle	and	sort)	the	inputs
• Expect	at	least	2-5x	gains	after	bucketing	input	tables	for	joins
• Candidates	for	bucketing:
• Tables	used	frequently	in	JOINs	with	same	key
• Loading	of	data	in	cumulative	tables
• Spark’s	bucketing	is	not	compatible	with	Hive’s	bucketing
Questions	?

Contenu connexe

Tendances

A Thorough Comparison of Delta Lake, Iceberg and Hudi
A Thorough Comparison of Delta Lake, Iceberg and HudiA Thorough Comparison of Delta Lake, Iceberg and Hudi
A Thorough Comparison of Delta Lake, Iceberg and HudiDatabricks
 
Everyday I'm Shuffling - Tips for Writing Better Spark Programs, Strata San J...
Everyday I'm Shuffling - Tips for Writing Better Spark Programs, Strata San J...Everyday I'm Shuffling - Tips for Writing Better Spark Programs, Strata San J...
Everyday I'm Shuffling - Tips for Writing Better Spark Programs, Strata San J...Databricks
 
How to understand and analyze Apache Hive query execution plan for performanc...
How to understand and analyze Apache Hive query execution plan for performanc...How to understand and analyze Apache Hive query execution plan for performanc...
How to understand and analyze Apache Hive query execution plan for performanc...DataWorks Summit/Hadoop Summit
 
Apache Spark Data Source V2 with Wenchen Fan and Gengliang Wang
Apache Spark Data Source V2 with Wenchen Fan and Gengliang WangApache Spark Data Source V2 with Wenchen Fan and Gengliang Wang
Apache Spark Data Source V2 with Wenchen Fan and Gengliang WangDatabricks
 
Hortonworks Technical Workshop: Interactive Query with Apache Hive
Hortonworks Technical Workshop: Interactive Query with Apache Hive Hortonworks Technical Workshop: Interactive Query with Apache Hive
Hortonworks Technical Workshop: Interactive Query with Apache Hive Hortonworks
 
Processing Large Data with Apache Spark -- HasGeek
Processing Large Data with Apache Spark -- HasGeekProcessing Large Data with Apache Spark -- HasGeek
Processing Large Data with Apache Spark -- HasGeekVenkata Naga Ravi
 
The Parquet Format and Performance Optimization Opportunities
The Parquet Format and Performance Optimization OpportunitiesThe Parquet Format and Performance Optimization Opportunities
The Parquet Format and Performance Optimization OpportunitiesDatabricks
 
Spark Shuffle Deep Dive (Explained In Depth) - How Shuffle Works in Spark
Spark Shuffle Deep Dive (Explained In Depth) - How Shuffle Works in SparkSpark Shuffle Deep Dive (Explained In Depth) - How Shuffle Works in Spark
Spark Shuffle Deep Dive (Explained In Depth) - How Shuffle Works in SparkBo Yang
 
Enabling Vectorized Engine in Apache Spark
Enabling Vectorized Engine in Apache SparkEnabling Vectorized Engine in Apache Spark
Enabling Vectorized Engine in Apache SparkKazuaki Ishizaki
 
Parquet performance tuning: the missing guide
Parquet performance tuning: the missing guideParquet performance tuning: the missing guide
Parquet performance tuning: the missing guideRyan Blue
 
Building Reliable Lakehouses with Apache Flink and Delta Lake
Building Reliable Lakehouses with Apache Flink and Delta LakeBuilding Reliable Lakehouses with Apache Flink and Delta Lake
Building Reliable Lakehouses with Apache Flink and Delta LakeFlink Forward
 
Spark SQL Deep Dive @ Melbourne Spark Meetup
Spark SQL Deep Dive @ Melbourne Spark MeetupSpark SQL Deep Dive @ Melbourne Spark Meetup
Spark SQL Deep Dive @ Melbourne Spark MeetupDatabricks
 
Spark SQL Join Improvement at Facebook
Spark SQL Join Improvement at FacebookSpark SQL Join Improvement at Facebook
Spark SQL Join Improvement at FacebookDatabricks
 
Tame the small files problem and optimize data layout for streaming ingestion...
Tame the small files problem and optimize data layout for streaming ingestion...Tame the small files problem and optimize data layout for streaming ingestion...
Tame the small files problem and optimize data layout for streaming ingestion...Flink Forward
 
Best Practice of Compression/Decompression Codes in Apache Spark with Sophia...
 Best Practice of Compression/Decompression Codes in Apache Spark with Sophia... Best Practice of Compression/Decompression Codes in Apache Spark with Sophia...
Best Practice of Compression/Decompression Codes in Apache Spark with Sophia...Databricks
 
Spark Summit EU 2015: Lessons from 300+ production users
Spark Summit EU 2015: Lessons from 300+ production usersSpark Summit EU 2015: Lessons from 300+ production users
Spark Summit EU 2015: Lessons from 300+ production usersDatabricks
 
The Apache Spark File Format Ecosystem
The Apache Spark File Format EcosystemThe Apache Spark File Format Ecosystem
The Apache Spark File Format EcosystemDatabricks
 
Optimizing Delta/Parquet Data Lakes for Apache Spark
Optimizing Delta/Parquet Data Lakes for Apache SparkOptimizing Delta/Parquet Data Lakes for Apache Spark
Optimizing Delta/Parquet Data Lakes for Apache SparkDatabricks
 
Apache Spark Core—Deep Dive—Proper Optimization
Apache Spark Core—Deep Dive—Proper OptimizationApache Spark Core—Deep Dive—Proper Optimization
Apache Spark Core—Deep Dive—Proper OptimizationDatabricks
 

Tendances (20)

A Thorough Comparison of Delta Lake, Iceberg and Hudi
A Thorough Comparison of Delta Lake, Iceberg and HudiA Thorough Comparison of Delta Lake, Iceberg and Hudi
A Thorough Comparison of Delta Lake, Iceberg and Hudi
 
Everyday I'm Shuffling - Tips for Writing Better Spark Programs, Strata San J...
Everyday I'm Shuffling - Tips for Writing Better Spark Programs, Strata San J...Everyday I'm Shuffling - Tips for Writing Better Spark Programs, Strata San J...
Everyday I'm Shuffling - Tips for Writing Better Spark Programs, Strata San J...
 
How to understand and analyze Apache Hive query execution plan for performanc...
How to understand and analyze Apache Hive query execution plan for performanc...How to understand and analyze Apache Hive query execution plan for performanc...
How to understand and analyze Apache Hive query execution plan for performanc...
 
Apache Spark Data Source V2 with Wenchen Fan and Gengliang Wang
Apache Spark Data Source V2 with Wenchen Fan and Gengliang WangApache Spark Data Source V2 with Wenchen Fan and Gengliang Wang
Apache Spark Data Source V2 with Wenchen Fan and Gengliang Wang
 
Hortonworks Technical Workshop: Interactive Query with Apache Hive
Hortonworks Technical Workshop: Interactive Query with Apache Hive Hortonworks Technical Workshop: Interactive Query with Apache Hive
Hortonworks Technical Workshop: Interactive Query with Apache Hive
 
Processing Large Data with Apache Spark -- HasGeek
Processing Large Data with Apache Spark -- HasGeekProcessing Large Data with Apache Spark -- HasGeek
Processing Large Data with Apache Spark -- HasGeek
 
The Parquet Format and Performance Optimization Opportunities
The Parquet Format and Performance Optimization OpportunitiesThe Parquet Format and Performance Optimization Opportunities
The Parquet Format and Performance Optimization Opportunities
 
Spark Shuffle Deep Dive (Explained In Depth) - How Shuffle Works in Spark
Spark Shuffle Deep Dive (Explained In Depth) - How Shuffle Works in SparkSpark Shuffle Deep Dive (Explained In Depth) - How Shuffle Works in Spark
Spark Shuffle Deep Dive (Explained In Depth) - How Shuffle Works in Spark
 
Enabling Vectorized Engine in Apache Spark
Enabling Vectorized Engine in Apache SparkEnabling Vectorized Engine in Apache Spark
Enabling Vectorized Engine in Apache Spark
 
Parquet performance tuning: the missing guide
Parquet performance tuning: the missing guideParquet performance tuning: the missing guide
Parquet performance tuning: the missing guide
 
Hive tuning
Hive tuningHive tuning
Hive tuning
 
Building Reliable Lakehouses with Apache Flink and Delta Lake
Building Reliable Lakehouses with Apache Flink and Delta LakeBuilding Reliable Lakehouses with Apache Flink and Delta Lake
Building Reliable Lakehouses with Apache Flink and Delta Lake
 
Spark SQL Deep Dive @ Melbourne Spark Meetup
Spark SQL Deep Dive @ Melbourne Spark MeetupSpark SQL Deep Dive @ Melbourne Spark Meetup
Spark SQL Deep Dive @ Melbourne Spark Meetup
 
Spark SQL Join Improvement at Facebook
Spark SQL Join Improvement at FacebookSpark SQL Join Improvement at Facebook
Spark SQL Join Improvement at Facebook
 
Tame the small files problem and optimize data layout for streaming ingestion...
Tame the small files problem and optimize data layout for streaming ingestion...Tame the small files problem and optimize data layout for streaming ingestion...
Tame the small files problem and optimize data layout for streaming ingestion...
 
Best Practice of Compression/Decompression Codes in Apache Spark with Sophia...
 Best Practice of Compression/Decompression Codes in Apache Spark with Sophia... Best Practice of Compression/Decompression Codes in Apache Spark with Sophia...
Best Practice of Compression/Decompression Codes in Apache Spark with Sophia...
 
Spark Summit EU 2015: Lessons from 300+ production users
Spark Summit EU 2015: Lessons from 300+ production usersSpark Summit EU 2015: Lessons from 300+ production users
Spark Summit EU 2015: Lessons from 300+ production users
 
The Apache Spark File Format Ecosystem
The Apache Spark File Format EcosystemThe Apache Spark File Format Ecosystem
The Apache Spark File Format Ecosystem
 
Optimizing Delta/Parquet Data Lakes for Apache Spark
Optimizing Delta/Parquet Data Lakes for Apache SparkOptimizing Delta/Parquet Data Lakes for Apache Spark
Optimizing Delta/Parquet Data Lakes for Apache Spark
 
Apache Spark Core—Deep Dive—Proper Optimization
Apache Spark Core—Deep Dive—Proper OptimizationApache Spark Core—Deep Dive—Proper Optimization
Apache Spark Core—Deep Dive—Proper Optimization
 

Plus de Databricks

DW Migration Webinar-March 2022.pptx
DW Migration Webinar-March 2022.pptxDW Migration Webinar-March 2022.pptx
DW Migration Webinar-March 2022.pptxDatabricks
 
Data Lakehouse Symposium | Day 1 | Part 1
Data Lakehouse Symposium | Day 1 | Part 1Data Lakehouse Symposium | Day 1 | Part 1
Data Lakehouse Symposium | Day 1 | Part 1Databricks
 
Data Lakehouse Symposium | Day 1 | Part 2
Data Lakehouse Symposium | Day 1 | Part 2Data Lakehouse Symposium | Day 1 | Part 2
Data Lakehouse Symposium | Day 1 | Part 2Databricks
 
Data Lakehouse Symposium | Day 2
Data Lakehouse Symposium | Day 2Data Lakehouse Symposium | Day 2
Data Lakehouse Symposium | Day 2Databricks
 
Data Lakehouse Symposium | Day 4
Data Lakehouse Symposium | Day 4Data Lakehouse Symposium | Day 4
Data Lakehouse Symposium | Day 4Databricks
 
5 Critical Steps to Clean Your Data Swamp When Migrating Off of Hadoop
5 Critical Steps to Clean Your Data Swamp When Migrating Off of Hadoop5 Critical Steps to Clean Your Data Swamp When Migrating Off of Hadoop
5 Critical Steps to Clean Your Data Swamp When Migrating Off of HadoopDatabricks
 
Democratizing Data Quality Through a Centralized Platform
Democratizing Data Quality Through a Centralized PlatformDemocratizing Data Quality Through a Centralized Platform
Democratizing Data Quality Through a Centralized PlatformDatabricks
 
Learn to Use Databricks for Data Science
Learn to Use Databricks for Data ScienceLearn to Use Databricks for Data Science
Learn to Use Databricks for Data ScienceDatabricks
 
Why APM Is Not the Same As ML Monitoring
Why APM Is Not the Same As ML MonitoringWhy APM Is Not the Same As ML Monitoring
Why APM Is Not the Same As ML MonitoringDatabricks
 
The Function, the Context, and the Data—Enabling ML Ops at Stitch Fix
The Function, the Context, and the Data—Enabling ML Ops at Stitch FixThe Function, the Context, and the Data—Enabling ML Ops at Stitch Fix
The Function, the Context, and the Data—Enabling ML Ops at Stitch FixDatabricks
 
Stage Level Scheduling Improving Big Data and AI Integration
Stage Level Scheduling Improving Big Data and AI IntegrationStage Level Scheduling Improving Big Data and AI Integration
Stage Level Scheduling Improving Big Data and AI IntegrationDatabricks
 
Simplify Data Conversion from Spark to TensorFlow and PyTorch
Simplify Data Conversion from Spark to TensorFlow and PyTorchSimplify Data Conversion from Spark to TensorFlow and PyTorch
Simplify Data Conversion from Spark to TensorFlow and PyTorchDatabricks
 
Scaling your Data Pipelines with Apache Spark on Kubernetes
Scaling your Data Pipelines with Apache Spark on KubernetesScaling your Data Pipelines with Apache Spark on Kubernetes
Scaling your Data Pipelines with Apache Spark on KubernetesDatabricks
 
Scaling and Unifying SciKit Learn and Apache Spark Pipelines
Scaling and Unifying SciKit Learn and Apache Spark PipelinesScaling and Unifying SciKit Learn and Apache Spark Pipelines
Scaling and Unifying SciKit Learn and Apache Spark PipelinesDatabricks
 
Sawtooth Windows for Feature Aggregations
Sawtooth Windows for Feature AggregationsSawtooth Windows for Feature Aggregations
Sawtooth Windows for Feature AggregationsDatabricks
 
Redis + Apache Spark = Swiss Army Knife Meets Kitchen Sink
Redis + Apache Spark = Swiss Army Knife Meets Kitchen SinkRedis + Apache Spark = Swiss Army Knife Meets Kitchen Sink
Redis + Apache Spark = Swiss Army Knife Meets Kitchen SinkDatabricks
 
Re-imagine Data Monitoring with whylogs and Spark
Re-imagine Data Monitoring with whylogs and SparkRe-imagine Data Monitoring with whylogs and Spark
Re-imagine Data Monitoring with whylogs and SparkDatabricks
 
Raven: End-to-end Optimization of ML Prediction Queries
Raven: End-to-end Optimization of ML Prediction QueriesRaven: End-to-end Optimization of ML Prediction Queries
Raven: End-to-end Optimization of ML Prediction QueriesDatabricks
 
Processing Large Datasets for ADAS Applications using Apache Spark
Processing Large Datasets for ADAS Applications using Apache SparkProcessing Large Datasets for ADAS Applications using Apache Spark
Processing Large Datasets for ADAS Applications using Apache SparkDatabricks
 
Massive Data Processing in Adobe Using Delta Lake
Massive Data Processing in Adobe Using Delta LakeMassive Data Processing in Adobe Using Delta Lake
Massive Data Processing in Adobe Using Delta LakeDatabricks
 

Plus de Databricks (20)

DW Migration Webinar-March 2022.pptx
DW Migration Webinar-March 2022.pptxDW Migration Webinar-March 2022.pptx
DW Migration Webinar-March 2022.pptx
 
Data Lakehouse Symposium | Day 1 | Part 1
Data Lakehouse Symposium | Day 1 | Part 1Data Lakehouse Symposium | Day 1 | Part 1
Data Lakehouse Symposium | Day 1 | Part 1
 
Data Lakehouse Symposium | Day 1 | Part 2
Data Lakehouse Symposium | Day 1 | Part 2Data Lakehouse Symposium | Day 1 | Part 2
Data Lakehouse Symposium | Day 1 | Part 2
 
Data Lakehouse Symposium | Day 2
Data Lakehouse Symposium | Day 2Data Lakehouse Symposium | Day 2
Data Lakehouse Symposium | Day 2
 
Data Lakehouse Symposium | Day 4
Data Lakehouse Symposium | Day 4Data Lakehouse Symposium | Day 4
Data Lakehouse Symposium | Day 4
 
5 Critical Steps to Clean Your Data Swamp When Migrating Off of Hadoop
5 Critical Steps to Clean Your Data Swamp When Migrating Off of Hadoop5 Critical Steps to Clean Your Data Swamp When Migrating Off of Hadoop
5 Critical Steps to Clean Your Data Swamp When Migrating Off of Hadoop
 
Democratizing Data Quality Through a Centralized Platform
Democratizing Data Quality Through a Centralized PlatformDemocratizing Data Quality Through a Centralized Platform
Democratizing Data Quality Through a Centralized Platform
 
Learn to Use Databricks for Data Science
Learn to Use Databricks for Data ScienceLearn to Use Databricks for Data Science
Learn to Use Databricks for Data Science
 
Why APM Is Not the Same As ML Monitoring
Why APM Is Not the Same As ML MonitoringWhy APM Is Not the Same As ML Monitoring
Why APM Is Not the Same As ML Monitoring
 
The Function, the Context, and the Data—Enabling ML Ops at Stitch Fix
The Function, the Context, and the Data—Enabling ML Ops at Stitch FixThe Function, the Context, and the Data—Enabling ML Ops at Stitch Fix
The Function, the Context, and the Data—Enabling ML Ops at Stitch Fix
 
Stage Level Scheduling Improving Big Data and AI Integration
Stage Level Scheduling Improving Big Data and AI IntegrationStage Level Scheduling Improving Big Data and AI Integration
Stage Level Scheduling Improving Big Data and AI Integration
 
Simplify Data Conversion from Spark to TensorFlow and PyTorch
Simplify Data Conversion from Spark to TensorFlow and PyTorchSimplify Data Conversion from Spark to TensorFlow and PyTorch
Simplify Data Conversion from Spark to TensorFlow and PyTorch
 
Scaling your Data Pipelines with Apache Spark on Kubernetes
Scaling your Data Pipelines with Apache Spark on KubernetesScaling your Data Pipelines with Apache Spark on Kubernetes
Scaling your Data Pipelines with Apache Spark on Kubernetes
 
Scaling and Unifying SciKit Learn and Apache Spark Pipelines
Scaling and Unifying SciKit Learn and Apache Spark PipelinesScaling and Unifying SciKit Learn and Apache Spark Pipelines
Scaling and Unifying SciKit Learn and Apache Spark Pipelines
 
Sawtooth Windows for Feature Aggregations
Sawtooth Windows for Feature AggregationsSawtooth Windows for Feature Aggregations
Sawtooth Windows for Feature Aggregations
 
Redis + Apache Spark = Swiss Army Knife Meets Kitchen Sink
Redis + Apache Spark = Swiss Army Knife Meets Kitchen SinkRedis + Apache Spark = Swiss Army Knife Meets Kitchen Sink
Redis + Apache Spark = Swiss Army Knife Meets Kitchen Sink
 
Re-imagine Data Monitoring with whylogs and Spark
Re-imagine Data Monitoring with whylogs and SparkRe-imagine Data Monitoring with whylogs and Spark
Re-imagine Data Monitoring with whylogs and Spark
 
Raven: End-to-end Optimization of ML Prediction Queries
Raven: End-to-end Optimization of ML Prediction QueriesRaven: End-to-end Optimization of ML Prediction Queries
Raven: End-to-end Optimization of ML Prediction Queries
 
Processing Large Datasets for ADAS Applications using Apache Spark
Processing Large Datasets for ADAS Applications using Apache SparkProcessing Large Datasets for ADAS Applications using Apache Spark
Processing Large Datasets for ADAS Applications using Apache Spark
 
Massive Data Processing in Adobe Using Delta Lake
Massive Data Processing in Adobe Using Delta LakeMassive Data Processing in Adobe Using Delta Lake
Massive Data Processing in Adobe Using Delta Lake
 

Dernier

Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...amitlee9823
 
Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...amitlee9823
 
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men 🔝Sambalpur🔝 Esc...
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men  🔝Sambalpur🔝   Esc...➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men  🔝Sambalpur🔝   Esc...
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men 🔝Sambalpur🔝 Esc...amitlee9823
 
👉 Amritsar Call Girl 👉📞 6367187148 👉📞 Just📲 Call Ruhi Call Girl Phone No Amri...
👉 Amritsar Call Girl 👉📞 6367187148 👉📞 Just📲 Call Ruhi Call Girl Phone No Amri...👉 Amritsar Call Girl 👉📞 6367187148 👉📞 Just📲 Call Ruhi Call Girl Phone No Amri...
👉 Amritsar Call Girl 👉📞 6367187148 👉📞 Just📲 Call Ruhi Call Girl Phone No Amri...karishmasinghjnh
 
VIP Model Call Girls Hinjewadi ( Pune ) Call ON 8005736733 Starting From 5K t...
VIP Model Call Girls Hinjewadi ( Pune ) Call ON 8005736733 Starting From 5K t...VIP Model Call Girls Hinjewadi ( Pune ) Call ON 8005736733 Starting From 5K t...
VIP Model Call Girls Hinjewadi ( Pune ) Call ON 8005736733 Starting From 5K t...SUHANI PANDEY
 
Just Call Vip call girls Palakkad Escorts ☎️9352988975 Two shot with one girl...
Just Call Vip call girls Palakkad Escorts ☎️9352988975 Two shot with one girl...Just Call Vip call girls Palakkad Escorts ☎️9352988975 Two shot with one girl...
Just Call Vip call girls Palakkad Escorts ☎️9352988975 Two shot with one girl...gajnagarg
 
Discover Why Less is More in B2B Research
Discover Why Less is More in B2B ResearchDiscover Why Less is More in B2B Research
Discover Why Less is More in B2B Researchmichael115558
 
Just Call Vip call girls roorkee Escorts ☎️9352988975 Two shot with one girl ...
Just Call Vip call girls roorkee Escorts ☎️9352988975 Two shot with one girl ...Just Call Vip call girls roorkee Escorts ☎️9352988975 Two shot with one girl ...
Just Call Vip call girls roorkee Escorts ☎️9352988975 Two shot with one girl ...gajnagarg
 
Call Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night StandCall Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night Standamitlee9823
 
Call Girls Begur Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Begur Just Call 👗 7737669865 👗 Top Class Call Girl Service BangaloreCall Girls Begur Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Begur Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangaloreamitlee9823
 
➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men 🔝Bangalore🔝 Esc...
➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men  🔝Bangalore🔝   Esc...➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men  🔝Bangalore🔝   Esc...
➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men 🔝Bangalore🔝 Esc...amitlee9823
 
Just Call Vip call girls Mysore Escorts ☎️9352988975 Two shot with one girl (...
Just Call Vip call girls Mysore Escorts ☎️9352988975 Two shot with one girl (...Just Call Vip call girls Mysore Escorts ☎️9352988975 Two shot with one girl (...
Just Call Vip call girls Mysore Escorts ☎️9352988975 Two shot with one girl (...gajnagarg
 
Escorts Service Kumaraswamy Layout ☎ 7737669865☎ Book Your One night Stand (B...
Escorts Service Kumaraswamy Layout ☎ 7737669865☎ Book Your One night Stand (B...Escorts Service Kumaraswamy Layout ☎ 7737669865☎ Book Your One night Stand (B...
Escorts Service Kumaraswamy Layout ☎ 7737669865☎ Book Your One night Stand (B...amitlee9823
 
Call Girls In Attibele ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Attibele ☎ 7737669865 🥵 Book Your One night StandCall Girls In Attibele ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Attibele ☎ 7737669865 🥵 Book Your One night Standamitlee9823
 
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...ZurliaSoop
 
Call Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night StandCall Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night Standamitlee9823
 
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...amitlee9823
 
DATA SUMMIT 24 Building Real-Time Pipelines With FLaNK
DATA SUMMIT 24  Building Real-Time Pipelines With FLaNKDATA SUMMIT 24  Building Real-Time Pipelines With FLaNK
DATA SUMMIT 24 Building Real-Time Pipelines With FLaNKTimothy Spann
 

Dernier (20)

Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
Call Girls Jalahalli Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
 
Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
 
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men 🔝Sambalpur🔝 Esc...
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men  🔝Sambalpur🔝   Esc...➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men  🔝Sambalpur🔝   Esc...
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men 🔝Sambalpur🔝 Esc...
 
👉 Amritsar Call Girl 👉📞 6367187148 👉📞 Just📲 Call Ruhi Call Girl Phone No Amri...
👉 Amritsar Call Girl 👉📞 6367187148 👉📞 Just📲 Call Ruhi Call Girl Phone No Amri...👉 Amritsar Call Girl 👉📞 6367187148 👉📞 Just📲 Call Ruhi Call Girl Phone No Amri...
👉 Amritsar Call Girl 👉📞 6367187148 👉📞 Just📲 Call Ruhi Call Girl Phone No Amri...
 
VIP Model Call Girls Hinjewadi ( Pune ) Call ON 8005736733 Starting From 5K t...
VIP Model Call Girls Hinjewadi ( Pune ) Call ON 8005736733 Starting From 5K t...VIP Model Call Girls Hinjewadi ( Pune ) Call ON 8005736733 Starting From 5K t...
VIP Model Call Girls Hinjewadi ( Pune ) Call ON 8005736733 Starting From 5K t...
 
Just Call Vip call girls Palakkad Escorts ☎️9352988975 Two shot with one girl...
Just Call Vip call girls Palakkad Escorts ☎️9352988975 Two shot with one girl...Just Call Vip call girls Palakkad Escorts ☎️9352988975 Two shot with one girl...
Just Call Vip call girls Palakkad Escorts ☎️9352988975 Two shot with one girl...
 
Discover Why Less is More in B2B Research
Discover Why Less is More in B2B ResearchDiscover Why Less is More in B2B Research
Discover Why Less is More in B2B Research
 
Just Call Vip call girls roorkee Escorts ☎️9352988975 Two shot with one girl ...
Just Call Vip call girls roorkee Escorts ☎️9352988975 Two shot with one girl ...Just Call Vip call girls roorkee Escorts ☎️9352988975 Two shot with one girl ...
Just Call Vip call girls roorkee Escorts ☎️9352988975 Two shot with one girl ...
 
Call Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night StandCall Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night Stand
 
Call Girls Begur Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Begur Just Call 👗 7737669865 👗 Top Class Call Girl Service BangaloreCall Girls Begur Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
Call Girls Begur Just Call 👗 7737669865 👗 Top Class Call Girl Service Bangalore
 
Predicting Loan Approval: A Data Science Project
Predicting Loan Approval: A Data Science ProjectPredicting Loan Approval: A Data Science Project
Predicting Loan Approval: A Data Science Project
 
➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men 🔝Bangalore🔝 Esc...
➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men  🔝Bangalore🔝   Esc...➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men  🔝Bangalore🔝   Esc...
➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men 🔝Bangalore🔝 Esc...
 
Just Call Vip call girls Mysore Escorts ☎️9352988975 Two shot with one girl (...
Just Call Vip call girls Mysore Escorts ☎️9352988975 Two shot with one girl (...Just Call Vip call girls Mysore Escorts ☎️9352988975 Two shot with one girl (...
Just Call Vip call girls Mysore Escorts ☎️9352988975 Two shot with one girl (...
 
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Saket (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Escorts Service Kumaraswamy Layout ☎ 7737669865☎ Book Your One night Stand (B...
Escorts Service Kumaraswamy Layout ☎ 7737669865☎ Book Your One night Stand (B...Escorts Service Kumaraswamy Layout ☎ 7737669865☎ Book Your One night Stand (B...
Escorts Service Kumaraswamy Layout ☎ 7737669865☎ Book Your One night Stand (B...
 
Call Girls In Attibele ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Attibele ☎ 7737669865 🥵 Book Your One night StandCall Girls In Attibele ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Attibele ☎ 7737669865 🥵 Book Your One night Stand
 
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
Call Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night StandCall Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Hsr Layout ☎ 7737669865 🥵 Book Your One night Stand
 
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
 
DATA SUMMIT 24 Building Real-Time Pipelines With FLaNK
DATA SUMMIT 24  Building Real-Time Pipelines With FLaNKDATA SUMMIT 24  Building Real-Time Pipelines With FLaNK
DATA SUMMIT 24 Building Real-Time Pipelines With FLaNK
 

Hive Bucketing in Apache Spark with Tejas Patil