Microsoft SQL server versus propreitary DB

D

Thread Starter

David Hammer

Hello

I would appreciate some clarification on this subject.
Vendors like Wonderware, Intellution, RSVIEW use
Microsoft SQL server to store tag, alarm and event
data. What are the advantages of using SQL server
versus a proprietary database that is developed by a HMI vendor that can store the same tag, alarm and event information.

Thanks
David
 
R

RaviChandran Dhamodaran

Use of SQL server as a db to store the information required maybe an overkill for this sort of an application. But the probable reason why most vendors prefer Sql is because it is an open standard and becomes a common platform for a choosen upgrade path along with Windows and its development tools.. on which these software rest..
 
E

Edelhard Becker

Hi David,

From the facts you write in the mail, there is _no_ advantage of MS SQL Server, simply because it is _as_proprietary_ as any other commercial, closed source, single vendor database.

There might be other (technical!) reasons (e.g. performance, size of DB, datatypes supported etc. etc.), but from the view of "proprierity" it's just the same to use one or the other.

HTH,
Edelhard
--
s o f t w a r e m a n u f a k t u r --- Software, that fits!
OO-Realtime Automation from Embedded-PCs up to distributed SMP Systems
[email protected] URL: http://www.software-manufaktur.de/
Fon: ++49+7073/50061-6, Fax: -5, Gaertnerstrasse 6, D-72119 Entringen
 
S

Sam Moore Square D Company/Groupe Shneid

Data needs to get to the people that can work with it. The best way to do that is drive it into a networked SQL server, like MS SQL. If you put it into a proprietary database then you are defeating the purpose. A company that is making its living off of selling software at the HMI/SCADA/controls level is going to have a hard time developing a database that is comparable to those developed by companies like Oracle, Sybase and Microsoft.

As a rule use off-the-shelf technology if at all possible.
 
P

Paul Butchart

David,

Excellent question, I'm going through that problem right now. If you use a proprietary database you are stuck with what you have unless the vendor upgrades the system or you pay for a custom control to convert your database. Using MSSQL or other (Oracle, etc.) database you have many more options in the market or you can write your own applications in VB, C, C++ or directly in SQL. As I said, I'm dealing with the problem of replacing a proprietary system with an SQL system. I wish I'd asked that question a couple years ago.

Paul Butchart
Process Control Engineer
Qualitech Steel SBQ, LLC
 
S

Sage, Pete (IndSys, GEFanuc, Albany)

All databases are proprietary (Oracle, SQL, etc.)

However, there are two things to look for when selecting a database

1. Open Interfaces
- ODBC, OLEDB, etc

Does the database provide standard interfaces so you can extract data using any reporting tool you choose or are you tied to a proprietary
interface

2. Maintenance / Support

A large database is going to require maintenance, is there a large pool of talent available for tuning / maintaining the database. Generally, the
smaller the pool of talent the higher the cost.

You also want to avoid a dead product. Certainly Oracle and Microsoft will keep cranking out new versions for the forseeable future.

Pete
 
H

Hullsiek, William

I am currently using MS SQL Server on our MES. I have also programmed Oracle and Ingres for other applications.

Our MES (Infolink from Cimnet) gets our orders from Baan, optimizes the sequence of fulfilling the orders, downloads the data into Fix/Dynamics, tracks events, samples data, then stores results of the process back into MS-SQL-Server. We rollup production reports at the end of the day for improving operational efficiencies.

I suggest that you talk to the MES vendors such as CIMNET, CAMSTAR, etc., before making a database decision. They typically support the big four players:
>> Oracle
>> SQL Server
>> Sybase
>> Informix


Evaluation Criteria:

1. Scale-ability

2. Performance

3. Cost of support staff (Oracle people tend to earn $10K - $15K more a year).

4. Learning / Transition cycle

5. Database Uptime

6. Availability of 3rd party solutions
(MS SQL SERVER has lower software licensing costs due to market-share).

7. Support for Objects / Components.


I chose MS SQL Server, because it is a simpler product than Oracle (50 tunable parameters vs. 500 tunable parameters).

I have dealt the "proprietary" database, (which I interpret to be -- no third party support), and would NOT recommend that solution. Third party support is essential, to avoid re-inventing the wheel.


William F. Hullsiek
MES Software Engineer
 
C

Curt Wuollet

Hi Ravi

By what stretch of the imagination do you consider MSQL an "open" standard ? I keep hearing of MS products being "open".
That's a very, very, strange definition of open. Indeed Microsoft is perhaps the epitome of the closed, proprietary model. Where is this "open" propaganda coming from?

Regards

Curt W.
 
I have not used MS-SQL to store tag related data but I have used it for statistics reporting and for maintenance data. Essentially the answer to your question comes down to connectivity and performance - SQL (not just MS) is the former, proprietary is the latter.

Here are some of the strengths and weaknesses of the various approaches:

0) First of all, the examples you state are all long time Microsoft houses. Support for MS-SQL is built into all MS-OFFICE products so there is considerable pressure to provide MS-Appropriate interfaces. MS-SQL is Microsoft's database answer!

1) By putting the data into MS-SQL it is now possible to enable the MS Internet Information Server functions on NT and essentially publish the data onto a factory floor intranet. Other MIS systems also have interfaces that can talk to MS-SQL, which pleases the IS type people.

2) Proprietary databases will often smoke the more generalized SQL based databases and can run on the same machine that is running real time extensions. The problem is that getting data into or out of them can be a real problem.

3) MS-SQL really wants to run on a SERVER by itself. It will run in other environments but something always suffers. In particular keep MS-SQL away from a computer running realtime NT extensions - system performance and stability end up being the big losers.

4) If you start hammering on MS-SQL, you better have a computer up to the task. It needs fast disks, preferably with NTFS, lots of RAM, and a fast processor. Also watch out for the number of client licenses the machine will support. A factory automation system can generate events really fast, especially as something is failing.

5) It is worth it to get the data (tag, events, or other data) into a generalized SQL database so that you can point report generation programs and other stuff at it, it also helps for the mundane tasks such as configuration management. I have used relatively simple programs to send the data from a machine running realtime and its proprietary database technology to a SQL server with relatively good results.

6) My biggest complaint with all the Microsoft based approaches, compared to older Unix with real time extensions based system, is that the NT systems have really poor performance. It is really bad when you "upgrade" a system using the latest Intel/MS products and the user interface (HMI) takes 10 times longer to respond than the old one did. I am hoping that Linux goes back to the older order.

7) Don't forget that MySQL, MSQL, Oracle, Informix, and other databases also support standards based SQL queries and MS-Office products will work fine with them. Additionally these products may provide cost savings, performance enhancements, or interface options not available in MS-SQL.


> Hello

>

> I would appreciate some clarification on this subject.

> Vendors like Wonderware, Intellution, RSVIEW use

> Microsoft SQL server to store tag, alarm and event

> data. What are the advantages of using SQL server

> versus a proprietary database that is developed by a HMI vendor that can store the same tag, alarm and event information.

>

> Thanks

> David
 
J

John G. Boland

David Hammer writes:

<< What are the advantages of using SQL server versus a propreitary database that is developed by a HMI vendor that can store the same tag, alarm and event information. >>

Hi, David,

I am not sure whether you refer to using Microsoft(R) SQL Server(R) for (i) configuration or (ii) data (collected by a process system).

(i) A relational database is appropriate for configuration information. It is a non-trivial (and then some, eh?) piece of software in its own right and provides lots of handy features that each HMI vendor does not have to work out on its own.

(ii) From a third-party commercial software developer's viewpoint, there is a lot of incentive to write and test advanced applications that obtain process (or any other high-volume) data from a "standard DBMS". An HMI, SCADA, DCS, or such system that pokes its data into one of the
"standard DBMS" is a more attractive animal (to a developer) than one that requires lots of custom query commands for its own database.

While not "one size fits all", the SQL, ODBC, OLEDB... alphabet soup gives us a chance to develop and test against fewer databases that,
potentially, reach broader markets than a "one custom database at a time" approach does.

That *should* translate into a greater variety of more-reliable, lower-priced, richer-featured, third-party applications from which you can choose.

The other side, of course, is whether a "standard DBMS" can deliver the performance and features (compression...) that the HMI vendor wants on
the storage end.

IMHO, of course.

Regards,

"Lurker John" G. Boland, president
VisiBit Corporation
One Parker Square Suite 408
2525 Kell Boulevard
Wichita Falls, Texas 76308
940.322.9922
940.723.1478 fax
 
W

WILLIAM CARRILLO

David:

First of all, the main advantage is open architecture. In this age when companies want to integrate process data with corporate date, is easier and cheaper to integrate MsSQL Server (Intellution, Wonderware, Rsview) or Sybase
(Neles Automation Oasys) with SAP and Oracle databases. You will find tens of interfaces been developed for this products. on the other hand, with a propietary database you %ll find yourself waiting for your scada company to offer you the product, surely more expensive.
Second advantage, all of the tools avaliable in the market for data analysis, charting, reports, etc., can be deploy in standard databases. this is not entirely true in propietary DB.
I currently use: wonderware %s IndSQL, Neles % Sybase and Realflex propietary DB. My first two systems are bound to be fully develop due to the fact i can setup application in my users % desktops to acces their databases. With realflex, i find myself in a island. i have to access the data via DDE servers then send it via another interface to a historian. After that i can use the
data. Does it sound easier ?

William Carrillo
Oil&Gas Scada Support Team
PDVSA
Maracaibo,Venezuela
 
I can't speak for Ravi, but I would say that SQL is an "open" standard. The question was whether or not to use a proprietary database over one of the commercial SQL databases.

I would call MS SQL server a standard. Since it is going to replace Access eventually and eat up enough of the SQL database market to make it one of the market leaders. The problem is that with NT
being so prevalent anything that gets bundled with it will eventually gain the market share and that results in it being a standard.

"Open" is less important than whether it is a standard. If I am going to invest my time developing an application I want to know that it
can be widely used. This leads me to develop it the most widely used environment. It is that logic that makes the classic word of choice "open" meaningless.

Maybe the DOJ will make them split up and we will have a whole new ball game? Then "open" may eventually have more than historical value.
 
D
List,

Someone really dislikes Microsoft? I think what he means instead of open is that many more packages can connect to a SQL database than any proprietary database. This is true, try grabbing
data from a proprietary database for use in visual basic. Much tougher!

Dale
 
G

Georg Hellack

Hi David,

as far as I know RSView as well as WinCC uses 'SQL Anywhere' as their fundamental database. Wonderware and Intellution use some other database. MS SQL Server is not the underlying
database for 'realtime' information in any of these systems, but an additional interface for data export/import.

Regards,

Georg Hellack

GHF automation GmbH
Technologie-Park Herzogenrath
Kaiserstr. 100
D-52134 Herzogenrath
Tel: +49 (0) 24 07 9 13 31 - 0
Fax: +49 (0) 24 07 9 13 31 - 9
URL: http://www.ghf-automation.de
e-mail: hellack @ ghf-automation.de
 
D

Dave Ferguson

I think RSView uses or used a Watcom database. This is from the old Controlview days, this may have changed....anyone with info ?

Dave Ferguson
Blandin Paper Company
 
J
-> I can't speak for Ravi, but I would say that SQL is an "open" ->
standard. The question was whether or not to use a proprietary ->
database over one of the commercial SQL databases.

I can agree with that....

-> I would call MS SQL server a standard. Since it is going to
-> replace Access eventually and eat up enough of the SQL
-> database market to make it one of the market leaders.

&lt;soapbox&gt;

Doesn't Oracle have the market share right now? I may be wrong, but I thought I heard that somewhere. I am fairly certain that in
benchmarks *not* purchased by MS, Oracle performs better and scales better. That is the benefit of using the SQL standard. Even if MS-SQL 7 goes away, it will still work with other DB's that
support SQL. That is what I am counting on when I deprecate MSSQL in favor of either Oracle or PostGreSQL, I haven't decided which yet.... I think it is premature to hand the DB market to MS.
That is what irritates me the most about discussions concerning MS. Supporters are always ready to put MS in the market leader position. I actually had someone try to argue with me that Internet Information Server was the 'standard' for the Web, and that anyone developing for anything else was just targeting a niche. I referred this particular individual to http://www.netcraft.com/survey/ for the truth. Note in the survey that IIS is LOSING ground to the dominant (by 3X) market leader Apache. Who is the standard?
(Note: The most amusing part is further down the page, where they state that Windows Magazine's web site is running on Apache on Solaris, while Win98 Mag is Apache/FreeBSD. HA HA HA)

&lt;/soapbox&gt;

-> The problem is that with NT
-> being so prevalent anything that gets bundled with it will
-> eventually gain the market share and that results in it being
-> a standard.

I again refer to http://www.netcraft.com/survey/ and in the same vein, loook at the result of trying to bundle MSMoney to dethrone Quicken. It *doesn't* always win just by being bundled.

-> "Open" is less important than whether it is a standard. If I am
-> going to invest my time developing an application I want to know
-> that it can be widely used. This leads me to develop it the most
-> widely used environment. It is that logic that makes the classic
-> word of choice "open" meaningless.

Tell that to any of the victims of Microsofts "Embrace and Extend" policy towards standards. The last thing I want is for my app that I wrote to a 'standard' to be suddenly deprecated because MS decides to warp the standard in some way to make it incompatible with what the competition is doing. If a standard is actually 'open' it means that the source code supporting it is available. This large codebase, not controlled by a single entity, prevents a standard from being used against another company. When this happens, the users are the ones who lose. If the users control the standard, how can they lose?

-> Maybe the DOJ will make them split up and we will have a whole
-> new ball game? Then "open" may eventually have more than
-> historical value. ->

I hope so too. :^}

--Joe Jansen
 
C
Hi Dale

No, that's not it either, as I have yet to see a major database package that doesn't support SQL and ODBC for that matter. But, that should tell you something, if it's much tougher to use
someone elses, it is not open. In fact that's a good definition of open, you can use someones else's stuff just as easily.

The MS stuff is "open" by declaration. Microsoft puts out PR that what is closed is now open and pretty soon you're hearing that MS stuff is open. And people who should know better buy into it. That's the part I'm trying to dig down to. How can MS declare their shrinkwrapped, binary only, proprietary file format and API, products to be open and get knowledgeable people to agree?

cww
 
H

Hullsiek, William

There is now something called RS-SQL. I don't know what Rockwell does to "add-value" to Microsoft SQL-Server. Wonderware does something similiar with Microsoft SQL-Server (intelligent agent / MTS components ???)

Maybe the question should be "How do the HMI vendors add value to relational databases ??"

In the case of MS SQL Server, I suspect that they have OLE-DB interfaces, plus also offer DLLs that can be called by Stored Procedures through the OA interface. (Putting business logic
on the server side of the network).

The issue of "proprietary vs Open", is an issue that was discussed and formalized to a degree
by X/Open. I have not read that material in a while, but it was broken down by

Software Licensing Fees
Open Source Code
Open Specifications
Open Interfaces (API)
user bodies
and then conformance to several specifications.

I would suggest the forum stay away from "Proprietary vs. Open", and stuff like that
because, the terminology is defined by the standards body such as OAG, IEEE, ISA, X/open,
ad nauseum.

In the long run, it really breaks down to "can I purchase competive products without doing a wholesale replacement of my systems". (multi-vendor sourcing). This suggests that someone
could start a thread on Best of Breed, vs. Single Source solution.


William F. Hullsiek
MES Software Engineer
 
B
We have so many folks arguing that MS SQL is better. I have found it better to be only for small applications. For large applications which logs thousands of I/O points I have found
proprietary databases to be very efficient in saving large volumes of data. Most of the proprietary databases have ODBC/ADO connections so you can get the data using SQL queries. So I see no point in using SQL databases I prefer proprietary databases

Brian Thomson
Carson Automation
 
Top