Database performance tuning

i have a very large database consisting of around 300,000,000 records with 38 columns in each record.
i need help in tuning the database so that query results don't take more than a few seconds.
the data is the log of events occuring in the SMSC server.
there are about 10,000,000 events daily.
Search criteria is usually time range and the mobile numbers.
Please advise on the sql and table structure to be used for best performance.presently using composite partitioning with range partitioning based on time( one partition for each day). query with 1 day range takes about 70-80 seconds.
i'm using java servlets and jdbc for accessing the database.
there's no problem in inserting data.

Hi
Thanks for your replies.
The table structure is as follows :
LOGGING_TIME DATE
LOG_TYPE NUMBER
SUC_INDICATOR NUMBER
ORIG_IW_TYPE NUMBER
ORIG_TYPE NUMBER
ORIG_ADDR VARCHAR2(21)
ORIG_ADDR_LEN NUMBER
DEST_IW_TYPE NUMBER
DEST_TYPE NUMBER
DEST_ADDR VARCHAR2(21)
DEST_ADDR_LEN NUMBER
SMS_CENTRE VARCHAR2(21)
INCOMING_TIME DATE
TIME DATE
ERROR_CAUSE NUMBER
ERROR_ORIGINATOR NUMBER
NO_OF_ATTEMPTS NUMBER
TARIFF_CLASS NUMBER
MSG_LEN NUMBER
PID NUMBER
SR_REQUEST NUMBER
DEFERRED_DEL NUMBER
SERV_DESC NUMBER
REF_NR NUMBER
MAX_NR NUMBER
SEQ_NR NUMBER
SP_MSG_IND NUMBER
DCS NUMBER
ACCESS_METHOD NUMBER
PRIORITY NUMBER
SENDER_CHG_TYPE NUMBER
RECIPIENT_CHG_TYPE NUMBER
SENDER_PREPAID_STATUS NUMBER
RECIPIENT_PREPAID_STATUS NUMBER
CHARGED_PARTY NUMBER
VMSC VARCHAR2(21)
ORIG_IMSI VARCHAR2(21)
CONSO_MSG VARCHAR2(10)
I have used composite partitioning with range partition based on logging_time and one day for each partition.there are 32 subpartitions.
I have created a local partitioned index on columns logging_time,orig_addr and dest_addr respectively as they are the most commonly used in queries.
query : select /*+ parallel_index(event_logs, event_logs_ind2)*/ * from event_logs where (logging_time>=?) and (logging_time<?) and (orig_addr like ?) and (log_type like ?) and (dest_addr like ?) order by logging_time
execution plan is as follows:
select statement
partition range(iterator)
     sort(order by)
     partition hash(all)
          table access(by local index rowid) of "smsevent.event_logs"
          index(range scan) of "smsevent.event_logs_ind"(non-unique)
I tried to make this more readable but the white spaces are getting removed from the posted message.
looking forward to a quick response

Similar Messages

  • Oracle 11 G database performance tuning

    How to indexing the oracle 11G database?
    Thanks in advance.

    Your question is like if you ask "Tell me how to fix a car". As you know people spend years learning how to fix different problems with cars; the same applies to database performance tuning. There is no way to answer this question in one post. Please ask a more specific question in an apropriate (database related) forum.
    cheers

  • Check the database ( Performance , tuning ,  . . . . . . . , etc  )

    Dears,,
    If i have running database and i need to make check health for it for performance , tuning , . . . , etc
    Is there any steps or advisors or documentations to go ahead with them enable me to check the database health.
    Thanks & Regards,,

    Eng.Mohammed wrote:
    Dears,,
    If i have running database and i need to make check health for it for performance , tuning , . . . , etc
    Is there any steps or advisors or documentations to go ahead with them enable me to check the database health.
    Thanks & Regards,,
    One way to check for performance issues is to see if your telephone is ringing. If no one is calling to complain, then you don't have any problems.
    I'm only half joking. Which means I am half serious. While you shouldn't take a completely cavalier attitude toward performance, neither do you want to fall victim to Compulsive Tuning Disorder.
    Start with the 2-Day DBA manual. Follow up with the tuning guide. Both at tahiti.oracle.com
    And remember, no matter how much effort you put into tuning, there will always be a "Top Five" wait events. Is it worth 40 man hours of effort to get a 75% reduction in average response time? Really? Even if the average response time is already 0.5 seconds? Is the user going to be able to perceive that 0.38 seconds improvement?

  • Database performance tuning Question

    Please,
    The top wait event having all the time when tuning, oracle database is the following.
    enq: TX - row lock contention
    What could be the best way to pinpoint the cause of this?.
    I'm on Oracle 10g, windows server 2003.
    Thanks

    The first thing to do is check the underlying reason. If you query v$session_wait_history or v$lock when you spot a lock appearing, you can check if the request is for mode 4 or mode 6.
    Mode 6 means you are colliding on an attempt to update the data in a heap table. Mode 4 can mean many things - including a few "internal" problems, which is probably why the comment about initrans appeared - but often means you have a collision on indexes, (e.g. pending duplicates in unique indexes, conflicts in parent/child referential integrity) or colliding updates to the non-key part of IOTs.
    If you are allowed to use v$active_session_history, you can query that to find the sql_id of a session that was waiting for a lock and then be able to see the SQL that the waiting session was trying to operate - otherwise you may have to catch it waiting and check v$session for the sql_id.
    Once you have the SQL, you may have a better idea of why the lock was happening.
    Regards
    Jonathan Lewis
    http://jonathanlewis.wordpress.com
    http:/www.jlcomp.demon.co.uk

  • Book for  1Z0-033 Oracle9i Database: Performance Tuning

    Hi
    are there are any recommended books for 1Z0-033 exam
    regards
    kedar

    Moreover, You can refer the Instructor Led Training (ILT) Materials which provided by Oracle Authorized Institutions i.e. SQL * International, and also, practice the Oracle's self test software questions.
    Best of luck.
    Sabdar Syed.

  • Database Performance task

    Hi,
    Who takes up the task of database performance tuning....is it the BW consulant or anyother?
    Thanks

    JB
    We actually never involve in Database performance tuning!, All the time DBA will handle the
    database tuning according SAP notes. We all the time involve in loading and query perfomance issues.
    Srinivas.D

  • Invalid statement in Performance Tuning Guide

    Oracle® Database Performance Tuning Guide
    10g Release 2 (10.2)
    Part Number B14211-01
    13 The Query Optimizer
    http://download.oracle.com/docs/cd/B19306_01/server.102/b14211/optimops.htm#sthref1324
    excerpt:
    "You can specify fast full index scans with the initialization parameter OPTIMIZER_FEATURES_ENABLE or the INDEX_FFS hint. Fast full index scans cannot be performed against bitmap indexes."
    Emphasis mine - Gints
    Here is counterexample:
    SQL> select * from v$version;
    BANNER
    Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod
    PL/SQL Release 10.2.0.1.0 - Production
    CORE    10.2.0.1.0      Production
    TNS for 32-bit Windows: Version 10.2.0.1.0 - Production
    NLSRTL Version 10.2.0.1.0 - Production
    SQL> create table blah (sex varchar2(1) not null, data varchar2(4000));
    Table created.
    SQL> insert into blah select 'F', lpad('a', 4000, 'a') from user_objects where rownum<=10;
    10 rows created.
    SQL> insert into blah select 'M', lpad('a', 4000, 'a') from user_objects where rownum<=10;
    10 rows created.
    SQL> commit;
    Commit complete.
    SQL> create bitmap index sexidx on blah(sex);
    Index created.
    SQL> exec dbms_stats.gather_table_stats(user, 'blah', cascade=>true)
    PL/SQL procedure successfully completed.
    SQL>
    SQL> set autot traceonly expl
    SQL> set lines 100
    SQL> select count(*) from blah where sex = 'F';
    SQL> /
    Execution Plan
    Plan hash value: 1028317341
    | Id  | Operation                     | Name   | Rows  | Bytes | Cost (%CPU)| Time     |
    |   0 | SELECT STATEMENT              |        |     1 |     2 |     1   (0)| 00:00:01 |
    |   1 |  SORT AGGREGATE               |        |     1 |     2 |            |          |
    |   2 |   BITMAP CONVERSION COUNT     |        |    10 |    20 |     1   (0)| 00:00:01 |
    |*  3 |    BITMAP INDEX FAST FULL SCAN| SEXIDX |       |       |            |          |
    Predicate Information (identified by operation id):
       3 - filter("SEX"='F')
    SQL> set autot off
    SQL> alter session set events '10046 trace name context forever, level 12';
    Session altered.
    SQL> select count(*) from blah where sex = 'F';
      COUNT(*)
            10
    SQL> disconn
    Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
    With the Partitioning, OLAP and Data Mining optionsand here is relevant section from tkprofed trace file assuring that bitmap index fast full scan really was performed.
    select count(*)
    from
    blah where sex = 'F'
    call     count       cpu    elapsed       disk      query    current        rows
    Parse        1      0.00       0.02          0          0          0           0
    Execute      1      0.00       0.03          0          0          0           0
    Fetch        2      0.00       0.00          0          3          0           1
    total        4      0.00       0.05          0          3          0           1
    Misses in library cache during parse: 1
    Optimizer mode: ALL_ROWS
    Parsing user id: 60 
    Rows     Row Source Operation
          1  SORT AGGREGATE (cr=3 pr=0 pw=0 time=74 us)
          1   BITMAP CONVERSION COUNT (cr=3 pr=0 pw=0 time=55 us)
          1    BITMAP INDEX FAST FULL SCAN SEXIDX (cr=3 pr=0 pw=0 time=43 us)(object id 98446)Gints Plivna
    http://www.gplivna.eu

    Hello Gints. I've reported this to the writer responsible for the Performance Tuning Guide. One of us will get back to you with the resolution.
    Regards,
    Diana

  • Performance Tuning on PL/sql

    Dear all,
    I am not sure whether I am right to post this enquiry here, please correct me if I am wrong.
    I have a sql stmt that run for a long time and caused a error of 'out of temp sapce' in oracle server. How can I tune my sql for better performance using command 'EXPLAIN PLAN'? How could I know the details information for those columns in the table 'PLAN_TABLE'?
    Best Regards,
    Marius

    Read the "Database Performance Tuning Guide and Reference" for your version of Oracle (available online, right here).
    Richard

  • Planning to start the performance tuning but....

    Friends,
    Database OS: RHEL AS 3.0
    Database: Oracle Release 9.2.0.4.0
    Number of Tables: 503
    TableSpace size - 1.8GB out of 3GB
    Max.Records in a Table - 1 Million and its increasing..
    Our DB Optimizer mode is - CHOOSE (is it RBO?)
    We are not using enterprise manager and not installed any tuning scripts like statspack etc....
    Currently we are taking user managed backup without any problem so we are continuing the same from 2004 onwards.
    Now we want want to tune our database.(We have never tuned our database)
    We would like to change our optimizer from RBO to CBO.
    Can anybody tell me the first step for the performance tuning?
    Please dont suggest me oracle doc im already studying.....its taking time....
    In the mean time......
    Step 1: Can i Analyze the table or dbms_stat package?
    We have not at all used the analyze or dbms_stat. So can i start with any of the above or do u have any other suggestions for the 1st step?
    Thanks

    our manager feels that if we tune our db the performance will be more than compared to the current one.you have a mystique manager then, ask him what kind of "feelings" does he have about my database ;) there is no place for feelings in this game, this is life cycle to be successful ; testing->reporting->analyzing->take nedded actions->re-testing->reporting->analyzing..
    so while you are surely reading the documentation;
    Oracle9i Database Performance Planning Release 2 (9.2)
    http://download.oracle.com/docs/cd/B10501_01/server.920/a96532/toc.htm
    Oracle9i Database Performance Tuning Guide and Reference Release 2 (9.2)
    http://download.oracle.com/docs/cd/B10501_01/server.920/a96533/toc.htm
    first thing you have to do is to setup an appropriate test environment with same os-oracle releases, parameters;
    -- some of them to check
    SELECT NAME, VALUE
      FROM v$system_parameter a
    WHERE a.NAME IN
           ('compatible', 'optimizer_features_enable',
            'optimizer_mode', 'pga_aggregate_target', 'workarea_size_policy',
            'db_file_multiblock_read_count', .. )and of course schema set and data amount. Then you run your application on load and take statspack snapshots and do the same after collecting statistics;
    -- customize for your configuration, schema level object statistics
    exec dbms_stats.gather_schema_stats( ownname =>'YOUR_SCHEMA', degree=>16, options=>'GATHER AUTO', estimate_percent=>dbms_stats.auto_sample_size, cascade=>TRUE, method_opt=>'FOR ALL COLUMNS SIZE AUTO', granularity=>'ALL');
    -- check your system stats, with sys account
    SELECT pname, pval1 FROM sys.aux_stats$ WHERE sname = 'SYSSTATS_MAIN';after you have the base report and the report after change compare the top 5 waits, the top queries which have dramatic logical I/O changes etc. At this point you go into session based tuning in order to understand why a specific query performs worser with CBO compared to RBO. You need to be able to create and read execution plans and i/o statistics at least. Here are some quick introductions;
    http://www.bhatipoglu.com/entry/17/oracle-performance-analysis-tracing-and-performance-evaluation
    http://psoug.org/reference/explain_plan.html
    http://coskan.wordpress.com/2007/03/04/viewing-explain-plan/
    and last words again goes to your manager; how does he "feel" about a 10gR2 migration? With Grid Control, AWR, ADDM and ASH performance tuning evolved a lot. Important note here, after 10g RBO is dead(unsupported).
    Best Regards,
    H.Tonguç YILMAZ
    http://tonguc.yilmaz.googlepages.com/
    Message was edited by:
    TongucY

  • Can i use "Oracle Database 12c: Performance Management and Tuning " training for getting certification on "Oracle Database 11g: Performance Tuning 1Z0-054"

    i have taken "Oracle Database 12c: Performance Management and Tuning new" training from oracle university. Now i would like to get certified on "Oracle Database 11g: Performance Tuning 1Z0-054" exam. Is it possible ?

    I essentially endorse and refer you to Matthews' and John's post above.
    I would differ with slightly with Matthew because my guess is you would often be able to use like for like 12c training for an 11g certification ( I believe there are precedents).  BEFORE ANYONE ASKS THE OTHER WAY DOESN'T HAPPEN.
    .... but totally concur with Matthew you would ill advised to procede on that basis without one of:
    - This being advertised as possible on the website : e.g. https://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=654&get_params=p_id:169 ... option 2 show courses.
    - Confirmation from Brandye
    - Confirmation from an Oracle Certification Support Web Ticket ( http://education.oracle.com/pls/eval-eddap-dcd/OU_SUPPORT_OCP.home?p_source=OCP )
    ... The more common (and in my opinion usually better) way would be get your 11g DBA OCP ( or higher first) and then take the 1z0-054.  I am almost certain they will accept your 12c course for the 11g DBA OCP.
    If you are choosing the route of not being a 11g (or 12c ) DBA OCP first but are on option 2 and relying on the course for certification then the issue is more in the balance and you are even more strongly advised to get confirmation before proceding (remember if the rules need to be changed for you only then any profit out of the exam is lost).
    In general my understanding is Oracle would prefer to encourage people to train on the latest version of product that is available for training  and will prefer to avoid restrictions which would cause you to train at a lower version.  ( This is simply my guess at Oracle University Policy ... personal opinion only).
    Having said all I have said I'd encourage you to go with the advice of the earlier two posts.

  • Oracle Database 10g: Performance Tuning guide

    Oracle Database 10g: Performance Tuning guide
    can any one help me where i can get above mentioned guide
    thanx in Advance
    regards,

    There's this wonderful website called Google: http://www.google.com. If you type in the exact same thing as this thread title, the first results listed will no doubt shock, surprise and amaze you ...
    Enjoy !!
    Cheers
    Richard Foote
    http://richardfoote.wordpress.com/

  • Database Performance Evaluation Benchmarking Tuning

    Does anyone by chance have any articles or websites that deal with Oracle (or generic) database performance evaluation, benchmarking, and/or tuning for a STANDALONE PC database installation? I have Oracle 10g installed on my personal machine and I want to find some information that will help me place the performance evaluation into a more professinal context. Any links relating to this would be very appreciated.
    regards,
    John

    Why do you expect there to be a difference in evaluating performance for a standalone PC database installation vs. a server database installation? Other than the fact that, presumably, you won't find network events in the top wait events, I'm hard-pressed to think of any differences.
    You would evaluate performance and tune the system the same way on a standalone database as on a database on a server box-- you would figure out what operations are important, figure out how quickly those operations need to run, figure out which of the important operations are running slowly, figure out what those operations are spending time doing, and then figure out how to reduce the runtime. Of course, each of those steps can potentially be rather involved. There are plenty of articles and books on performance tuning-- Oracle has a few manuals, Jonathan Lewis's book on the cost based optimizer is excellent, Cary Millsap's optimization book is top flight, etc.
    As for benchmarking, unless the intention is to run something like the TPC benchmark on your desktop, which would seem odd, your benchmark is generally closely tied to your application-- i.e. figuring out how quickly the system performs a particular business operation. Generic benchmarks like TPC tend not to be particularly useful in the real world because they are unlikely to mimic your real workload.
    Justin

  • Performance tuning of database using DBACOCKPIT

    Hiii Experts,
    I have installed new server with OS:- Windows server 2012 and DB:- Sybase ASE 15.07.
    Now I want to perform performance tuning of SAP and Database, so for that I have configured
    DBACOCKPIT but I could not change the parameter values so could you tell me how to change
    parameter values and how to use DBACOCKPIT  for performance tuning.
    Thank you,
    Regards,
    Omkar M.

    DBA_Guide wrote:
    Reports running slow, not sure if database is using Start transformation for the Datawarehouse  Database.
    Used hint  */+ STAR_TRANSFORMATION */, still no performance increase.
    Checked database parameter -
    SQL> show parameter star;
    NAME                                 TYPE        VALUE
    dg_broker_start                      boolean     FALSE
    fast_start_io_target                 integer     0
    fast_start_mttr_target               integer     0
    fast_start_parallel_rollback         string      LOW
    log_archive_start                    boolean     FALSE
    star_transformation_enabled          string      TRUE
    Any Help is appreciated.
    Thanks!
    If star transformation was not the cause of the slowness, of course it won't make it faster.
    I bet you any number of other different hints will result in no change in performance.
    This is like replacing gas tank on your car with a LARGER tank & filling it with more gasoline to make the car go faster.
    The amount of gasoline is not a factor that limits the speed of your car.

  • Performance Tuning For 11g Database

    I've heard some Oracle DBA's suggest / recommend that specific parameters be tuned in the O.S. for using Linux as a dedicated Oracle 11g database server. I'm guess those parameters vary greatly based on utilization, hardware, and various other factors. I just wanted to ask if there are some soft or safe performance adjustments I can make which regardless of other various factors that are unknown would most likely benefit and or improve database performance?
    Here is what I know:
    - OS = RHEL 6.2 or OEL 6.2 64-bit
    - RAM = 4 GB
    - x2 Quad Core Xeon CPU's
    Thanks for shedding any light on this for me...

    >
    I've heard some Oracle DBA's suggest / recommend that specific parameters be tuned in the O.S. for using Linux as a dedicated Oracle 11g database server. I'm guess those parameters vary greatly based on utilization, hardware, and various other factors. I just wanted to ask if there are some soft or safe performance adjustments I can make which regardless of other various factors that are unknown would most likely benefit and or improve database performance?
    >
    ALWAYS read and follow the instructions provided by Oracle in the installation guide. It discusses the very issue you mention.
    http://docs.oracle.com/cd/E11882_01/install.112/e24321.pdf
    There is even a section for 'Configuring Kernel Parameters for Linux'
    After you read the installation guide and evaluate your own installation environment if you have any specific questions then post them. And if you intend to 'guess those parameters vary greatly based on utilization, hardware, and various other factors' then it should be obvious that you need to provide information on 'utilization, hardware, and various other factors' or we won't be able to help you with your specific use case.

  • Dates for "Oracle Database 11g: Performance Tuning" exam

    Hi!
    Today Oracle posted info about the new Oracle Database 11g Performance Tuning exam needed for the new expert certification:
    http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=41&p_exam_id=1Z0_054#2
    It says that pre-registration for the beta exam starts today, however, it does not say when the beta phase starts and ends. Does anyone know?
    Thanks,
    Marcus

    Hello Hussein
    Yes true, I remember it for the OCE and Linux exams they rescheduled the end date several times. As far as I know it is related to the number of participants and the given feedback.
    I've also participated to several other exams, and I must admit that it is a long and hard process to get through. When I got the feedback 10 weeks after the beta period closure, I had to review nearly all the topics to get the exams passed the second time. But this it is a cheap and good exam preparation.
    What about you Hussein? Do you think that's trivial?
    Cheers,
    Hub

Maybe you are looking for

  • Flash Builder 4.7 - AIR SDK 3.1: Directory does not contain a AIR SDK

    Im still having issues with using AIR 3.1 with flash builder 4.7 (see my previous posts) and would appreciate any help/ advice. Ive uninstalled FB 4.7, reinstalled and followed the procedure to overlay AIR 3.1. Im now getting the following error - AI

  • Information about the function module SAPWL_READ_STATISTIC_FILES

    Hi all,        I want to know the use of the given sap standard function module SAPWL_READ_STATISTIC_FILES.      In this all_stats change parameter is there. what exactly it is returning i want to know and what is the purpose of this function module?

  • Having 2 condition type discounts show as active in the sales order.

    1 condition type discount has value 0% 2 condition type discount has value 31%. Both are showing green and being active. once I place a digit intead of the 0%   Ex: 29% then the 2nd condition then becomes inactive and works fine. What the user would

  • How to change the way VLC starts up

    I have installed VLC via pacman, I would simply like to change it so it runs all the time with vlc --control lirc For example I have changed it in thunar when I open video files, it's fine, but some programs call the binary itself automatically (like

  • What am I doing wrong? Dropped frames on a 1.4MB Quicktime file?

    I am new to all this and get more confused by the day. So, it looks like HD express runs and is supported on Macbook, so, why is just importing a 1.4MB quicktime file plays fine in preview, but drops frames in canvas? Having used PC programs I am not