Results 1 to 13 of 13

Thread: Is this true

  1. #1
    Join Date
    Dec 2004
    Location
    Madison, WI
    Posts
    3,926

    Unanswered: Is this true

    I got this statement from our network administrator and I would like to get any feedback I can get (we've had some conversation regarding speed differences in queries):

    "You do need to also realize however that I know how my system works and how RDP to a terminal server works and that is why I was questioning the timeouts while working from home. When you're logged in remotely to the terminal server (unless you are downloading or exporting the data to your local machine) the time it takes to run queries and access the SQL database absolutely has to be the same as when you are in the office. It's physically impossible for it to be different since the terminal server is in the office and the only difference is where you log in from. The actual query or application still is running locally in the office and communicates across the office lan no matter where you log in from. It may have just been a coincidence with Dave B. running some queries while you were testing things from home."
    Expert Database Programming
    MSAccess since 1.0, SQL Server since 6.5, Visual Basic (5.0, 6.0)

  2. #2
    Join Date
    Feb 2004
    Location
    One Flump in One Place
    Posts
    14,912
    Hi Paul

    That is my understanding of Terminal Services. Effectively you have a three tier set up - the client is merely a browser that receives screen updates from the application server (the terminal server). The terminal server runs the application, querying the database server (SQL Server) and sends images to the client. The client is not data aware. The theory is that a P4 and a P2 connected to the terminal server should "perform" at the same level as it is the terminal server doing all the real work

    HTH
    Testimonial:
    pootle flump
    ur codings are working excelent.

  3. #3
    Join Date
    Dec 2004
    Location
    Madison, WI
    Posts
    3,926

    Question 2

    So if I run a fairly large query remotely connecting in from home and that query times-out, but doesn't time-out when I'm here connected remotely at work, then some other factor is at play?
    Expert Database Programming
    MSAccess since 1.0, SQL Server since 6.5, Visual Basic (5.0, 6.0)

  4. #4
    Join Date
    Feb 2004
    Location
    One Flump in One Place
    Posts
    14,912
    Again that is my understanding.

    Despite the theory, I have had similar experiences where different workstations have differing performance using Terminal Server - this is anecdotal rather than strictly empiricle however.
    I would try a bit of googling and\ or search microsoft just to check if there are any gotchas.
    Testimonial:
    pootle flump
    ur codings are working excelent.

  5. #5
    Join Date
    Feb 2004
    Location
    One Flump in One Place
    Posts
    14,912
    Quote Originally Posted by pkstormy
    It may have just been a coincidence with Dave B. running some queries while you were testing things from home."
    That would be one reasonable explanation - terminal servers experience load stress just like any other server. Go on - blame Dave.
    Testimonial:
    pootle flump
    ur codings are working excelent.

  6. #6
    Join Date
    Dec 2004
    Location
    Madison, WI
    Posts
    3,926

    True or False

    I was told that it was physically impossible to have a query execute from home (using RDP) and time-out and not time-out connecting here at work to the same terminal server. Somehow there seems to be something else in the equation.

    This whole conversation started when I was trying out different methods of retrieving a fairly large dataset. I wanted to test it out at home because I believe there is a speed difference at home verses here at work (which again, I'm told is physically impossible). When I ran it as a query from home, it timed-out. Yet when I ran it by opening it up as a recordset via a function and ADO code, it didn't time out. I'm told that this is also physically impossible.

    The explanation so far seems to be that it timed out via the query at home because someone else was running a fairly large update query against SQL Server here at work while I was running mine at home.
    Expert Database Programming
    MSAccess since 1.0, SQL Server since 6.5, Visual Basic (5.0, 6.0)

  7. #7
    Join Date
    Feb 2004
    Location
    One Flump in One Place
    Posts
    14,912
    Quote Originally Posted by pkstormy
    I was told that it was physically impossible to have a query execute from home (using RDP) and time-out and not time-out connecting here at work to the same terminal server.
    That isn't true however it is true that the reason for this should be unrelated to where the query was run from.

    Quote Originally Posted by pkstormy
    When I ran it as a query from home, it timed-out. Yet when I ran it by opening it up as a recordset via a function and ADO code, it didn't time out.
    Erm - is the variable (environmental rather than programming that is) we are changing here the location of the client or the method you used to obtain the dataset?
    Testimonial:
    pootle flump
    ur codings are working excelent.

  8. #8
    Join Date
    Dec 2004
    Location
    Madison, WI
    Posts
    3,926

    Time-Outs

    "When I ran it as a query from home, it timed-out. Yet when I ran it by opening it up as a recordset via a function and ADO code, it didn't time out."

    The SQL statement was taken directly from the query which makes me confused on why it would time-out via query but not time-out via ADO code.

    I know there is a difference in speed when you compare stored procedures verses queries and SQL Views, etc. But is there a difference when opening up a query verses writing it in ADO code? I imagine that opening the recordsets in a query (maybe pass-through) verses opening the recordset in ADO (adOpenKeyset, adOpenReadOnly) would have something to do with it.

    We also have some people connect to our server via Citrix (published application) and they experience slowdowns in the MSAccess program (again SQL Server linked tables in the MSAccess application) but others don't experience that slowdown in the same program (doing the same thing) and other programs run fine. It seems to happen so arbitrarily that we can't pinpoint what's causing the slowdown and so far have just attributed it to one of us running a large update query at the time which doesn't seem to make sense (because somedays we haven't run any large update queries yet it happens to some users) or we attribute it to a slow connection or something wrong on the users end (but what could be happening on the users end which would cause a slowdown and what's the best way to run any tests?)

    All the MS Access forms are unbound yet the major complaint is that when they start typing in a value in an unbound field, the display cannot keep up with the typing.
    Expert Database Programming
    MSAccess since 1.0, SQL Server since 6.5, Visual Basic (5.0, 6.0)

  9. #9
    Join Date
    Dec 2004
    Location
    Madison, WI
    Posts
    3,926

    Reply from network guys

    Here's my reply and the reply I got from our network guy:

    >So you would say that a query/sql
    > statement which runs client-side as well as server-side takes the same
    > amount of time no matter which machine you log in from remotely (in the
    > office or out of the office)? I take it locally your saying that it runs
    > locally (client-side) on terminal server and everyone's logging into that
    > server.
    >

    That's correct. The only difference is that the outside people (DOA, Star
    users) are logging into Terminal2 instead of Doggett or Mulder but the
    concept is exactly the same.

    My question again is:
    How also does Citrix verses RDP compare with any speed differences if any?
    Last edited by pkstormy; 09-29-05 at 11:30.
    Expert Database Programming
    MSAccess since 1.0, SQL Server since 6.5, Visual Basic (5.0, 6.0)

  10. #10
    Join Date
    Feb 2004
    Location
    One Flump in One Place
    Posts
    14,912
    Ah - so the difference is between running a query and running some ADO code then rather than the client?

    Actually - just seen your next post - so is this query being run client or server side?

    Lol - I'm getting confused now.
    Testimonial:
    pootle flump
    ur codings are working excelent.

  11. #11
    Join Date
    Dec 2004
    Location
    Madison, WI
    Posts
    3,926

    Confusing to me also

    I'm also a little confused myself pootle flump.

    I guess the questions are:

    1. Assuming our network administrator is correct in saying that all the processing occurs on the local terminal server no matter which machine you use to connect to that terminal server (let's say these are queries which are being executed). This would mean that you could have a slow "toaster" (as we call them) or a slow desktop machine connecting to the terminal server and the speed of the query results should be the same as having a fast "toaster" or fast desktop. With this assumption, connecting from home to the terminal server should also produce the results at the same speed no matter how fast or slow their machine is at home. How does writing client-side queries play a role in this situation?? (I'm assuming that writing a SQL Server stored procedure or SQL Server view, etc. would make the result sets return faster.) But what would cause the same query to time-out when run from home via Citrix or RDP versus no time-out error when running it here at work connecting via a desktop or "toaster" to terminal server? (which our network administrator says is impossible). I'm assuming network traffic or if they have a lot of other programs besides citrix open might have something to do with this and ask the user if they connect to the internet on their machine at home (not running citrix), is that also slow (which our network administrator says does not make any difference.) It seems to me that if their IE is running slow on their machine, you would also see a speed difference in their Citrix connection to our application. Am I wrong on this?

    2. Now throw in ADO code versus a query and according to our network administrator, there shouldn't be any difference in the speed of running a make ('totals') table query verses opening a recordset and writing the 'totals' table, all parameters being the same (we're totalling off of around 3.5 million records). Again, our network administrator says that either way should not make a difference.

    3. Now throw in Citrix verses RDP and the question is: could there be a difference in the speed of connecting to our terminal server via Citrix versus RDP? (I'm guessing there probably is).

    4. And lastly, why is there an arbitrary lag for some users who connect via Citrix from home to our terminal server when they type characters in an unbound field where the characters being typed to that field do not keep up with the screen but it doesn't happen consistently and for everyone at the same time? Can this be attributed to some problem on the user's end? It seems that if we run a fairly large update query on the same tables here at work, this seems to somehow affect the speed of the application for the citrix users but would this cause such a lag in the character typing on a completely unbound form?

    Sorry if this doesn't explain things the right way. It's become sort of an issue where I'd like to understand more of what is exactly happening especially since I'm the Database Administrator and so far I haven't gotten an answer I've found which seems to logically fit. Are there any articles refering to anything like this situation?
    Expert Database Programming
    MSAccess since 1.0, SQL Server since 6.5, Visual Basic (5.0, 6.0)

  12. #12
    Join Date
    Feb 2004
    Location
    Irving, TX (Dallas, Fort Worth)
    Posts
    379

    Security

    You need to introduce security into this discussion, because it effects the speed more than any other factor.

    Even though they say all execution is on the local machine, when security is implemented wrong it keep polling the remote machine during a process run and that is what craps out everything.

    Security has an option for RDS to allow local processing, without interleaving (I think this is the right term). If that is done then you run in the theoretical mode (or close to it). Else you are running with interleaving, polling of the remote machine is involved and the process slow to less that 50%.

    DBS4M

  13. #13
    Join Date
    Dec 2004
    Location
    Madison, WI
    Posts
    3,926

    Security

    Thanks for the reply dbsupport4me. RDP (or is it RDS or RDC?) has been flying super fast (faster than work) for me connecting at home on everything but the MSAccess totalling routines which are querying off a huge dataset (~4 million records). Our other users are mostly connecting via Citrix. How would security play a role in #1, #2, #3, and #4? Wouldn't there be some sort of consistency with the delays?
    Expert Database Programming
    MSAccess since 1.0, SQL Server since 6.5, Visual Basic (5.0, 6.0)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •