Page 1 of 1
Cube Zero Out while TM1 server is not running
Posted: Wed Jan 23, 2013 8:11 pm
by ExApplix
Hi,
I know we can clear/zeroout the data in the cube while the TM1 server is running. But I am looking for a functionality/workaround by which I can clear the data within the cubes while the server is not running.
This will be handy if the server does not have enough physical resources and we would like to clear the data of the cubes before we load them.
Any suggestions?
Thanks!
Re: Cube Zero Out while TM1 server is not running
Posted: Wed Jan 23, 2013 8:18 pm
by Alan Kirk
ExApplix wrote:
I know we can clear/zeroout the data in the cube while the TM1 server is running. But I am looking for a functionality/workaround by which I can clear the data within the cubes while the server is not running.
This will be handy if the server does not have enough physical resources and we would like to clear the data of the cubes before we load them.
.cub files are binary. I'm sure that some clever enough person could find a way to hack them to remove the data but there is no way in the gods' little green Earth I'd recommend even trying that for a production environment.
The easiest way is to simply remove the .cub file from the data directory before the server starts, then recreate the cube once it has. You could do that through either TI or the GUI.
If you have more than one cube that's causing this problem you could set all of the relevant cubes to load on demand (so that they only load into memory when they're accessed; see the right click menu for any given cube for this option), then zero them out one at a time. In that way only one of the problem cubes' full data set will be in memory at any given time.
Re: Cube Zero Out while TM1 server is not running
Posted: Wed Jan 23, 2013 8:26 pm
by lotsaram
You do realise that "ViewZeroOut while server not running" is an oxymoron?
However I think this could be achieved easily enough. (And for what it's worth I think if you thought about it for 5 minutes you could figure it out too.) Just keep a non-running data directory handy with copies of empty cube files. To start your actual server without data in a cube just replace the cube file with the "empty template".
That will work just fine if you want to completely clear a cube. If you want to selectively clear data with server not running then I think like Alan that you are out of luck.
Re: Cube Zero Out while TM1 server is not running
Posted: Wed Jan 23, 2013 9:44 pm
by ExApplix
lotsaram wrote:To start your actual server without data in a cube just replace the cube file with the "empty template".
I understand we can not run an TI function if the server is not running. I thought someone might be aware of a 3rd-party tool or some work around to empty the cubes. Unfortunatly, I do not have a 'empty template' of the cubes.
Alan Kirk wrote:The easiest way is to simply remove the .cub file from the data directory before the server starts, then recreate the cube once it has. You could do that through either TI or the GUI.
Recreating the cubes is probably the last option I also thought about but for that I need to know the dimensions and thier order which was used to make those cubes initially. If the server is not running then can we find out which dimensions are required and what is thier order?
Re: Cube Zero Out while TM1 server is not running
Posted: Wed Jan 23, 2013 10:00 pm
by Alan Kirk
ExApplix wrote:lotsaram wrote:To start your actual server without data in a cube just replace the cube file with the "empty template".
I understand we can not run an TI function if the server is not running. I thought someone might be aware of a 3rd-party tool or some work around to empty the cubes. Unfortunatly, I do not have a 'empty template' of the cubes.
No, it would be pretty uncommon to have such a thing sitting around on the off chance you needed it, especially as it would have to be maintained in sync with the production environment to be of any value.
ExApplix wrote:Alan Kirk wrote:The easiest way is to simply remove the .cub file from the data directory before the server starts, then recreate the cube once it has. You could do that through either TI or the GUI.
Recreating the cubes is probably the last option I also thought about but for that I need to know the dimensions and thier order which was used to make those cubes initially. If the server is not running then can we find out which dimensions are required and what is thier order?
Do you have any TI processes which use a view from the cube as a data source? If so you could open the .pro file in Notepad and you'll find the dims listed in there somewhere. (The location will be fairly obvious.) A view (.vue) file won't work for that purpose, unfortunately; those will often have the dimensions but they won't necessarily be in order. Just be careful if you've reordered the dimensions of the cube since it was built, but I'm assuming that you haven't.
Or... do you have a slice from the cube saved somewhere? If so, load it up in Excel with manual calculation on, and trace the View() and/or DBRW functions' arguments. You should be able to work out from that what the dimensions are.
Another alternative is (and I'm assuming here that you can't get the server up at all) to create another server session which loads only that one cube; take a copy of your entire data directory into the new server and delete every .cub file that isn't either a system one or the cube that you're interested in. In that way the cube that's causing you problems will have all of the server resources to itself; you should be able to load it at least long enough to be able to get the dimension information.
Once you've done that I do suggest making some documentation on the cubes, and not just for this kind of problem.