This discussion is archived
13 Replies Latest reply: Dec 12, 2012 2:05 PM by Dude! RSS

Oracle 11g, OL 6 and ext4

Dude! Guru
Currently Being Moderated
Now that Oracle Linux 6 has been certified for Oracle 11gR2, does this also include the use of the ext4 file system?

I'm asking because I found database performance and block corruption warnings searching in Google, but perhaps this only applied to early implementations of ext4 or were simply wrong assertions. I imagine that certification includes ext4, but just to be sure, is there still a reason to be concerned about it?
  • 1. Re: Oracle 11g, OL 6 and ext4
    156071 Employee ACE
    Currently Being Moderated
    I'd really strongly suggest using ASM.
  • 2. Re: Oracle 11g, OL 6 and ext4
    Avi Miller Guru
    Currently Being Moderated
    Dude wrote:
    Now that Oracle Linux 6 has been certified for Oracle 11gR2, does this also include the use of the ext4 file system?
    Yes, however...
    I'm asking because I found database performance and block corruption warnings searching in Google, but perhaps this only applied to early implementations of ext4 or were simply wrong assertions. I imagine that certification includes ext4, but just to be sure, is there still a reason to be concerned about it?
    Performance is still an issue, and for that reason alone we strongly recommend ASM for database storage. We will be releasing oracleasmlib for OL6 soon, so I would wait for that. You might also want to compare the performance of ext4 and XFS for your database storage, as I find XFS to perform much better for MySQL and PostgreSQL storage on OL6. I haven't used ext3/4 for database storage for years.
  • 3. Re: Oracle 11g, OL 6 and ext4
    Avi Miller Guru
    Currently Being Moderated
    Avi Miller wrote:
    You might also want to compare the performance of ext4 and XFS for your database storage, as I find XFS to perform much better for MySQL and PostgreSQL storage on OL6. I haven't used ext3/4 for database storage for years.
    Having said that, ASM is still our preferred, recommended option with the best support from the DB and Linux teams.
  • 4. Re: Oracle 11g, OL 6 and ext4
    Dude! Guru
    Currently Being Moderated
    ASM has very interesting features and I like its concept of file based redundancy, as opposed to the usual RAID concepts found with other solutions. However, it requires another separate database instance and has it's own learning curve.

    How about UEK2 and setting up a partition using btrfs for Oracle tablespace and operational files?
  • 5. Re: Oracle 11g, OL 6 and ext4
    Avi Miller Guru
    Currently Being Moderated
    Dude wrote:
    ASM has very interesting features and I like its concept of file based redundancy, as opposed to the usual RAID concepts found with other solutions. However, it requires another separate database instance and has it's own learning curve.
    It's not file-based redundancy. ASM does full load-balancing/levelling and N-level striping across all the devices you provide to the ASM group. Also, with the introduction of Grid Infrastructure, it's no longer a full separate database instance. I strongly recommend you give ASM a go. It's pretty simple, even I can do it. :)
    How about UEK2 and setting up a partition using btrfs for Oracle tablespace and operational files?
    btrfs in its default mode is not at all suited to database workloads. You may want to disable the datacow option (nodatacow) on mount for some semblance of performance.
  • 6. Re: Oracle 11g, OL 6 and ext4
    Dude! Guru
    Currently Being Moderated
    My knowledge about ASM dates back to 11.1

    As far as I know, ASM does not mirror disks, but uses free space of failure groups to provide data redundancy. So let's say you have controllers e.g. SCSI A and B, you would define all disks of each SCSI controller as one failure group, in order to maintain data redundancy if one controller fails. ASM knows about oracle data type and files and provides automatic recommended redundancy based on file extents. ASM uses a +ASM instance, which does however not have a controlfile or datafiles.

    Is this not or no longer valid?
  • 7. Re: Oracle 11g, OL 6 and ext4
    247514 Expert
    Currently Being Moderated
    It's probably worth to mention Oracle doesn't support XFS on Linux
    ASM is probably best bet on Linux right now.

    Supported and Recommended File Systems on Linux [ID 236826.1]
  • 8. Re: Oracle 11g, OL 6 and ext4
    898553 Newbie
    Currently Being Moderated
    Keep in mind that EXT4 doesn't support concurrent writes which could be a concern depending on your needs. Also, you'll have to mount the filesystem with dioread_nolock if you want concurrent reads.
  • 9. Re: Oracle 11g, OL 6 and ext4
    Dude! Guru
    Currently Being Moderated
    Concurrent I/O seems to be a topic often discussed when comparing XFS with ext4. If I'm not mistaken then ext4 supports concurrent I/O, but there is a performance penalty compared to XFS, i.e. fragmentation. However, I have not found any information outlining that this was a new issue introduced with ext4.

    Apparently people are storing Oracle datafiles under ext3 without problems. The ext4 filesystem is the successor of ext3 and ext2, providing more features and robustness. How performance issues of Oracle DB pertain to ext4 is probably subject to errata and updates.

    From what I can gather, ASM (ACFS), or OCFS2 in a RAC environment are the best options under Linux. Performance results will also depend on the underlying storage technology, for instance, caching, SSD or conventional rotary devices.
  • 10. Re: Oracle 11g, OL 6 and ext4
    898553 Newbie
    Currently Being Moderated
    Dude wrote:
    Concurrent I/O seems to be a topic often discussed when comparing XFS with ext4. If I'm not mistaken then ext4 supports concurrent I/O, but there is a performance penalty compared to XFS, i.e. fragmentation. However, I have not found any information outlining that this was a new issue introduced with ext4.

    Apparently people are storing Oracle datafiles under ext3 without problems. The ext4 filesystem is the successor of ext3 and ext2, providing more features and robustness. How performance issues of Oracle DB pertain to ext4 is probably subject to errata and updates.

    From what I can gather, ASM (ACFS), or OCFS2 in a RAC environment are the best options under Linux. Performance results will also depend on the underlying storage technology, for instance, caching, SSD or conventional rotary devices.
    It supports concurrent reads, not writes so if you're running a warehouse type database where it's mostly reads, you'd be fine but if you're doing a lot of writes, you should consider other options (assuming you care about latency and performance).

    Personally, I think ASM is the way to go these days for Oracle DBs and you're right, there are a ton of factors to consider when architecting your ASM configs. For example, Oracle suggests putting all your database disks in one huge diskgroup because they claim that performance is better in that case, though I've run quite a lot of tests over the last couple years suggesting otherwise. At the end of the day, most people don't care about performance (though they may say otherwise) and certainly don't take the time to do much tuning. My situation was a bit different due to the nature of the business but even Jim Williams and some of the other folks on the ASM team didn't seem to have initially gone as in-depth as I may have when it came to tuning.

    The best thing you can do is run your own tests with tools like fio, orion, swingbench, etc. and figure out if the performance is acceptable based on your needs.
  • 11. Re: Oracle 11g, OL 6 and ext4
    Dude! Guru
    Currently Being Moderated
    It supports concurrent reads, not writes .....
    Says or writes who? Is there any documented source of this information?

    As far as I'm aware, the ext filesystem including ext4 supports concurrent writes.
  • 12. Re: Oracle 11g, OL 6 and ext4
    898553 Newbie
    Currently Being Moderated
    Here's a good explanation from a guy who works over at EMC:

    http://kevinclosson.wordpress.com/2012/03/06/yes-file-systems-still-need-to-support-concurrent-writes-yet-another-look-at-xfs-versus-ext4/
  • 13. Re: Oracle 11g, OL 6 and ext4
    Dude! Guru
    Currently Being Moderated
    If I'm reading it correctly, the article doesn't outline that concurrent writes under ext4 are not supported, but the tests show that XFS has better performance. However, if you read the comments, the performance results are questionable, to say the least.

    http://en.wikipedia.org/wiki/Ext4

    When ext3 appends to a file, it calls the block allocator, once for each block. Consequently if there are multiple concurrent writers, files can easily become fragmented on disk. However ext4 uses delayed allocation which allows it to buffer data and allocate groups of blocks. Consequently the multiblock allocator can make better choices about allocating files contiguously on disk.

    The situation may be different for concurrent direct I/O writes. My understanding is that the OS should implement read/write locks to ensure data integrity. Imagine what would happen when a file is modified while another process uses the information in the buffer cache. Hence you have I/O waits.

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points