Performance differences in the xmltable between data bases query, why?
I have this request:
SELECT x.seq_no, ITEM, STORE, PRIMARY_SUPPLIER, xt.STATUS, STYLE, VIRTUAL_IND, VIRTUAL_LOCATION, VIRTUAL_TO_LOC, USER_ID, to_date(YEAR || MONTH || DAY || HOUR || MINUTE || SECOND, 'YYYYMMDDHH24MISS') EVENT_DATE, APPLICATION_INFO FROM DSA_SUB_ITEM_CONTROL x, xmltable('/ItemCreateFullDesc/ItemStoreFullDesc/ItemStoreDesc' passing xmltype.createXML(x.cmf) columns Item NUMBER path 'Item', Store NUMBER path 'Store', Primary_Supplier NUMBER path 'Primary_Supplier', Status VARCHAR2(1) path 'Status', Style NUMBER path 'Style', Virtual_Ind VARCHAR2(255) path 'Virtual_Ind', Virtual_Location NUMBER path 'Virtual_Location', Virtual_To_Loc VARCHAR2(1) path 'Virtual_To_Loc', User_Id VARCHAR2(255) path 'User_Id', YEAR VARCHAR2(4) path 'Event_Date/year', MONTH VARCHAR2(2) path 'Event_Date/month', DAY VARCHAR2(2) path 'Event_Date/day', hour VARCHAR2(2) path 'Event_Date/hour', minute VARCHAR2(2) path 'Event_Date/minute', SECOND VARCHAR2(2) path 'Event_Date/second', Application_Info VARCHAR2(255) path 'Application_Info') xt
That, for the same single line in the source table works in 10s, and other databases, I canceled after 4 min run. I think it has to do with the version of database because when the fastest is in 11.2.0.4 and all the others are in previous versions of 11.2.0.x, but I can't find anything about this, can anyone help?
There is also a different execution plan that I can't explain:
11.2.0.4
11.2.0.x
Any help to solve this problem or pointing to documents that explain why it's happening is appreciated.
Jason_ (A_Non) wrote:
Look at the DDL for the table in question between versions, through DBMS_METADATA. GET_DDL or your preferred approach. In the 11.2.0.4 table, the XMLType column is stored in format XML BINARY SECUREFILE. In the 11.2.0.x, it should be CLOB. That would be the reason for the difference in performance.
Not necessarily.
Both could use CLOB storage option but only 11.2.0.4 leave can take advantage of the EVALUATION XMLTABLE operation. Otherwise, I guess that we would have seen an XPATH EVALUATION (streaming) operation in the plan when XML BINARY is used as storage type.
OP not to not use XMLType anyway
You will have to migrate your XML column to XMLType (SECUREFILE BINARY XML) in order to match the performance that you download on 11.2.0.4.
There's no other choice.
Tags: Database
Similar Questions
-
component module (function) in the Toolbox of data base
Hi, I have been using the Toolbox of data a lot, but I've never used a function of my Access database before.
I have a function called "Work_Days" that takes two dates as Inparameters and calculate how many working days it is. This function is stored in the Modules section in Access.
I have a working query I can run with access which looks like this:
SELECT tblActiveCCU.ID, tblActiveCCU.DateReceived, tblActiveCCU.DateTransferred, Work_Days([DateReceived],[DateTransferred]) AS NetDays FROM tblActiveCCU WHERE (((tblActiveCCU.ID)=97));
The output looks like this:
ID DateReceived DateTransferred NetDays 97 3/16/2016 3/30/2016 11
Now to the question, how I implemented this request in LabView?
In my attached code, I got a "syntax error" FROM clause
-
Some countries of Bing Maps support US better than others mapping... just trying to figure out why the same address would generate different responses in different countries...
Bryan
Thanks for visiting the site of the community of Microsoft Windows. The question you have posted is related to Bing Maps and would be better suited to the Bing community. Please visit the link below to find a community that will provide the support you want.
http://www.bing.com/community/maps/f/12264.aspx -
Script to determine the days between dates
I'm totally new to JavaScript. I try to do a calculation with a custom calculation script field. I tried to restore something with script I have checked in several forums, but not completely succeeded. I have 4 form fields. 2 date fields, a body of numbers (formatted for currency) and the field of computing. The calculation I'm trying is ((365-(jours entre les 2 champs de date)) divided by 365) times (currency field). Any help would be greatly appreciated.
Event.value = () ((365-(xdays)) / 365) * (this.getField("premium1").value) ) .toFixed (3)
Thank you for the offer, but a donation is not required. We can still be friends. Send me a mail to [email protected] if you want...
-
Can I perform calculations on the values of date?
I'm trying to set a range of dates using two calendar features by entering a date "from" and a "to".
This is done using a JavaScript that is bound to a textbox control for entering a date. He is my date "from", if I can check this date against today to confirm that the date is later than today, that is in the future. I have no experience with javascript, but know PASCAL.
I then a second box with another calendar date, I want to automatically fill this box on the same date as the first area unless physically, the user wants to change the date of the last.
Can anyone help? I'd appreciate some tips so that I can try and learn a few Java along the way.
GetField ("Text1") .value = s;
There are two problems with that. The method is getField, not getfield. You must also pass the name of the field as a string. So it should be:
s = getField("text1").value;
-
Possible bug in DateTime in the Toolbox of data base
Hello!
I do not have the database Toolbox, and it seems that you can not download a 64-bit evaluation...
Bug? I wrote to the DateTime fields to a database through the appropriate use of clusters and Inserts, but it seems that I never get from fractions of a second. Datetime controls show and the fields of database should help (at least it's montrer.000 at the end) so I wonder: does somehow use locale at the moment so this is my comma decimal point and landing so fractions?
/ Yamaeda
-
Is there a difference in the opening between the lenses?
Happy holidays.
I thought too new. I'll start with what is probably a false assumption. Suppose I have a lens that uses a 58mm filter and another that uses a 77mm filter. For the sake of the argument, I suppose that elements of lenses in order to filter 58mm are 58mm and 77mm lenses in the goal of 77mm filter elements.
For the reasoning, suppose that both lenses have a focal length of 50mm. The point being, all things are equal except for the diameter of the lenses in both lenses. Assume that both lenses are both sides with an aperture of f/1.8.
My question is this. The larger lens let more light than the smaller goal when both lenses are set to the same aperture setting?
The short answer is, no. F1.8 or f2 or some f-stop, that's exactly right. No matter what the lens is the size. Since it is a ratio, the actual size of the aperture blades will be different but f1.8 will always be f1.8. He will leave in exactly the same amount of light.
Not even two 50mm lenses with items of different sizes will be identical, but the ratio f-stop will be. Exactly the same amount of light going through it.
If it was not so count in a camera would be impossible. I hope this is clear for you.
-
Required formula and best practices for the storage of data base of calculation
Hi gurus of the Oracle
Need your help to calculate the requirement of storage for the production database.
Thank you
Hitgon
I have a query DBA_DATA_FILES show total space allocated.
SELECT SUM (bytes) AS allocated_bytes FROM dba_data_files;
And for 'used' space, I run the present:
SELECT SUM (bytes) AS used_bytes FROM dba_segments;
We don't need to digress into the discussion of what is truly used as everyone knows that there is unused space in DBA_SEGMENTS. But it works for management!
I have a report automated that send me monthly. The same report even it breaks down by tablespace... allocated and used as I noted above. Then, I put it in Excel to generate the graph.
See you soon,.
Brian -
Hello
Data Modeler is a foreign key constraints do not recognize when synchronizing data with the model dictionary, although the foreign key is there (in the database that a data dictionary is read). I can't find any criterion when a foreign key is not recognized by the Data Modeler. Are there limits to the length of the attribute, or the number of columns in a foreign key, or other limitations which may lead to this behavior not to recognize a fk by Data Modeler? I have columns more than 32 characters. I compared with the fk is recognized by DM, but I can't find anything that indicates why it is not recognized.
I wonder if someone also has constraints of foreign keys that are not recognized in the comparison of data bases and model?
Thank you
Robert
Hi Robert,.
Thanks for the comments, I logged a bug.
Philippe
-
Hello
Here is the plsql code, I try to extract the data from the refcursor
Declare
number of l_ecg_id_in;
number of l_error_code_out;
l_cur_out sys_refcursor;
Begin
l_ecg_id_in: = 1249551;
-Call the procedure
pkg_dispatch.sp_getecgreport (p_ecg_id_in = > l_ecg_id_in,)
p_cur_out = > l_cur_out, / / p_cur_out is back refcursor datat
p_error_code_out = > l_error_code_out);
Now my requirement is data retrieves in l_cur_out have too many columns, the columns are mentioned below.
HUMAN RESOURCES
PR
DR
BATTERY
ETC.
I want to just HR to be extacted in a variable or a collection of type
We can extract a particular of ref cursor column, please suggest me
End;Sudhir_Bangalore wrote:
Now my requirement is data retrieves in l_cur_out have too many columns, the columns are mentioned below.
HUMAN RESOURCES
PR
DR
BATTERY
ETC.I want to just HR to be extacted in a variable or a collection of type
Then, you use the wrong cursor and you performance degradation because the cursor returns data that is not required.
We can extract a particular of ref cursor column, please suggest me
You can not.
Workaround would be to copy the handle of the cursor ref to a handle to the cursor DBMS_SQL and then use cursor DBMS_SQL to treat the projection of SQL. But it would be an ugly hack.
The right approach would be to correctly use the SQL cursors in PL/SQL. And no, ref Cursor in PL/SQL (created by code PL/SQL to PL/SQL code) is almost always the WRONG choice.
There are better native cursor data types in PL/SQL in particular supported cursors created by PL/SQL and PL/SQL.
REF CURSOR is provided mainly as the cursors created by PL/SQL for an external client. There are very few reasons to create Ref cursors to use PL/SQL code.
-
Need help for managed bean - to the values of the extraction of data loading of jsf is
Hello
in the construction of managed bean, I wrote code to extract values from database.
but for each action (such as button clicks, drop-down list changes etc...) this constructor is called I don't want.
I tried to over come this using beforePhase event of the jsf. but sometimes it doesn't property.
Someone please help me to retrieve the values of data base loading of jsf is.
Thank you
VeeraVeera
If you want to execute a method in a method beforePhase only once (when loading the page) then you can check the expression #{adfFacesContext.initialRender} before running all you want.import javax.el.ELContext; import javax.el.ExpressionFactory; import javax.el.ValueExpression; import javax.faces.application.Application; import javax.faces.context.FacesContext; import javax.faces.event.PhaseEvent; public class Test { public boolean isInitialrender() { FacesContext fctx = FacesContext.getCurrentInstance(); Application application = fctx.getApplication(); ExpressionFactory expressionFactory = application.getExpressionFactory(); ELContext context = fctx.getELContext(); ValueExpression createValueExpression = expressionFactory.createValueExpression(context, "#{adfFacesContext.initialRender}", Object.class); Boolean isInitialrender = (Boolean)createValueExpression.getValue(context); return isInitialrender; } public void beforePhaseMethod(PhaseEvent phaseEvent) { // Add event code here... if (isInitialrender()) { System.out.println("This statement is shown once... when the page is loaded"); } } }
-
Difference between the true Date of the Hijra with date Hijri Oracle
Hi all
I'd appreciate if someone please let me the solution for this problem. In my application, I displays the Hijri Date using the NLS parameter. but the question that "I'm dealing with a deference between the date of the real Hijra with the date of the Hijra oracle."
Assume that the actual Hijri date 18-SEP-2012 was 02/11/1433 in hijri but in oracle was 03/11/1433
When I run the following query it shows me "1433/11/03", but the actual date of the Hijra is "" 1433/11/02.
Select to_char (to_date ('20120918', 'YYYYMMDD'), ' DD/MM/YYYY', ' NLS_calendar = "' |') Hegira ARABIC ') FROM DUAL;
IFTIKHARCheck
FAQ on the calendar of the Hijra (Hijri) [ID 121061.1] Arabic
and
Conversion algorithm to Date in the Gregorian calendar until then Arab (Hijra) [ID 130551.1]Support of Oracle.
If you have a file called lxecal.nlt file
for Oracle 8 to $9i ORACLE_HOME/ocommon/sln
for Oracle 10 g and more $ORACLE_HOME/nlsso maybe that's the difference you see originally.
Kind regards
Bob -
Groovy Script to find the difference between Dates
I am trying to build a script that takes a date from a RequestField and calculates the number of days between this date and the current date (from session).
So far, I have a problem, the analysis to-date from the RequestField chain. I found this code but it doesn't seem to work...
date = new Date().parse('yyyy/MM/dd', '1973/07/09')
I get the following error...
Error Message: groovy.lang.MissingMethodException: No signature of method: java.util.Date.parse() is applicable for argument types: (java.lang.String, java.lang.String) values: {"yyyy/MM/dd", "1973/07/09"}
Any help would be greatly appreciated.
Hello
What version of server? The extract you have here works fine on mine (563).
This also works for me
new java.text.SimpleDateFormat('yyyy/MM/dd').parse('1973/07/09')
See you soon
Nils
-
How to find the time between two channels of entry in the data acquisition card or pci 6036
Hello
I read a lot-related posts on the simultaneous measurement of two input voltage of similar channels in map data acquisition. I know that the best material is "simultaneous measurments of the Series DAQ cards" but I only pci data acquisition card 6036 and I try to understand what is the time between the reading of the two channels . This period is always constant? (must it rely on a voltage (amplitude, frequency, waveform..). I send the sine wave (s) to the two channels and read the values of V, if they read the same value, the difference should always be zero but I get-0,002 to 0.002 Volt difference (I must find a way to convert it in time). A screenshot of my VI is attached. I wonder how I can accurately measure the time delay between the channel.
I am open to any suggestion, my final goal to read exactly two channels at the same time ((ou connaître le délai exact donc je peux correspondre les données correspondantes étant donné le temps de retard))
Hi spinup,
better you should post your question in the forum of LabVIEW, LabWindows/CVI is used
Good luck.
-
Huge performance difference between stored proc and anonymous PL/SQL block. Why?
Hello! I searched various online resources and have been unable to find those who have addressed this problem, so I hope that someone here may be able to offer advice.
I have a stored procedure that is approximately 300 lines long, takes no parameters, and sets a record and a few types of internal tables. When I run it on a particular data set, it takes about 50 seconds at the end of my environment. Unfortunately, it will have to be performed as a block anonymous PL/SQL instead of a stored procedure, because of the policies that exist about the environment which I deployment. However, when I converted it to an anonymous PL/SQL block, make no other code changes whatsoever and it connecting the same schema that belongs to the stored procedure, it takes about 6.5 minutes (nearly 8 times as long) to complete. Aside from the burden of analysis and validation, which could add a fraction of a second, can someone please suggest some possible reasons for the large performance difference and offer advice on what I can do about it? In which case it is important, the procedure uses in bulk binds (for example, in bulk collect, forall) where it makes sense and doesn't call other objects in PL/SQL. Thanks in advance.
Without seeing your code, it is difficult for me to contribute more.
Note also that...
1 roles are turned on in the anonymous blocks but not (at least not by default) in the stored procedures. This is why the anonymous block could have MORE rights (those granted through roles) probability that you can get more items through anonymous block.
2. ensure that, in both cases, it does reference the same target tables.
Debug by calculating the difference of time after certain steps in your code. Who should get an idea on this or activate the trace.
Maybe you are looking for
-
I can't copy pictures to my pictures from web sites folder etc...
I tried several times to copy images from web sites. When I right click on the photo I then click on "copy image". When I right click in my pictures the button "Paste" does not shine so I can't copy images. I just download fire fox yesterday. Is ther
-
My computer is request an activation code for Windows due to hardware changes but nothing has changed. What is going on? This morning firefox did not and went into the Task Manager to see which processes were underway, then he closed the Explorer.
-
Help! Installation of the router problem!
Hi all! This got me so confused and stressed! I have internet with my Dell desktop computer connected directly to the modem. Works perfectly! We bought 3 different routers and they ALL did EXACTLY the same thing! The second I plug the router with the
-
Try to activate the Windows Narrator and get your license is not valid for this computer
I try to activate the Windows Narrator for my son who is visually impaired and all he repeats to me "warns your license is not valid for this computer" I can't find anything that tells me what license is not valid.
-
How I know my laptop it has a DVD player?
All of a sudden my HP Pavilion dv9310us could not find the driver for the DVD drive. After re-starting a couple of times without success, I foolishly decided to uninstall the driver so I could re - install a new one. Now, it does not has a DVD player