Thread: Difference between centralised & client server database?

  1. #1
    Dr Dipshi++ mike_g's Avatar
    Join Date
    Oct 2006
    Location
    On me hyperplane
    Posts
    1,218

    Difference between centralised & client server database?

    I have to write this essay type thing and part of it wants me to explain:
    The differences between centralised, client server and distributed database configuration
    Now i get the difference between distributed/centralised, but whats the difference between centralised and client server? Google hasent been much help so far

    Cheers.

  2. #2
    Crazy Fool Perspective's Avatar
    Join Date
    Jan 2003
    Location
    Canada
    Posts
    2,640
    Centralized means the data is in one place. Client server just means the clients are in a different place than the data. The statement above is worded poorly, but perhaps they mean the difference between local database and client/server. (?)

  3. #3
    Dr Dipshi++ mike_g's Avatar
    Join Date
    Oct 2006
    Location
    On me hyperplane
    Posts
    1,218
    Yeah, thats kind of the impression I got. That maybe a centralised database meant users had access on a LAN only; not the net. However they would still both be centralised so its a little confusing. Still, I think I may as well go with that idea.

  4. #4
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    A centralized database system is the traditional database schema in which the database at located in one place. It is not to say the database may not be distributed among several servers, mind you. It simply means the database is considered one unit managed by one DBMS in one location and to which clients connect.

    A distributed database configuration is achieved when there are several database servers replicating (or not) information between themselves and each with its own DBMS to which clients connect. Many companies starting at a given size now operate in this model. Branches or small offices hold their own - usually - stripped down version of the main database and data is usually replicated through scheduling.

    Mind you that it is irrelevant how these databases are connected. WAN, LAN, Internet, is all the same.

    I have no idea what a client-server database configuration is. Only thing I can think of is the client being some sort of filter through which requests to and from the database are passed. In that sense, users would connect to the client and not directly to the DBMS.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  5. #5
    C++ Witch laserlight's Avatar
    Join Date
    Oct 2003
    Location
    Singapore
    Posts
    28,413
    I have no idea what a client-server database configuration is. Only thing I can think of is the client being some sort of filter through which requests to and from the database are passed.
    I might guess that "client server" is in contrast to an embedded database, but then there was no mention of the latter in the question.
    Quote Originally Posted by Bjarne Stroustrup (2000-10-14)
    I get maybe two dozen requests for help with some sort of programming or design problem every day. Most have more sense than to send me hundreds of lines of code. If they do, I ask them to find the smallest example that exhibits the problem and send me that. Mostly, they then find the error themselves. "Finding the smallest program that demonstrates the error" is a powerful debugging tool.
    Look up a C++ Reference and learn How To Ask Questions The Smart Way

  6. #6
    Kernel hacker
    Join Date
    Jul 2007
    Location
    Farncombe, Surrey, England
    Posts
    15,677
    I'm going to have a go at defining the three terms:

    Centralized database.
    I guess the old-fashioned mainframe solution would classify as centralized database - that is, you have one large computer to which you connect a large(ish) number of terminals. Everyone is working directly on the machine that holds the database, and the data never really leaves the mainframe machine [it gets displayed on a terminal, which is directly connected to the mainframe].

    Client/Server database.
    Client/Server DB system relies [traditionally] on a single database-server, which passes information to a client machine, where some of the data processing is done [e.g. verifying data-input, formatting data to be displayed/printed]. This reduces the load on the database server machine, as it doesn't need to perform any processing other than giving out and receiving data.

    Distributed database.
    Takes the client/server concept one step further by keeping multiple databases, where each database serves a set of clients. Generally, keeping the different databases in sync is one of the challenges here. The benefit is that the database can be (more) "local" to the user.

    --
    Mats
    Compilers can produce warnings - make the compiler programmers happy: Use them!
    Please don't PM me for help - and no, I don't do help over instant messengers.

  7. #7
    Dr Dipshi++ mike_g's Avatar
    Join Date
    Oct 2006
    Location
    On me hyperplane
    Posts
    1,218
    Thanks for the input guys.

  8. #8
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    Quote Originally Posted by matsp View Post
    I guess the old-fashioned mainframe solution would classify as centralized database - that is, you have one large computer to which you connect a large(ish) number of terminals. Everyone is working directly on the machine that holds the database, and the data never really leaves the mainframe machine [it gets displayed on a terminal, which is directly connected to the mainframe].
    Mind you, while true, other models also classify as centralized DBMSes. Namely:

    - Several replicated SQL Servers operating through load balancing hardware
    - Several SQL Servers in a DBMS cluster
    - The MySQL server in your machine
    - These boards database
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  9. #9
    Kernel hacker
    Join Date
    Jul 2007
    Location
    Farncombe, Surrey, England
    Posts
    15,677
    Quote Originally Posted by Mario F. View Post
    Mind you, while true, other models also classify as centralized DBMSes. Namely:

    - Several replicated SQL Servers operating through load balancing hardware
    - Several SQL Servers in a DBMS cluster
    - The MySQL server in your machine
    - These boards database
    Except that most of those are used as Server/Client systems [most often the DB for a forum is not on the same machine as the Apache server, for example].

    --
    Mats
    Compilers can produce warnings - make the compiler programmers happy: Use them!
    Please don't PM me for help - and no, I don't do help over instant messengers.

  10. #10
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    Yes, they are. But the term "client-server" doesn't apply to a DBMS to define its physical organization (as does centralized and distributed). It instead defines the DBMS access configuration. So the author of that question either means something completely new to me, or didn't formulate the question correctly.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  11. #11
    Kernel hacker
    Join Date
    Jul 2007
    Location
    Farncombe, Surrey, England
    Posts
    15,677
    Quote Originally Posted by Mario F. View Post
    Yes, they are. But the term "client-server" doesn't apply to a DBMS to define its physical organization (as does centralized and distributed). It instead defines the DBMS access configuration. So the author of that question either means something completely new to me, or didn't formulate the question correctly.
    So you don't think my three definitions are what the original poster's question refers to?

    --
    Mats
    Compilers can produce warnings - make the compiler programmers happy: Use them!
    Please don't PM me for help - and no, I don't do help over instant messengers.

  12. #12
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    Yes. To start with.

    I also think your definitions are wrong, with the exception of the distributed model.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  13. #13
    Crazy Fool Perspective's Avatar
    Join Date
    Jan 2003
    Location
    Canada
    Posts
    2,640
    I disagree with your first two definitions as well. Any model with a centralized data source can be a centralized database (even with remote clients). Also, nothing about the client server model dictates that data must be centralized.

    Centralized v.s. distributed is one issue. Client/server is totally orthogonal which makes the meaning of the sentence in the initial post difficult to understand.

  14. #14
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    The question could probably have been formulated as "The differences between centralised and distributed database configuration, client/server and embed access models"

    As it is, it looks a little like asking "the difference between big, small and red apples".
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  15. #15
    Cat without Hat CornedBee's Avatar
    Join Date
    Apr 2003
    Posts
    8,895
    Could it be that the initial question is about the difference between "centralized, client-server" databases and "distributed" databases?
    All the buzzt!
    CornedBee

    "There is not now, nor has there ever been, nor will there ever be, any programming language in which it is the least bit difficult to write bad code."
    - Flon's Law

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Client/server problem; server either stops receiving data or client stops sending
    By robot-ic in forum Networking/Device Communication
    Replies: 10
    Last Post: 02-16-2009, 11:45 AM
  2. Parsing a flat file to a SQl Server database?
    By Michael71 in forum C Programming
    Replies: 0
    Last Post: 01-16-2007, 12:45 PM
  3. Client application having problem receiving from server side?
    By dp_76 in forum Networking/Device Communication
    Replies: 2
    Last Post: 08-04-2005, 02:58 PM
  4. Client abnormally terminates when server isn't found
    By Brain Cell in forum Networking/Device Communication
    Replies: 10
    Last Post: 03-16-2005, 04:29 AM
  5. Client closes before server receives
    By LuckY in forum Networking/Device Communication
    Replies: 3
    Last Post: 07-06-2004, 04:08 PM