در یک شبکه کامپیوتری، برنامه های کاربردی می توانند روی سیستم های مختلف اجرا شوند، در این محیط دو راهکار استفاده می شود: در معماری client/server بانک اطلاعاتی روی سیستم سرور و برنامه های کاربردی روی کلاینت ها هستند و در معماری توزیعی هم بانک اطلاعاتی و هم برنامه های کاربردی روی سیستم های مختلف شبکه قرار دارند.
معماری Client/Server
غالبا DBMS ها به صورت Client/Server هستند که شامل یک برنامه سرویس دهنده و چندین برنامه سرویس گیرنده می باشند.کاربران از طریق برنامه های سرویس گیرنده درخواست هایی را به سرویس دهنده ارسال می کنند و برنامه ای بنام مدیر ارتباطات داده ای این درخواست ها را گرفته و پس از اجرا توسط بخش های دیگر پاسخ را به سرویس گیرنده ها می فرستد. برنامه ها و نرم افزارهای سرویس گیرنده و سرویس دهنده می توانند روی یک سیستم یا روی سیستم های مختلفی قرار گرفته باشند.در هر صورت روش ارتباطی آنها یکسان می باشد. در این معماری بانک اطلاعاتی بر روی کامپیوتر سرویس دهنده قراردارد.
در سیستم های مشتری/خدمتگزار ممکن است چندین ماشین مشتری قادر به دستیابی به ماشین سرویس دهنده باشند. بنابر این چندین سیستم مشتری مجزا می توانند بصورت مشترک از یک بانک اطلاعاتی منفرد استفاده کنند.
یک ماشین سرویس دهنده، چند ماشین سرویس گیرنده
پردازش توزیعی
سیستم های دیگری نیز هستند که بر خلاف سیستم های مشتری/خدمتگزار بانک اطلاعاتی در کل شبکه پخش شده است. یعنی هر سیستم دارای یک بانک اطلاعاتی محلی با یک برنامه برای مدیریت بانک اطلاعاتی و چندین برنامه کاربردی بعنوان سرویس گیرنده دارد. برنامه های کاربردی بیشتر وقتشان را با داده های محلی کار می کنندو اگر به اطلاعات قرارگرفته در یک سیستم راه دور نیاز داشتند درخواستی به سرویس دهنده محل اطلاعات فرستاده و پاسخ را دریافت می کنند. در این سیستم ها ترافیک شبکه به شدت پائین آمده و دسترسی به داده های محلی سریع است، پردازش در کل شبکه توزیع شده است ضمن اینکه امکان استفاده اشتراکی از اطلاعات نیز وجود دارد.
روش کار سیستم طوری است که اولا: تمام اطلاعات در کل شبکه با هم همگام بود و ناسازگاری نداشته باشند. ثانیا: کاربر متوجه پراکندگی داده ها نشده و بدون دانستن محل قرارگیری آنها بتواند به آنها دسترسی پیدا کند.
هر ماشین هم سرویس دهنده و سرویس گیرنده