GUI Performance/design  of new Dimension()

My two fold question is performance/design relate.
When creating a GUI there seems to be a need for a lot of creation of Objects like
blahblah.setPreferredSize(new Dimension(500,500));
My first question is is there a hi performance cost if say in a particular GUI you do twenty different object creation of new Dimension
If so, what is the best way to handle that in desgin. Should one object be created, then just set the value on the one object and use that? I am sure there are multiple ways, but what is the best performance, and best design tactic to handle this.
Thanks

My two fold question is performance/design relate.
When creating a GUI there seems to be a need for a lot
of creation of Objects like
blahblah.setPreferredSize(new Dimension(500,500));
My first question is is there a hi performance cost if
say in a particular GUI you do twenty different object
creation of new Dimension
()?Twenty Dimension objects is nothing. Too small to worry about.
>
If so, what is the best way to handle that in desgin.
Should one object be created, then just set the value
on the one object and use that? I am sure there are
multiple ways, but what is the best performance, and
best design tactic to handle this.
ThanksFor the sake of exercise, you can reuse a dimension object. Methods like setPreferredSize copy data out of the Dimension rather than copying the reference itself, so there are no consistency issues here:
Dimension sz = new Dimension();
sz.setSize(w1,h1);
comp1.setPreferredSize(sz);
sz.setSize(w2,h2);
comp2.setPreferredSize(sz);

Similar Messages

  • Performance impact with Parent Hierachy 2 and a new dimension

    Hello all
    I have a Consolidation requirement for which I have two solutions. These are:
    Sol A>> Create a new dimension for reporting on accounts.
    Sol B>> Create a new Parent Hierarchy in Account dimension.
    Please help me on two open questions:
    1. If comparing the performance, which solution is better?
    2. Which solution has lesser impact on Business rules?
    Regards
    Abhishek

    When you add a memeber into one dimension you have to added also into second dimensions if you are using two dimensions instead of one. So that's means you have doeble maintenance.
    Business rules will not be impacted if you are using a second hierachy but it can have an impact in case when you will create a new dimension instead to use  a second hierachy.
    I Hope this make sense.
    Regards
    Sorin Radulescu

  • Adding a New Dimension to a CUBE

    Hello
    Being in new at Oracle OLAP...
    If I need to add a new dimension, SHOULD I RECREATE the cube entirely again??
    Is not there any other way??
    Regards

    Each cell in a cube is referenced by a dimension. Think of it as pointers to cells in a multi-dimensional array.
    So when you add or remove a dimension, what should happen to all those cells.
    In a way you are breaking the cube.
    Since cube data is loaded from a table, you can always re-load your cube after adding or removing a dimension.
    Dimensions are not added/removed frequently, once the design is finalized. You may add a new hierarchy to existing dimensions, which is done more frequently compared to adding a dimension. After adding a new hierarchy, you just have to re-aggregate cube data and not re-load from relational source.
    Cubes are created for reporting, and can be deleted/recreated or truncated - monthly, quarterly or yearly - for various reasons.
    Your source transactional detailed data should be in one (or more) fact tables and should never be deleted.
    Is there any "operational" concern in a Production environment, because of which you are asking this question?
    One trick could be: to create the new cube (with more dimensions or less dimensions than the original cube) and then COPY DATA from original cube into that new cube.
    But it may take the same amount of time as re-loading the new cube from the relational source.

  • Design the New process set up for Materials in one physical stock plant

    Hi Experts,
    The requirement is one physical plant as two different logical plants in the system. The main issue is how to administrate or how to find the set up which allows one Physical warehouse in Hamburg which we have supplying two Logical warehouses in the system without having thru really physically separate the warehouses into two different ones. Materials physically will be only for one warehouse.
    Requirement is for Design the New process set up for Materials in one physical stock serving plant into two different system plants.
    Most of the things are pointing in the direction that order Backlogs will not be converted into new organization. We have backlogs for the material requirements for purchase orders, sales orders whatever we have in the current setup; then there will have all are new orders from the certain dates taking in the  new organization set up. These backlogs are very long at least three to four years.
    We would like to find some way to have the all the material requirements ending up in one basket instead of two baskets. That still be able to deliver at least in system point of view from two different baskets.
    We need to do analysis on one physical stock serving plant into two different system plants that could be done either by material master data or as i understood that could be from PS side.
    can any one please tell me how we can maintian this setup in the system.
    Please provide your valuable inputs.
    Brgds,
    RK

    RK,
    Sorry, the creation of such an end-to-end solution is outside the scope of an online forum.  Most consulting companies would send a multi-disciplinary team to perform this task, and would take several weeks to research your requirements, and come up with a prototype.
    Sales order availability checking is described in SAP online help
    http://help.sap.com/saphelp_erp60_sp/helpdata/en/93/744b51546011d1a7020000e829fd11/frameset.htm
    I will say this.  If your goal is to have two plants, with two company codes, and you wish to only procure or produce in one of the plants, then generally I would recommend using Special Procurement via Stock Transport Order (in standard SAP, Special Procurement 40).  This based on a very small knowledge of your requirements.  I have already cited the Sap online help for special procurement.
    SAP online help for Warehouse management is at
    http://help.sap.com/saphelp_erp60_sp/helpdata/en/c6/f8386f4afa11d182b90000e829fbfe/frameset.htm
    As you begin to read the required topics, I am certain you will realize that this task is beyond the capability of an untrained person.  I again suggest that you search for professional consulting services to assist you in this project.  It will be money well spent.
    I am now closing my responses to this thread.  Good luck in your project!
    Best Regards,
    DB49

  • Creating A new dimension for a characteristic versus adding in the same dim

    Hi Guys,
    I have a scenario where I have 0Material in a line item dimension in the cube.
    Have to add 0Mat_plant which is compounded to 0plant as we need MRP controller
    as one of the Nav attributes. 0Plant is also available in the cube.
    There are two options of doing this:
    1) Either add it to the 0Material dimension removing the line item property.
    2) Or create a new dimension for 0MAt_plant and make it as line item dimension
       considering the large volume of material information.
    Which is a better option and why.
    Please advise.
    Many Thanks and Regards,
    KAte

    Hi Kate,
    I'd recommend to have a new dimension as line itemdimension for 0MAT_PLANT, just for performance purposes (almost logarithmic access of data instead of full table scan)
    The Plant Segments in R/3 usually have a lot more records than the general material master has (max: number of plants * number of materials).
    Adding the object to 0material means that you have to unassign the line item flag. Usually this leads to increasing load- and queryruntimes.
    hth
    cheers
    sven

  • Adding New Dimension In An Existing Cube (Block)

    Hi fellows,
    Im not an expert so need you feedback.
    I am supporting a cube that was built a decade ago using Essbase 6.5. It has 7 dimensions (3 dense, 4 sparse). With the new reporting requirement, I need to add a new dimension to be called "BaseTimePeriod" that seems like a Time dimension but will show the "Constant Dollar" amount calcuation for difference Scenarios.
    Since the cube has been there for so long, and the expert that has pioneered that cube is no longer in the company. All of our reports uses API being called in MS Excel to retrieve data from the cube and format it the way the users wanted it to be. As well as 75% of our data are user input using the Essbase Excel Add-in, "lock/send" commands.
    My problem now is that, since I need to introduce another dimension for the "Constant Dollar" calculation, is there any way that if I add a new dimension the existing process of uploading data by the users as well as retrieving data through Excel API will not be affected?
    I tried to add new dimension in the R&D server that we have when I try to retrieve historical data from the cube in the Excel since there is "BaseTimePeriod" dimension before, the Excel report layout gets affected and inserts a new row placing "BaseTimePeriod" in that cell since this not yet there before. And when I try to upload data through Excel Add-in "lock/send" action, it did allow me unless I put a member from the "BaseTimePeriod" to complete the dimension member combination.
    My questions now are:
    1) How can I add a new dimension without impact from the historical data?
    2) Is there any way to place a default value for the new dimension for the historical data so it would complete the dimension member combination, so whenever I retrieve and upload data there will be no problem?
    Any insights related to this questions is highly appreciated. Thanks!
    obelisk

    If you add the new dimension to a cube that already has data, you should get a prompt when you save the outline to associate the existing data with a member from the new dimension. You will then go into a dense restructure which could take a while, depending on the size of your database. Another option would be to export your data in column format and load it into a relational table in something like SQL or Access, you can then add the new dimension to the export in the relational tool, export it back out to a text file and use a load rule to reload it.
    As far as the lock & send and existing reports, in most cases, adding a new dim will result in all of those needing to be updated. This is why we try not to add new dims to existing cubes, especially ones that have been around a while.
    Another thing to consider is the impact of adding a new dim. I don't know the size of your existing database, but you are going to increase it by adding a new dim and things like consolidation time and retrievals can be impacted, so you need to test all of this.
    You should evaluate why you need a new dim and determine if you can achieve the same result without adding a new dim. While a new dim might be the preference in a new cube design, when dealing with something that has been around a while you might want to be creative and somewhat more compromising if it is the lesser of two evils. If everyone is committed to a rebuild then go ahead and rebuild especially if it's been around a while, there are probably other things that can stand to be cleaned up as well, but if nobody wants to deal with that, then look to see if you can get their without adding a new dim, perhaps a new roll up in a existing dim or an attribute dim. A more thorough explanation of what the business case is would help to provide an alternate solution.

  • Addine New Dimension In An Existing Cube

    Hi fellows,
    Im not an expert so need you feedback.
    I am supporting a cube that was built a decade ago using Essbase 6.5. It has 7 dimensions (3 dense, 4 sparse). With the new reporting requirement, I need to add a new dimension to be called "BaseTimePeriod" that seems like a Time dimension but will show the "Constant Dollar" amount calcuation for difference Scenarios.
    Since the cube has been there for so long, and the expert that has pioneered that cube is no longer in the company. All of our reports uses API being called in MS Excel to retrieve data from the cube and format it the way the users wanted it to be. As well as 75% of our data are user input using the Essbase Excel Add-in, "lock/send" commands.
    My problem now is that, since I need to introduce another dimension for the "Constant Dollar" calculation, is there any way that if I add a new dimension the existing process of uploading data by the users as well as retrieving data through Excel API will not be affected?
    I tried to add new dimension in the R&D server that we have when I try to retrieve historical data from the cube in the Excel since there is "BaseTimePeriod" dimension before, the Excel report layout gets affected and inserts a new row placing "BaseTimePeriod" in that cell since this not yet there before. And when I try to upload data through Excel Add-in "lock/send" action, it did allow me unless I put a member from the "BaseTimePeriod" to complete the dimension member combination.
    My questions now are:
    1) How can I add a new dimension without impact from the historical data?
    2) Is there any way to place a default value for the new dimension for the historical data so it would complete the dimension member combination, so whenever I retrieve and upload data there will be no problem?
    Any insights related to this questions is highly appreciated. Thanks!
    obelisk

    I tried to add new dimension in the R&D server that
    we have when I try to retrieve historical data from
    the cube in the Excel since there is "BaseTimePeriod"
    dimension before, the Excel report layout gets
    affected and inserts a new row placing
    "BaseTimePeriod" in that cell since this not yet
    there before. And when I try to upload data through
    Excel Add-in "lock/send" action, it did allow me
    unless I put a member from the "BaseTimePeriod" to
    complete the dimension member combination.Essbase must have all (non-attribute) dimensions represented for any data operation to happen. If you think about it, each cell of data represents the intersection of exactly 1 member from each dimension and, behind the scenes, the storage mechanisms are focused on optimizing those relationships. Thus, you can see how the BaseTimePeriod member got added to your retrieve as Essbase didn't know which member from BaseTimePeriod you wanted and made the assumption that you wanted the dimension level member. If you place that dimension level member into your retrieve range (along side any of the other "page" (i.e. filter) fields, the retrieve will not insert a row. The insertion of the row can be extremely hazardous as it pushes the other rows down by one; your end users may be making decisions that effect the existence of your company based on formulas reading those cells and, effectively, the formulas may be referencing data from the wrong row..
    My questions now are:
    1) How can I add a new dimension without impact from
    the historical data?Although my forte is not cube design (I work mostly with frontends to Essbase), most situations I have seen when this happens the historical data is assigned a distinct member within the new dimension (assuming you aren't going to go back and reload the data from the sources and map the data based on the new dimension's values in the dataset.
    2) Is there any way to place a default value for the
    new dimension for the historical data so it would
    complete the dimension member combination, so
    whenever I retrieve and upload data there will be no
    problem?As stated above, put a member from the dimension, most likely the dimension member itself, into the existing Excel templates.
    Good Luck!
    Tim Tow
    Applied OLAP, Inc

  • New dimension created not coming in workbench

    Hi All,
    I had created a new dimension last week, but I am not able to see the same coming up in "Dimension Ordering" in Endeca Workbench even after running workbench.
    I can see the same in Endeca JSPref application. This is the first time we are not able to see a dimension in workbench.
    I cannot see the same in "dval_ranks.xml" as well which I downloaded as part of Instance configuration.
    When I run initialize services, then only the dimension comes up in Endeca workbench.
    Please can you help me out in getting the issue resolved without running initialize services. Also it would be great if there is root cause for the same.
    Regards,
    Japneet

    You need to run a command called "update_web_studio_config.bat" (or .sh) in order to tell Workbench about the new dimensions.  It never really made sense why this was necessary (since part of the baseline update script performs something like setPostForgeDimensions), but it is necessary.
    Note that people can't be in Workbench when this occurs as it requires locks.

  • Gui code design question ...

    Hi
    I need some designtip. Im doing a gui with tabs. Due to lots of lines of code when setting up each tab, the gui class rows is now heading towards infinity. Additionally the actionperformed method from all the buttons, jtexts and textareas on the tabs ... is also growing towards infinity.
    Simply put: I need design tips from the javamasters. Im quite bad at these kinds of design issues.
    A subquestion is also if there is any tutorials/books/howtos on how to come up with excellent designs, making the coding sweet.
    Thanks in advance !!!

    Hello,
    the topic of this thread is basically Gui code design. So, first of all, i recommend to understand the MVC-pattern, as it is the first step to get an understanding of reusable gui code. The Observer-pattern is no substitute for the MVC-pattern, but the MVC-pattern implies the Observer-pattern. Any MVC related topic will lead you in a second step to the Observer-pattern (see also The Core Java Technologies Tech Tip of January 13, 2006: http://java.sun.com/developer/JDCTechTips/2006/tt0113.html).
    Here are three classes (compiled with Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_10-b03)), which demonstrate the Observer-pattern in a very simplified way due to the shortness of code:
    The SubjectPanel which notifies the registered ObserverPanel:
    import java.awt.BorderLayout;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import javax.swing.JPanel;
    import javax.swing.JTextField;
    import javax.swing.event.ChangeEvent;
    import javax.swing.event.ChangeListener;
    public class SubjectPanel extends JPanel {
      private JTextField textfield = new JTextField("<Type some text>");
      private ChangeListener listener;
      public SubjectPanel(ChangeListener l) {
        listener = l;
        setLayout(new BorderLayout());
        add(textfield, BorderLayout.CENTER);
        textfield.setSelectionStart(0);
        textfield.setSelectionEnd(textfield.getText().length());
        textfield.addActionListener(new ActionListener() {
          public void actionPerformed(ActionEvent evt) {
            // notify the listener about the changed text
            listener.stateChanged(new ChangeEvent(textfield));
    }The ObserverPanel which wants to be notified when a change in SubjectPanel occures:
    import java.awt.BorderLayout;
    import javax.swing.BorderFactory;
    import javax.swing.JLabel;
    import javax.swing.JPanel;
    import javax.swing.JTextField;
    import javax.swing.event.ChangeEvent;
    import javax.swing.event.ChangeListener;
    public class ObserverPanel extends JPanel implements ChangeListener {
      private JLabel label = new JLabel();
      public ObserverPanel() {
        label.setBorder(BorderFactory.createEtchedBorder());
        setLayout(new BorderLayout());
        add(label, BorderLayout.CENTER);
      // Implementation of ChangeListener. This method is called by SubjectPanel
      // if the text has changed.
      public void stateChanged(ChangeEvent e) {
        label.setText(((JTextField)e.getSource()).getText());
    }The main class which contains SubjectPanel and ObserverPanel (Note, that this class doesn't know anything about the communication between the embedded panels):
    import java.awt.GridLayout;
    import javax.swing.JFrame;
    import javax.swing.WindowConstants;
    public class AppFrame extends JFrame {
      private SubjectPanel subjectPanel;
      private ObserverPanel observerPanel;
      public AppFrame() {
        setTitle("Observer");
        observerPanel = new ObserverPanel();
        // By passing the ObserverPanel to the SubjectPanel
        // a "one way communication line" is established
        subjectPanel = new SubjectPanel(observerPanel);
        getContentPane().setLayout(new GridLayout());
        getContentPane().add(subjectPanel);
        getContentPane().add(observerPanel);
      public static void main(String[] args) {
        AppFrame frame = new AppFrame();
        frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        frame.pack();
        frame.setVisible(true);
    }Please, be aware of the fact, that due to the simplification this example lacks the model which is part of the MVC-pattern. The SubjectPanel represents the Controller and the ObserverPanel the View.

  • Improve browsing performance of a SSAS Dimension

    Hi,
        I have a huge dimension with almost 20 million rows. Browsing the Dimension takes a lot of time. Please help me on improving the dimension browse performance. I tried searching in the internet nut I am able nto find only the articles related
    to improving the Measure performance but nothing about Dimension.
    Regards,
    Venkata
    Venkata Koppula

    Hi Venkata,
    According to your description, you want to improve the performance of browsing a huge dimension. Right?
    As yger mentioned, we could create a default measure in your cube. Otherwise it will query all measure groups when you pulling out your huge dimension. We can change the default measure to empty hidden field, which will speed up this
    kind of queries. For more information about optimizing performance on dimension design, please refer to the link below:
    SSAS - Best Practices and Performance Optimization
    Regards,
    Simon Hou
    TechNet Community Support

  • Error while creating a new Dimension/Model in BPC 10.0 NW

    Hello Experts,
    I am using BPC 10.0 NW system.
    When I try to create new Dimensions or Models I get the following Error Message.
    "Error in Admin module or a component used by Admin module.
    Failed to create SAP NetWeaver BI InfoObject for dimension."
    I am assigned to all the needed task profiles to create Dimensions and Models.
    Please assist me to resolve this issue.
    Thanks & Regards,
    Archana

    Thanks Roberto.
    The error was coming because while creating the user id "SAP_ALL" Profile was not assigned. So I was not able to create Dimensions and models.
    Now the issue is solved.

  • How to add a new dimension in ASO cube without losing all data

    Hi,
    I have an ASO cube with 18 dimensions and I want to add a new one (regular). When I add this new dimension it asked me that the all data has to cleared before the restructure can take place. If I click yes then I would lose all data regardless of the fact if I have a level0 export or not. Because when I tried to reload the export back into the cube it gave me an error cause all the dimensions were not present in the export. Does anyone know how would I be able to accomplish this task?
    Thanks
    fikes

    You can try this work around solution.
    1) Export Lev0 data
    2) Clear the cube
    3) Add new dimension Regular.
    4) Add a default member Reg00 in the new dimension and save.
    5) Open the Lev0 data in a text editor, Insert "Reg00" in the begining of the file and Enter.
    6) Lev0 file will have first record "Reg00" and the remaining export file will be from the second record.
    7) Load the modified file with out rule file.
    You can verify that all your history data will be loaded w.r.to the Reg00 of the New dimension Regular.

  • New Dimension to a Cube

    Hi,
    We've a cube already in production (with huge amount of data). Now we have to add few more 'new' characteristics to this cube.
    My question is, can I create new Dimension and add characteristics to this without deleting data?
    As the characteristics are new, we don't have to care about reloading the cube as data for these new characteristics don't exist.
    Can it be done? Any thoughts?
    Regards,
    Vikrant.

    Hello,
    If you had a new characteristic to an existing dimension you don't have to delete data. I already done that procedure many times.
    This can help you too:
    From this weblog:
    Remodeling in NW BI 2004s
    "In BW 3.5 version, if data is present in an infoprovider, we can add an infoobject to it, but we cannot delete or replace an existing infoobject in it, unless all infoprovider data is deleted.
    This problem has been overcome in BI 2004s version, where the concept of 'Remodeling' can be used to change the structure of an infoprovider even while it holds data."
    Ok, so, in version BW3.X and BI7 you can add a new characteristic to an existing dimension, but you have more options in BI7. If you want to had a new dimension you have to delete all data.
    Regards,
    Jorge Diogo

  • Performance with the new Mac Pros?

    I sold my old Mac Pro (first generation) a few months ago in anticipation of the new line-up. In the meantime, I purchased a i7 iMac and 12GB of RAM. This machine is faster than my old Mac for most Aperture operations (except disk-intensive stuff that I only do occasionally).
    I am ready to purchase a "real" Mac, but I'm hesitating because the improvements just don't seem that great. I have two questions:
    1. Has anyone evaluated qualitative performance with the new ATI 5870 or 5770? Long ago, Aperture seemed pretty much GPU-constrained. I'm confused about whether that's the case anymore.
    2. Has anyone evaluated any of the new Mac Pro chips for general day-to-day use? I'm interested in processing through my images as quickly as possible, so the actual latency to demosaic and render from the raw originals (Canon 1-series) is the most important metric. The second thing is having reasonable performance for multiple brushed-in effect bricks.
    I'm mostly curious if anyone has any experience to point to whether it's worth it -- disregarding the other advantages like expandability and nicer (matte) displays.
    Thanks.
    Ben

    Thanks for writing. Please don't mind if I pick apart your statements.
    "For an extra $200 the 5870 is a no brainer." I agree on a pure cost basis that it's not a hard decision. But I have a very quiet environment, and I understand this card can make a lot of noise. To pay money, end up with a louder machine, and on top of that realize no significant benefit would be a minor disaster.
    So, the more interesting question is: has anyone actually used the 5870 and can compare it to previous cards? A 16-bit 60 megapixel image won't require even .5GB of VRAM if fully tiled into it, for example, so I have no ability, a priori, to prove to myself that it will matter. I guess I'm really hoping for real-world data. Perhaps you speak from this experience, Matthew? (I can't tell.)
    Background work and exporting are helpful, but not as critical for my primary daily use. I know the CPU is also used for demosaicing or at least some subset of the render pipeline, because I have two computers that demonstrate vastly different render-from-raw response times with the same graphics card. Indeed, it is this lag that would be the most valuable of all for me to reduce. I want to be able to flip through a large shoot and see each image at 100% as instantaneously as possible. On my 2.8 i7 that process takes about 1 second on average (when Aperture doesn't get confused and mysteriously stop rendering 100% images).
    Ben

  • How do I make my old user account perform like the new one?

    I have a macbook pro 13" 2008 with 8 gb of ram that has been showing stuttering in hd video lately (or maybe when i upgraded to lion). I created another user and it doesn't seem to suffer any stuttering. Perhaps it doesn't have weird things running the background like the 655mb kernal task I see in activity monitor. My question is, how do I make my old user account perform like the new one? I've tried to turn off things running the background, but it doesn't seem to do anything. Thanks!

    How to Transfer Everything from an Old iPad to New iPad
    http://osxdaily.com/2012/03/16/transfer-old-ipad-to-new-ipad/
    http://ipad.about.com/od/iPad_Guide/ss/How-To-Wipe-Your-iPad-And-Erase-Data.htm
     Cheers, Tom

Maybe you are looking for

  • Oracle R Enterprise installation ERROR: cannot copy dll file

    This is bit strange, I posted this message in 2 forums but surprisingly can't find it anymore!! Anyways, I would appreciate if anyone can help me a bit on this issue: I am having trouble installing ORE 1.3 on my windows 7 (home premium, personal note

  • After Effects CS6 does not work on Mac OS 10.9.1 Maverick

    I made the mistake of updating my OS not realizing that After Effects wasn't going work.  Short of backing up to disk my data and reinstalling an older OS, what do I do now?  I'm in the middle of a project and this is casusing me problems.  HALP :-/

  • Web services Scenario

    Hi, I am working on a scenario where we are supposed to extract data from a legacy system using a web service, and then send it using XI as a file to some file server. So in that case what steps should be taken to configure the scenario? In this case

  • IWeb For Commercial Use, Implemented Back End Code Questions

    Hello Well I have been looking for this anwer all day. I was wondering wether iWeb could be used for commerical use without any issues of copywrite or license software trouble. Now I know that the software is licensed to me and I cannot redistrubute

  • "Add to Audition" grayed out

    I have a multicam clip that I created and is edited by varioius angles in the timeline. However, there is a section of it I wan to possible replace with a re-do of that section. I have a seperate multicam clip ready to go and I want to use the auditi