Recommendation for the materialized view
HelloI am looking for Oracle Materialized View recommendation in the 9i version.
I searched in the Oracle9i Data Warehousing Guide at http://download.oracle.com/docs/cd/B10501_01/server.920/a96520.pdf.
Do you have any information?
Thank you.
Depends on what you're trying to accomplish. What would it be?
Tags: Database
Similar Questions
-
Experts,
I'm trying to create a YOUNG refreshable ON COMMIT MV (xyz) using a table (circuit) and quickly updateable on validation MV (abc), but get an error:
SQL error: ORA-12054: cannot set the attribute ON COMMIT refresh for the materialized view
12054 00000 - "cannot set the refresh attribute COMMIT for the materialized view.
* Cause: The materialized view did not meet the requirements for update to
moment of validation.
* Action: Specify only valid options.
1] MV abc
= MV abc defined as below =.CREATE MATERIALIZED view abc_MV
Immediate CONSTRUCTION
REFRESH QUICKLY YOU COMMIT using constraints of trust
WITH ROWID AS SELECT n.*,.
n.ROWID noderowid
node n
where n.nodetype in (1610000069,1610007267);
-Above works OK and MV connect you on table node is created successfully
=====================================================
[ 2] Circuit Board
======================================================
CREATE MATERIALIZED VIEW LOG ON Cramer.Circuit WITH SEQUENCE, ROWID ( ) -all columns of table ofcircut parentheses
INCLUDING THE NEW VALUES;
-More top works OK and MV connect you on table circuit is created successfully
======================================================
[3] trying to create MV xyz
======================================================
CREATE MATERIALIZED VIEW LOG ON cramer.abc_MV WITH SEQUENCE, ROWID ( ) -all columns of abc_MV brackets
INCLUDING THE NEW VALUES;
-Above works OK and log on ABC MV MV gets created successfully
-Problematic step below
Xyz_MV CREATE MATERIALIZED VIEW
IMMEDIATE CONSTRUCTION
REFRESH QUICKLY YOU COMMIT using constraints of trust
AS
SELECT c., c.rowid circuit_rowid, n.rowid tr_rowid
the circuit c, abc_mv n
where circuit2startnode = n.nodeid
and c.rpplanId = n.rpplanId;
==========================================================Clues on how to solve this problem and make quickly updatable ON Commit MV xyz
Thanks in advance.
Chanchal,
If you can read my original post carefully you may have noticed that all these restrictions will not apply in my case.
All,
In any case I found the solution to my problem.
There are a few additional restrictions for materialized views multilayer
Additional Restrictions for master materialized views
The following types of materialized views may not be masters of editable materialized views:
ROWID
materialized views- Complex materialized views
- Read-only materialized views
I've updated the underlying MV abc below and everything worked like a charm
CREATE MATERIALIZED view abc_MV
Immediate CONSTRUCTION
REFRESH QUICKLY YOU COMMIT using constraints of trust
IN SELECT
n.*, n.rowid noderowid, nt.rowid nodetyperowid
the node n, nodetype_m nt
where n.node2nodetype = nt.nodetypeid
and nt.nodetypeid in (1610000069,1610007267);
Note: To ADD a join without which I was getting error below (although had primary key on the table of the node)
SQL error: ORA-23415: materialized view log for "NODE" does not save the primary key
23415 00000 - "view the log for materialized \"%s\".\"%s\"does not save the primary key.
* Cause: A primary key materialized view is refreshed quickly, but the
The materialized view log does not record the primary key information.
* Action: Use CREATING MATERIALIZED VIEW LOG... Command to add a PRIMARY KEY to
start recording of the primary key information in the materialized view
Newspaper.
-
Elapsed time for the materialized view vs Master table query
Hello all;
Small confusion about time up for the vs Master materialized view table query
SQL > select count (*), sum (quan_sold), sum (amt_sold) of the sale;
COUNT (*) SUM (QUAN_SOLD) SUM (AMT_SOLD)
6000000 12000000 720480000
Elapsed time: 00:00:30.54
SQL > create materialized view mv1
Materialized view created.
2 activate the rewrite of the query as
3. select count (*), sum (quan_sold), sum (amt_sold) of the sale;
Elapsed time: 00:00:01.45
SQL > select count (*), sum (quan_sold), sum (amt_sold) of the sale;
COUNT (*) SUM (QUAN_SOLD) SUM (AMT_SOLD)
6000000 12000000 720480000
Elapsed time: 00:00:00.01
Please see the three cases "Elapsed Time"...
When comparing other cases.
1. my query takes long time (30.54), extraction of data from the sale
2. create a materialized view takes less time (01:45) why?
Source: http://uhesse.com/2009/07/08/brief-introduction-into-materialized-views/>
Small confusion about elapsed time for the materialized view vs Master table querySQL > select count (*), sum (quan_sold), sum (amt_sold) from the sale.
COUNT (*) SUM (QUAN_SOLD) SUM (AMT_SOLD)
6000000 12000000 720480000
Elapsed time: 00:00:30.54SQL > create materialized view mv1
2 activate the rewrite of the query as
3. select count (*), sum (quan_sold), sum (amt_sold) of the sale;
Materialized view created.
Elapsed time: 00:00:01.45SQL > select count (*), sum (quan_sold), sum (amt_sold) from the sale.
COUNT (*) SUM (QUAN_SOLD) SUM (AMT_SOLD)
6000000 12000000 720480000
Elapsed time: 00:00:00.01Please see the three cases "Elapsed Time"...
When comparing other cases.
1. my query takes long time (30.54), extraction of data from the sale
2. create a materialized view takes less time (01:45) why?
>
Many queries take less time the second time you run them. After the first performance, there may be many, if not all, lines in the buffer cache. Then the second round will not make any or all e/s physical but will obtain data from the buffer cache.Also, you haven't checked that the MV was even used for the second run.
Drop the MV and make the query several times and means of the time. Then create the MV and do the same thing.
-
SQL statement for the materialized view?
Can someone please tell me what SQL statement creates a materialized view?Syntactically, Yes. Otherwise Yes too (as long as you don't mind the Cartesian join with State B).
Why not just try and see what happens?Concerning
Etbin
-
Dictionary for the materialized view partitions
Hello
I created a view of materilaized with partitions and I need to add dynamicaaly partitions using the procedure stored so that I need to check whther the partiions with the same name existing.where can I see the names of partition for a view of materilaized there is any table as 'USER_TAB_PARTITIONS '. apologizes if the same query exists in the forumYou can see in user_tab_partitions is...
select * from user_tab_partitions where table_name = 'YOUR_MV_NAME'
-
Change the definition of the materialized view while maintaining access for users uninteruupted
Hello
We have a system report and the need to change the report definition mv access - like to do it without interruption.
Is this possible?
the sql behind mv was change picks up so column of another table.
Have you heard but not used for dbms_redefinition tables
Thank you
It is built in the Oracle solution for this one, where you can edit the definition WITHOUT interruption. You can drop the materialized view existing with the clause "save table" and rebuilt the view materialized on 'predefined table'. I googled this example for you
create materialized view mv1 as select dept , count(*) as cnt from scott.emp;
We want to change the statement so that only dept more 5 will be calculated
drop materialized view mv1 preserve table;
Notice that
PRESERVE TABLE
clause - mv1 table is not droped - single layer mview.desc mv1
now, we create the mview with a different query on top of the existing table
create materialized view mv1 on prebuilt table as select dept , count(*) as cnt from scott.emp where dept > 5;
Notice that
on prebuilt table
the mview uses the existing object clause.exec dbms_mview.refresh_mview('mv1');
http://StackOverflow.com/questions/18085894/redefine-MATERIALIZED-view-with-no-downtime
http://Arup.blogspot.com/2009/01/ultra-fast-MV-alteration-using-prebuilt.html
-
Trigger on the materialized view
Hello
I have the scenario based (Database 11 g):
There is a view materialized (PERSON), which contains the ID and NAME fields. This MV is update daily with a fast refresh.
I have a second array (NAMES), with ID and NORM_NAME. This table contains the name of the person, without special characters.
For example, for recording / * 1 BJORN * / in the PERSON table
I would check * 1 BJORN * / in table NAMES.
Problem is how to fill the NAME table after the filling of the materialized view.
I used a trigger AFTER INSERT or update, as described below, but even if I update the master table (for this purpose, update the MV), I have only to trigger inserts.
Is there a way to implement a trigger "after update" on a materialized view, or do I need another approach?
/*
create or replace TRIGGER TRG_TESTE_MV
AFTER INSERT OR UPDATE ON THE PERSON
REFERENCING OLD AS OLD AGAIN AS NEW
FOR EACH LINE
BEGIN
IF THE INSERTION
INSERT THE NAMES
VALUES
(: NEW.id,:NEW.NAME);
END IF;
IF THE UPDATE CAN
UPDATE OF NAMES
SET NAME =: NEW.NAME WHERE ID =: NEW.id;
END IF;
END;
*/
Thanks for any help
Your trigger fires, but I doubted that you will be satisfied with the results. You really need to understand how to refresh process works before you begin creating triggers of MV:
SQL > create table emp1 in select * from EMP
2.Table created.
SQL > create materialized view emp1 with rowid journal
2.Materialized view log that is created.
SQL > create materialized view emp1_mv
2 fast refresh
3 on request
4 with rowid
5 as
6 select * from emp1
7.Materialized view created.
SQL > create or replace
trigger 2 emp1_mv_biudr
3 before inserting
4 or update
5 or delete
6 on emp1_mv
7 for each line
Start 8
9 insert then dbms_output.put_line ('INSERT' |: new.ename); end if;
10 if the deletion then dbms_output.put_line ('REMOVE' |: old.ename); end if;
11 end;
12.Trigger created.
SQL > insert
2 in emp1 (empno, ename, sal)
3 values(1,'X',1000)
4.1 line of creation.
SQL > validation
2.Validation complete.
SQL > set serveroutput on
SQL > exec dbms_mview.refresh ('emp1_mv', 'f');
INSERTION OF XPL/SQL procedure successfully completed.
SQL > update emp1
2 set sal = sal + 1
3 where ename ('King', 'JONES')
4.2 lines to date.
SQL > validation
2.Validation complete.
SQL > set serveroutput on
SQL > exec dbms_mview.refresh ('emp1_mv', 'f');
INSERTION OF JONES
INSERTION OF KINGPL/SQL procedure successfully completed.
SQL > delete emp1
2 where in ename ('ALLEN', 'SMITH')
3.2 deleted rows.
SQL > validation
2.Validation complete.
SQL > set serveroutput on
SQL > exec dbms_mview.refresh ('emp1_mv', 'f');PL/SQL procedure successfully completed.
SQL >
As you can see, refresh MV updates ever. Results update underlying table to remove/insert in MV. That's why your trigger will not give the results that you expected.
SY.
-
Re: view opaque and the materialized view
Hi Experts,
I want some clarification of opaque and view view in the physical layer OBIEE materialized
-> what is the main difference between the opaque view and materialized in the RPD perspective view, we have to do this at the level of the RPD or DB.
-> I want the list of opaque opinion and materialized in the RPD view how I should do.
-> How opaque views will degrade the performance and how a materialized view will improve performance at the level of the report.
-> In scenarios that we use view opaque and the view materialized (if possible with a scenario for the best permanent basis).
Thanks in advance.
I want some clarification of opaque and view view in the physical layer OBIEE materialized
-> What is the main difference between opaque view and create the materialized view in the RPD point of view, we have to do this at the level of the RPD or DB.
Opaque views is a SQL statement that is defined in the physical layer, OBIEE will use all in the construction of a SQL query. In a way it's not different from a database view, except it is set in OBIEE only. Alternatively, you can deploy an Opaque view, which pushes its definition in the database. Read more about it here: work with physical tables, Cubes and joins - 11 g Release 1 (11.1.1)
A materialized view (MV) is a database concept where the results of a SQL statement are physicalised like a table, and therefore as OBIEE is a MV is just another physical array
-> If I want a list of the opaque views and materialized in the RPD view how I should do.
To find opaque views, use the function «Repository of applications» administration tool Search physical Tables and set up a filter on the Type = Select
Screenshot: https://www.evernote.com/shard/s16/sh/5c843e47-bff1-4d4b-b847-be98f3a2ec09/cf060a6cd9805f687fa0b5b46f3f0020
To find materialized views, you will need to query the catalog in your database (for example select object_name, object_type from user_objects where type_objet = "MATERIALIZED VIEW" ;) and compare it to the list of tables in your SPR)
-> How opaque views will degrade the performance and how a materialized view will improve performance at the level of the report.
A materialized view is materialized, in other words, the results are already stored in the database. This means usually there will be more efficient because all the joins and aggregations, etc. will be settled in advance.
-
Do not to use the materialized view
I wonder if we've already created a materialized view, can we prefer not to use this point of view, materialized for a query? I want to say can we determine if a query uses MV and other queries don't use MV? Thank you.
Hello Indra,
I'm not completely sure about that, but you can read (with examples) concerning the indications- NO_REWRITE and REWRITE
Text over the doc links:
Council of REWRITING:
The
REWRITE
Council instructs the optimizer to rewrite a query regarding the materialized views when possible, regardless of cost. Use theREWRITE
trick with or without a display list. If you useREWRITE
with a view list and the list contains an eligible materialized view, then Oracle uses this view regardless of its cost.Tip NO_REWRITE:
The
NO_REWRITE
Council tells the optimizer to disable the rewrite of the query to the query block, of the substitution of the definition of the parameterQUERY_REWRITE_ENABLED
.Be aware! -The
NOREWRITE
suspicion has been deprecated. Use theNO_REWRITE
hint instead.Read here: setting QUERY_REWRITE_ENABLED
-Nordine
-
performance of the queries on the main tables of the materialized view vs
Hello
I'm afraid of strange behavior in db, on my paintings of master UDBMOVEMENT_ORIG (26mil.rows) and UDBIDENTDATA_ORIG (18mil.rows) is created the materialized view TMP_MS_UDB_MV (UDBMOVEMENT stands for this object) that meets certain default conditions and the join on these paintings of master condition. MV got on the lines of 12milions. I created MV for poll not so huge objects, MV got 3GB, paintings of master toghether 12 GB. But I don't understand that physical reads and becomes compatible is less on MV that on the main tables, the final execution time is shorter on the master tables. See my journal below.
Why?
Thanks for the replies.
SQL > set echo on
SQL > @flush
SQL > alter system flush buffer_cache;
Modified system.
Elapsed time: 00:00:00.20
SQL > alter system flush shared_pool;
Modified system.
Elapsed time: 00:00:00.65
SQL > SELECT
UDBMovement.zIdDevice 2, UDBMovement.sDevice, UDBMovement.zIdLocal, UDBMovement.sComputer, UDBMovement.tActionTime, UDBIdentData.sCardSubType, UDBIdentData.sCardType, UDBMovement.cEpan, UDBMovement.cText, UDBMovement.lArtRef, UDBMovement.sArtClassRef, UDBMovement.lSequenz, UDBMovement.sTransMark, UDBMovement.lBlock, UDBMovement.sTransType, UDBMovement.lGlobalID, UDBMovement.sFacility, UDBIdentData.sCardClass, UDBMovement.lSingleAmount, UDBMovement.sVAT, UDBMovement.lVATTot, UDBIdentData.tTarifTimeStart, UDBIdentData.tTarifTimeEnd, UDBIdentData.cLicensePlate, UDBIdentData.lMoneyValue, UDBIdentData.lPointValue, UDBIdentData.lTimeValue, UDBIdentData.tProdTime, UDBIdentData.tExpireDate
UDBMOVEMENT_orig UDBMovement 3, Udbidentdata_orig UDBIdentData
4. WHERE
5 UDBMovement.lGlobalId = UDBIdentData.lGlobalRef (+) AND UDBMovement.sComputer = UDBIdentData.sComputer (+)
6 AND UDBMovement.sTransType > 0 AND UDBMovement.sDevice < 1000 AND UDBMovement.sDevice > = 0 AND UDBIdentData.sCardType IN (2) AND (bitand(UDBMovement.sSaleFlag,1) = 0 AND bitand(UDBMovement.sSaleFlag,4) = 0) AND UDBMovement.sArtClassRef < 100
7 AND UDBMovement.tActionTime > = TO_DATE (May 5, 2011 00:00:00 ',' dd/mm/yyyy hh24:mi:ss') + 0.25 AND UDBMovement.tActionTime < TO_DATE (May 5, 2011 00:00:00 ',' dd/mm/yyyy hh24:mi:ss') + 0.5
8 ORDER BY tActionTime, lBlock, lSequenz;
4947 selected lines.
Elapsed time: 00:00:15.84
Execution plan
----------------------------------------------------------
Hash value of plan: 1768406139
------------------------------------------------------------------------------------------------------------
| ID | Operation | Name | Lines | Bytes | TempSpc | Cost (% CPU). Time |
------------------------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | 7166 | 1238K | 20670 (1) | 00:04:09 |
| 1. SORT ORDER BY | 7166 | 1238K | 1480K | 20670 (1) | 00:04:09 |
| 2. NESTED LOOPS |
| 3. NESTED LOOPS | 7166 | 1238K | 20388 (1) | 00:04:05 |
|* 4 | TABLE ACCESS BY INDEX ROWID | UDBMOVEMENT_ORIG | 7142 | 809K | 7056 (1) | 00:01:25 |
|* 5 | INDEX RANGE SCAN | IDX_UDBMOVARTICLE | 10709. 61 (0) | 00:00:01 |
|* 6 | INDEX UNIQUE SCAN | UDBIDENTDATA_PRIM | 1 | | | 1 (0) | 00:00:01 |
|* 7 | TABLE ACCESS BY INDEX ROWID | UDBIDENTDATA_ORIG | 1. 61. 2 (0) | 00:00:01 |
------------------------------------------------------------------------------------------------------------
Information of predicates (identified by the operation identity card):
---------------------------------------------------
4 - filter("UDBMOVEMENT".") STRANSTYPE"> 0 AND 'UDBMOVEMENT '. "" SDEVICE ' < 1000 AND
BITAND ("SSALEFLAG", 1) = 0 AND "UDBMOVEMENT". "" SDEVICE ' > = 0 AND BITAND ("UDBMOVEMENT". "SSALEFLAG «(, 4) = 0)" "
5 - access("UDBMOVEMENT".") TACTIONTIME' > = TO_DATE (' 2011-05-05 06:00 ',' syyyy-mm-jj)
('HH24:mi:SS) AND "UDBMOVEMENT". "' TACTIONTIME ', TO_DATE (' 2011-05-05 12:00 ',' syyyy-mm-jj)
('HH24:mi:SS) AND "UDBMOVEMENT". ("' SARTCLASSREF" < 100)
filter ("UDBMOVEMENT". "SARTCLASSREF" < 100)
6 - access("UDBMOVEMENT".") LGLOBALID "=" UDBIDENTDATA. " "" LGLOBALREF "AND
'UDBMOVEMENT '. "' SCOMPUTER"="UDBIDENTDATA." ("' SCOMPUTER")
7 - filter("UDBIDENTDATA".") SCARDTYPE "= 2)
Statistics
----------------------------------------------------------
543 recursive calls
0 db block Gets
84383 compatible Gets
4485 physical reads
0 redo size
533990 bytes sent via SQL * Net to client
3953 bytes received via SQL * Net from client
331 SQL * Net back and forth to and from the client
kinds of 86 (memory)
0 sorts (disk)
4947 lines processed
SQL > @flush
SQL > alter system flush buffer_cache;
Modified system.
Elapsed time: 00:00:00.12
SQL > alter system flush shared_pool;
Modified system.
Elapsed time: 00:00:00.74
SQL > SELECT UDBMovement.zIdDevice, UDBMovement.sDevice, UDBMovement.zIdLocal, UDBMovement.sComputer, UDBMovement.tActionTime, UDBMovement.sCardSubType, UDBMovement.sCardType, UDBMovement.cEpan, UDBMovement.cText, UDBMovement.lArtRef, UDBMovement.sArtClassRef, UDBMovement.lSequenz, UDBMovement.sTransMark, UDBMovement.lBlock, UDBMovement.sTransType, UDBMovement.lGlobalID, UDBMovement.sFacility, UDBMovement.sCardClass, UDBMovement.lSingleAmount, UDBMovement.sVAT, UDBMovement.lVATTot, UDBMovement.tTarifTimeStart, UDBMovement.tTarifTimeEnd, UDBMovement.cLicensePlate, UDBMovement.lMoneyValue, UDBMovement.lPointValue, UDBMovement.lTimeValue, UDBMovement.tProdTime
2. OF UDBMOVEMENT WHERE
3 UDBMovement.sTransType > 0 AND UDBMovement.sDevice < 1000 AND UDBMovement.sDevice > = 0 AND UDBMovement.sCardType IN (2) AND (bitand(UDBMovement.sSaleFlag,1) = 0 AND bitand(UDBMovement.sSaleFlag,4) = 0) AND UDBMovement.sArtClassRef < 100
4. AND UDBMovement.tActionTime > = TO_DATE (May 5, 2011 00:00:00 ',' the hh24: mi: ss' dd/mm/yyyy) + 0.25
5 AND UDBMovement.tActionTime < TO_DATE (May 5, 2011 00:00:00 ',' the hh24: mi: ss' dd/mm/yyyy) + 0.5 ORDER BY tActionTime, lBlock, lSequenz;
4947 selected lines.
Elapsed time: 00:00:26.46
Execution plan
----------------------------------------------------------
Hash value of plan: 3648898312
-----------------------------------------------------------------------------------------------------------
| ID | Operation | Name | Lines | Bytes | Cost (% CPU). Time |
-----------------------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | 2720 | 443K | 2812 (1) | 00:00:34 |
| 1. SORT ORDER BY | 2720 | 443K | 2812 (1) | 00:00:34 |
|* 2 | MAT_VIEW ACCESS BY INDEX ROWID | TMP_MS_UDB_MV | 2720 | 443K | 2811 (1) | 00:00:34 |
|* 3 | INDEX RANGE SCAN | EEETMP_MS_ACTTIMEDEVICE | 2732 | 89 (0) | 00:00:02 |
-----------------------------------------------------------------------------------------------------------
Information of predicates (identified by the operation identity card):
---------------------------------------------------
2 - filter("UDBMOVEMENT".") STRANSTYPE"> 0 AND BITAND ("UDBMOVEMENT". "SSALEFLAG «(, 4) = 0 AND" "
BITAND ("SSALEFLAG", 1) = 0 AND "UDBMOVEMENT". ("' SARTCLASSREF" < 100)
3 - access("UDBMOVEMENT".") TACTIONTIME' > = TO_DATE (' 2011-05-05 06:00 ',' syyyy-mm-jj)
('HH24:mi:SS) AND "UDBMOVEMENT". "" SDEVICE ' > = 0 AND "UDBMOVEMENT". ' SCARDTYPE ' = 2 AND ".
'UDBMOVEMENT '. "" TACTIONTIME "< TO_DATE(' 2011-05-05 12:00:00', 'syyyy-mm-dd hh24:mi:ss') AND
'UDBMOVEMENT '. ("' SDEVICE ' < 1000)
filter ("UDBMOVEMENT". "SCARDTYPE"= 2 AND "UDBMOVEMENT"." SDEVICE' < 1000 AND
'UDBMOVEMENT '. ("' SDEVICE ' > = 0)
Statistics
----------------------------------------------------------
449 recursive calls
0 db block Gets
6090 gets coherent
2837 physical reads
0 redo size
531987 bytes sent via SQL * Net to client
3953 bytes received via SQL * Net from client
331 SQL * Net back and forth to and from the client
168 sorts (memory)
0 sorts (disk)
4947 lines processed
SQL > spool off
Published by: MattSk on February 4, 2013 14:20>
The second query makes a full table of materialized view scan.
>
What you base that statement on?I do not see any table full scan in terms of the second query. All I see is
>
* 2 MAT_VIEW ACCESS BY INDEX ROWID TMP_MS_UDB_MV 2720 443K 2811 (1) 00:00:34 -
Refresh the Materialized View constructed from an external table commit?
Is it possible to create a materialized with Refresh view on commit built from an external table?
I think the answer is "no, because there is no way for the outer table report to the view materialized it has been changed," but I would like to be sure before I tell my client who has requested the opportunity to do this (or, Alternatively, to learn how Oracle hoops I have to cross in order to operate).
I can create a Refresh on demand, it is not a question of not having the necessary permissions to create the materialized view itself.No, you can't. The outer table is not modified in a transactional way and there no materialized view logs, so there is no event to hang in and no delta to apply.
However, you can use dbms_scheduler observer file that will ask for the presence of a file and load the data in a table or refresh a materialized view based on the external table.
Justin
-
Format recommended for the PDF author metadata
Hello
I work as a librarian and I am responsible for the Department of the thesis of my University Library. These are filed and archived as PDF files. Some of them are available online, some are not.
I was told to systematically fill metadata "Title" and "Author" for each PDF deposited in our electronic despository.
My question has to do with metadata "author." Is there a structure recommended for her?
As it is I can think of a lot of different alternatives:
First name last name
LastName Firstname
LastName, Firstname
etc.
As a librarian, my instinct was to choose the name, first name format (used in the author/creator DC element, for example), but I realized that whenever I have saved the PDF file and then displays the part of metadata (via the shortcut Alt D), it would show "Lastname, Firstname" rather than the full name (for some unknown reason, adds Adobe Pro "" ""). After some tests, I came to the conclusion that the coma was the source of the problem. So I changed my mind and adopted the format Firstname Lastname , but I'm not sure that this is the best option.
So if I ask you a few questions, here they are:
-Which format do you recommend for the metadata of the author (if there is one)?
-Why a coma generates ""?
Is there a specific separator character that I use when I need to fill two different names (if a given thesis has been written by two different people)? (this issue also applies to metadata "Key words")
Thanks for your patience and for your time,
See you soon,.
JHM
There are no rules in itself, but the XMP specification defines DC: creator as a ProperName field, which means it must be written in the way he would say - "John Smith" rather than "Smith, John". Finally, it is until you do with data - if your external search system to priority of family name, do it.
The fields on the tab of "description" of PDF Properties dialog comes from this Document information block in the standard PDF file, which is independent of the XMP metadata. Although these fields of DI are often people will look on, in a formal catalog system the XMP object has priority (indeed, in the ISO PDF/A standard that you are supposed to ignore completely DI fields).
Document Information fields are stored in the PDF file as strings rather than the XML entities. Commas would confuse the parser in thinking it was to see a table, so they will trigger Acrobat in order to encapsulate the entries between quotes. He will assume a comma and a single space are part of an individual term, if you want to create a list using the semicolons or several spaces between words. Senicolons conquer spaces:
- Doe, John; Lord Lucan; Barney, the Purple dinosaur will be kept at the "Doe, John"; Lord Lucan; 'Barney, the Purple dinosaur'
- Is no one, no one will be kept to the ', that is, not a "; person because the spacing is a term separator.
The important thing to remember is that the entrance of DC: creator XMP is updated whenever you change the author field of DI, but it does NOT follow the same rules. ProperNames XMP are OK with spaces but they don't like commas or semicolons - so the first example above appears in the tree view of XMP as
- DOE
- John
- Lord Lucan
- Barney
- Dinosaur
- the
- Purple
This reinforces the idea of using names as spoken. Lord Lucan has survived his trip to XMP, John Doe became two people. Barney is beyond hope. in many ways.
-
I just created a view, materialized; I have to analyze the materialized view after getting created? If so, how it will impact performance.
user3636719 wrote:
select * from v$version; Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bi PL/SQL Release 10.2.0.5.0 - Production "CORE 10.2.0.5.0 Production" TNS for HPUX: Version 10.2.0.5.0 - Production NLSRTL Version 10.2.0.5.0 - Production
default V10 is statistics to collect once every 24 hours.
so if you do nothing, the MV will be tomorrow at this time stats -
diff between the view and the materialized view
Hi all
Whats different between the view and the materialized view?
could someone help me pls this topic
thnks in advanceSee nothing else that a set is a set of sql statements that join the single or multiple tables and shows the data... However views do not have the data themselves but point to the data.
Whereas the materialized view is a concept used primarily in the Datawarehousing... these views contain the data itself. Reason being, it is more easy/quick access to the data. The main objective of Materialized view is to perform calculations and display data from multiple tables by using joins.
check out the link for more information below.
http://www.geekinterview.com/question_details/29332rajeysh
http://oracleinstance.blogspot.com -
Refresh of the materialized view; Process flow
I was wondering if anyone has used process flow to refresh the materialized view.
I'm trying to use a process flow for it, either run something similar to below
EXECUTE Dbms_refresh.Refresh ('"ODW_SRC".) "MV_SERVICE_DAILY_AUDIT" ');
I try to avoid using the Scheduler of DB because I want to make sure that the process flow is not conflict with the update of a materialized view possible cause conflict more execution time of the work expected will refresh window.
I guess I could use a transformation and build. but I was wondering if there is an easier way in the execution of it just line... an idea
Thanks in advance for your helpSorry, I think that the term OWB is post mapping process, its actually an operator in an OWB mapping where you can add a procedure for example call. The procedure can do pretty much what he wants.
See you soon
David
Maybe you are looking for
-
Anyone know if there is a key combination to address 'bar' on the selected text in pages?
I think that means good enough...
-
Satellite C660 - screen problem
When my wife got off the plane a luggage handler helped pushing his mother in wheelchair and dragging one of the bags behind him allowing my wife to take care of the rest of the luggage. Unfortunately, the laptop that sat on that bag decided that he
-
Question about memory & CPU in Satellite A100-551 upgrade
GreetingsI had the misfortune to get 2 SODIMM KVR667D2S5 / 1 G for my laptop Toshiba Satellite A100-551 that don't work by themselves a single sodimm or as a pair, it doesn't matter which slot they go-they do not work. However when the 512 MB sodimm
-
Pavilion 500-329: to upgrade my power supply for my new GPU
Hi, I recently got and 660 GTX ti as a gift from a Guild mate. Unfortunately, the stock PSU is a potato (very) disappointing 300W. Who also likes to scream when I'm still so things like move my mouse. Wonderful innit! in any case, I've been shopping
-
I have XP when wordpad opens a file, it makes no sense. It's like the language used to write a web page. How can I change?