Wednesday, April 21, 2010

Advantage Pure and Simple | Performance

Tomorrow is the last webcast in a three part series on Advantage version 10. You will have two opportunities to view the presentation and ask questions live. The first webcast is at 10AM EST and the second will be at 2PM EST. The description for tomorrow's webcast is below:

Advantage Database Server 10 | Pure and Simple

Over the past 15 years, the Advantage Database Server has become the heart of many data management applications with millions of deployments worldwide. Spring of 2010 will be significant for Advantage developers and users alike. Advantage Database Server 10 will be unveiled featuring key performance and usability enhancement and progression enablement like never before. Join us for this 3-part webcast series taking a close look at how Advantage Database Server 10 can impact your business for the greater good, pure and simple.

Webcast 3: Performance

Boost the performance of your applications to a new level in minutes. Most performance enhancements in Advantage 10 require no client side changes! Plug in Advantage Database Server 10 and reap the rewards. It is that simple.

You can register for the webcast using this link.

Friday, April 16, 2010

Version 10 Side-By-Side Installs

SbS_Title This week's Advantage version 10 demonstrations discusses how to create a side-by-side installation of Advantage. Documentation for this feature is not included with the beta download you must go to the beta newsgroup to obtain it. Additionally the process for creating a side-by-side installation will be different in the release.

However, this screencast will walk you though the process of installing the Advantage beta alongside your currently running Advantage server. This allows you to do direct performance comparisons since both versions of Advantage will be running on the same machine.

You can view the demonstration by clicking on the image or you can download a WMV version here. You can find all the Version 10 demonstrations on the DevZone under screencasts.

Monday, April 12, 2010

Side-By-Side Installs with the Advantage Beta

One of the great new features of version 10 is the ability to do a side-by-side install. This allows you to install a second instance of Advantage on the same machine. In order to install version 10 along side an older version of Advantage you need to modify the setup.

The basic steps are outlined below:

  1. Unzip the install to a directory
  2. Copy sidebyside.exe from the Program Files\Advantage 10.0\Server directory to the directory with the .MSI file. Otherwise you need to specify the entire path.
  3. Run sidebyside.exe from the command line providing the following arguments
    • Path to MSI file (Advantage Database Server for Windows v9.99.msi)
    • Your custom install name SideBySide
  4. Modify the setup.ini adding the following properties in the following sections
    • Bootstrap
      • SideBySide = 1
    • Properties
      • INSTALLDIR
      • CONFIG_ERROR_ASSERT_LOGS
      • CONFIG_TPS_LOGS
      • SERVICE_NAME
      • SERVICE_DISPLAY_NAME
      • SERVICE_DESCRIPTION
      • STARTMENUNAME
      • CONFIG_RECEIVE_IP_PORT ( syntax is #6299 the hash is required )
  5. Ensure the modified setup.ini is in the same directory with the modified setup.exe and run the modified install

You can get more information from the Advantage Beta Newsgroup look for the Updated Documentation for SideBySide Installs.

Friday, April 9, 2010

Advantage with Visual Studio 2010

VS2010_Title This week's Advantage version 10 demonstration discusses support for Visual Studio 2010. Visual Studio 2010 includes many new data features such as; lazy loading, POCO, model first as well as LINQ. Advantage 10 supports all of these features along with integration with other Visual Studio tools.

In this short ( ~8 minute ) screencast you will see how you can use the Advantage .NET Data Provider to generate database objects based on an Entity Model and generating an Entity Model from an existing dictionary. We will also demonstrate using LINQ to Entities to retrieve data from an Advantage Data Dictionary.

You can view the demonstration by clicking on the image or you can download a WMV version here. You can find all the Version 10 demonstrations on the DevZone under screencasts.

Wednesday, April 7, 2010

New Advantage Video

Mike Hagman the Advantage product manager recorded a product overview video for Advantage. There is a link to this video on the Advantage website an I have also included it below.

Friday, April 2, 2010

Version 10 Notifications with Delphi

DelphiNotification_Title This week's Advantage version 10 demonstration discusses the new ability to pass data back with your notification. I discuss the mechanism for using Notifications with Advantage and then demonstrate using Notifications in both Advantage Data Architect and Delphi.

In this short ( ~8 minute ) screencast you will see the new syntax for the sp_CreateEvent, sp_SignalEvent and sp_WaitForEvent system procedures. We will also demonstrate using the new TAdsEvent component in Delphi.

You can view the demonstration by clicking on the image or you can download a WMV version here. You can find all the Version 10 demonstrations on the DevZone under screencasts.

Thursday, April 1, 2010

FAQs – March 2010

What is the Wildcard Character for Full Text Search

The Advantage full text search engine provides a quick and efficient way to search any text field. You use the CONTAINS operator to perform a full text search. You can use the standard asterisk ( * ) as a wildcard character. For instance if you were searching for all customers with a first name that starts with j you could use the following query.

FTS_Wildcard

Configuration Settings for X Users

Advantage has some formulas for defaults as outlined here.

This isn't an issue with version 9 and newer since the server will dynamically reconfigure these settings. I do recommend that you periodically check the MaxUsed values and set your defaults above those values. This ensures that enough resources are pre-allocated when you restart the Advantage server.

If you are using a version prior to 9.0 you need to configure these settings. Advantage has some formulas for defaults as outlined here. If the default values aren't adequate for your application, here are my recommendations:

Setting Recommendation
Connections App Connections * Number of users + 10
Tables Total Tables * 1.1
Indexes Tables Configuration * 1.5
Data Locks 40 * connections
Worker Threads 8 * number of  processor cores

These are general guidelines and they may not fit your situation. For example if you do long transactions you may need more data locks since records remain locked until a transaction is committed. Watching the max used values at many different sites that are using your product will be the best way to determine your settings. 

Specifying the ADS.INI File Location

In addition, if an environment variable exists with the name adsini_path, that path will be used to locate the ads.ini file. This can be helpful when you do not want to modify the application’s search path, but still need the ads.ini file to exist in a directory multiple users have rights to (for example on Windows Vista installations). An application can often set the environment variable at run-time before calling any Advantage functions, which avoids the need to set a per-workstation environment variable.

6303 Error

I recently ran into this error when doing performance testing with Advantage. By default a single client is limited to 50 connections to Advantage, you receive a 6303 error if exceed this limit. You can configure this limit in the ads.ini file by adding the MAX_CONNECTIONS setting under the Settings section. For example:

[Settings]
MAX_CONNECTIONS=200