what database best for simultaneous editing from remote users using citrix

Posted on 2006-04-04
Last Modified: 2008-03-10
What database should i use?

The size of the database I think is small.  Please correct me where im wrong.  Maybe a hundred projects. Employees around 2000.
Hundreds of employees must be able to read information from the database simultaneously.
Maybe up to 50 to use the database simultaneously for editing, deleting and creating records.
They currently are using Metaframe Citrix for all remote users (knowledge on how this program works will also be helpful)

Also, what tools would i need to design and test before implementing into their system?  I currently have VB .NET 2003 and Macromedia 8.

This project is very important to me and your knowledge is appreciated.  Thankyou.
Question by:reontareha
    LVL 10

    Accepted Solution

    This is a very vague specification, but whenever I hear that lots of people will be updating the database simultaneously, I recommend Oracle over SQL Server, because despite everything Microsoft claims, there is still no clear model for locking records. Oracle provides row level locking and an excellent model for concurrent access, I can read their documentation and understand how the reader reads changes made prior to the commit from the rollback segment. In Oracle, a user can begin a transaction that changes a record, but other users can view that record until the moment the change is committed . MSSQL has no clear model or documentation and uses what is called "optimisitic" locking - which, compared with Oracle, is unpredictable. SQL Server experts may claim the contrary, but as an expert in both Oracle and SQL, I have never been able to duplicate oracle's performance in a mutliuser situation. If I do an update that affects a large number of records in a table, other users will experience locking that affects reading, which never, ever happens in Oracle unless the user is doing a select for update - a syntax that has no parallel in SQL Server (since they cannot really lock records as far as I can tell).

    Now, Oracle tends to be more expensive, so there are lots of reasons people choose SQL Server, but that is my recommendation given what I have heard. There are other excellent databases - mysql, firebird, and sybase.  But in terms of finding support, you will probably want to stick with Oracle or Microsoft (Sybase is still basically MS SQL with a higher price tag, in my opinion).

    I use SQL Server a lot for data warehousing, where simultaneous access is required, but updates are infrequent. If that is your model, you may find MSSQL a fine alternative.

    LVL 9

    Expert Comment

    The 'metaframe citrix' you mention will just give users a window onto a logon session on some server machine. Presumably they will launch an application hosted on that server.

    I am curious about what 'AaronAbend' is saying about SQL Server - it does have a varied locking model and performance is all about tweaking the server: So 'optimistic' locking is available but there are others too and it has row-level locking so a carefully designed application should not suffer from these issues - it's all about design.

    I have no doubt that DB2 and Oracle are better than SQL Server in a production environment but remember that a database can be designed and tuned for concurrency and performance so that should play a major part in any considerations.
    LVL 9

    Expert Comment

    Oracle has more granular record locking control than MS SQL, which can be handy with large numbers of users doing concurrent updates.  Although, Oracle doesn't appear to have any better deadlock mitigation in my experience.  IOW, you have to do the work in design in order to reap the rewards with Oracle.  For the number of concurrent users and the DB size, I'll bet that MS SQL will work fine.

    I can't see that having Citrix Metaframe clients would have any impact on the DB choice.

    If it's a commerical application that is planned to be used, then it's best to go with whatever OS and DB the vendor uses as their primary build and test environment.  That combo will always get the most love from the vendor.

    Without knowing more about the application you're running, I couldn't comment on integration.

    Author Comment

    i agree that MS SQL and Oracle will more than do the job.  However, I feel mySQL will do just the job.  There is less support but it can get the job done and it is much more cost efficient.  Aaron was the only one who mentioned mySQL so i will give the points to him.  Thankyou.

    Write Comment

    Please enter a first name

    Please enter a last name

    We will never share this with anyone.

    Featured Post

    Why You Should Analyze Threat Actor TTPs

    After years of analyzing threat actor behavior, it’s become clear that at any given time there are specific tactics, techniques, and procedures (TTPs) that are particularly prevalent. By analyzing and understanding these TTPs, you can dramatically enhance your security program.

    I guess that all of us know that caching the data usually increase the performance, but I worried if all of us are aware about the risk that caching the data provides and how to minimize this.  That’s the reason why I decided to write this short art…
    Creating and Managing Databases with phpMyAdmin in cPanel.
    Video by: Steve
    Using examples as well as descriptions, step through each of the common simple join types, explaining differences in syntax, differences in expected outputs and showing how the queries run along with the actual outputs based upon a simple set of dem…
    Polish reports in Access so they look terrific. Take yourself to another level. Equations, Back Color, Alternate Back Color. Write easy VBA Code. Tighten space to use less pages. Launch report from a menu, considering criteria only when it is filled…

    779 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

    14 Experts available now in Live!

    Get 1:1 Help Now