← Back to team overview

maria-discuss team mailing list archive

Re: fusion io

 

Hi Mark,

On 14 Jun 2014, at 00:44, MARK CALLAGHAN <mdcallag@xxxxxxxxx> wrote:

> Where can directFS be downloaded? This is open source, right?
> 

From what I gather, there is a public API to this called OpenNVM (http://opennvm.github.io/). But the short answer is that directfs/nvmfs isn't opensource - you only get this if you have a fusion-io card

Fusion-io itself is a commercial product, so nvmfs/directfs is likely from them only (and is probably closed source). I take it others can implement it, but haven't (yet?) ?

MariaDB's initial implementation of it is here:
	http://lists.askmonty.org/pipermail/commits/2013-March/004529.html
(and I presume this was then ported to Percona Server as well -- http://www.percona.com/doc/percona-server/5.6/performance/atomic_fio.html)

It seems the magic is at:
#define DFS_IOCTL_ATOMIC_WRITE_SET _IOW(0x95, 2, uint)

I found a presentation that talks about it (nothing about the filesystem itself being opensource):
	http://www.slideshare.net/fusionio/perconalive-accelerating-mysql-in-open-source-hyperscale-systems

And for reference some older blog posts:
https://blog.mariadb.org/significant-performance-boost-with-new-mariadb-page-compression-on-fusionio/
https://blog.mariadb.org/mariadb-introduces-atomic-writes/

And attached for brevity, is a short chat I had with Jan Lindström who works on the fusion-io code now:

11:42 < bytee> jplindst: our fusion-io work, is based on the open APIs at 
               http://opennvm.github.io/ correct?
11:46 < jplindst> bytee: To be totally honest, I have no idea what are the API 
                  at the http page you mentioned, I have used standard POSIX 
                  interfaces to access FusionIO storage, thus you will need 
                  FusionIO SSD card and NVMFS file system
11:47 < bytee> jplindst: nvmfs file system - where does one get it ? from 
               fusion-io ?
11:47 < jplindst> bytee: FusionIO card is naturally commercial product, nvmfs 
                  to current my understanding does not work with any other 
                  device
11:48 < bytee> jplindst: ok, likely because others haven't implemented it
11:48 < jplindst> bytee: correct
11:49 < jplindst> bytee: If you have the card you should have the file system 
                  module
11:50 < bytee> jplindst: thanks
11:51 < jplindst> bytee: Last time we did discuss with FusionIO the actual file 
                  system was not yet open source
11:51 < jplindst> bytee: not sure if that has been changed now that 
                  announcements are out
11:51 < bytee> jplindst: doubt there is, from what i gathere

I hope this helps

cheers,
-colin


> 
> On Tue, Jun 10, 2014 at 5:18 PM, Daniel Black <daniel.black@xxxxxxxxxxxxx> wrote:
> 
> Thanks Colin. Missed that line of the doco and/or assumed it was a capability of another file-system.
> 
> 
> ----- Original Message -----
> > Special ioctl doesn't work unless you use directfs (you're using
> > ext4); see:
> > https://mariadb.com/kb/en/fusionio-directfs-atomic-write-support/
> >
> > On Wednesday, 11 June 2014, Daniel Black < daniel.black@xxxxxxxxxxxxx
> > > wrote:
> >
> >
> >
> > Hi,
> >
> > I'm trying to get innodb_use_atomic_writes = 1 working on an ext4 on
> > top of LVM on a ioDrive device with a RHEL6 kernel
> > 2.6.32-358.6.2.el6.x86_64
> >
> > and getting the following error. Which bit(s) need to change to get it
> > working?
> >
> >
> > 140611 7:43:46 InnoDB: Operating system error number 25 in a file
> > operation.
> > InnoDB: Error number 25 means 'Inappropriate ioctl for device'.
> > InnoDB: Some operating system error numbers are described at
> > InnoDB:
> > http://dev.mysql.com/doc/refman/5.5/en/operating-system-error-codes.html
> > InnoDB: File name ./ibdata1
> > InnoDB: File operation call: 'ioctl'.
> > InnoDB: Error in opening ./ibdata1
> >
> > --
> > --
> > Daniel Black, Engineer @ Open Query ( http://openquery.com.au )
> > Remote expertise & maintenance for MySQL/MariaDB server environments.
> >
> > _______________________________________________
> > Mailing list: https://launchpad.net/~maria-discuss
> > Post to : maria-discuss@xxxxxxxxxxxxxxxxxxx
> > Unsubscribe : https://launchpad.net/~maria-discuss
> > More help : https://help.launchpad.net/ListHelp
> 
> --
> --
> Daniel Black, Engineer @ Open Query (http://openquery.com.au)
> Remote expertise & maintenance for MySQL/MariaDB server environments.
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~maria-discuss
> Post to     : maria-discuss@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~maria-discuss
> More help   : https://help.launchpad.net/ListHelp
> 
> 
> 
> -- 
> Mark Callaghan
> mdcallag@xxxxxxxxx

--
Colin Charles, Chief Evangelist, SkySQL - The MariaDB Company 
blog: http://bytebot.net/blog/| t: +6-012-204-3201 | Skype: colincharles



Follow ups

References