SlideShare a Scribd company logo
1 of 28
Download to read offline
Using	D	for	Development		
of	Large	Scale	Primary	Storage
Liran	Zvibel	
Weka.IO,	CTO	
liran@weka.io	
@liranzvibel 1#DConf2016
• Weka.IO	Introduction	
• Our	progress	since	we	picked	off	
• Examples	where	D	really	shines	
• Our	challenges	
• Improvements	suggestions	
• Q&A
2
Agenda
D	for	Primary	Storage	#DConf2016
3
Weka.IO	Introduction
• Enabling	clouds	and	enterprises	with	a	single	storage	solution	for	
resilience,	performance,	scalability	and	cost	efficiency	
• HQ	in	San	Jose,	CA;	R&D	in	Tel	Aviv,	Israel	
• 30	engineers,	vast	storage	experience	
• VC	backed	company;	Series	B	led	by	Walden	International;	Series	A	
led	by	Norwest	Venture	Partners	
• Product	used	in	production	by	early	adopters	(still	in	stealth)	
• Over	200k	loc	of	our	own	D	code,	about	35	packages
4
About	Weka.IO
D	for	Primary	Storage	#DConf2016
• Extremely	reliable,	“always	on”,	state-full.	
• High	performance	data	path,	measured	in	µsecs	
• Complicated	“control	path”/“management	code”	
• Distributed	nature	due	to	HA	requirements	
• Low	level	interaction	with	HW	devices	
• Some	kernel-level	code,	some	assembly	
• Language	has	to	be	efficient	to	program,	and	fit	for	
large	projects
5
Storage	system	requirements
D	for	Primary	Storage	#DConf2016
• Software	only	solution	
• User-space	processes	
• 100%	CPU,	polling	based	on	networking	and	storage	
• Asynchronous	programming	model,	using	Fibers	and	a	Reactor	
• Memory	efficient,	zero-copy	everything,	very	low	latency	
• GC	free,	lock-free	efficient	data	structures	
• Proprietary	networking	stack	from	Ethernet	to	RPC
6
The	Weka.IO	framework
D	for	Primary	Storage	#DConf2016
7
Our	Progress
• No	more	show-stoppers,	still	a	long	way	to	go	
• Indeed	productivity	is	very	high,	very	good	code-to-features	ratio	
• We	are	able	to	“rapid	prototype”	features	and	then	iron	them	
• All	major	runtime	issues	resolved	
• We	get	great	performance	
• Choosing	D	was	a	good	move,	and	proved	to	be	a	huge	success
8
Current	state	for	Weka
D	for	Primary	Storage	#DConf2016
• Switched	to	LDC	(thanks	David	Nadlinger	and	the	LDC	team!)	
• Compilation	is	now	by	package	
• Better	RAM	“management”	
• Leveraging	parallelism	to	speed	build	time	
• Recent	front-ends	“feel”	much	more	stable	
• LDC	lets	us	build	optimized	compilation	with	asserts,	which	is	a	good	
thing	for	QA.
9
Compilation	progress
D	for	Primary	Storage	#DConf2016
• Got	over	100%	performance	boost	over	DMD	
• When	compiling	as	a	single	package	with	optimizations	
• Fiber	switching	based	on	registers	and	not	pthreads	
• No	GC	allocation	when	throwing	and	handling	exceptions	(Thanks	Mithun!)	
• Integrate	libunwind	with	dwarf	support	for	stack	traces	(no	--disable-fp-
elim)	
• Support	debug	(-g)	with	backend	optimizations	
• Template	instantiation	bug	—	still	unresolved	for	the	upstream	
• @ldc.attribute.section(“SECTIONNAME”)
• -static	flag	to	ldc,	allowing	easy	compile	and	shipment	of	utilities	
10
LDC	status
D	for	Primary	Storage	#DConf2016
• We	now	check	how	much	we	allocated	(using	hacks,	api	would	be	nice)	
from	the	Reactor,	and	decide	to	collect	if	we	allocated	more	than	20MB	
• Collection	actually	happens	very	infrequently	(few	times	in	an	hour)	
• Collection	time	is	de-synchronized	across	the	cluster	
• Collection	time	still	significant	—	about	10ms	
• Main	drawback	—	allocation	MAY	take	‘infinite’	amount	of	time	if	
kernel	is	stressed	on	memory.
11
GC	allocation	and	latency
D	for	Primary	Storage	#DConf2016
• Exception	handling	code	was	modified	to	never	rely	on	GC	allocation	
• Reactor	and	Fibers	code		(	+	our	TraceInfo	class)	modified	to	keep		the	
trace	in	a	fiber	local	state.	
✴Problem:	potentially	throwing	from	scope(exit/success/failure)
• Throwables	are	a	class,	so	allocating	them	comes	from	the	GC,	must	be	
statically	allocated:	
• static __gshared auto ex = new Exception(“:o(”);
12
Exceptions	and	GC
D	for	Primary	Storage	#DConf2016
13
Code	Tidbits
• _gen	keeps	incrementing	when	buffets	allocated	from	pools	
• Pointers	remember	their	generations,	and	validate	accurate	access	
• Helps	debugging	stale	pointers	
• problem	with	implicit	casts	of	null,	alias	this	is	not	strong	enough.	
Maybe	some	syntax	could	help	
14
NetworkBufferPtr
D	for	Primary	Storage	#DConf2016
@nogc @property inout(NetworkBuffer)* get() inout nothrow pure {
												auto	ptr	=	cast(NetworkBuffer*)(_addr	>>	MAGIC_BITS);	
												assert	(ptr	is	null	||	(_addr	&	MAGIC_MASK)	==	ptr._gen);	
												return	ptr;	
								}	
								alias	get	this;
switch (pkt.header.type) {
foreach(name; __traits(allMembers, PacketType)) {
    case __traits(getMember, PacketType, name):
        return __traits(getMember, this, "handle" ~ name)(pkt);
}
15
Handling	all	enum	values
D	for	Primary	Storage	#DConf2016
• Similar	solution	verifies	all	fields	in	a	C	struct	have	the	same	offset,	naturally	the	C	
part	ends	up	being	much	more	complex.
@property	bool	flag(string	NAME)()	{	
				return	(_flags	&	__traits(getMember,	NBFlags,	NAME))	!=	0;		
}	
@property	void	flag(string	NAME)(bool	val)	{	
				if	(val)	{	
								_flags	|=	__traits(getMember,	NBFlags,	NAME);	
				}	else	{	
						_flags	&=	~__traits(getMember,	NBFlags,	NAME);	
				}	
}	
		
buffer.flag!"TX_ACK"	=	true;
16
Flag	setting/testing
D	for	Primary	Storage	#DConf2016
static	if	(JoinedKV.sizeof	<=	CACHE_LINE_SIZE)	{	
				alias	KV	=	JoinedKV;	
				enum	separateKV	=	false;	
}	else	{	
				struct	KV	{	
								K	key;	
								/*	values	will	be	stored	separately	for		
											better	cache	behavior	*/	
				}	
				V[NumEntries]	values;	
				enum	separateKV	=	true;	
}
17
Efficient	packing
D	for	Primary	Storage	#DConf2016
18
Challenges
• Project	is	broken	into	~35	packages.	
• Some	logical	packages	are	compiled	as	several	smaller	packages	
• Current	2.0.68.2	compiler	has	several	packages	compiled	about	90	
seconds,	leading	to	total	compile	time	of	4-5	minutes.	
• Newer	2.070.2+PGO	compiler	reduces	time	by	about	35%	(Thanks	
Johan!)	.	Still	getting	3-4	minutes	per	complete	compile.
19
Compilation	time
D	for	Primary	Storage	#DConf2016
• Introduce	more	parallelism	into	the	build	process	
• Support	incremental	compiles.		
• Now	when	a	dependency	is	changed,	complete	packages	have	to	be	
completely	rebuilt.	In	many	cases,	most	of	the	work	is	redundant	
• When	dependency	IMPLEMENTATION	is	changed,	still	everything	gets	
recompiled	
• Support	(centralized)	caching	for	build	results.	
• Don't	let	humans	“context	switch”	while	waiting	for	the	compiler!
20
Compile	time	improvement	suggestions
D	for	Primary	Storage	#DConf2016
• Total	symbols:	99649,	over	1k:	9639,	over	500k:	102,	over	1M:	62	
• Longest	symbol	was	5M!	
• Makes	working	with	standard	tools	much	harder	(some	nm	tools	crash	on	the	exe).	
• A	simple	hashing	solution	was	implemented	in	our	special	compiler	
• Demangling	now	stopped	working	for	us,	we	only	get	module/func	name	
• More	time	is	spent	on	hashing	than	what	is	saved	on	linkage.	We	may	need	a	
“native”	solution.
21
Long	Symbols
D	for	Primary	Storage	#DConf2016
private	struct	MapResult(alias	fun,	Range,	ARGS…)	{	
				ARGS	_args;	
				alias	R	=	Unqual!Range;	
				R	_input;	
				this(R	input,	ARGS	args)	{	
								_input	=	input;	
								_args	=	args;	}		
				@property	auto	ref	front(){	return	fun(_input.front,	_args);	}	
…		
auto	under_value_gc(R)(R	r,	int	value)	{	return	r.filter!(x	=>	x	<	value);	}	
auto	under_value_nogc(R)(R	r,	int	value)	{return	r.xfilter!((x,y)	=>	x	<	y)(value);}	
auto	multiple_by_gc(R)(R	r,	int	value)	{	return	r.map!(x	=>	x	*	value);	}	
auto	multiple_by_nogc(R)(R	r,	int	value)	{	return	r.xmap!((x,y)	=>	x	*	y)(value);	}
22
Phobos	Algs	Forcing	GC
D	for	Primary	Storage	#DConf2016
23
Improvement	Ideas
• Make	it	explicit	
• Allow	it	to	manipulate	types,	to	replace	complex	template	recursion
24
static foreach
D	for	Primary	Storage	#DConf2016
template	hasUDAttributeOfType(T,	alias	X)	{	
				alias	attrs	=	TypeTuple!(__traits(getAttributes,	X));	
				template	helper(int	i)	{	
								static	if	(i	>=	attrs.length)	{	
												enum	helper	=	false;	
								}	else	static	if	(is(attrs[i]	==	T)	||	is(typeof(attrs[i])	==	T))	{	
												static	assert	(!helper!(i+1),	"More	than	one	matching	attribute:	"	~	attrs.stringof);	
												enum	helper	=	true;	
								}	else	{	
												enum	helper	=	helper!(i+1);	
								}	
				}	
				enum	hasUDAttributeOfType	=	helper!0;	
}
• Specify	some	@UDAs	as	transitive,	so	he	compiler	can	help	“prove”	correctness.	
• For	example:	
• Define	function	as	@atomic	if	it	does	not	context	switch	
• Function	may	be	@atomic	if	it	only	calls	@atomic	functions	
• Next	step	would	be	to	prove	that	no	context	switch	happens	
• Can	be	implemented	in	“runtime”	if	there	is	a	__traits	that	returns	all	the	
functions	that	a	function	may	call.	
• Next	phase	would	be	to	be	able	to	‘prove’	things	on	the	functions,	so	@nogc,	
nothrow,	pure	etc	can	use	the	same	mechanism.
25
Transitive	@UDA
D	for	Primary	Storage	#DConf2016
• __traits	that	returns	that	max	stack	size	of	a	function	
• Add	a	predicate	that	tells	whether	there	is	an	existing	exception	currently	
handled	
• Donate	Weka’s	@nogc	‘standard	library’	to	Phobos:	
• Our	Fiber	additions	into	Phobos	(throwInFiber,	TraceInfo	support,	etc)	[other	
lib	funs	as	well]	
• Containers,	algorithms,	lockless	data	structures,	etc…	
26
Other	Suggestions
D	for	Primary	Storage	#DConf2016
Questions?
Peta		
Exa	
Zetta			
Yotta	
Xenna	
Weka	(1030)
D	for	Primary	Storage	#DConf2016 28
Table 1
0.68 0.70 0.70 + PGO
88.4 58.1 54.7
84.3 57.1 54.7
75.8 51.0 49.7
67.5 40.7 37.3
59.5 36.4 43.1
56.6 38.3 35.3
51.9 35.9 32.4
50.4 30.9 34.6
44.9 25.2 26.8
42.7 31.0 27.0
35.7 31.3 30.2
35.1 24.5 22.9
31.4 21.1 17.7
30.5 20.5 19.9
25.8 20.1 16.3
19.0 13.5 15.4
18.3 12.0 11.3
14.3 10.6 10.4
13.7 14.0 13.6
9.4 6.8 6.3
• 2.0.70.2	is	a	major	improvement	in	
compile	time	over	the	2.068.2	
• Still,	the	30-40%	improvement	mean	that	
engineers	have	to	wait	long	minutes	to	get	
the	whole	exe	to	build.	
• We’re	breaking	large	package	into	smaller	
ones,	when	possible

More Related Content

What's hot

Dataflow Management From Edge to Core with Apache NiFi
Dataflow Management From Edge to Core with Apache NiFiDataflow Management From Edge to Core with Apache NiFi
Dataflow Management From Edge to Core with Apache NiFiDataWorks Summit
 
Avoiding.the.pitfallsof.oracle.migration.2013
Avoiding.the.pitfallsof.oracle.migration.2013Avoiding.the.pitfallsof.oracle.migration.2013
Avoiding.the.pitfallsof.oracle.migration.2013EDB
 
Stardog 1.1: An Easier, Smarter, Faster RDF Database
Stardog 1.1: An Easier, Smarter, Faster RDF DatabaseStardog 1.1: An Easier, Smarter, Faster RDF Database
Stardog 1.1: An Easier, Smarter, Faster RDF Databasekendallclark
 
The Real Scoop on Migrating from Oracle Databases
The Real Scoop on Migrating from Oracle DatabasesThe Real Scoop on Migrating from Oracle Databases
The Real Scoop on Migrating from Oracle DatabasesEDB
 
Ashnik EnterpriseDB PostgreSQL - A real alternative to Oracle
Ashnik EnterpriseDB PostgreSQL - A real alternative to Oracle Ashnik EnterpriseDB PostgreSQL - A real alternative to Oracle
Ashnik EnterpriseDB PostgreSQL - A real alternative to Oracle Ashnikbiz
 
Running Enterprise Workloads in the Cloud
Running Enterprise Workloads in the CloudRunning Enterprise Workloads in the Cloud
Running Enterprise Workloads in the CloudDataWorks Summit
 
Apache Geode Meetup, Cork, Ireland at CIT
Apache Geode Meetup, Cork, Ireland at CITApache Geode Meetup, Cork, Ireland at CIT
Apache Geode Meetup, Cork, Ireland at CITApache Geode
 
Calling All Modularity Solutions: A Comparative Study from eBay
Calling All Modularity Solutions: A Comparative Study from eBayCalling All Modularity Solutions: A Comparative Study from eBay
Calling All Modularity Solutions: A Comparative Study from eBayTony Ng
 
MOUG17 Keynote: Oracle OpenWorld Major Announcements
MOUG17 Keynote: Oracle OpenWorld Major AnnouncementsMOUG17 Keynote: Oracle OpenWorld Major Announcements
MOUG17 Keynote: Oracle OpenWorld Major AnnouncementsMonica Li
 
Hadoop Spark - Reuniao SouJava 12/04/2014
Hadoop Spark - Reuniao SouJava 12/04/2014Hadoop Spark - Reuniao SouJava 12/04/2014
Hadoop Spark - Reuniao SouJava 12/04/2014soujavajug
 
EDB's Migration Portal - Migrate from Oracle to Postgres
EDB's Migration Portal - Migrate from Oracle to PostgresEDB's Migration Portal - Migrate from Oracle to Postgres
EDB's Migration Portal - Migrate from Oracle to PostgresEDB
 
Building Apps with Distributed In-Memory Computing Using Apache Geode
Building Apps with Distributed In-Memory Computing Using Apache GeodeBuilding Apps with Distributed In-Memory Computing Using Apache Geode
Building Apps with Distributed In-Memory Computing Using Apache GeodePivotalOpenSourceHub
 
Dataflow Management From Edge to Core with Apache NiFi
Dataflow Management From Edge to Core with Apache NiFiDataflow Management From Edge to Core with Apache NiFi
Dataflow Management From Edge to Core with Apache NiFiDataWorks Summit
 
Quality for the Hadoop Zoo
Quality for the Hadoop ZooQuality for the Hadoop Zoo
Quality for the Hadoop ZooDataWorks Summit
 
Improving Python and Spark (PySpark) Performance and Interoperability
Improving Python and Spark (PySpark) Performance and InteroperabilityImproving Python and Spark (PySpark) Performance and Interoperability
Improving Python and Spark (PySpark) Performance and InteroperabilityWes McKinney
 
Key Methodologies for Migrating from Oracle to Postgres
Key Methodologies for Migrating from Oracle to PostgresKey Methodologies for Migrating from Oracle to Postgres
Key Methodologies for Migrating from Oracle to PostgresEDB
 
Introduction to Apache Geode (Cork, Ireland)
Introduction to Apache Geode (Cork, Ireland)Introduction to Apache Geode (Cork, Ireland)
Introduction to Apache Geode (Cork, Ireland)Anthony Baker
 
Leveraging open source for large scale analytics
Leveraging open source for large scale analyticsLeveraging open source for large scale analytics
Leveraging open source for large scale analyticsSouth West Data Meetup
 
Migration DB2 to EDB - Project Experience
 Migration DB2 to EDB - Project Experience Migration DB2 to EDB - Project Experience
Migration DB2 to EDB - Project ExperienceEDB
 

What's hot (20)

Dataflow Management From Edge to Core with Apache NiFi
Dataflow Management From Edge to Core with Apache NiFiDataflow Management From Edge to Core with Apache NiFi
Dataflow Management From Edge to Core with Apache NiFi
 
Avoiding.the.pitfallsof.oracle.migration.2013
Avoiding.the.pitfallsof.oracle.migration.2013Avoiding.the.pitfallsof.oracle.migration.2013
Avoiding.the.pitfallsof.oracle.migration.2013
 
Stardog 1.1: An Easier, Smarter, Faster RDF Database
Stardog 1.1: An Easier, Smarter, Faster RDF DatabaseStardog 1.1: An Easier, Smarter, Faster RDF Database
Stardog 1.1: An Easier, Smarter, Faster RDF Database
 
The Real Scoop on Migrating from Oracle Databases
The Real Scoop on Migrating from Oracle DatabasesThe Real Scoop on Migrating from Oracle Databases
The Real Scoop on Migrating from Oracle Databases
 
Ashnik EnterpriseDB PostgreSQL - A real alternative to Oracle
Ashnik EnterpriseDB PostgreSQL - A real alternative to Oracle Ashnik EnterpriseDB PostgreSQL - A real alternative to Oracle
Ashnik EnterpriseDB PostgreSQL - A real alternative to Oracle
 
Running Enterprise Workloads in the Cloud
Running Enterprise Workloads in the CloudRunning Enterprise Workloads in the Cloud
Running Enterprise Workloads in the Cloud
 
Apache Geode Meetup, Cork, Ireland at CIT
Apache Geode Meetup, Cork, Ireland at CITApache Geode Meetup, Cork, Ireland at CIT
Apache Geode Meetup, Cork, Ireland at CIT
 
Apache Deep Learning 201
Apache Deep Learning 201Apache Deep Learning 201
Apache Deep Learning 201
 
Calling All Modularity Solutions: A Comparative Study from eBay
Calling All Modularity Solutions: A Comparative Study from eBayCalling All Modularity Solutions: A Comparative Study from eBay
Calling All Modularity Solutions: A Comparative Study from eBay
 
MOUG17 Keynote: Oracle OpenWorld Major Announcements
MOUG17 Keynote: Oracle OpenWorld Major AnnouncementsMOUG17 Keynote: Oracle OpenWorld Major Announcements
MOUG17 Keynote: Oracle OpenWorld Major Announcements
 
Hadoop Spark - Reuniao SouJava 12/04/2014
Hadoop Spark - Reuniao SouJava 12/04/2014Hadoop Spark - Reuniao SouJava 12/04/2014
Hadoop Spark - Reuniao SouJava 12/04/2014
 
EDB's Migration Portal - Migrate from Oracle to Postgres
EDB's Migration Portal - Migrate from Oracle to PostgresEDB's Migration Portal - Migrate from Oracle to Postgres
EDB's Migration Portal - Migrate from Oracle to Postgres
 
Building Apps with Distributed In-Memory Computing Using Apache Geode
Building Apps with Distributed In-Memory Computing Using Apache GeodeBuilding Apps with Distributed In-Memory Computing Using Apache Geode
Building Apps with Distributed In-Memory Computing Using Apache Geode
 
Dataflow Management From Edge to Core with Apache NiFi
Dataflow Management From Edge to Core with Apache NiFiDataflow Management From Edge to Core with Apache NiFi
Dataflow Management From Edge to Core with Apache NiFi
 
Quality for the Hadoop Zoo
Quality for the Hadoop ZooQuality for the Hadoop Zoo
Quality for the Hadoop Zoo
 
Improving Python and Spark (PySpark) Performance and Interoperability
Improving Python and Spark (PySpark) Performance and InteroperabilityImproving Python and Spark (PySpark) Performance and Interoperability
Improving Python and Spark (PySpark) Performance and Interoperability
 
Key Methodologies for Migrating from Oracle to Postgres
Key Methodologies for Migrating from Oracle to PostgresKey Methodologies for Migrating from Oracle to Postgres
Key Methodologies for Migrating from Oracle to Postgres
 
Introduction to Apache Geode (Cork, Ireland)
Introduction to Apache Geode (Cork, Ireland)Introduction to Apache Geode (Cork, Ireland)
Introduction to Apache Geode (Cork, Ireland)
 
Leveraging open source for large scale analytics
Leveraging open source for large scale analyticsLeveraging open source for large scale analytics
Leveraging open source for large scale analytics
 
Migration DB2 to EDB - Project Experience
 Migration DB2 to EDB - Project Experience Migration DB2 to EDB - Project Experience
Migration DB2 to EDB - Project Experience
 

Viewers also liked

Viewers also liked (15)

base de datos
base de datosbase de datos
base de datos
 
mve12010
mve12010mve12010
mve12010
 
903187 y yf ewjvtzvom4g 4121bebb5096ae8de1745a6e457ebebf0433b9c1
903187 y yf ewjvtzvom4g 4121bebb5096ae8de1745a6e457ebebf0433b9c1903187 y yf ewjvtzvom4g 4121bebb5096ae8de1745a6e457ebebf0433b9c1
903187 y yf ewjvtzvom4g 4121bebb5096ae8de1745a6e457ebebf0433b9c1
 
Все об обучении за рубежом, № 4. Ноябрь, 2010
Все об обучении за рубежом, № 4. Ноябрь, 2010Все об обучении за рубежом, № 4. Ноябрь, 2010
Все об обучении за рубежом, № 4. Ноябрь, 2010
 
Mandala-Presupuesto
Mandala-PresupuestoMandala-Presupuesto
Mandala-Presupuesto
 
9647 Mini Zagwozdka 3
9647 Mini  Zagwozdka 39647 Mini  Zagwozdka 3
9647 Mini Zagwozdka 3
 
Power porfolio mari
Power porfolio mariPower porfolio mari
Power porfolio mari
 
Personality adjectives-1-2 (1)
Personality adjectives-1-2 (1)Personality adjectives-1-2 (1)
Personality adjectives-1-2 (1)
 
Presentation on Failure and Relaunching of Sony's Godzilla
Presentation on Failure and Relaunching of Sony's GodzillaPresentation on Failure and Relaunching of Sony's Godzilla
Presentation on Failure and Relaunching of Sony's Godzilla
 
2. clase presupuesto publico 2016
2.  clase presupuesto publico 20162.  clase presupuesto publico 2016
2. clase presupuesto publico 2016
 
NIC Nº0
NIC Nº0 NIC Nº0
NIC Nº0
 
Z3.01
Z3.01Z3.01
Z3.01
 
Esophageal varices
Esophageal varicesEsophageal varices
Esophageal varices
 
Variceal bleeding management
Variceal bleeding managementVariceal bleeding management
Variceal bleeding management
 
Designing A Better Bank
Designing A Better BankDesigning A Better Bank
Designing A Better Bank
 

Similar to D conf 2016 - Using D for Primary Storage

A Tight Ship: How Containers and SDS Optimize the Enterprise
 A Tight Ship: How Containers and SDS Optimize the Enterprise A Tight Ship: How Containers and SDS Optimize the Enterprise
A Tight Ship: How Containers and SDS Optimize the EnterpriseEric Kavanagh
 
Delphix and Pure Storage partner
Delphix and Pure Storage partnerDelphix and Pure Storage partner
Delphix and Pure Storage partnerKyle Hailey
 
Run Your Oracle BI QA Cycles More Effectively
Run Your Oracle BI QA Cycles More EffectivelyRun Your Oracle BI QA Cycles More Effectively
Run Your Oracle BI QA Cycles More EffectivelyKPI Partners
 
Scale IO Software Defined Block Storage
Scale IO Software Defined Block Storage Scale IO Software Defined Block Storage
Scale IO Software Defined Block Storage Jürgen Ambrosi
 
London Breakfast Seminar
London Breakfast SeminarLondon Breakfast Seminar
London Breakfast SeminarNuoDB
 
Oracle cdw loan servicer case study-final_for web
Oracle cdw loan servicer case study-final_for webOracle cdw loan servicer case study-final_for web
Oracle cdw loan servicer case study-final_for webMainstay
 
Notes from the Field - Cloud Solutions with VMware vCloud Director
Notes from the Field - Cloud Solutions with VMware vCloud DirectorNotes from the Field - Cloud Solutions with VMware vCloud Director
Notes from the Field - Cloud Solutions with VMware vCloud DirectorJames Charter
 
Self Service for IT Infrastructure
Self Service for IT Infrastructure Self Service for IT Infrastructure
Self Service for IT Infrastructure Cisco DevNet
 
Is Your Organization Ready for Data Vault?
Is Your Organization Ready for Data Vault?Is Your Organization Ready for Data Vault?
Is Your Organization Ready for Data Vault?WhereScape
 
DCEU 18: Desigual Transforms the In-Store Experience with Docker Enterprise C...
DCEU 18: Desigual Transforms the In-Store Experience with Docker Enterprise C...DCEU 18: Desigual Transforms the In-Store Experience with Docker Enterprise C...
DCEU 18: Desigual Transforms the In-Store Experience with Docker Enterprise C...Docker, Inc.
 
2016 NCS ASE short
2016 NCS ASE short2016 NCS ASE short
2016 NCS ASE shortSteve Stuck
 
JD Edwards Archiving and Upgrades - a Case Study from DBG
JD Edwards Archiving and Upgrades - a Case Study from DBGJD Edwards Archiving and Upgrades - a Case Study from DBG
JD Edwards Archiving and Upgrades - a Case Study from DBGNERUG
 
Webinar: 4 Ways to Improve NetApp Storage Performance Without Replacing It
Webinar: 4 Ways to Improve NetApp Storage Performance Without Replacing ItWebinar: 4 Ways to Improve NetApp Storage Performance Without Replacing It
Webinar: 4 Ways to Improve NetApp Storage Performance Without Replacing ItStorage Switzerland
 
Self-Driving Data Center
Self-Driving Data CenterSelf-Driving Data Center
Self-Driving Data CenterAll Things Open
 
5. 2010 11-03 bucharest oracle-tech_day_security
5. 2010 11-03 bucharest oracle-tech_day_security5. 2010 11-03 bucharest oracle-tech_day_security
5. 2010 11-03 bucharest oracle-tech_day_securityDoina Draganescu
 
Palringo : a startup's journey from a data center to the cloud
Palringo : a startup's journey from a data center to the cloudPalringo : a startup's journey from a data center to the cloud
Palringo : a startup's journey from a data center to the cloudPhilipBasford
 
Challenges Scaling DevOps
Challenges Scaling DevOpsChallenges Scaling DevOps
Challenges Scaling DevOpsRachel Maxwell
 
Webinar leveraging-cloud-sandboxes-with-ansible-jenkins-j frog
Webinar leveraging-cloud-sandboxes-with-ansible-jenkins-j frogWebinar leveraging-cloud-sandboxes-with-ansible-jenkins-j frog
Webinar leveraging-cloud-sandboxes-with-ansible-jenkins-j frogQualiQuali
 

Similar to D conf 2016 - Using D for Primary Storage (20)

A Tight Ship: How Containers and SDS Optimize the Enterprise
 A Tight Ship: How Containers and SDS Optimize the Enterprise A Tight Ship: How Containers and SDS Optimize the Enterprise
A Tight Ship: How Containers and SDS Optimize the Enterprise
 
Delphix and Pure Storage partner
Delphix and Pure Storage partnerDelphix and Pure Storage partner
Delphix and Pure Storage partner
 
Run Your Oracle BI QA Cycles More Effectively
Run Your Oracle BI QA Cycles More EffectivelyRun Your Oracle BI QA Cycles More Effectively
Run Your Oracle BI QA Cycles More Effectively
 
Scale IO Software Defined Block Storage
Scale IO Software Defined Block Storage Scale IO Software Defined Block Storage
Scale IO Software Defined Block Storage
 
London Breakfast Seminar
London Breakfast SeminarLondon Breakfast Seminar
London Breakfast Seminar
 
Oracle cdw loan servicer case study-final_for web
Oracle cdw loan servicer case study-final_for webOracle cdw loan servicer case study-final_for web
Oracle cdw loan servicer case study-final_for web
 
Notes from the Field - Cloud Solutions with VMware vCloud Director
Notes from the Field - Cloud Solutions with VMware vCloud DirectorNotes from the Field - Cloud Solutions with VMware vCloud Director
Notes from the Field - Cloud Solutions with VMware vCloud Director
 
Self Service for IT Infrastructure
Self Service for IT Infrastructure Self Service for IT Infrastructure
Self Service for IT Infrastructure
 
Is Your Organization Ready for Data Vault?
Is Your Organization Ready for Data Vault?Is Your Organization Ready for Data Vault?
Is Your Organization Ready for Data Vault?
 
DCEU 18: Desigual Transforms the In-Store Experience with Docker Enterprise C...
DCEU 18: Desigual Transforms the In-Store Experience with Docker Enterprise C...DCEU 18: Desigual Transforms the In-Store Experience with Docker Enterprise C...
DCEU 18: Desigual Transforms the In-Store Experience with Docker Enterprise C...
 
Rudhra
RudhraRudhra
Rudhra
 
2016 NCS ASE short
2016 NCS ASE short2016 NCS ASE short
2016 NCS ASE short
 
JD Edwards Archiving and Upgrades - a Case Study from DBG
JD Edwards Archiving and Upgrades - a Case Study from DBGJD Edwards Archiving and Upgrades - a Case Study from DBG
JD Edwards Archiving and Upgrades - a Case Study from DBG
 
Webinar: 4 Ways to Improve NetApp Storage Performance Without Replacing It
Webinar: 4 Ways to Improve NetApp Storage Performance Without Replacing ItWebinar: 4 Ways to Improve NetApp Storage Performance Without Replacing It
Webinar: 4 Ways to Improve NetApp Storage Performance Without Replacing It
 
Self-Driving Data Center
Self-Driving Data CenterSelf-Driving Data Center
Self-Driving Data Center
 
resume_latest
resume_latestresume_latest
resume_latest
 
5. 2010 11-03 bucharest oracle-tech_day_security
5. 2010 11-03 bucharest oracle-tech_day_security5. 2010 11-03 bucharest oracle-tech_day_security
5. 2010 11-03 bucharest oracle-tech_day_security
 
Palringo : a startup's journey from a data center to the cloud
Palringo : a startup's journey from a data center to the cloudPalringo : a startup's journey from a data center to the cloud
Palringo : a startup's journey from a data center to the cloud
 
Challenges Scaling DevOps
Challenges Scaling DevOpsChallenges Scaling DevOps
Challenges Scaling DevOps
 
Webinar leveraging-cloud-sandboxes-with-ansible-jenkins-j frog
Webinar leveraging-cloud-sandboxes-with-ansible-jenkins-j frogWebinar leveraging-cloud-sandboxes-with-ansible-jenkins-j frog
Webinar leveraging-cloud-sandboxes-with-ansible-jenkins-j frog
 

Recently uploaded

SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )Tsuyoshi Horigome
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINESIVASHANKAR N
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
UNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular ConduitsUNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular Conduitsrknatarajan
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSKurinjimalarL3
 
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)Suman Mia
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxupamatechverse
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxpurnimasatapathy1234
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Call Girls in Nagpur High Profile
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxAsutosh Ranjan
 
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...ranjana rawat
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSISrknatarajan
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Dr.Costas Sachpazis
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlysanyuktamishra911
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Serviceranjana rawat
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130Suhani Kapoor
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...Soham Mondal
 
result management system report for college project
result management system report for college projectresult management system report for college project
result management system report for college projectTonystark477637
 

Recently uploaded (20)

SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
 
UNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular ConduitsUNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular Conduits
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
 
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptx
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptx
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptx
 
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSIS
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghly
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
 
result management system report for college project
result management system report for college projectresult management system report for college project
result management system report for college project
 
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINEDJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
 

D conf 2016 - Using D for Primary Storage