Rubik's cube solver

Hi All,
Just though I would share a silly side project I have been working on, a G based Rubik's cube solver.
It is far from perfect, but it brought me some joy so I thought I would share it with the community. It mostly seems to work, I won't go into too many details here, but basically you start off with a clean cube, apply some random operations to it, and then get the algorithm to solve. I supppose it would be easy enough to change to allow user defined starting positions, but it is basically proof of concept for the algorithm so I haven't bothered taking it any further. Note, the solving algorithm is based on Dan Knight's 7 step solution, which works quite well once you get the hang of it. The solution is far, far from optimal, and in fact the vast majority of cubes can be solved in 17 moves or less (belive it or not)...
Attached is a zip of the files, note, it uses the openG 3D buttons, so I manually added that library to the zip. There are controls on the left hand side of the screen to apply the primitive transformations to the cube if you wanted to do it manually.
The randomisation used mathscript to allow for starting with a known random number seed (is this possible with the normal random functions?), if you dont have this installed feel free to use any random number generator
I would be interested to hear comments or see other G code for solving the cube, or if I have left something out of the zip file.
Happy cubing...
nrp
ps: my record for solving the cube is about 2 mins, which is nowhere near the pros! Oh well...
nrp
CLA
Attachments:
rubiccube_main_v2 Folder.zip ‏1118 KB

Very nice!
nrp wrote:
The randomisation used mathscript to allow for starting with a known random number seed (is this possible with the normal random functions?)
Use e.g. the random white noise from the "signal processing..signal generation" palette. It has a seed input.
nrp wrote:
I would be interested to hear comments or see other G code for solving the cube, or if I have left something out of the zip file.
Do you know the guys who made the LabVIEW robot solver?
LabVIEW Champion . Do more with less code and in less time .

Similar Messages

  • Tips on making a Rubik's cube?

    Hi all, I'm making a program that solves a rubik's cube for my final project in my first year AP Java class. However, I'm completely new to Java 3D but I've been working my way through Sun's getting started tutorial. However, I still don't have an idea of how to make thirty different colored cubes. (I'd love to just use the color cube but I understand that that can't be re-colored(correct?)) Any tips on how to get this done would be awesome. Thanks!

    Thanks guys. I had read chapter one of Sun's getting tutorial but I skipped ahead to chapter two and checked out the box class. After some research on the Java3D API I found that you can colour each side of a box a different color. I just extended the box, made a few new methods of my own and it's perfect. However, now I have another problem that would probably be best in another thread.

  • Rubik's cube in java

    I have the source java code for a rubik's cube java applet. I want to be able to save the game at any point. I've been told that I need to run the code as a java application.
    I have general programming knowledge of C, VB, and a little C++, so possibly if someone can give me a few general instructions, I may be able to convert the code myself.
    Regards,
    Alan

    The good news is that converting a Java Applet into a Java Application is almost laughably easy. The other good news is that your understanding of C++ and (hopefully) object orientated code will give you a good start.
    Saving the game position will require you to learn about serialization (I would guess), but the specifics will depend on how cleanly the applet is implemented.
    If I were you I would start by getting some "Hello World" applications working in "plain old Java" - there are a variety of tutorials running on the java.sun.com site. Then get a basic applet working, so you know how it fits together. Then get a basic Java Swing application working so you know how that works.
    Then start browsing the API documentation that's available online - by this point you'll probably have a pretty clear idea of what you're going to have to do and some more specific questions for us.
    Dave.

  • Solve cube, solve single measures in a cibe

    We are using OWB 10gR2, having an AW cube with two measures, one has the solve option YES, the other has NO (in the Aggregator tab of the cube editor).
    Now we were trying the following: When loading the cube using a mapping with the cube operator, we used for the cube operator option "Solve the cube" YES the first time and NO the second time (cleaning the cube in between, of course). The first time ALL measures have been solved, the second time NONE of them has been solved. What should be the effect of specifying different solve options for measure in a cube? The values of this option seem to be ignored anyway. Is it not possible to solve one measures and not to solve another in the same cube???
    By the way, in beta releases the two option values were "on load" and "on demand", instead of "YES" and "NO" we have in 10gR2. Comparing the 10R2 and the beta releases, has more been changed than the labels? Is the intended semantic still "on load" and "on demand"?
    A lot of questions! Can anybody help on that topic? Thanks!

    With non-compressed cubes it is possible to solve one measure and not another. You will need the latest database patch also for this (10.2.0.2, bug 4550247 has details for 10.1 patch) for it to work properly. In the production release of OWB this should be operating, I think there were issues in the betas.
    The options on measures for solve indicate which measures will be included in the primary solve. The solve indicator on the cube operator in the map however indicates whether this solve will be executed or not. So the map can just load data or load and solve the data. There is a transformation function for executing solves, so solves can be scheduled independently from loading. Its also possible to solve measures independently from each other using this function (WB_OLAP_AW_PRECOMPUTE).
    Hope this helps.

  • Cube Solve Step

    Can some one please help me to understand what Solve step does (in cube_build_log). DB version 11.2.0.1
    In our builds it takes the longest , a partition with just 2.5 million rows is taking between 6-8 hours to solve. I see lot of db sequential reads on OEM (temp and workspace tablespace).
    * What are important components - this step is memory , IO , CPU bound ? (Is there a parameter than can be tweaked ) or way to see what is really slowing it down.Is there a way to tune solve process.
    * Also does this step always run single threaded
    We do have have 80+ mesures in our cube.
    Thanks in advance.
    Edited by: user11159529 on May 13, 2011 8:28 AM

    The SOLVE step (typically) takes leaf data in the cube and aggregates it up the hierarchies of all the dimensions. This is usually the most expensive step in a cube build and can be either CPU or IO bound depending on the details of machine, configuration, and schema.
    Three things that can seriously slow down a partition build are
    <li> A poorly tuned database. The recommended database settings are described on http://wiki.oracle.com/page/OLAP+option+-DBASample+Scripts.
    <li> Too many dimensions. Anything under 10 should be fine. Over 15 and it will get very slow. Between these numbers will depend on other factors.
    <lI> Too many measures. I don't know why this is, but large numbers of measures (close to 100, say) can cause a serious slowdown. If you could break your cube into two cubes of 40 measures each, you may find that the combined build time for both is less than the time for your current cube. Ideally you would break the measures up based on shared sparsity patterns. (e.g. if measure A is generally NULL when B is NULL and vice versa, then put them in the same cube.)

  • Cube Solve Time when using MAX Aggregation Operator

    Hello,
    We have created a cube to implement the count distinct measure we need.
    The cube contains only one measure (COUNT) and uses the MAX operator to aggregate across all other dimensions except for the one we want to count (which uses the SUM operator). We have set the precompute percent to 60% for the bottom partition and 0% for the top partition. The cube is compressed.
    The problem is that the SOLVE step for a partition when performing a COMPLETE cube build, seems to be taking a very long time and is taking up huge amounts of TEMPORARY tablespace.
    We have succesfully created another cube with the same dataset which uses the SUM operator across all dimensions.
    This cube build was completed in a reasonable amount of time even though we had 5 stored measures and 80% aggregation for the top partition.
    Is this behaviour expected when using MAX operator?
    Thank you,
    Vicky

    Thank you, David.
    As you said we are using mixed operators because we are doing a distinct count.
    We will try setting the precompute percent to 35%,although I'm a bit worried about the query performance in this case.
    Neelesh, I think that Atomic Refresh was set to TRUE during the last refresh but the cube was the only object in the build script.
    No other cubes or dimensions were maintained in the same build so I don't think it could have affected the use of TEMP tablespace.
    Generally we don't use Atomic Refresh.
    Thank you,
    Vicky

  • Darren's Weekly Nugget 08/14/2006

    I hope everyone who attended NI Week 2006 had a good time...my favorite part was getting to ride a Segway, which I had always wanted to do.  My favorite product demo was probably the Rubik's Cube solver, complete with motion-controlled "robot" hands that actually solved a cube that I had personally mixed up.
    Anyway, this week's nugget is part 2 in my "Cool Things Darren Added to LabVIEW 8.20" series of nuggets.  I remember thinking a while back that it was a little weird that I could right-click on a control in a Global or Control VI and choose Advanced > Hide Control, but then really have no way to show that control again, other than writing a VI to do it.  So in LabVIEW 8.20, you'll notice a new menu option to allow you to do this.  Just select Edit > Show Hidden Controls and Indicators in a Global or Control VI, and all hidden controls and indicators will be displayed, along with a summary dialog showing the labels of all controls and indicators that were shown.
    The menu option is not available with regular VIs, but you can still use this feature relatively easily on them.  Just open [LabVIEW]\project\ShowHidden Core.vi, specify your VI name, and run it, and all hidden controls will be shown.
    -D
    P.S. - Check out past nuggets here.
    Darren Nattinger, CLA
    LabVIEW Artisan and Nugget Penman

    Darren wrote:
    The menu option is not available with regular VIs, but you can still use this feature relatively easily on them.  Just open [LabVIEW]\project\ShowHidden Core.vi, specify your VI name, and run it, and all hidden controls will be shown.
    To add this option to the tools menu you can use the attached llb to use it in regular VI.
    Just drop it in LV82/project and you will get the "Show hidden controls and indicators ..." in Tools menu
    Darren do you have some new way in 8.2 to cusomize the LabVIEW environment? Like /projet to add menu in "tools" menu, /wizard to add in "file" menu. Do you have some nugget on this subject?
    Dany
    Dany Allard
    Attachments:
    ShowHidden.llb ‏84 KB

  • How do I place images in a rotatable divided cube using Java?

    Hello- I am creating a puzzle that is like the "Rubik's Cube,"
    although this puzzle is played on the computer monitor, and the puzzle
    involves images placed on the sides of a cube. The mouse is used to
    rotate the sides of the cube. Each side of the cube is divided into
    three sections.
    The code for the basic puzzle has been written by another person. The
    link to the puzzle created by this person (including links to the
    program files or source files) may be found at:
    http://www.geocities.com/jaapsch/puzzles/cubie.htm
    My goal is to create a puzzle (using Jaap's code or script) whereby I
    will be able to place one of my photographs on each side of the puzzle
    cube (6 different photos per cube). The goal is to rotate the sides so
    that the photos are put together correctly.
    I have been in contact via email with the puzzle's author, Jaap
    Scherphuis, and he emailed me that I can use his puzzle's code or
    script (whichever it is), and place my photos in the puzzle. In return,
    Jaap would like to get the code or script that is created. When I spoke
    with Jaap by email several months ago he told me he was too busy to
    help me at that time.
    So, I am looking for a person to help me create a situation whereby I
    will be able to include my photographs on the sides of the puzzle with
    the images divided on each side and rotatable.
    I am interested in learning how to write the code (or script) myself so
    I am able to include different photos.
    Please let me know if you might offer any assistance.
    Thank you,
    Jeff Klamer
    www.jeffklamerdesign.com
    p.s. Please see my photo galleries to enjoy some of the images I am working with.

    [url http://forum.java.sun.com/thread.jspa?threadID=776111&messageID=4418806#4418806]Crosspost.
    [url http://forum.java.sun.com/thread.jspa?threadID=776112&messageID=4418809#4418809]Another Crosspost.

  • How to create an unsolved cube with awm???

    hi all,
    I readed the "Oracle Olap developer's guide to the Oalp api" and I found there's 2 type of Cube: Solved and Unsolved Cubes. And this document says: "... if all the data for a cube is specified by the DBA, then the cube is considered to be Solved. If some or all of the aggregate data must be calculated by Oracle OLap, then the cube is unsolved ..."
    I tried with awm 10.2.0.3.0A to create an unsolvedCube but I can't. All cubes I created are solvedCube. To know if a cube is solved or unsolved, I wrotte an program in Java to read informations of package mtm.
    Some one can tell me how to create an unsolved cube with AWM ou other soft please!

    SH is not a relational OLAP data model which is quite different from the GLOBAL schema which is based on an Analytic Workspace.
    If you change the aggregation method you will need to re-compute the whole cube which can be a very big job! You might be able to force the unsolved status be de-selecting all the levels on the Rules tab in AWM. However, I think by default analytic workspace OLAP models always provide a fully solved cube to the outside world. This is the nature of the multi-dimensional model.
    Relationally, as keys are located in separate columns a cube can be unsolved in that the key column only contains values for a single level from the corresponding dimension tables. If more than keys for different levels within the same dimension appear within the fact key column then the cube is deemed as being solved.
    Therefore, I am not sure you are going to get the information you require from the API. To changes the aggregation method you will have to switch off all pre-compute options and also disable the session cache to prevent previously calculated data being returned when you change the aggregation method.
    Hope this helps
    Keith Laker
    Oracle EMEA Consulting
    BI Blog: http://oraclebi.blogspot.com/
    DM Blog: http://oracledmt.blogspot.com/
    BI on Oracle: http://www.oracle.com/bi/
    BI on OTN: http://www.oracle.com/technology/products/bi/
    BI Samples: http://www.oracle.com/technology/products/bi/samples/

  • Transferring a Discontinued App from one Touch to Another

    My kids and I share an iTunes account. There is an app that I have which has been discontinued from the app store (CubeCheater - to solve Rubik's Cubes) and I'd like to put a copy on my son's Touch (which syncs to another computer with an authorized iTunes). How can I go about this? I tried the simple-minded approach of copying CubeCheater.ipa from my computer to his (Home)>Music>iTunes>Mobile Apps folder, but that didn't work.

    Drag it into the open iTunes application window. If that doesn't work, use the Transfer Purchases function in iTunes.
    (52230)

  • IOS 8.1......? Copy and paste

    hi
    ios 8.1, it seems like Apple is behind the times in fixing problems with iOS 8.  copy and paste has always been a problem since  the release of iOS 8?
    IT has never worked right for me on my iPad mini.  In iOS 7 it worked fine.  Apple needs to fix this problem and they need to do it now.
    i'm sure I'm not the only user with this issue.
    THanks Kerry Rogers

    borlosky wrote:
    copying 3 times doesn't work for me, i'm at attempt 15 (i think... i dunno, i lost track) maybe if i rub my belly, pat my head, recite pi to 100000th digit, solve a Rubik's cube blindfolded, while jumping on one foot and spinning in a circle. Maybe, just MAYBE, then copy and paste will work..... nope, still didn't work.
    But yea, having this problem since 8.0, becoming very annoying when attempting to use my so-called "smart phone" that has trouble with even the simplest of functions like copy and paste....
    and a hard reset doesn't work either, please don't insult me by asking me to do that...for the 5000th time...
    I'm really really frustrated myself.  It's hit or miss!    3 times, 5 times, etc.   Dunno how many times.   I did it over 20 (lost count!) one day and was never able to copy/paste.
    I think it has something to do with the number of tabs open, and whether the tab you opened that you are trying to paste into was opened first.
    I can't figure out a pattern, nor can I find any work-around that works every time.

  • Custom Gallery/Forum Design

    Ok, I have written a gallery that allows gallery owners to create/maintain albums, provide images along with their initial comments for the image and allow other users that has been authorized by the owner to add images/comments. In addition to this, other permitted gallery users may browse albums within the gallery as well as forum style comments on either an individual image or on an album. Both image lists and comments lists for images and albums are paginated. <<1 2 3 4 5 6 7 8 9 10>>. Comments are listed in a separate IFRAME both on the album page and on an Image page.
    My design problem here is that I have created an additional module that allows users to "watch" a particular image or album (or perhaps gallery). When the user chooses this option, they are presented a watch list link following successful login. This link will lead them to a page that lists their items of interest as follows:
    1. [Album - Crazy Bob's fishing trips](4 updates)(7 additions)
    2. [Album - Jill's Wedding pics][Image - You may kiss the bride!](56 additions)
    3. [Album - Jill's Wedding pics][Image - Just Married](2 additions)
    to increase the complexity, a watch may specify updates (If watching a gallery, then any changes to album titles or any changes to the descriptions of any images within any album of that gallery. If watching an album, then any changes to the initial image's description or the pixel data itself within that album.)
    AND/OR
    new additions (If watching a gallery, then any new albums created under that gallery or any new images created under any album of that gallery or any new comments placed under any album of that gallery or any new comments placed under any image of any album of that gallery. If watching an album, then any new images or comments placed on that album or any new comments placed on any existing image under that album. If watching an image, then any new comments for that image).
    Now the problem is:
    When they click on the watches link, I need to display the list of watched items as in the previous example. This list is to be paginated and each list item is a hyperlink to the given item (an image page if it points to an image, or comment page if it points to a comment.). What do I do from here? I mean if they've just logged on and only want to see what's new or updated, then they would likely just want to simply click through the paginated watch items, but what if they're looking at an image watch item in the list and would like to know what previous comment the latest comment item is in response to? I guess what I'm getting at, is can anyone think of a better design than the following?:
    e.g., Watch X = [Album - Jill's Wedding pics][Image - You may kiss the bride!](56 additions)
    ------------- image page --------------------
    You may kiss the bride!
    << prev img | next img >>
    image
    image comment
    -- comments section (IFRAME) --
    comment 1
    comment 2
    comment 3
    << prev 1 2 3 4 5 next >>
    -- /comments section --
    << prev watch X | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | next watch X>>
    ------------- /image page --------------------
    To add even more complexity, these watches are only based on items not yet viewed by the watch owner. This is determined by using the last logged in date of the watch owner and date the watch item was added/updated.
    I've been racking my brain over this for weeks and continuously running myself in circles. This post is my last resort as I take way too much pride in using my own ideas to achieve an efficient and intuitive design. This time however, I've decided to give up on it as it may prevent me from ever completing this personal project of mine. Even so much as a "Why are you trying to do it that way? Why not just ...." is greatly appreciated. My own sounding board is waterlogged, I think and just some fresh point of view could be of great help. Perhaps somebody knows of a good pattern that might fit this.
    By the way, this is all web app, (Not Swing, or perhaps it wouldn't be so difficult to think out) so intuitive design is of great importance here since many things web-enabled cannot be so easily intuitively presented as might be achieved in Swing.
    Oh and I don't expect anybody to kill themselves trying to answer this question, much less even consider answering it except for those rare individuals that can't bare to watch a challenging problem go unsolved (yeah I mean you guys - the Rubik's cube guys/gals).
    thanks in advance.

    1. I want to be able to watch album pages andimage
    pages for new comments.What do you mean by "watch"? By watch I mean in the same deal as watching a topic in this forum.
    >
    >
    2. I want to be able to watch album pages for new
    images and comments.How is this different from number 1?This one is only watching for new image entries and/or comments on the particular album, whereas the first one covers this as well as comment entries on images.
    >
    >
    3. I want to be able to page through the newentries
    for which the item is being watched and view each
    entry (be it an image page or a comment entry) bythe
    simple click of a hyper link.Is this a problem?Well, herein lies the dilemma I've been struggling with myself to find a solution to. In an album page there are lists of images grouped by months and then by years, with the current view expanded on a particular month wherein that expanded list is also paginated (that is prev 10 images for that month and next 10 images for that month). Oh and that particular month is also displayed in a particular year that is also expanded.
    The thing that I argue with myself is a problem is that this page is already quite busy, and to add another pagination navigator for a watch on that album page which would reference new image entries and/or comment entries just seems to be unintuitive and cumbersome. This is why I have posted to the Patterns & OO Design forum, because I cannot seem to find a way to think outside of this little box of mine.
    For now, I'm thinking of simply noting the number of new entries for each particular watch in a display table and then let the user go on to find these entries for themselves.
    I think the most important part here is to simply let the user know that since they have last visited, there have been:
    6 new images with a combined total of 8 new comments as well as 3 comments on the album in [Album - Bob's Fishing Pics],
    5 new comments in [Album - Jill's Wedding Pics][You may Kiss the Bride!] and
    3 new comments in [Album - Jill's Wedding Pics][Just Married!]
    I think perhaps I've attempted to make it a bit too complex by trying to hyperlink those items to a paginated view in which they could navigate only the new entries in order to get a quick review before returning to whatever they were doing prior to logging in to this site.
    I think a quick re-design based on this post is the simplicity I've been looking for. The more I think about it, the more it fits because the entries wether image entries or comment entries are sorted by date from newest to oldest anyhow and so if I simply hyperlinked [Album - Bob's Fishing Pics] to image page [Album - Bob's Fishing Pics][First Image entry since last logged in], they could use the already existing image page navigator to go forward or backward to review the others. In addition to this I can add an indicator to indicate that it is new since they last visited and until they log out.

  • Powerpoint 2013 causes IExplore to crash when previewing an embedded youtube video

    Powerpoint 2013 causes IExplore to crash when previewing an embedded youtube video
    As a user with "local administrator" or "Power User"privileges the video previews the video plays, but as a normal user the following error occurs.
    Internet Explorer has stopped working
    A problem caused the program to stop working correctly. Windows will close the program and notify you if a solution is available.
    Debug or Close Program
    Event Viewer details are as follows:
    Log Name:      Application
    Source:        Application Error
    Date:          28/01/2015 11:22:32
    Event ID:      1000
    Task Category: (100)
    Level:         Error
    Keywords:      Classic
    User:          N/A
    Computer:     
    Description:
    Faulting application name: IEXPLORE.EXE, version: 11.0.9600.17496, time stamp: 0x546fddcc
    Faulting module name: iertutil.dll, version: 11.0.9600.17496, time stamp: 0x546fee66
    Exception code: 0xc0000005
    Fault offset: 0x000e53a8
    Faulting process id: 0x15ec
    Faulting application start time: 0x01d03aecb5356af2
    Faulting application path: C:\Program Files (x86)\Internet Explorer\IEXPLORE.EXE
    Faulting module path: C:\Windows\syswow64\iertutil.dll
    Report Id: f311913d-a6df-11e4-bf49-8019346e8858
    Event Xml:
    < Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
      <System>
        <Provider Name="Application Error" />
        <EventID Qualifiers="0">1000</EventID>
        <Level>2</Level>
        <Task>100</Task>
        <Keywords>0x80000000000000</Keywords>
        <TimeCreated SystemTime="2015-01-28T11:22:32.000000000Z" />
        <EventRecordID>30194</EventRecordID>
        <Channel>Application</Channel>
        <Computer>ALMETMP566-W7.midkent.ac.uk</Computer>
        <Security />
      </System>
      <EventData>
        <Data>IEXPLORE.EXE</Data>
        <Data>11.0.9600.17496</Data>
        <Data>546fddcc</Data>
        <Data>iertutil.dll</Data>
        <Data>11.0.9600.17496</Data>
        <Data>546fee66</Data>
        <Data>c0000005</Data>
        <Data>000e53a8</Data>
        <Data>15ec</Data>
        <Data>01d03aecb5356af2</Data>
        <Data>C:\Program Files (x86)\Internet Explorer\IEXPLORE.EXE</Data>
        <Data>C:\Windows\syswow64\iertutil.dll</Data>
        <Data>f311913d-a6df-11e4-bf49-8019346e8858</Data>
      </EventData>
    < /Event>
    Process for creating a test file is as follows
    Via youtube and your preferred browser, search for any video file (eg rubik's cube), select a video and start to watch it.  Choose Share, Embed and copy the link information (eg <iframe width="560" height="315" src="//www.youtube.com/embed/MaltgJGz-dU"
    frameborder="0" allowfullscreen></iframe>)
    Close browser and create a new powerpoint 2013 presentation.
    Insert, Video, Online Video
    In the "From a Video Embed Code" box, paste the link information then click the arrow to apply
    Save the file and then Right Click on the file and Preview.
    In advance of the creation/running, I've applied the following KBs to the machine(s)
    kb2817636 & kb2837627
    As i said at the start, members of the Power Uses or Administrators group don't have this issue - but as 99% of our users are "users" and not really an option to make them all members of PU group.
    Same also happens if the computer is removed from the domain.  Admin & power users work, standard users crash IE.
    Uninstall and reinstall of Office 2013 and IE11 has no apparent difference.
    Assistance in this is appreciated.
    Thanks
    Jon

    hi Jon, do you have all available updates installed for your PowerPoint? Install the two KB in the links below, then test again:
    http://blogs.technet.com/b/bgp/archive/2014/04/09/support-for-youtube-videos-in-powerpoint-returns.aspx
    Flynn

  • OLAP Re-Aggrigation functionality or Alternative for complete refresh

    I have a question related with reaggrigation.
    My scenario:
    1) I have Product Dimension (dim) and Sales Cube.
    2) In Sales Cube, product dim is used.
    3) In first time, i have complete refresh of dim and cube.
    4) But if i modify data in Product dim for one of hierarchy and complete refresh of dim. So new data will available in product dim and after that i have to complete refresh of Sales cube to get reflect new dim hierarchy data.
    5) My question is, if i have changed data in dim for one of hierarchy and complete refresh. So is there any way that i can get this data in cube without complete refresh? Is there any re-aggregation functionality in oracle OLAP cube to get data reflect in cube without complete refresh?
    Please answer soon?
    Thanks in adv.

    Try enabling the materialized view logs on source star schema (dim/fact tables) i.e. create all objects as advised by Relational Schema Advisor in Materialized Views tab of cube ... sales cube in your case.
    This will enable you to achieve a compromise - F - Fast Refresh or ? - FAST SOLVE capability automatically ... (w/o need to code/alter your maintenance scripts in response to changing hierarchy nodes)
    a) If only facts have changed, then the cube will be refreshed via FAST REFRESH (only modified partitions of cube) will be loaded.
    b) If dimension/facts have changed, then worst case scenario is a FAST SOLVE in which the entire table is reloaded but the cube solve/aggregation will still be incremental (involving a recalc of the modified/"relevant" part of the hierarchy alone). Doing this is quite simple refesh the cube via call to DBMS_CUBE.REFRESH passing '?' for method.
    => Presence of materialized view logs etc will ensure that the relational load to cube is optimal (if loading a section of fact table is sufficient it will do so).
    => Olap materialized view related metadata will ensure that the olap side post load aggregation/solve is optimal (if only a section/branch of hierarchy is needed to be recalculated then it will only re-aggregate the affected portion of hierarchy/cube)
    c) Try to control your etls to ensure that dimension hierarchy change is a low frequency occurrence => Load facts multiple times in a day from source system (every hour if needed) but allow resync or reload of dimension hierarchy tables only once a day if its ok with business users.
    More details:
    1) Adding Materialized View Capability to a Cube: http://docs.oracle.com/cd/E11882_01/olap.112/e17123/cubes.htm#OLAUG9156
    2) DBMS_CUBE.BUILD procedure: http://docs.oracle.com/cd/E11882_01/appdev.112/e40758/d_cube.htm#ARPLS65742
    HTH
    Shankar

  • Deleting dimension members

    We have an AW with cubes refreshing every day. Fast solve of these cubes with incremental set of data finishes usually within an hour or two.
    Our recent requirement needs for us to remove some old facts as well as a few dimension members. The facts can be cleared but we noticed that deleting dimension members (using synch load) is causing a full cube solve due to changed relations. With the amount of data existing in this AW, full solve takes about 2 days to complete. Deleting dimension members for which we never ever loaded any facts also causes the same result as above.
    I was wondering if there is any way we can delete these dimension members without triggering a full cube solve.
    Another question is if it is possible to update dimension primary keys inside of the AW?
    Any help is really appreciated.
    Database Version 11.2.0.3

    These types of questions have been answered in the past by David Greenfield.
    There are two ways to delete a dimension member through commands.
    (1). OLAP dml command "REMOVE_DIMENSION_MEMBER"  explained here:   http://docs.oracle.com/cd/E11882_01/olap.112/e17122/dml_commands_2042.htm#OLADM2692
    OR
    (2). dbms_cube.build  command: 
    exec dbms_cube.build(q'! "TIME" USING (DELETE FROM DIMENSION WHERE MEMBER = 'APR-2011') !');
    Take a look at this old post, where David Greenfield explained it.
    https://forums.oracle.com/message/9426946
    There is no way to rename a dimension member in a standard-form analytical workspace.  There is  "MAINTAIN RENAME" olap dml command, but it will not work with dimensions created through AWM.  You can add the new dimension member, then copy cube data associated with old/existing member to the new member and then delete the old member.
    For cube copy data example, take a look at these old (15-Feb-2011, 16-Feb-2011 and 17-Feb-2011) posts by David Greenfield:
    https://forums.oracle.com/thread/2176409

Maybe you are looking for

  • Why is my ipod screen blank?

    I am having trouble with my ipad. When i try to switch it on, only a backlight comes on for a couple of seconds then turns blank again. I have restored my settings to the default settings, and updated the software. Does anyone have any info or feedba

  • Xml parsing and report generation probs

    Hello everyone, I am facing with a peculiar problem. I have an xml which contains special characters like �( cent) . So I parse it before i send it to the DOM parser. BufferedReader br = new BufferedReader(new InputStreamReader(inputFileName,"ISO-885

  • Transferring from old account to new account

    I have a new e-mail address so I now have a new itunes account, so how do I transfer my downloads from my old account to my new account? Please help I don't want to have to purchuse them again. : )

  • Vbscript Object not a collection

    Dear, i am not able to dertermine whats wrong in line 29 ' List the Subfolders of a Folder Function getus Dim strusr strComputer = "." Dim str(100) int i   i = 0 Set objWMIService = GetObject("winmgmts:" _     & "{impersonationLevel=impersonate}!\\" 

  • Credit memo- cleared invoice

    Dear Gurus, What are the impacts from SD & FICO if I create a credit memo against a cleared invoice? Sumith