Search This Blog

Loading...

Tuesday, August 11, 2015

CELL-02564: Specified object does not exist.

Today i got the message  "CELL-02564: Specified object does not exist":

CellCLI> list flashcachecontent

CELL-02564: Specified object does not exist.


The command
CellCLI> list flashcache detail
shows nothing !

What is it ?


Diagnostics:  let  look to cell disks on the flash:

CellCLI> list CELLDISK
     CD_00_dm01celadm03     normal
     CD_01_dm01celadm03     normal
     CD_02_dm01celadm03     normal
     CD_03_dm01celadm03     normal
     CD_04_dm01celadm03     normal
     CD_05_dm01celadm03     normal
     CD_06_dm01celadm03     normal
     CD_07_dm01celadm03     normal
     CD_08_dm01celadm03     normal
     CD_09_dm01celadm03     normal
     CD_10_dm01celadm03     normal
     CD_11_dm01celadm03     normal


There no Cell Disks at Flash !


Let create:

[root@ed03dbadm01 ~]# dcli -g cell_group -l root cellcli -e create flashcache all
ed03celadm01:
ed03celadm01: CELL-02647: Flashcache requires Flash cell disks.  The cell disk provided is not a working Flash cell disk: ALL.
ed03celadm02:
ed03celadm02: CELL-02647: Flashcache requires Flash cell disks.  The cell disk provided is not a working Flash cell disk: ALL.
ed03celadm03:
ed03celadm03: CELL-02647: Flashcache requires Flash cell disks.  The cell disk provided is not a working Flash cell disk: ALL.
[root@ed03dbadm01 ~]# dcli -g cell_group -l root cellcli -e create celldisk all flashdisk

ed03celadm01: CellDisk FD_00_ed03celadm01 successfully created
ed03celadm01: CellDisk FD_01_ed03celadm01 successfully created
ed03celadm01: CellDisk FD_02_ed03celadm01 successfully created
ed03celadm01: CellDisk FD_03_ed03celadm01 successfully created
ed03celadm01: CellDisk FD_04_ed03celadm01 successfully created
ed03celadm01: CellDisk FD_05_ed03celadm01 successfully created
ed03celadm01: CellDisk FD_06_ed03celadm01 successfully created
ed03celadm01: CellDisk FD_07_ed03celadm01 successfully created
ed03celadm01: CellDisk FD_08_ed03celadm01 successfully created
ed03celadm01: CellDisk FD_09_ed03celadm01 successfully created
ed03celadm01: CellDisk FD_10_ed03celadm01 successfully created
ed03celadm01: CellDisk FD_11_ed03celadm01 successfully created
ed03celadm01: CellDisk FD_12_ed03celadm01 successfully created
ed03celadm01: CellDisk FD_13_ed03celadm01 successfully created
ed03celadm01: CellDisk FD_14_ed03celadm01 successfully created
ed03celadm01: CellDisk FD_15_ed03celadm01 successfully created
ed03celadm02: CellDisk FD_00_ed03celadm02 successfully created
ed03celadm02: CellDisk FD_01_ed03celadm02 successfully created
ed03celadm02: CellDisk FD_02_ed03celadm02 successfully created
ed03celadm02: CellDisk FD_03_ed03celadm02 successfully created
ed03celadm02: CellDisk FD_04_ed03celadm02 successfully created
ed03celadm02: CellDisk FD_05_ed03celadm02 successfully created
ed03celadm02: CellDisk FD_06_ed03celadm02 successfully created
ed03celadm02: CellDisk FD_07_ed03celadm02 successfully created
ed03celadm02: CellDisk FD_08_ed03celadm02 successfully created
ed03celadm02: CellDisk FD_09_ed03celadm02 successfully created
ed03celadm02: CellDisk FD_10_ed03celadm02 successfully created
ed03celadm02: CellDisk FD_11_ed03celadm02 successfully created
ed03celadm02: CellDisk FD_12_ed03celadm02 successfully created
ed03celadm02: CellDisk FD_13_ed03celadm02 successfully created
ed03celadm02: CellDisk FD_14_ed03celadm02 successfully created
ed03celadm02: CellDisk FD_15_ed03celadm02 successfully created
ed03celadm03: CellDisk FD_00_dm01celadm03 successfully created
ed03celadm03: CellDisk FD_01_dm01celadm03 successfully created
ed03celadm03: CellDisk FD_02_dm01celadm03 successfully created
ed03celadm03: CellDisk FD_03_dm01celadm03 successfully created
ed03celadm03: CellDisk FD_04_dm01celadm03 successfully created
ed03celadm03: CellDisk FD_05_dm01celadm03 successfully created
ed03celadm03: CellDisk FD_06_dm01celadm03 successfully created
ed03celadm03: CellDisk FD_07_dm01celadm03 successfully created
ed03celadm03: CellDisk FD_08_dm01celadm03 successfully created
ed03celadm03: CellDisk FD_09_dm01celadm03 successfully created
ed03celadm03: CellDisk FD_10_dm01celadm03 successfully created
ed03celadm03: CellDisk FD_11_dm01celadm03 successfully created
ed03celadm03: CellDisk FD_12_dm01celadm03 successfully created
ed03celadm03: CellDisk FD_13_dm01celadm03 successfully created
ed03celadm03: CellDisk FD_14_dm01celadm03 successfully created
ed03celadm03: CellDisk FD_15_dm01celadm03 successfully created
[root@ed03dbadm01 ~]#
[root@ed03dbadm01 ~]# dcli -g cell_group -l root cellcli -e create flashlog all size=1024M
ed03celadm01: Flash log ed03celadm01_FLASHLOG successfully created
ed03celadm02: Flash log ed03celadm02_FLASHLOG successfully created
ed03celadm03: Flash log dm01celadm03_FLASHLOG successfully created
[root@ed03dbadm01 ~]# dcli -g cell_group -l root cellcli -e create flashcache all
ed03celadm01: Flash cache ed03celadm01_FLASHCACHE successfully created
ed03celadm02: Flash cache ed03celadm02_FLASHCACHE successfully created
ed03celadm03: Flash cache dm01celadm03_FLASHCACHE successfully created
[root@ed03dbadm01 ~]# 



Configured:
[root@ed03dbadm01 ~]# dcli -g cell_group -l root cellcli -e list flashcache detail
ed03celadm01: name:                   ed03celadm01_FLASHCACHE
ed03celadm01: cellDisk:               FD_14_ed03celadm01,FD_00_ed03celadm01,FD_13_ed03celadm01,FD_07_ed03celadm01,FD_11_ed03celadm01,FD_12_ed03celadm01,FD_05_ed03celadm01,FD_10_ed03celadm01,FD_04_ed03celadm01,FD_03_ed03celadm01,FD_08_ed03celadm01,FD_06_ed03celadm01,FD_02_ed03celadm01,FD_01_ed03celadm01,FD_15_ed03celadm01,FD_09_ed03celadm01
ed03celadm01: creationTime:           2015-08-11T17:44:02+04:00
ed03celadm01: degradedCelldisks:
ed03celadm01: effectiveCacheSize:     2.908447265625T
ed03celadm01: id:                     ec981090-655b-4701-93d3-fa7d4bd4784d
ed03celadm01: size:                   2.908447265625T
ed03celadm01: status:                 normal
ed03celadm02: name:                   ed03celadm02_FLASHCACHE
ed03celadm02: cellDisk:               FD_12_ed03celadm02,FD_03_ed03celadm02,FD_11_ed03celadm02,FD_07_ed03celadm02,FD_00_ed03celadm02,FD_14_ed03celadm02,FD_13_ed03celadm02,FD_02_ed03celadm02,FD_10_ed03celadm02,FD_08_ed03celadm02,FD_09_ed03celadm02,FD_01_ed03celadm02,FD_06_ed03celadm02,FD_04_ed03celadm02,FD_05_ed03celadm02,FD_15_ed03celadm02
ed03celadm02: creationTime:           2015-08-11T17:44:02+04:00
ed03celadm02: degradedCelldisks:
ed03celadm02: effectiveCacheSize:     2.908447265625T
ed03celadm02: id:                     98c1aab9-b693-42a5-b11b-18b58b1108a7
ed03celadm02: size:                   2.908447265625T
ed03celadm02: status:                 normal
ed03celadm03: name:                   dm01celadm03_FLASHCACHE
ed03celadm03: cellDisk:               FD_12_dm01celadm03,FD_00_dm01celadm03,FD_02_dm01celadm03,FD_14_dm01celadm03,FD_09_dm01celadm03,FD_06_dm01celadm03,FD_03_dm01celadm03,FD_13_dm01celadm03,FD_10_dm01celadm03,FD_11_dm01celadm03,FD_01_dm01celadm03,FD_07_dm01celadm03,FD_15_dm01celadm03,FD_05_dm01celadm03,FD_04_dm01celadm03,FD_08_dm01celadm03
ed03celadm03: creationTime:           2015-08-11T17:44:02+04:00
ed03celadm03: degradedCelldisks:
ed03celadm03: effectiveCacheSize:     2.908447265625T
ed03celadm03: id:                     b3958a20-1261-4c46-95ab-513b749f4468
ed03celadm03: size:                   2.908447265625T
ed03celadm03: status:                 normal





Почему для базы данных ASM лучше чем файловая система ?



Наличие ФС означат, что нельзя безнаказанно взять и записать несколько байт в любое место диска. Записать в файловую систему можно только блок файловой системы. А не блок Оракла.
Для информации: у ext2,ext3 блок ФС = 4К.
У Оракла блок датафайла обычно 8К, но  могут быть 4К, 16К, 32К. Блок REDO равен 512 байт на всех платформах, за исключением НPUX где он 1К.

Таким образом, операцию записи, полученную от Оракла надо предварительно оформить в виде блока файловой системы, т.е. ОС должна транслировать команду Оракла в команды для ОС.

А сделать это может только процессор в оперативной памяти, потому что диск сам по себе не способен превратить блок Оракла в один или несколько блоков файловой системы.
А чтобы блок ФС изменить его вначале надо прочитать с диска.

В результате на одну операцию записи со стороны Оракла, в ОС возникают две дисковых операции:
- чтения одного или нескольких блоков ФС с диска в оперативную память,
- изменение блоков файловой системы
- запись блоков ФС обратно на диск.

При работе с сырыми томами (ASM) Оракл посылает в ОС команду записать несколько что-то куда-то, а ОС тупо выполняет эту операцию записывая эти данные в соответствующий сектор диска (головка, дорожка, сектор). Операции чтения  в такой конфигурации не возникает. Поэтому ASM быстрее.

Is Flash Cacle caching policy will cache LOB segments by default ?

Hello, all

"Oracle Exadata Storage Server Software User's Guide", page 7-60, 7-61 say we can use CELL_FLASH_CACHE clause for LOB segments:
CELL_FLASH_CACHE = NONE | DEFAULT | KEEP

NONE = not cache, obviously.
KEEP = cache, obviously.
What means DEFAULT ?

Will Oracle cache LOBs in DEFAULT mode or not ?
But Oracle say nothing about default policy.

So, i have the many questions to Oracle:
What is the Flash Cacle caching policy for LOB segments by default ?
Cache or not cache ?
Is there difference in policy for SecureFiles and for Basic (old LOBs) ?
I mean LOBs which have its separate segment, not inline LOBs.

And how the WriteBack mode influences to LOBs writes to FC ?

So
- one question is about Default Read LOB Caching policy for WriteThrough mode.
- and another question is for Default Read and Default Write caching policy in WriteBack mode.


---------------------------
I did the test: 
created new user and created the tables with only 1 column type LOB.
Put one row in the table and queried the cell flash cache content.

db_securefile='PERMITTED'
Database version = 11.2.0.4.17 (latest 2015 July patch for Exadata )

[root@ed03dbadm01 ~]# dcli -g cell_group -l root cellcli -e list cell detail|grep -i write
ed03celadm01: flashCacheMode:         WriteBack
ed03celadm02: flashCacheMode:         WriteBack
ed03celadm03: flashCacheMode:         WriteBack

 
set timing on
drop table yu.BASICLOB purge ;
create table yu.BASICLOB  (clob_col clob ) lob(clob_col) store as basicfile ;

declare
   locator_clob clob;
begin
   insert into yu.BASICLOB values (empty_clob()) returning clob_col into locator_clob;
   for i in 1 .. 8192
   loop 
       dbms_lob.writeAppend( locator_clob, 32767,rpad('*',32767,'*'));
   end loop;
   dbms_lob.writeAppend(locator_clob,8192,rpad('*',8192,'*'));
   commit;
end;
/

drop table yu.securelob purge;
create table yu.SECURELOB  (clob_col clob ) lob(clob_col) store as securefile ;

declare
   locator_clob clob;
begin
   insert into yu.SECURELOB values (empty_clob()) returning clob_col into locator_clob;
   for i in 1 .. 8192
   loop 
       dbms_lob.writeAppend( locator_clob, 32767,rpad('*',32767,'*'));
   end loop;
   dbms_lob.writeAppend(locator_clob,8192,rpad('*',8192,'*'));
   commit;
end;
/

SQL> select rowid,length(clob_col)/1024/1024 from basiclob;
ROWID              LENGTH(CLOB_COL)/1024/1024
------------------ --------------------------
AAAW77AAKAAAAEGAAA              256

SQL> select rowid,length(clob_col)/1024/1024 from yu.securelob;
ROWID              LENGTH(CLOB_COL)/1024/1024
------------------ --------------------------
AAAW7+AAKAAAAEuAAA              256


SQL> select object_type,object_name,object_id from user_objects order by object_id;

SQL> select object_type,object_name,object_id from user_objects order by object_id

OBJECT_TYPE    OBJECT_NAME                 OBJECT_ID
------------- ---------------------------- ----------
TABLE         BASICLOB                     93955
LOB           SYS_LOB0000093955C00001$$    93956
INDEX         SYS_IL0000093955C00001$$     93957
TABLE         SECURELOB                    93958
LOB           SYS_LOB0000093958C00001$$    93959
INDEX         SYS_IL0000093958C00001$$     93960

[root@ed03dbadm01 ~]# date
Tue Aug 11 17:06:41 MSK 2015
[root@ed03dbadm01 ~]# dcli -g cell_group -l root cellcli -e list flashcachecontent where objectnumber=93955
ed03celadm02: 1068513843  10 93955
ed03celadm03: 1068513843  10 93955
[root@ed03dbadm01 ~]# dcli -g cell_group -l root cellcli -e list flashcachecontent where objectnumber=93956
ed03celadm01: 1068513843  10  93956
ed03celadm02: 1068513843  10  93956
ed03celadm03: 1068513843  10  93956
[root@ed03dbadm01 ~]# dcli -g cell_group -l root cellcli -e list flashcachecontent where objectnumber=93957
ed03celadm01: 1068513843  10 93957
ed03celadm02: 1068513843  10 93957
ed03celadm03: 1068513843  10 93957
[root@ed03dbadm01 ~]# dcli -g cell_group -l root cellcli -e list flashcachecontent where objectnumber=93958
ed03celadm02: 1068513843  10 93958
ed03celadm03: 1068513843  10 93958
[root@ed03dbadm01 ~]# dcli -g cell_group -l root cellcli -e list flashcachecontent where objectnumber=93959
ed03celadm01: 1068513843  10  93959
ed03celadm02: 1068513843  10  93959
ed03celadm03: 1068513843  10  93959
[root@ed03dbadm01 ~]# dcli -g cell_group -l root cellcli -e list flashcachecontent where objectnumber=93960
ed03celadm02: 1068513843  10  93960
ed03celadm03: 1068513843  10  93960
[root@ed03dbadm01 ~]#

CellCLI> list flashcachecontent detail

ed03celadm01: cachedKeepSize:         0
ed03celadm01: cachedSize:             230006784
ed03celadm01: cachedWriteSize:        230006784
ed03celadm01: columnarCacheSize:      0
ed03celadm01: columnarKeepSize:       0
ed03celadm01: dbID:                   1068513843
ed03celadm01: dbUniqueName:           FNS
ed03celadm01: hitCount:               3031
ed03celadm01: missCount:              0
ed03celadm01: objectNumber:           93956
ed03celadm01: tableSpaceNumber:       10

ed03celadm02: cachedKeepSize:         0
ed03celadm02: cachedSize:             205504512
ed03celadm02: cachedWriteSize:        205504512
ed03celadm02: columnarCacheSize:      0
ed03celadm02: columnarKeepSize:       0
ed03celadm02: dbID:                   1068513843
ed03celadm02: dbUniqueName:           FNS
ed03celadm02: hitCount:               2480
ed03celadm02: missCount:              0
ed03celadm02: objectNumber:           93956
ed03celadm02: tableSpaceNumber:       10

ed03celadm03: cachedKeepSize:         0
ed03celadm03: cachedSize:             243924992
ed03celadm03: cachedWriteSize:        243908608
ed03celadm03: columnarCacheSize:      0
ed03celadm03: columnarKeepSize:       0
ed03celadm03: dbID:                   1068513843
ed03celadm03: dbUniqueName:           FNS
ed03celadm03: hitCount:               2681
ed03celadm03: missCount:              0
ed03celadm03: objectNumber:           93956
ed03celadm03: tableSpaceNumber:       10



ed03celadm01: cachedKeepSize:         0
ed03celadm01: cachedSize:             5906432
ed03celadm01: cachedWriteSize:        5906432
ed03celadm01: columnarCacheSize:      0
ed03celadm01: columnarKeepSize:       0
ed03celadm01: dbID:                   1068513843
ed03celadm01: dbUniqueName:           FNS
ed03celadm01: hitCount:               505
ed03celadm01: missCount:              0
ed03celadm01: objectNumber:           93959
ed03celadm01: tableSpaceNumber:       10

ed03celadm02: cachedKeepSize:         0
ed03celadm02: cachedSize:             5169152
ed03celadm02: cachedWriteSize:        5169152
ed03celadm02: columnarCacheSize:      0
ed03celadm02: columnarKeepSize:       0
ed03celadm02: dbID:                   1068513843
ed03celadm02: dbUniqueName:           FNS
ed03celadm02: hitCount:               336
ed03celadm02: missCount:              0
ed03celadm02: objectNumber:           93959
ed03celadm02: tableSpaceNumber:       10

ed03celadm03: cachedKeepSize:         0
ed03celadm03: cachedSize:             5390336
ed03celadm03: cachedWriteSize:        5390336
ed03celadm03: columnarCacheSize:      0
ed03celadm03: columnarKeepSize:       0
ed03celadm03: dbID:                   1068513843
ed03celadm03: dbUniqueName:           FNS
ed03celadm03: hitCount:               263
ed03celadm03: missCount:              0
ed03celadm03: objectNumber:           93959
ed03celadm03: tableSpaceNumber:       10

Summary:

WriteBack Flash Cache will cache the Basic and SecureFile LOBs !

Saturday, August 1, 2015

Monday, July 27, 2015

Will offlloading work for OLTP-compressed tables ?



If you create OLTP- or BASIC-compressed table and run count(*) on it using
cell_offload_processing = TRUE or FALSE
there is no difference in time between runs.

If you look to this query via OEM 12c it show no offloading in SQL Monitoring page.
 But if you add WHERE clause to your query, then SQL Monitoring will show offloading and time become much less.

Latest documentation of June 2015 talk foggy about BASIC and OLTP compression:


" Predicate evaluation is not offloaded to Oracle Exadata Storage Server in the following cases:

 "
 Oracle® Exadata Storage Server Software User's Guide
12c Release 1 (12.1)
E50471-14, page 7-58

I completely don't understand should offloading work for Basic ans OLTP compressed tables or not.

So we did the research.
As you know, the offloading (smart scan) has 3
- Projection (return only selected columns)
- Filtering (return only rows according WHERE clause)
- Storage Index (exclude some extents from IO)

And our results are:
------------ ---------- --------- ------------
Table Type  Projection Filtering Storage Index
------------ ---------- --------- ------------
No Compress      +        +          +
Basic            -        +          +
OLTP             -        +          +
HCC              +        +          +
------------ ---------- --------- ------------

Wednesday, July 22, 2015

New ASM functionality



Very interesting information about 12c New Fetures in ASM:
 
ASMFD (ASM Filter Driver) Support on OS Platforms (Doc ID 2034681.1)

Oracle Automatic Storage Management Filter Driver (ASMFD) rejects write I/O requests that are not issued by Oracle software thus preventing corruption in Oracle ASM disks and files within the disk group.