Solved

Recreate a table with partitions

Posted on 2012-03-12
7
184 Views
Last Modified: 2012-03-15
Hello!

i have a table X with dependencies to other tables,views and the works ( 325 million rows approx.)

cannot use export import as i have to delete the orig.table.
switch partition is not a option "I THINK?"

what do i do?

I MUST USE read only FILEGROUPS on this table. WHY? because of faster backup and the data will never change. ( create partitions for a quarter ( 4 months). most of the queries runs against this table (cannot create a historic DB) and other issues from the departments.
0
Comment
Question by:shanj
  • 4
  • 3
7 Comments
 
LVL 39

Expert Comment

by:lcohan
ID: 37714802
"
i have a table X with dependencies to other tables,views and the works ( 325 million rows approx.)

cannot use export import as i have to delete the orig.table.
switch partition is not a option "I THINK?"

what do i do?

"


Sorry but in my opinion is not clear what do you really need to do therefor could you let us know what the real task is?
Do you need to transfer that table into another server/database/table then drop it??
0
 

Author Comment

by:shanj
ID: 37715338
I would like to create a partition on this table. with about 24 filgroups.
each file group will represent a quater year.( 4 months)
Further more after each quarter  i would like to make these filegroups into read only filegroups. ( i will be taking partial backups?)
0
 
LVL 39

Expert Comment

by:lcohan
ID: 37716268
"I would like to create a partition on this table. with about 24 filgroups."
I suggest create a new table as above and populate it from the old one than drop the old one but of course do all these in a test environment even if you don't have the 325 million rows in test env.

"each file group will represent a quater year.( 4 months)"
Then why not
1 table with 3 partitions?
    1 old and inactive,
    1 current and active,
    1 future to have it ready for > currentdate + next quarter (4months)
1 archive table with same structure to hold your historical data and where you could switch out/attach obsolete(old and inactive) partitions from above table.

BTW - 1 quarter in my opinion = 3 months (not 4) so you will have a full year sliding window in the active partitioned table with 4 (right boundary) partitions.



"Further more after each quarter  i would like to make these filegroups into read only filegroups. ( i will be taking partial backups?)"

Above scenario works as well for "partial backups" if you consider each partition on its own physical filegroup and backup the one(s) at will.
0
PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

 

Author Comment

by:shanj
ID: 37720067
I suggest create a new table as above and populate it from the old one than drop the old one ...

My problem is my old table has a lot of dependencies.?
0
 
LVL 39

Expert Comment

by:lcohan
ID: 37720087
I think if you create a new partitioned table and keep using the existing one as a read only history/archive you don't need to worry about dependencies however the new one must be obviously added to all the code using old one.
0
 

Author Comment

by:shanj
ID: 37720981
OK, this is a solution. i See it. not sure if the developers + users will accept this, they have to change a lot of rapports ( buisness Objects) and have 2 copies of the same report?
0
 
LVL 39

Accepted Solution

by:
lcohan earned 500 total points
ID: 37721714
Another way to deal with what you just said would be to add this new partitioned table for active portion of data, rename the old one to original_table_name_history or something then create a VIEW  with identical name as old table and give exactly same permisions. I used this scenario pretty often when adding/changing object names were a pain from app develpment - maintenance point of view and it worked. Only thing is you may need to have your app down while renaming the SQL objects but other than that the scenario should work and this way the process is disconneted from the front end.
0

Featured Post

Control application downtime with dependency maps

Visualize the interdependencies between application components better with Applications Manager's automated application discovery and dependency mapping feature. Resolve performance issues faster by quickly isolating problematic components.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
SQL 2008 Conversion failed 7 20
SQL Exceptions 3 37
Generate Weekly Schedule 15 15
MS SQL Server - Looking to filter rows based on column value 3 0
This is basically a blog post I wrote recently. I've found that SARGability is poorly understood, and since many people don't read blogs, I figured I'd post it here as an article. SARGable is an adjective in SQL that means that an item can be fou…
After restoring a Microsoft SQL Server database (.bak) from backup or attaching .mdf file, you may run into "Error '15023' User or role already exists in the current database" when you use the "User Mapping" SQL Management Studio functionality to al…
This Micro Tutorial demonstrates using Microsoft Excel pivot tables, how to reverse engineer competitors' marketing strategies through backlinks.
Learn how to create flexible layouts using relative units in CSS.  New relative units added in CSS3 include vw(viewports width), vh(viewports height), vmin(minimum of viewports height and width), and vmax (maximum of viewports height and width).

911 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

26 Experts available now in Live!

Get 1:1 Help Now