VEB Config - why SQL?

Backup agent for Microsoft Windows servers and workstations (formerly Veeam Endpoint Backup FREE)

VEB Config - why SQL?

Veeam Logoby ChuckS42 » Mon Mar 21, 2016 5:38 pm

Just getting up to speed on Veeam Endpoint Backup, for potential use as a replacement for another vendor's backup software for protecting physical servers. I see the VEB client saves its configuration in a local SQL database, requiring the installation of SQL LocalDB. If I go this route, I'm going to get a lot of questions of why I'm installing what some will see as "yet another" SQL instance, with the extra management that will need. Also, I'd be using VEB to existing SQL servers; I trust the LocalDB install won't interfere with existing SQL instances.

So my questions are:

A) Why SQL? Seems an overly complex way to store a client configuration.
B) Is this a permanent decision, or will this be changed as the product matures?
ChuckS42
Enthusiast
 
Posts: 66
Liked: 5 times
Joined: Wed Apr 24, 2013 8:53 pm
Full Name: Chuck Stevens

Re: VEB Config - why SQL?

Veeam Logoby Gostev » Mon Mar 21, 2016 11:56 pm

Hi

It is important to realize that LocalDB is not "yet another SQL instance" that requires "extra management", but rather lightweight runtime-only database engine. LocalDB is very similar to SQLite database engine used by Firefox or Chrome, the only difference is that SQLite runs in-proc (so you can't see it in Task Manager), while LocalDB runs out of proc.

By using LocalDB, we are able to re-use big chunks of code from our enterprise backup product that is in fact based on "full-blown" SQL Server. This significantly reduces the costs of development and testing, which is very important for a free product ;)

On the other hand, we don't see any benefits in using some other database engine instead.

Thanks!
Gostev
Veeam Software
 
Posts: 21390
Liked: 2349 times
Joined: Sun Jan 01, 2006 1:01 am
Location: Baar, Switzerland

Re: VEB Config - why SQL?

Veeam Logoby ChuckS42 » Tue Mar 22, 2016 4:23 pm

Understood. Thanks for the clarification!
ChuckS42
Enthusiast
 
Posts: 66
Liked: 5 times
Joined: Wed Apr 24, 2013 8:53 pm
Full Name: Chuck Stevens

Re: VEB Config - why SQL?

Veeam Logoby mkaec » Tue Mar 22, 2016 8:28 pm

I imagine some people might be skittish about LocalDB because of past bad experiences with applications that bundled the express edition of SQL server.
mkaec
Expert
 
Posts: 179
Liked: 48 times
Joined: Thu Jul 16, 2015 1:31 pm
Full Name: Marc K

Re: VEB Config - why SQL?

Veeam Logoby Stefan121 » Tue Apr 05, 2016 7:23 am

Gostev wrote:It is important to realize that LocalDB is not "yet another SQL instance" that requires "extra management", but rather lightweight runtime-only database engine.
...
By using LocalDB, we are able to re-use big chunks of code from our enterprise backup product that is in fact based on "full-blown" SQL Server. This significantly reduces the costs of development and testing, which is very important for a free product ;)

Hi,
Thanks for the free version and I totally understand the reason, why a LocalDB instance is used. And I agree basically tor the re-use of code for the free version. But LocalDB is not "lightweight": 578MB private bytes and 378 MB working set size is too large for naming it lightweight.

As a real lightweight alternative - with more code reuse than SQLite - I want to mention: SQL Server CE
Moving data: http://erikej.blogspot.de/2012/02/migra ... erver.html

JM2c
Stefan
Stefan121
Lurker
 
Posts: 2
Liked: never
Joined: Tue Apr 05, 2016 7:02 am
Full Name: Stefan

Re: VEB Config - why SQL?

Veeam Logoby Gostev » Tue Apr 05, 2016 8:42 pm

Stefan121 wrote:But LocalDB is not "lightweight": 578MB private bytes and 378 MB working set size is too large for naming it lightweight.

I think your RAM consumption is worth investigating, as normally it should be 10 times less.
Gostev
Veeam Software
 
Posts: 21390
Liked: 2349 times
Joined: Sun Jan 01, 2006 1:01 am
Location: Baar, Switzerland

Re: VEB Config - why SQL?

Veeam Logoby mkaec » Wed Apr 06, 2016 3:03 pm

Stefan121's stats are in line with what I am seeing.

Workstation: 414 MB Private Bytes, 187 MB Working Set
Server 1: 598 MB Private Bytes, 251 MB Working Set
Server 2: 579 MB Private Bytes, 236 MB Working Set
Server 3: 1157 MB Private Bytes, 627 MB Working Set
Server 4: 1156 MB Private Bytes, 624 MB Working Set
Server 5: 1177 MB Private Bytes, 633 MB Working Set

I agree that "lightweight" is not a good description. But, for me, I'd rather have this kind of usage than not have VEB at all.

The servers that have higher memory usage happen to have more installed memory. I wonder if LocalDB is adjusting its usage based on installed memory.
mkaec
Expert
 
Posts: 179
Liked: 48 times
Joined: Thu Jul 16, 2015 1:31 pm
Full Name: Marc K

Re: VEB Config - why SQL?

Veeam Logoby Dima P. » Fri Apr 08, 2016 2:59 pm

Hi Marc,

Just to be on the same page, can you make sure that VEB is the only application using SQL? Thanks.
Dima P.
Veeam Software
 
Posts: 6237
Liked: 440 times
Joined: Mon Feb 04, 2013 2:07 pm
Location: SPb
Full Name: Dmitry Popov

Re: VEB Config - why SQL?

Veeam Logoby mkaec » Fri Apr 08, 2016 3:49 pm

I believe it is. The 5 servers are actually dedicated Hyper-V hosts. When I check the process on the workstation, the command line is:
"C:\Program Files\Microsoft SQL Server\120\LocalDB\Binn\\sqlservr.exe" -c -SMSSQL12E.LOCALDB -sLOCALDB#EEC01435 -d"C:\Windows\System32\config\systemprofile\AppData\Local\Microsoft\Microsoft SQL Server Local DB\Instances\VeeamEndPoint\master.mdf" -l"C:\Windows\System32\config\systemprofile\AppData\Local\Microsoft\Microsoft SQL Server Local DB\Instances\VeeamEndPoint\mastlog.ldf" -e"C:\Windows\System32\config\systemprofile\AppData\Local\Microsoft\Microsoft SQL Server Local DB\Instances\VeeamEndPoint\error.log"
mkaec
Expert
 
Posts: 179
Liked: 48 times
Joined: Thu Jul 16, 2015 1:31 pm
Full Name: Marc K

Re: VEB Config - why SQL?

Veeam Logoby Mike Resseler » Sat Apr 09, 2016 3:47 am

Marc,

We truly believe it is too much so worth investigating. Can you create a support call (it is free, but comes without SLA) so our engineers can look at it?) For your information, my working set is at 100MB and private bytes at 77...

In the support call, please mention this thread (link to it) also.

Thanks

Mike
Mike Resseler
Veeam Software
 
Posts: 3150
Liked: 362 times
Joined: Fri Feb 08, 2013 3:08 pm
Location: Belgium, the land of the fries, the beer, the chocolate and the diamonds...
Full Name: Mike Resseler

Re: VEB Config - why SQL?

Veeam Logoby Stefan121 » Mon Apr 11, 2016 9:25 am

Hi,

thanks for taking the memory consumption into account.

Just to make clear: VEB itself uses only 100 MB Workingset and 70 MB Private bytes as you mentioned.
But the SqlServer instance for LocalDB is using the large memory 468 PB and 276 WS (right after reboot). VEB is the only user of MSSQL 2014.

All other tools are using the installed MSSQL 2012 or even 2005.

BTW: LocalDB was intended more for developer than for production: https://blogs.msdn.microsoft.com/sqlexpress/2011/07/12/introducing-localdb-an-improved-sql-express/
Stefan121
Lurker
 
Posts: 2
Liked: never
Joined: Tue Apr 05, 2016 7:02 am
Full Name: Stefan

Re: VEB Config - why SQL?

Veeam Logoby mkaec » Mon Apr 11, 2016 2:20 pm

That blog article actually states "Moreover, if the simplicity (and limitations) of LocalDB fit the needs of the target application environment, developers can continue using it in production, as LocalDB makes a pretty good embedded database too."
mkaec
Expert
 
Posts: 179
Liked: 48 times
Joined: Thu Jul 16, 2015 1:31 pm
Full Name: Marc K

Re: VEB Config - why SQL?

Veeam Logoby mkaec » Tue Apr 12, 2016 7:00 pm

Mike Resseler wrote:...We truly believe it is too much so worth investigating. Can you create a support call...

I opened support case 01761394 from within VEB on one of the servers I previously listed with a link to this thread in the description.
mkaec
Expert
 
Posts: 179
Liked: 48 times
Joined: Thu Jul 16, 2015 1:31 pm
Full Name: Marc K

Re: VEB Config - why SQL?

Veeam Logoby mkaec » Mon May 02, 2016 4:50 pm

I have some results to report from the support case.

The very first response I received was that "Generally MS SQL Express LocalDB uses 200-300MBs of RAM". I was asked to run an SQL command to limit LocalDB to 400 MB and it wouldn't start after that. I was able to use another instance of VEB to restore the LocalDB.

I was also asked to remove AV and test. After removing AV and rebooting, I found that LocalDB memory usage was lower than before the reboot. It was around 150 MB. However, I couldn't be sure if this was due to the AV removal or the reboot. I ran some backups and found that LocalDB memory usage increased a little bit after each backup. After 37 backups, it was comparable to what I saw before removing AV. After I put back AV and rebooted, I found the memory usage was actually 72 MB.

Normally, one might consider this a memory leak. But, I think it is just SQL being SQL and using more RAM for cache. I know my test was a bit unrealistic, but I didn't want to leave AV removed for long term.

What surprised me was the initial response that 200MB - 300MB is normal. That seems contrary to what's been discussed in this thread. Personally, I think it is normal and I wonder if that screenshot in the guide was just taken from a freshly booted system.
mkaec
Expert
 
Posts: 179
Liked: 48 times
Joined: Thu Jul 16, 2015 1:31 pm
Full Name: Marc K

Re: VEB Config - why SQL?

Veeam Logoby Dima P. » Thu May 12, 2016 12:57 pm

Hi Marc,

I found that LocalDB memory usage was lower than before the reboot. It was around 150 MB.

Could it be that your AV is somehow using the LocalDB as well?
I wonder if that screenshot in the guide was just taken from a freshly booted system

The screenshot was take from my laptop (although VEB was in idle state but that was mentioned in the blogpost), which well spoiled by different software :wink:
Dima P.
Veeam Software
 
Posts: 6237
Liked: 440 times
Joined: Mon Feb 04, 2013 2:07 pm
Location: SPb
Full Name: Dmitry Popov

Next

Return to Veeam Agent for Windows



Who is online

Users browsing this forum: No registered users and 10 guests