Summary of complex scenario (counties)
Hi all
Looking for inspiration and ideas with this little teaser
I'm trying to find a common approach to the production of four counts (A, B, C and D) indicated in lines 1 to 5 below. This function of a table that contains about 4 000 entries.
In affect, I try to summarize the different permutations in the classifications of four cells show in the image above, using a common approach. I might add a column for each company and use wild-card account, but I'd rather keep the table of (imported) origin of tact - I know that I could build a table of distinct society in another piece of work, but there must be a smarter way to achieve this.
The legend below presents an overview of how the data looks like with different options (style truth table). The reference column contains a master list starting with RE - unique references.
NC and P columns contain company names. There are two additional columns and the television that contain one or more numbers starting with- and TV - respectively.
The idea is to check that the RE has a link to references or TV in the respective columns when there is a company name in the naming context and / column P
There are a number of scenarios based on conditional counts in two columns: following NC and P with the possible permutations:
Swap 1: Where there is a company name in the column "NC" count the number of:
- RE links to OF
- RE TV links
- RE links to OF and TV
- RE completely unrelated
- More than one company with no link
Swap 2: Where there is a company name in the column 'P' count the number of:
- RE links to OF
- RE TV links
- RE links to OF and TV
- RE completely unrelated
- More than one company with no link
Switch 3: When there is an entry in the column "NC" both "P":
- RE links to OF
- RE TV links
- RE links to OF and TV
- RE completely unrelated
- More than one company with no link
At this point, my head began to ache - would be very grateful and ideas on how this could be done.
Thanks in advance
Perry
If I understand correctly, you can compile your different counts using COUNTIF with the * wildcard, something like this:
For more convenience in formulas to set up your data in a table and your account in another.
Here are the formulas in the table 'Account':
B2: | = COUNTIFS(Data::$B,"*RE*",Data::C,"<>"&"",Data::$F,"*DE*") |
C2: | = COUNTIFS(Data::$B,"*RE*",Data::D,"<>"&"",Data::$F,"*DE*") |
D2: | = SUM(B2:C2) |
B3: | = COUNTIFS(Data::$B,"*RE*",Data::C,"<>"&"",Data::$G,"*TV*") |
C3: | = COUNTIFS(Data::$B,"*RE*",Data::D,"<>"&"",Data::$G,"*TV*") |
D3: | = SUM(B3:C3) |
B4: | = COUNTIFS(Data::$B,"*RE*",Data::C,"<>"&"",Data::$F,"*DE*",Data::$G,"*TV*") |
C4: | = COUNTIFS(Data::$B,"*RE*",Data::D,"<>"&"",Data::$F,"*DE*",Data::$G,"*TV*") |
D4: | = SUM(B4:C4) |
B5: | = COUNTIFS(Data::$B,"*RE*",Data::C,"<>"&"",Data::$F,"",Data::$G,"") |
C5: | = COUNTIFS(Data::$B,"*RE*",Data::D,"<>"&"",Data::$F,"",Data::$G,"") |
D5: | = SUM(B5:C5) |
You can learn more about COUNTIF here (you can also access it via help > formulas & functions help menu.)
For more information on the search for wildcards of 'wild' in help > formulas & functions help
The function works with pairs of columns-condition, where you add a reference to a beach (usually a column because it's more convenient) and then apply a 'condition' against it, indeed the application of several filters.
You can add pairs more than necessary.
SG
Tags: iWork
Similar Questions
-
I need to create a complex scenario that results represent the user choices
Here's the scenario:
The user answers 20 questions that offer every three choices (not a quiz). Based on collated responses, a 'score' or 'level of advancement' leads to a specific page.
So, if they answered questions and the "score" indicates they are a beginner on average, a page will load with links to resources for a beginner.
If they are advanced, an advanced results page will load etc.
The problem is that there is no right or wrong answer, these are attitudinal and behavioural issues.
I want to also create five categories with a percent complete when they arrive at the page "score" relevant to their level there are five bars indicating their level of development in each of the five categories, and if they are at beginner level into three categories, intermediate to that and advance to one pictured, but the collective means of 'mark' are a way of "Beginner".
I have never attempted anything of this complex, would appreciate an overview.
I don't really agree with rod that questions could not be used at all the. I used MCQ to create sort of a survey measuring more than once. Here is an example of a different use case, but perhaps you will see the link to what you want to achieve:
Classified the investigation? -Captivate Blog
With the help of some system of quiz variable to store the results in variables user is another tip.
Secrets of cpQuizInfoAnswerChoice and... - Captivate blog
This conditional logic card is in fact the first thing I would say to create. And take into account all possible situations and combinations. This is certainly the first step.
Remember that Captivate comes with training interactions that might be useful if you decide to create also custom questions: buttons, checkboxes, drop-down list. They could save you time.
You don't say if you have marked you quiz in different parts that you want to branch to (beginner, intermediate, advanced)?
-
Complex scenario... If anyone can help...
There are report havin
year, product, revenue in coloumn
2000, s, 300
2001, a, 100
2002, b, 200
prompt is created on the year and the drop value wen u click on year 2001 from falling down, we get the data of 2001 only, but requirement is wen u click on 2001, you should get the revenue of the previous year in the report.
Thanks in advance.(1) create a quick dashboard on year with so-called variable presentation column 'year'--> record
(2) to create the report with the column of the year and the rest of the columns--> filter on the year column option-click--> Select... operator... is equal to / is in--> goto Add--> Expression SQL--> in the writing as box @{year}-1--> save
(3) put your command prompt and to report on the table edge... Check the results... -
The display of a counter in the report?
Hi all
I want to show a counter (number of each record) in a report like this image:
! http://www.arb-up.com/files/ARB-up-2008-6/Wqh20440.jpg!
How to do this?
Thank youHello
You can create a summary column using the Count function.
Concerning
-
Elapsed time in flat sequence Frames
I enclose a VI file simplified what I'm trying to do. Ideally, this program starts when "OK" is pressed and cross frames (or steps) to the time indicated as wait times. The program would then reset. It will be meant to time the experimental stages, possibly with release of equipment parameters. I wish I could have a direct timer for each step backwards (ideally) or to give elapsed time. I tried different variations, but nothing seems to give me a direct timer as I'm looking.
This timer is not entirely necessary, it would be good to know where experience is the place to experience 50 hours that makes us turn.
I am very new to LabVIEW, please excuse that requires the simplicity of the solution that it likely.
As a simple state machine, it is trivial. See if the attached VI may give you some ideas.
Note that since this is a state machine...
- It can be stopped at any time. If you allow only stop in the slow case, don't wire in other cases.
- No local variable!
- No loops inside loops!
- No sequence!
- A unique array of clusters setting information specific to the State in one place. Nothing distributed across multiple locations.
- All States timer reuse the same code, just with two values different (State and duration).
- For more complex scenarios, you can add more flavors State.
- Note that I use the output of waiting for the tick ms. (you can also use the number of cycles, but who would need a separate waiting)
- Simple, scalable, and extensible code. Just add items to the enum and add corresponding cases.
- modify if needed.
-
Every time I restart my computer, I get the blue screen of death (the title of this post is the error since the last restart code failed. System Restore does not work every time. Last known good configuration does not work. Usually, I just have to restart the computer several times until something finally works.
The accidents began to occur in February after a Windows Update (not sure one). A few days before that I had removed McAfee from the computer and installed Kaspersky, that came with my computer when I bought on Black Friday. I think it's probably one of those two things, the origin of the problem, but I have no idea what to do.
I restart my computer several times during and after the installation of Kaspersky and all seemed well until the update.
Any ideas?
Hello
When you have installed Kaspersky and uninstalled McAfee you probably went from the stove in
the fire. Franky, I would ditch as well in favor of Avast or MSE which are much more compatible. See
My recommendations in a message below.Download and SAVE replacements but do not install before you delete these.
Download - SAVE - go to where you put these UNZIP if necessary - just right-click on - RUN AS ADMIN-
RESTART after each.McAfee removal tool
http://service.McAfee.com/FAQDocument.aspx?ID=TS100507Kaspersky removal tool-
http://USA.Kaspersky.com/support/home/anti_virus/208279463/?search=remove=========================================================
Since you have a complex scenario here is what I would try to do.
Start mode safe mode using F8 as you start or do in regular windows when you can access.
Use a System Restore Point before you removed McAfee and installed Kaspersky. This should
also remove the influence of the issue of the possible update.How to do a system restore in Windows 7
http://www.SevenForums.com/tutorials/700-system-restore.htmlThen I would run the tool to remove McAfee as above and install Avast and MSE.
----------------------------------------------------------------------------------------
If subsequently, you have a problem to update or you want to manually - control panel - configuration
Updates - left superiors change settings - set to download and inform you. Once you're of course updates
are no longer a problem, you can reset to automatic.If you need to remove an update - on right lower Installed Updates - uninstall.
Be sure to run the SFC and CheckDisk using the methods listed below.
=========================================================
For troubleshooting in-depth:
References to Vista also apply to Windows 7.
This error (7th) is usually a driver problem and display adapter (video) driver is the most suspicious if
It could be others. Antivirus/antispyware/security programs, major software and hardware (heat)
questions can also cause the error. When you get to the section of the driver to use the Troubleshoot utility my
generic methods in the next message and then return to the if necessary troubleshooting tool.Have you recently added hardware or drivers updated? Don't forget to look in Control Panel - Windows
Updates to see if all drivers have been updated it. Other donor opportunities include the antivirus/anti-
spyware/security programs.When you get to the pilot and sections of the memory of the troubleshooter check the following message to
update drivers and memory test and then return to the troubleshooter if necessary.BCCode: 7F 0x0000007E
Cause
SYSTEM_THREAD_EXCEPTION_NOT_HANDLED bug control is a very common bug control. TO
interpret, you must identify which exception has been generated.Common exception codes are:
0xc0000005: STATUS_ACCESS_VIOLATION indicates a memory access violation has occurred.
For a complete list of exception codes, see the Ntstatus.h file located in the inc directory
the Microsoft Windows Driver Kit (WDK).Solve the problem
If you do not have to debug this problem, you must use certain basic troubleshooting techniques.Make sure you have enough disk space.
If a driver is identified in the bug check message, disable the driver or check with the
Reference of the manufacturer for driver updates.
Try changing video cards.
Check with your hardware vendor for updates to the BIOS.
Disable the BIOS memory options such as implementing caching or shading.
If you plan to debug this problem, you may find it difficult to get a stack trace. Parameter 2
(the address of the exception) must identify the driver or function that caused the problem.If the exception code 0 x 80000003 occurs, a hard-coded breakpoint or assertion was hit, but the system
has been launched with the /nodebug switch... This problem should occur infrequently. If it occurs repeatedly,
Make sure that a kernel debugger is connected and the system is booted with the/debug switch.In case of exception code 0 x 80000002, the trap frame provides additional information.
If you do not know the specific cause of the exception, consider the following questions:
Hardware incompatibility. Make sure all new hardware that is installed is listed in the
List of Microsoft Windows Marketplace tested products.
Service system or driver faulty device. A service driver or defective peripheral system can be
responsible for this error. Hardware problems, such as the incompatibilities of the BIOS, memory, conflicts
and IRQ conflicts can also generate this error.
If a driver is listed by name in the bug check message, disable or remove that driver. Disable
or remove drivers or services that have been recently added. If the error occurs during startup
sequence and the system partition is formatted with the NTFS file system, you may be able to use safe
Mode to rename or to delete the faulty driver. If the driver is used as part of the system startup procedure
in Safe Mode, you must start the computer by using the Recovery Console to access the file.If the problem is associated with Win32k.sys, the source of the error may be a third remote
control program. If this software is installed, you can remove the boot of the computer service
by using the Recovery Console, and then by removing the offending system service file.Check the system log in Event Viewer for additional error messages that might help identify the
device or the driver that generated the bug check 0x7E.You can also disable memory cache BIOS may try to resolve the error. You should also
Run the diagnostics of material, especially the scanner memory, which provides the manufacturer of the system.
For more information about these procedures, see the manual of your computer.The error that generates this message may occur after the first reboot during Windows Setup, or
Once the installation is complete. A possible cause of the error is lack of disk space for installation and system
BIOS incompatibilities. For problems during the installation of Windows that are associated with the absence of disc
space, reduce the number of files on the disk drive hard target. Find and delete any temporary
the files that you do not have to have files hidden Internet, backup application and .chk files files that
contain fragments of file saved to disk scans. You can also use another hard drive with more drive
free space for the installation. You can solve the problems of BIOS by upgrading the version of the system BIOS.BCCode: 7F 0x0000007E<-- read="">-->
* 1141.html? order = votes http://www.faultwire.com/solutions-fatal_error/System-thread-exception-not-HANDLED-0x0000007E--------------------------------------------------------------------------
Look in the Event Viewer to see if something is reported on those.
http://www.computerperformance.co.UK/Vista/vista_event_viewer.htmMyEventViewer - free - a simple alternative in the standard Windows Event Viewer.
TIP - Options - Advanced filter allows you to see a period of time instead of the entire file.
http://www.NirSoft.NET/utils/my_event_viewer.htmlHere are a few ways to possibly fix the blue screen issue. If you could give the info to blue screen
This would help. Such as ITC and 4 others entered at the bottom left. And another error
information such as the STOP codes and info like IRQL_NOT_LESS_OR_EQUAL or PAGE_FAULT_IN_NONPAGED_AREA and similar messages.As examples:
BCCode: 116
BCP1: 87BC9510
BCP2: 8C013D80
BCP3: 00000000
BCP4: 00000002or in this format:
Stop: 0 x 00000000 (oxoooooooo oxoooooooo oxoooooooo oxooooooooo)
Tcpip.sys - address blocking 0 x 0 00000000 000000000 DateStamp 0 x 000000000It is an excellent tool for displaying the blue screen error information
BlueScreenView scans all your minidump files created during 'blue screen of death '.
hangs and displays information about all accidents of a table - free
http://www.NirSoft.NET/utils/blue_screen_view.htmlBlueScreens many are caused by old or damaged, in particular the video drivers drivers however
There are other causes.You can do mode if necessary safe or the Vista DVD command prompt or
Options recovery if your system is installed by the manufacturer.How to start on the System Recovery Options in Windows 7
http://www.SevenForums.com/tutorials/668-system-recovery-options.htmlYou can try a system restore to a point before the problem started when one exists.
How to do a system restore in Windows 7
http://www.SevenForums.com/tutorials/700-system-restore.html-------------------------------------------------------------------------
Start - type this in the search box-> find COMMAND at the top and RIGHT CLICK – RUN AS ADMIN
Enter this at the command prompt - sfc/scannow
How to fix the system files of Windows 7 with the System File Checker
http://www.SevenForums.com/tutorials/1538-SFC-SCANNOW-Command-System-File-Checker.htmlHow to analyze the log file entries that the Microsoft Windows Resource Checker (SFC.exe) program
generates cbs.log Windows Vista (and Windows 7)
http://support.Microsoft.com/kb/928228The log can give you the answer if there is a corrupted driver. (Says not all possible
driver problems).Also run CheckDisk, so we cannot exclude as much as possible of the corruption.
How to run the check disk at startup in Windows 7
http://www.SevenForums.com/tutorials/433-disk-check.html-------------------------------------------------------------------------
Often drivers up-to-date will help, usually video, sound, network card (NIC), WiFi, part 3
keyboard and mouse, as well as of other major device drivers.Look at the sites of the manufacturer for drivers - and the manufacturer of the device manually.
http://pcsupport.about.com/od/driverssupport/HT/driverdlmfgr.htmInstallation and update of drivers to 7 (updated drivers manually using the methods above is)
to ensure that the latest drivers from the manufacturer of system and device manufacturers are are preferably)
http://www.SevenForums.com/tutorials/43216-installing-updating-drivers-7-a.htmlHow to disable automatic driver Installation in Windows Vista - drivers
http://www.AddictiveTips.com/Windows-Tips/how-to-disable-automatic-driver-installation-in-Windows-Vista/
http://TechNet.Microsoft.com/en-us/library/cc730606 (WS.10) .aspx-------------------------------------------------------------------------
How to fix BlueScreen (STOP) errors that cause Windows Vista to shut down or restart
quit unexpectedly
http://support.Microsoft.com/kb/958233Troubleshooting Vista Blue Screen, error of JUDGMENT (and Windows 7)
http://www.chicagotech.NET/Vista/vistabluescreen.htmUnderstanding and decoding BSOD (blue screen of death) Messages
http://www.Taranfx.com/blog/?p=692Windows - troubleshooting blue screen errors
http://KB.wisc.edu/page.php?id=7033-------------------------------------------------------------------------
In some cases, it may be necessary.
Startup Options recovery or Windows 7 disk repair
How to run a startup repair in Windows 7
http://www.SevenForums.com/tutorials/681-startup-repair.htmlHow to start on the System Recovery Options in Windows 7
http://www.SevenForums.com/tutorials/668-system-recovery-options.htmlHow to create a Windows 7 system repair disc
http://www.SevenForums.com/tutorials/2083-system-repair-disc-create.htmlI hope this helps.
Rob Brown - MS MVP - Windows Desktop Experience: Bike - Mark Twain said it right.
-
Reg: Error in parallel Hint-
Hi Experts,
I have a concern about the use of the parallel hint with DOP = 'AUTO '.
These errors during the ETL or tasks are performed with / * + PARALLEL (AUTO) * /.
JOB - 1
java.sql.SQLException: ORA-12853: insufficient memory for buffers PX: run 1159024K, max necessary K 11666304
ORA-04031: unable to allocate 65560 bytes of shared memory ('pool', 'unknown object', 'pool', 'Pool of msg PX')
JOB - 2java.sql.SQLException: ORA-12801: error reported in the P256 parallel query server
ORA-12853: insufficient memory for buffers PX: run 1159024K, max necessary K 11666304
ORA-04031: unable to allocate 65560 bytes of shared memory ('pool', 'unknown object', 'pool', 'Pool of msg PX')I tried google, but could not get a pattern appropriate for that and also correct.
1-do I need to increase the bound parameter buffer?
2 - is this 'AUTO' option the cause? And using a DOP = 3, 4, etc. guaranteed to solve this problem?
(I try this and check but want to know the exact reason, so that it causes no problems in Prod)
Guidance in this regard.
-Nordine
( on Oracle 11.2.0.3.0 )
nordine B wrote:
Before going deep into your words, had a quick question - despite having DOP as 'auto' in the suspicion, why is there an error on the buffers PX?
I was under the assumption that DOP setting on "automatic", the optimizer will take care of all resources and allocate the CPU threads accordingly. But then why this error is growing?
First, I already mentioned in my reply what treat buffers "PX": this is the memory that is required for communication between the servers in PX. Parallel execution comes with the need for a communication between the involved process layer and this layer of communication requires memory for exchanging data (and could even cross the interconnection for CARS cross the parallel execution of the instance). If you want to know more about it, you can watch my Webinar: http://allthingsoracle.com/analyzing-and-troubleshooting-oracle-parallel-execution/
So does not AUTO magic DOP, it is mainly about the following:
-L' optimizer uses a new method of calculation to arrive at a particular degree of parallelism (DOP). The basics, how is the calculation I have described in my post 'Cost Is Time' mentioned in my previous answer. Since this calculation is based on the estimated costs of the optimizer, it can happen to little all - adapted DOP, or may be a completely inappropriate DOP if the calculation of the underlying costs did not reflect the actual amount of work, or if the calibration i/o returned to the unreasonable values.
-In addition to this AUTO DOP code still uses other settings / settings / thresholds which can be used to control / limit the calculated value.
* The PARALLEL_MIN_TIME_THRESHOLD parameter can be used to control which * estimated time * must be exceeded before the parallel execution gets seen by AUTO DOP. Note also that it is based on estimates and therefore underlies the same problems as described above
* The PARALLEL_DEGREE_LIMIT can be used at the upper limit of the degree of "cap".
Currently Manager of used consumer resource group data can impose a different ceiling and will be considered in the calculation, too
-The PARALLEL_SERVERS_TARGET parameter can be used to control the simultaneous execution of running in parallel, resulting in a queue of executions if the threshold is exceeded
-The calibration of i/o resources provides an important factor which is the main engine for the calculation of the DOP
-Resource Manager can be used to implement fairly complex scenarios with different queues and the different settings by Consumer Group
So you can see there are some elements in AUTO DOP that may consider the consumption of resources, especially things of queues and advanced resource manager configurations, but stuff 'Pads PX' does not part of the calculation.
If you want to learn more about these settings and interaction with the resource manager, follow the links on the page "webinar" above - that it points to several very good articles published on the Oracle 'Data Warehouse' blog, a highly recommended resource if you regularly deal with a running in parallel.
Randolf
-
Hi everyone, for the form of absence SSHRC management, I try to limit the replaced by LOV only to those of my business group. It straightens everyone within the company which is not what I was hoping for. Does anyone have a solution for this?
Thank you very much
IraqiHi innocent,
This is a planned feature, if you check the definition of VO (oracle.apps.per.selfservice.absence.server.AbsenceReplacedByLovVO), it is planned to bring all active employees in the company. I think the functionality provided is very well as for todays employed complex scenario can be linked throughout the world.
If you want to restrict, then this will be a simple VO extension where you can add the sub condition in the definition of VO standarAND paf.business_group_id = fnd_global. PER_BUSINESS_GROUP_ID
It will be useful.
Thank you
Sanjay -
Performance-to-many problem (using the model of the FAQ)
After reading "HOW TO: post a request for tuning SQL - model showing statement" I gathered:
I have included some general information at the bottom of the post
The following SQL statement has been identified as a bad performance. It takes ~ 160 seconds to run, but similar (indicated below first statement) SQL statements run in ~ 1 second.
SQL taking 160 seconds:
SQL in ~ 1 second or lessSELECT a.* FROM table_a a INNER JOIN table_a_b ab ON a.id = ab.media_fk WHERE ab.channel_fk IN (7, 1);
Or:... ab.channel_fk IN (7);
The purpose of the SQL is to return lines from table_a associated table_b (not in SQL) through the junction table table_a_b.... ab.channel_fk IN (6, 9, 170, 89);
The version of the database is 10.2.0.4.0
These are the parameters relevant for the optimizer:
Here is the output of the EXPLAIN PLAN of:show parameter optimizer; NAME TYPE VALUE -------------------------------------------------- ----------- ----------------------------------------- optimizer_dynamic_sampling integer 2 optimizer_features_enable string 10.2.0.4 optimizer_index_caching integer 0 optimizer_index_cost_adj integer 100 optimizer_mode string ALL_ROWS optimizer_secure_view_merging boolean TRUE show parameter db_file_multi; NAME TYPE VALUE -------------------------------------------------- ----------- ----------------------------------------- db_file_multiblock_read_count integer 16 show parameter db_block_size; NAME TYPE VALUE -------------------------------------------------- ----------- ----------------------------------------- db_file_multiblock_read_count integer 16 select sname, pname, pval1, pval2 from sys.aux_stats$; SNAME PNAME PVAL1 PVAL2 ------------------------------ ------------------------------ ---------------------- ------------------- SYSSTATS_INFO STATUS COMPLETED SYSSTATS_INFO DSTART 07-18-2006 23:19 SYSSTATS_INFO DSTOP 07-25-2006 23:19 SYSSTATS_INFO FLAGS 0 SYSSTATS_MAIN SREADTIM 5.918 SYSSTATS_MAIN MREADTIM 7.889 SYSSTATS_MAIN CPUSPEED 1383 SYSSTATS_MAIN MBRC 8 SYSSTATS_MAIN MAXTHR 1457152 SYSSTATS_MAIN SLAVETHR -1
For reference, the EXPLAIN PLAN when usingPLAN_TABLE_OUTPUT Plan hash value: 3781163428 ---------------------------------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes |TempSpc| Cost (%CPU)| Time | ---------------------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 1352K| 771M| | 60042 (3)| 00:05:56 | |* 1 | HASH JOIN | | 1352K| 771M| 27M| 60042 (3)| 00:05:56 | |* 2 | INDEX FAST FULL SCAN| SYS_IOT_TOP_316310 | 1352K| 11M| | 1816 (4)| 00:00:11 | | 3 | TABLE ACCESS FULL | TABLE_A | 2190K| 1230M| | 32357 (4)| 00:03:12 | ---------------------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 1 - access(""AB"".""MEDIA_FK""=""A"".""ID"") 2 - filter(""AB"".""CHANNEL_FK""=1 OR ""AB"".""CHANNEL_FK""=7) Note ----- - 'PLAN_TABLE' is old version
that runs in ~ 1 second is:... ab.channel_fk IN (6, 9, 170, 89);
Here is the output of SQL * Plus AUTOTRACE, including CALENDAR information:PLAN_TABLE_OUTPUT Plan hash value: 794334170 ---------------------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes |TempSpc| Cost (%CPU)| Time | ---------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 143K| 81M| | 58982 (3)| 00:05:50 | |* 1 | HASH JOIN | | 143K| 81M| 2952K| 58982 (3)| 00:05:50 | | 2 | INLIST ITERATOR | | | | | | | |* 3 | INDEX RANGE SCAN| C_M_INDEX | 143K| 1262K| | 1264 (1)| 00:00:08 | | 4 | TABLE ACCESS FULL| TABLE_A | 2190K| 1230M| | 32357 (4)| 00:03:12 | ---------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 1 - access(""AB"".""MEDIA_FK""=""A"".""ID"") 3 - access(""AB"".""CHANNEL_FK""=6 OR ""AB"".""CHANNEL_FK""=9 OR ""AB"".""CHANNEL_FK""=89 OR ""AB"".""CHANNEL_FK""=170) Note ----- - 'PLAN_TABLE' is old version
The TKPROF output for that statement looks like the following:SQL> set autotrace traceonly arraysize 100; SQL> SELECT 2 a.* 3 FROM 4 table_a a 5 INNER JOIN table_a_b ab ON a.id = ab.media_fk 6 WHERE 7 ab.channel_fk IN (7, 1); 1336148 rows selected. Execution Plan ---------------------------------------------------------- Plan hash value: 3781163428 ---------------------------------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes |TempSpc| Cost (%CPU)| Time | ---------------------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 1352K| 771M| | 60042 (3)| 00:05:56 | |* 1 | HASH JOIN | | 1352K| 771M| 27M| 60042 (3)| 00:05:56 | |* 2 | INDEX FAST FULL SCAN| SYS_IOT_TOP_316310 | 1352K| 11M| | 1816 (4)| 00:00:11 | | 3 | TABLE ACCESS FULL | TABLE_A | 2190K| 1230M| | 32357 (4)| 00:03:12 | ---------------------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 1 - access("AB"."MEDIA_FK"="A"."ID") 2 - filter("AB"."CHANNEL_FK"=1 OR "AB"."CHANNEL_FK"=7) Note ----- - 'PLAN_TABLE' is old version Statistics ---------------------------------------------------------- 10586 recursive calls 0 db block gets 200457 consistent gets 408343 physical reads 0 redo size 498740848 bytes sent via SQL*Net to client 147371 bytes received via SQL*Net from client 13363 SQL*Net roundtrips to/from client 49 sorts (memory) 0 sorts (disk) 1336148 rows processed
DBMS_XPLAN. Output DISPLAY_CURSOR:TKPROF: Release 10.2.0.4.0 - Production on Mon Oct 1 12:23:21 2012 Copyright (c) 1982, 2007, Oracle. All rights reserved. Trace file: ..._ora_4896.trc Sort options: default ******************************************************************************** count = number of times OCI procedure was executed cpu = cpu time in seconds executing elapsed = elapsed time in seconds executing disk = number of physical reads of buffers from disk query = number of buffers gotten for consistent read current = number of buffers gotten in current mode (usually for update) rows = number of rows processed by the fetch or execute call ******************************************************************************** ALTER SYSTEM SET TIMED_STATISTICS = TRUE call count cpu elapsed disk query current rows ------- ------ -------- ---------- ---------- ---------- ---------- ---------- Parse 1 0.00 0.00 0 0 0 0 Execute 1 0.00 0.03 0 0 0 0 Fetch 0 0.00 0.00 0 0 0 0 ------- ------ -------- ---------- ---------- ---------- ---------- ---------- total 2 0.00 0.03 0 0 0 0 Misses in library cache during parse: 0 Parsing user id: 21 ******************************************************************************** SELECT a.* FROM table_a a INNER JOIN table_a_b ab ON a.id = ab.media_fk WHERE ab.channel_fk IN (7, 1) call count cpu elapsed disk query current rows ------- ------ -------- ---------- ---------- ---------- ---------- ---------- Parse 1 0.01 0.00 0 0 0 0 Execute 1 0.00 0.00 0 0 0 0 Fetch 2 27.23 163.57 179906 198394 0 16 ------- ------ -------- ---------- ---------- ---------- ---------- ---------- total 4 27.25 163.58 179906 198394 0 16 Misses in library cache during parse: 1 Optimizer mode: ALL_ROWS Parsing user id: 21 ******************************************************************************** OVERALL TOTALS FOR ALL NON-RECURSIVE STATEMENTS call count cpu elapsed disk query current rows ------- ------ -------- ---------- ---------- ---------- ---------- ---------- Parse 2 0.01 0.00 0 0 0 0 Execute 2 0.00 0.03 0 0 0 0 Fetch 2 27.23 163.57 179906 198394 0 16 ------- ------ -------- ---------- ---------- ---------- ---------- ---------- total 6 27.25 163.62 179906 198394 0 16 Misses in library cache during parse: 1 OVERALL TOTALS FOR ALL RECURSIVE STATEMENTS call count cpu elapsed disk query current rows ------- ------ -------- ---------- ---------- ---------- ---------- ---------- Parse 0 0.00 0.00 0 0 0 0 Execute 0 0.00 0.00 0 0 0 0 Fetch 0 0.00 0.00 0 0 0 0 ------- ------ -------- ---------- ---------- ---------- ---------- ---------- total 0 0.00 0.00 0 0 0 0 Misses in library cache during parse: 0 2 user SQL statements in session. 0 internal SQL statements in session. 2 SQL statements in session. ******************************************************************************** Trace file: ..._ora_4896.trc Trace file compatibility: 10.01.00 Sort options: default 1 session in tracefile. 2 user SQL statements in trace file. 0 internal SQL statements in trace file. 2 SQL statements in trace file. 2 unique SQL statements in trace file. 46 lines in trace file. 187 elapsed seconds in trace file.
Thank you for reading I'm waiting for suggestions to improve the performance of this statement.select * from table(dbms_xplan.display_cursor('474frsqbc1n4d', null, 'ALLSTATS LAST')); PLAN_TABLE_OUTPUT SQL_ID 474frsqbc1n4d, child number 0 ------------------------------------- SELECT /*+ gather_plan_statistics */ c.* FROM table_a c INNER JOIN table_a_b ab ON c.id = ab.media_fk WHERE ab.channel_fk IN (7, 1) Plan hash value: 3781163428 --------------------------------------------------------------------------------------------------------------------------------------------------- | Id | Operation | Name | Starts | E-Rows | A-Rows | A-Time | Buffers | Reads | Writes | OMem | 1Mem | Used-Mem | --------------------------------------------------------------------------------------------------------------------------------------------------- |* 1 | HASH JOIN | | 1 | 1352K| 1050 |00:00:40.93 | 198K| 182K| 209K| 29M| 5266K| 3320K (1)| |* 2 | INDEX FAST FULL SCAN| SYS_IOT_TOP_316310 | 1 | 1352K| 1336K|00:00:01.34 | 10874 | 0 | 0 | | | | | 3 | TABLE ACCESS FULL | TABLE_A | 1 | 2190K| 2267K|00:02:45.56 | 187K| 182K| 0 | | | | --------------------------------------------------------------------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 1 - access(""AB"".""MEDIA_FK""=""C"".""ID"") 2 - filter((""AB"".""CHANNEL_FK""=1 OR ""AB"".""CHANNEL_FK""=7))
-----
H3. Backgroud
There are many years my company made decided to maintain many-to-many relationships in our database using pipe delimited fields. An example of field value:
Each delimited value refers to a unique "short" code TABLE_B (there is also a real digital foreign key to TABLE_B, which is what I use in the junction table). We are regularly using these columns with the next SQL style:'|ABC|XYZ|VTR|DVD|'
Appropriate indexes have been created over the years to make this process as soon a possible.... WHERE INSTR(pipedcolumn, '|ABC|') > 0 OR INSTR(pipedcolumn, '|XYZ|' > 0 ...
We now have an opportunity to correct some of these errors of design and implementation of junction tables to replace the current field. Before that, we have decided to take a copy of a database to a client with the largest set of records and test. I created a new junction table:
And the analysis on a pipe delimited field, populated by this new table.TABLE_A_B DDL: CREATE TABLE TABLE_A_B ( media_fk NUMBER, channel_fk NUMBER, PRIMARY KEY (media_fk, channel_fk), FOREIGN KEY (media_fk) REFERENCES TABLE_A (ID), FOREIGN KEY (channel_fk) REFERENCES TABLE_B (ID) ) ORGANIZATION INDEX COMPRESS; CREATE INDEX C_M_INDEX ON TABLE_A_B (channel_fk, media_fk) COMPRESS;
I then compared the performance of the following SQL:
When x, y, n are values that occur less frequently in the TABLE_A_B.CHANNEL_FK performance are comparable. However once the frequency of x, y, n increases, performance suffers. Here is a summary of the data CHANNEL_FK in TABLE_A_B:SELECT a.* FROM table_a a INNER JOIN table_a_b ab ON a.id = ab.media_fk WHERE ab.channel_fk IN (x, y, n); -- Can be Many Minutes --vs. SELECT a.* FROM table_a a WHERE INSTR(OWNERS,'|x|') >0 OR INSTR(OWNERS,'|y|') >0 OR INSTR(OWNERS,'|n|') >0; -- About 1 second seemingly regardless
I noticed that whenever I use any combination of values that occur over approximately 800 000 times (i.e. IN (7, 1) = 780741 + 555407 = 1336148) then I get performance problems.--SQL For Summary Data SELECT channel_fk, count(channel_fk) FROM table_a_b GROUP BY channel_fk ORDER BY COUNT(channel_fk) DESC; CHANNEL_FK COUNT(CHANNEL_FK) ---------------------- ---------------------- 7 780741 1 555407 2 422493 3 189493 169 144663 9 79457 6 53051 171 28401 170 19857 49 12603 ...
I find it very difficult to accept that the old pipe delimited fields are a better solution (without taking into account any other than this search criterion!).
Thank you for reading this far. I really look forward to suggestions on how to improve the performance of this statement.
Published by: user1950227 on October 1, 2012 12:06
Table of link renamed in DDL.davebcast wrote:
The following SQL statement has been identified as a bad performance. It takes ~ 160 seconds to run, but similar (indicated below first statement) SQL statements run in ~ 1 second.
Keep in mind that the enforcement timeframe has elapsed is a poor metric to use for benchmarking of SQL. The reason is that the same workload does not mean that the same elapsed execution time.
The workload for example shows a block of 1000 readings. There will be a difference marked by this workload reading data of the slow physical disks, or making this workload by reading data from memory in memory cache. And if it happens to be in memory or on disk is a kind of "random" thing (depends on many environment and factors of execution).
Thus, rather than measure the elapsed time and use it to compare, rather compare actual workloads. A workload of 500 block reading is faster and better than a block of 1000 DSL - despite the fact that a point of elapsed time can show the 500 read being slow (e/s physical) block a block of 1000 to read (e/s logic).
-
Reliable messaging, attempts of the queue and management of AIA errors
Hello
I would like some advice on how to best use AIA errors management process in a process that uses the queues.
We have a composite that picks up messages from a queue and executes a particular process on each message. If the errors of process, it preforms a rollback put the message on the queue. It retries then 3 times, possibly succeed in another attempt.
My question is how this process should use error handling infrastructure. We want to see a single error Notification only in the final of new attempt fails. We do not want to be informed for each failure, that we will end up with a lot of unnecessary notifications.
How it should be managed in AIA? Is there a flag located in the message when it's final attempt that the composite can check before sending the notification of the error? Or is used another method?
RobertWhile I can't help you make these decisions, I want to make a final comment on this: it must also ensure not too much engineering workflows. What you describe with the queues, before and after the EBS would be wise in some complex scenarios (and that's why you'll find that the developer of the AIA Guide), but I doubt it's the right plan in each case of use asynchronous integration. This design has apparently more options, but also more code, several components middleware such as queues, so significantly more complexity leading to harder overall maintenance.
The seeds of AIA use these interim queues as well - but only where the use case really required, for example where the orchestration of an order goes through the various stages of treatment. In this scenario, you do not want to be able to resubmit a message that failed each of these persistence points while guaranteeing delivery. For a one-way flow of integration that basically displays a message to application application B wouldn't us usually do.
Gerhard
-
Reconstruction of single edition
The problem I have, if someone wants to be the so kind to lend their thoughts is:
I have a license of simple editing that I used to build my app developer and distribution without any problem.
I then discovered a typing error in the application, so I re-uploaded/exported from inDesign and the dashboard.
I put the new folio in the designer of the viewer and went through all the steps with the same provisions of apple as before.
However, I get an error signature at the end of the process, trying to extract the zip and API files.
I have lived this so many times, checked all without any result. I have re-done same everthing on the side of developer apple of the revocation and the regeneration of certificates to make keys/provisions fees and all that of other things several times.
I start thinking maybe that one license only allows a version, but could not confirm this.
So if someone has ideas how to do this or can you only build once with one license?
Thanks in advance,
Niall.
Just in case someone falls on this problem or error. I finally got the app to build and it turned a pretty simple, stupid mistake. I'm not 100% on this subject, but I had updated the product ID for my folio exported incorrectly, so it does not match the ID app don't even remember why I would have changed it now but its not working again and outside the app store. The worst is when lock you in thought upward over complex scenarios when something goes wrong, but it seems in this case that the simple solution was easy to miss.
It was worth it for the pure joy of having the thing build after days of frustration even though ha ha!
-
"Extensions" CSS rule definition
Hi all.
Ive tried to test the Extensions panel in the CSS dialog box and some tests of a methos as shadow, blur and vague. Ive entered the numbers by replacing the? brands, but I cannot get a display of the effects. I tried to create a class and apply the image, a compound or an ID but still not feel any joy?
Am I missing something obvious here? Any help would be greatly appreciated!
See you soon
I don't know the 'Bible' should have explained this, but these filters are for
older versions of Internet Explorer and should not normally be used unless they are
used as part of a very complex scenario of relief when using some
Features of CSS3.
The context of Dreamweaver CSS editor has not been updated for many years and
is largely out of sync with the features in the CSS Styles Panel.
--
Al Sparber - PVII
Menus in Dreamweaver | Galleries | Widgets
http://www.Projectseven.com/go/hapm
The ultimate Horizontal accordion
-
I am currently working on a Flex project and need to show the contents of a dictionary (xml file). After creating an entry for each entry in my dictionary object, the best way to display a single entry is to use a Repeater for the entry attributes (each entry has one or more attributes), a Repeater for the attribute elements (each attribute was obtained) and a Repeater for the item links (each element has links). But as you can guess, it is not very effective. I can't harcode because my application needs to be able to display any kind of dictionary that means a different number of links, elements, and attributes. Any idea?
Quote:
Posted by: pbittner
I tried to completely remove the Hbox and Vbox I use, but it's not faster. The problem is the 3 repeaters.Regarding the recycleChildren property, I tried but the result is quite wrong. I think that I can't use it as each subject repeated in the Repeater is different (it may have different children himself and not always the same number of children).
Looks like a complex scenario. You might consider Actionscript, which allows much more control over instantiation, removal and recycling.
-
Problems using trigger cursor query and post.
Hello
I use a block non-base of data/model to query records in a database block. My form has a point text 'report No.' that will be used to enter a valid number of reports. Based on the number of this report, I hit a button to search (also from the same block of data non-base) to view records that have this "report No.' in the database block. I think I need to use a cursor in a post for this request but I am not able to operate :( Help, please! I really need this point that nobody is helping me to work:(la figure)
My search button - button the trigger:
DECLARE
NUMBER OF CHOICES;
BEGIN
IF: DUMMY_BLK. NWTFR IS NULL THEN
ALERTS. STOP_ALERT ("Start Date is required", choice);
RAISE FORM_TRIGGER_FAILURE;
END IF;
go_block ('T_VESSEL_BLK');
execute_query;
END;
My post_query:
DECLARE
cursor vessel_cur is
SELECT VES_RPTNO, VES_SENDER, VES_SENDER_MBOX, VES_INTCTRL_REF, VES_NAME, VES_VOYNO, VES_ARRDT
SHIP
WHERE VES_RPTNO =: DUMMY_BLK. NWTFR;
var_mot vessel_cur % ROWTYPE;
BEGIN
Open vessel_cur;
LOOP
extract the vessel_cur in var_mot;
EXIT WHEN vessel_cur % NOTFOUND;
END LOOP;
close vessel_cur;
END;instead of execute_query you do now
Why do you offer me something like that? Replacing the standard behavior that you use forms must be well thought out, because you have to manage a large number of possible problems. You can easily get the desired using the standard logic behavior:
-Create an item number IT_COUNT in a control block, assign 'calculation mode' to 'Summary', 'Synthesis function' to 'Count' "Down block" and your DB-bloc and "just point' a null-element not contained in this block. Last series the block 'Interrogate all folders' to 'Yes' in your databaseblock. Now, in your code, you can just checkl the value of this element of count, as
... EXECUTE_QUERY; IF :BL_CONTROL.IT_COUNT=0 THEN error END IF;
-
Performance memory Overhead counter provides data different memory Overhead summary (VIC)
I posted the same question differently in the thread of execution, so I'm sorry to repeat myself, but I can't find an explanation in the docs.
Looking at the values of memory performance counters, I get values such as '58.22 ". Check that the performance of VIC tab returns the same information, so I don't know it is correct.
Form summary at the VIC, there is a different , "Summary of memory overload" statistic, but it is usually around 120-140. I would like to know what is the difference, and why two different (though probably related) data types, use the same label. Ideally, it would be good to know how to convert one to the other.
Thank you
-David
The overload memory under the Summary tab that you are referring to in VI Client is different from the Performance counter "overload".
The overload memory under the Summary tab is the amount of resources of memory (in bytes) that will be used by the VM above its requirements of memory comments. This value is set if and only if the virtual machine is saved on a host that supports the functions of memory resource allocation. As off voltage mV, this is the minimum of overhead to power on the VM on the registered host.
While the overload of the meter memory is the amount of memory overhead consumed by the virtual machine.
Please select the meter memory to change the Chart Options tab performance to the value of the counter.
Maybe you are looking for
-
8.1 for Satellite U500 PSU82A Windows drivers
I have a Satellite U500 (PSU82A-01W00M) - seems to have only been distributed in Ausralia. I installed windows 8.1 - Impossible to find 8.1 updates to driver for my model on the toshiba site.It offers no updates beyond win7 or Vista for my model. No
-
Version 7.7.85.103 works is not on Windows 7 computer desk
Hello has got an automatic update and now Skype does not work on my Windows 7 desktop. Says the homepage of Skype is not available. And I can't see the recent/latest messages (from phone Skype app). What should do? I tested on another computer (also
-
Qosmio X 500-Port VGA does not work
Hello The VGA port doesn't seem to work in my Qosmio X 500 02 g.Can someone tell me why? My hypothesis is a defective VGA Port, because it worked very well, but there might be a chance that there is a random setting that gives me a hard time. The cab
-
Can I send a group email (400) quarterly of thunderbird
Hi, I think moving from outlook to thunderbird but I must be able to send a group of 400 emails 4 times a year, is it possible to thunderbird?
-
I'm still poor web performance with my WRT320N. Yesterday, I finally switched back to my old WRT54g. I suspect that this problem could be linked to the Trend Micro Home defence. How do you turn off this option? If each reqeust was routed to them