<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: NetApp single aggregatef or SQL Server is &amp;quot;best practice&amp;quot; in Data Protection</title>
    <link>https://community.netapp.com/t5/Data-Protection/NetApp-single-aggregatef-or-SQL-Server-is-quot-best-practice-quot/m-p/10448#M7017</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi lw,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Concurrent, different IO characteristics are of course a concern, its a matter tho if you have the needed amount of disks. If you have 2-3 disk shelves, having one bigger aggregate is probably better than creating 2 aggregates using 1 1/2 disk shelves each. If we are talking about 10+ disk shelves, of course you can create (and probably must because of maximum aggregate size) different aggregates for your different IO needs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;A LUN gets setup in a FlexVol which is setup on an aggregate. The LUN will be properly spread over all disks &amp;amp; raidgroups from the underlying aggregate. So yes, the disks are "anonymous" for the LUN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The way it works is:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;physical disk -&amp;gt; raid group (means usualy at least 2 parity and 1 data disk, hopefuly more like 16-20 disks for each raid group) -&amp;gt; plex (used for synchronous mirroring, so its the netapp "RAID1") -&amp;gt; aggregate&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The aggregate is your last "real" physical measurement. After that its all logical stuff done over the aggregate layers. The raid/plex/aggr layer can only grow btw, never be shrunk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;aggregate -&amp;gt; flexvol (Flexible Volumes/Partitions which can be grown or shrinked on the fly)-&amp;gt; qtree (just a plain logical divider, used for quotation and for asynchronous replication) -&amp;gt; lun (the logical disk as you know it)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Kind regards&lt;/P&gt;&lt;P&gt;Thomas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 16 Nov 2010 11:47:16 GMT</pubDate>
    <dc:creator>thomas_glodde</dc:creator>
    <dc:date>2010-11-16T11:47:16Z</dc:date>
    <item>
      <title>NetApp single aggregatef or SQL Server is "best practice"</title>
      <link>https://community.netapp.com/t5/Data-Protection/NetApp-single-aggregatef-or-SQL-Server-is-quot-best-practice-quot/m-p/10431#M7014</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm new to NetApp technology and in the learning&amp;nbsp; phase. I have a customer using NetApp as their storage solution for our&amp;nbsp; SQL Server based OLTP application. The database is in the 1-2 TB range&amp;nbsp; of which about 90% is LOB data since we store binaries in the database&amp;nbsp; and not outside. Now the standard installation configuration only has&amp;nbsp; one filegroup, which means both row data and LOB data is in that&amp;nbsp; filegroup which only has one file.&amp;nbsp; I know the customer only has one&amp;nbsp; NetApp aggregate, according to them its "best practice", and separate&amp;nbsp; LUNs for OS, SQL Server application, our application database, the&amp;nbsp; transaction logs and system databases. My first question is regarding&amp;nbsp; the one aggregate configuration - since the transaction logs and&amp;nbsp; database files are on the same aggregate they must share the same disks&amp;nbsp; even though they are on different LUNs? Or does that depend on how the LUNs were created? Would a second aggregate be better for the transaction logs?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm also trying to convince the customer that&amp;nbsp; migrating LOB column data to&amp;nbsp; its own separate filegroup - with the&amp;nbsp; files on dedicated disks -&amp;nbsp; allowing for row data to reside on their own&amp;nbsp; disks and not be fragmented&amp;nbsp; by LOB pages would help performance. They&amp;nbsp; are claiming that this change would not help performance whatsoever due&amp;nbsp; to their NetApp design. I disagree but I'm not familiar with NetApp&amp;nbsp; technology so have a hard time arguing with them.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can someone shed some light on this issue please?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;LW&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 05 Jun 2025 07:05:22 GMT</pubDate>
      <guid>https://community.netapp.com/t5/Data-Protection/NetApp-single-aggregatef-or-SQL-Server-is-quot-best-practice-quot/m-p/10431#M7014</guid>
      <dc:creator>lonewanderer</dc:creator>
      <dc:date>2025-06-05T07:05:22Z</dc:date>
    </item>
    <item>
      <title>Re: NetApp single aggregatef or SQL Server is "best practice"</title>
      <link>https://community.netapp.com/t5/Data-Protection/NetApp-single-aggregatef-or-SQL-Server-is-quot-best-practice-quot/m-p/10436#M7015</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;lw,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;it depends slighty on the size of your netapp head and the ammount of disks. Usualy you have a netapp cluster, eg FAS3140A and each head holds a set of disks. then yes, you can have the databases on one head and the log files on the other head.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Besides that, you usualy want to create the biggest aggregate possible to have the largest amount of raid groups &amp;amp; spindles in a given aggregate to get the smoothest performance. netapp usualy prefers 1 big aggregate over 2 smaller ones.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I would split row &amp;amp; LOB to two different luns but still on the same head &amp;amp; disks if possible. Having a seperate lun will give you a different lun queue for that io but still the same disk performance of a most biggest aggregate. Fragmentation will happen on every file system out there but unless the netapp isnt 99% full, fragmentation shouldnt be a huge concern. Netapp has way more "magic" in its disk subsystem &amp;amp; caching algorithms than usual UNIX or Windows servers.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;HTH,&lt;/P&gt;&lt;P&gt;Thomas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 16 Nov 2010 10:37:49 GMT</pubDate>
      <guid>https://community.netapp.com/t5/Data-Protection/NetApp-single-aggregatef-or-SQL-Server-is-quot-best-practice-quot/m-p/10436#M7015</guid>
      <dc:creator>thomas_glodde</dc:creator>
      <dc:date>2010-11-16T10:37:49Z</dc:date>
    </item>
    <item>
      <title>Re: NetApp single aggregatef or SQL Server is "best practice"</title>
      <link>https://community.netapp.com/t5/Data-Protection/NetApp-single-aggregatef-or-SQL-Server-is-quot-best-practice-quot/m-p/10444#M7016</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Thomas&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for your reply. I can see that the performance of a bigger aggregate is something you want, but surely this must depend on the nature of the workload as well - relation between random access read/write of the database and sequential write of the transaction log if they must compete for access to the same disks. Also I wasnt concerned about the fragmentation on a file system level, but the internal fragmentation in the (now) single .mdf file that contains the database pages - both rowdata and LOB data. I would expect a performance boost having separate files for these types of pages - especially for queries that only access row data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Another simple question, when you create a LUN on an aggregate, can you define which RAID groups to utilize so you can, even though maybe you shouldnt, define which disks a LUN uses? Or does the aggregate anonymize the disks complete as I think it does?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;LW&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 16 Nov 2010 11:22:36 GMT</pubDate>
      <guid>https://community.netapp.com/t5/Data-Protection/NetApp-single-aggregatef-or-SQL-Server-is-quot-best-practice-quot/m-p/10444#M7016</guid>
      <dc:creator>lonewanderer</dc:creator>
      <dc:date>2010-11-16T11:22:36Z</dc:date>
    </item>
    <item>
      <title>Re: NetApp single aggregatef or SQL Server is "best practice"</title>
      <link>https://community.netapp.com/t5/Data-Protection/NetApp-single-aggregatef-or-SQL-Server-is-quot-best-practice-quot/m-p/10448#M7017</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi lw,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Concurrent, different IO characteristics are of course a concern, its a matter tho if you have the needed amount of disks. If you have 2-3 disk shelves, having one bigger aggregate is probably better than creating 2 aggregates using 1 1/2 disk shelves each. If we are talking about 10+ disk shelves, of course you can create (and probably must because of maximum aggregate size) different aggregates for your different IO needs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;A LUN gets setup in a FlexVol which is setup on an aggregate. The LUN will be properly spread over all disks &amp;amp; raidgroups from the underlying aggregate. So yes, the disks are "anonymous" for the LUN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The way it works is:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;physical disk -&amp;gt; raid group (means usualy at least 2 parity and 1 data disk, hopefuly more like 16-20 disks for each raid group) -&amp;gt; plex (used for synchronous mirroring, so its the netapp "RAID1") -&amp;gt; aggregate&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The aggregate is your last "real" physical measurement. After that its all logical stuff done over the aggregate layers. The raid/plex/aggr layer can only grow btw, never be shrunk.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;aggregate -&amp;gt; flexvol (Flexible Volumes/Partitions which can be grown or shrinked on the fly)-&amp;gt; qtree (just a plain logical divider, used for quotation and for asynchronous replication) -&amp;gt; lun (the logical disk as you know it)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Kind regards&lt;/P&gt;&lt;P&gt;Thomas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 16 Nov 2010 11:47:16 GMT</pubDate>
      <guid>https://community.netapp.com/t5/Data-Protection/NetApp-single-aggregatef-or-SQL-Server-is-quot-best-practice-quot/m-p/10448#M7017</guid>
      <dc:creator>thomas_glodde</dc:creator>
      <dc:date>2010-11-16T11:47:16Z</dc:date>
    </item>
    <item>
      <title>Re: NetApp single aggregatef or SQL Server is "best practice"</title>
      <link>https://community.netapp.com/t5/Data-Protection/NetApp-single-aggregatef-or-SQL-Server-is-quot-best-practice-quot/m-p/10457#M7018</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;LW:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My reply is a bit dated.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But, I too, is very new to NetApp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I see that Thomas Glodde is saying that it is best to keep the backend as a single disk or have at most a couple of disks.&amp;nbsp; And, I lean towards agreeing in terms of manageability (less calls in the middle of the night that one disk is full or almost full).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There are a couple of additional areas I will like to explore:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;a) As you 're using MS SQL Server, I assume you 're running on MS Windows.&amp;nbsp; It seems that if you are using HBA Cards, the max Queue Depth is 256 or so.&amp;nbsp; In addition, it seems this max Queue Depth is based on each Disk; and to get more 'Queue Depth' you would have to expose more physical\logical disks.&amp;nbsp; Does anyone know if this are Logical or Physical Disks?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;b) Also, it is always helpful to pre-allocate MS SQL Server datafiles (before needing them).&amp;nbsp; You might be able to reap a side-effect of (pre) allocating in big enough increments \ sizes to gain a semblance of having your data (whether regular, LOB, or log) in more contiguous chunks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;c) if you do not care much for pre-allocation, your datafile growth size might help, as well.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;d) Also via "Local Security Policy", grant "&lt;SPAN style="color: #5c5c5c; font-family: helvetica, sans-serif; text-align: -webkit-auto; background-color: #ffffff;"&gt;Perform Volume Maintenance Tasks" to the Account that the "MS SQL Server" Service is running as.&amp;nbsp; This affords you the benefits of "Instance File Initialization".&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now my follow-up questions:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;a) is anyone aware of NetApp specific Performance Counters that can be used within MS Windows&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;b) Does NetApp have Native Performance \ Throughput Measurement Tools.&amp;nbsp; The tools I have seen in the open-market tend to want to create their own traffic\data.&amp;nbsp; But, it our case we will more likely want to measure throughput against our own normal business data \ traffic &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 09 May 2012 15:42:23 GMT</pubDate>
      <guid>https://community.netapp.com/t5/Data-Protection/NetApp-single-aggregatef-or-SQL-Server-is-quot-best-practice-quot/m-p/10457#M7018</guid>
      <dc:creator>DANIELADENIJI</dc:creator>
      <dc:date>2012-05-09T15:42:23Z</dc:date>
    </item>
  </channel>
</rss>

