Agenda:
Architectural Overview
Presentation to the Client
Presentation to the Server/DB
High Availability and Disaster Recovery
Extended Architecture
Setup / Installation
Tests
Use cases
Perspective 12c
1. Comparison of
ACFS and DBFS
Value Transformation Services
Daniel Hillinger
Database Administrator
2. Daniel Hillinger
Value Transformation Services
1
Index Exadata Backup Clone
Solaris Performance Tuning Patching TAF
DBA Grid Infrastructur ONS Database Vault
Redhat NFS Partitioning ClusterwareClient Linux
ZFS RACFAN Security Dataguard ACFS
Disaster Recovery ASM Replication
High Availability Restore DBFS
3. Agenda
• Architectural Overview
• Presentation to the Client
• Presentation to the Server/DB
• High Availability and Disaster Recovery
• Extended Architecture
• Setup / Installation
• Tests
• Use cases
• Perspective 12c
Value Transformation Services
2
4. Architectural Overview - ACFS
Value Transformation Services
3
Client
Server
NFS
ASM
DB
ADVM
ACFS
NFS Server
Storage/
Disks
5. Architectural Overview - DBFS
Value Transformation Services
4
ClientServer
SQL Net
ASM
DB
Storage/
Disks
Oracle
Client
DBFS
FUSE
6. Presentation to the Client - ACFS
• Standard NFS mount
$ mount
<IP>:/acfs on /acfs type nfs
(rw,bg,hard,nointr,rsize=32768,wsize=32768,tcp,actimeo=0,nfsvers
=3,timeo=600,addr=<IP>)
$ df –hTt nfs
<IP>:/acfs nfs 170G 16G 154G 10% /acfs
Value Transformation Services
5
7. Presentation to the Client - DBFS
• DBFS is based on FUSE (Filesystem in USErspace)
• Oracle Client required
$ mount
dbfs-@DBFS_DBFS:/ on /dbfs type fuse
(rw,nosuid,nodev,max_read=1048576,default_permissions,allow_othe
r)
$ df -hTt fuse
dbfs-@DBFS_DBFS:/ fuse 4.5G 313M 4.2G 7% /dbfs
Restrictions:
ioctl, locking, asynchronous I/O, O_DIRECT file opens,
hard links, pipes, and other special file modes
Value Transformation Services
6
9. FUSE
Filesystem in UserSpace
• Usable by non privileged users
• Availible on Linux and Solaris 11
Value Transformation Services
8
userspace
kernel
ls /my_file
glibc
VFS
FUSE
NFS, EXT3, …
glibc
libfuse
my_script
10. Presentation to the Server - ACFS
ASM Dynamic Volume Manager (ADVM)
provides a block device in /dev/asm
Mounted as standard Linux filesystem
$ df –hTt acfs
Filesystem Type Size Used Avail Use% Mounted on
/dev/asm/lv_acfs-46 acfs 170G 16G 154G 10% /acfs
$ lsmod
oracleacfs 2001119 3
oracleadvm 250040 7
oracleoks 427736 2 oracleacfs,oracleadvm
Value Transformation Services
9
11. Presentation to the DB - ACFS
Can be accessed with
• External Tables
• UTL_FILE
• Datapump
• …
Value Transformation Services
10
12. Presentation to the Server / DB - DBFS
Server:
Not visible for the server
But could be configured as client
DB:
Access via SQL
SELECT UTL_RAW.cast_to_varchar2(filedata) AS filedata
FROM dbfs_content
WHERE path = '/dbfs/test1';
Value Transformation Services
11
13. High Availability and Disaster Recovery
High Availability(HA):
automated solution in order to conceal the failure of a
component
Disaster Recovery(DR):
steps to restore a minimum operation after a major
failure, usually manually
Value Transformation Services
12
14. High Availability and Desaster Recovery
ACFS DBFS
High Availability
without interruption None RAC
with interruption Failover NFS Server Failover DB
Desaster Recovery
without dataloss None Dataguard
with dataloss ACFS Replication/Rsync Rsync
Backup Filesystem RMAN/Filesystem
Value Transformation Services
13
15. Extended Architecture - ACFS
Value Transformation Services
14
Client
Server1
NFS
ASM
DB
Storage/Disks Storage/Disks
ACFS
Rep.
ADVM
ACFS
Server2
ASM
DB
ADVM
ACFS
Server3
ASM
DB
ADVM
ACFS
NFSNFS
17. Setup / Installation - ACFS
Supported on Linux, Solaris, AIX and Windows
Requires ASM
Diskgroup can be shared
Value Transformation Services
16
Disk4Disk3Disk2Disk1
Diskgroup
Logical Volume
ACFS2
LV
ACFS1
18. Setup / Installation - DBFS
Dedicated Tablespace
Dedicated user with create session, table, view,
procedure privileges and granted dbfs_role
Filesystem creation with script:
$ORACLE_HOME/rdbms/admin/dbfs_create_filesystem.sql
Files are stored as LOBs in a table called as the
filesystem name
Value Transformation Services
17
19. Setup / Installation - DBFS
SQL> desc mydbfs
Name Null? Type
--------------------- -------- -----------------
...
PATHNAME NOT NULL VARCHAR2(1024)
FILEDATA BLOB
POSIX_MODE NUMBER(38)
POSIX_UID NUMBER(38)
POSIX_GID NUMBER(38)
...
Value Transformation Services
18
20. HA Tests - ACFS
1. Shutdown server hosting NFS server
NFS server switched to another node
2. Kill NFS server
NFS server was restarted
3. Umount ACFS
Umount hanging – not possible
The FS was always available for the client!
Value Transformation Services
19
21. HA Tests - DBFS
1. Shutdown one server
session failover to other instance
2. Kill one instance
session failover to other instance
3. Kill listener
sessions are established only during the mount
4. Client: Kill dbfs_client process
FS is umounted and all open IOs are lost
The FS was always available for the client!
Value Transformation Services
20
22. Remote Filesystems
Value Transformation Services
21
touch test
Kernel
driver
Disk
NFS Protocol
TCP,IP,Ethernet
Local
Remote
TCP,IP,Ethernet
NFS
Kernel
touch test
Kernel
driver
Disk
Local
23. Performance Tests
Value Transformation Services
22
local 10 B local 100 B local 1 M remote 10 B remote 100 B remote 1 M
Local 3600 34300 1400000 0 0 0
ACFS 1500 14600 1800000 902 8200 104000
DBFS 0 0 0 159 1300 113000
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
24. Use cases
ACFS DBFS
Database related Files
DB Files(redo,datafiles,...) Not supported Not supported
Exports(datapump) + -
DB logs + Not supported
Shared, DB and Application
external tables,etc + +
Application Files
Large + +
Small + -
Value Transformation Services
23
25. Perspective12c - ACFS
High Availible NFS (HANFS)
Supports all database files
Supported on Exadata
unlimited expansions
Value Transformation Services
24
26. Perspective12c - DBFS
New ways to access DBFS:
• http/https
• ftp
• WebDAV
Based on Enterprise Manager Database Express
Value Transformation Services
25
27. SecureFiles
SecureFile is an storage option for LOBs and was
introduced in 11g
LOBs can be stored as BasicFile or SecureFile
Advantages of SecureFiles:
• Compression
• Deduplication
• Encryption
Value Transformation Services
26
30. Extended Architecture Support - DBFS
Value Transformation Services
29
Client
Server
NFS
ASM
DB DBFS
NFS Server
Storage/
Disks
NO SUPPORT
31. dbfs_client as CLI
All DBFS paths must be absolute and preceded by
“dbfs:”.
All commands are ls, cp, rm, mkdir.
$ dbfs_client db_user@db_server --command command
[switches] [arguments]
$ dbfs_client db_user@db_server --command ls dbfs:/mydbfs
Value Transformation Services
30