PDA

View Full Version : سوال: File Group کردن یک بانک چه کارایی دارد؟



SYNDROME
چهارشنبه 01 خرداد 1387, 22:18 عصر
با سلام
می خواستم بدانم که برای چه یک بانک را File Group می کنند؟
اگر امکان دارد یک مثال بزنید که طبق چه اصولی باید این کار انجام شود؟
چطور می توان این عمل را انجام دارد؟
با تشکر از دوستان

حمیدرضاصادقیان
چهارشنبه 01 خرداد 1387, 22:31 عصر
سلام.ببین بحث filegroup رو بیشتر روی سرورهایی که از هاردهای raid استفاده میکنند قرار میدهند.
بیشتر برای سرعت بیشتر خواندن و نوشتن اطلاعات انجام میشه.معمولا در دیتابیس های حجم زیاد چند فایل دیتا برای یک دیتابیس می سازند. و هرکدوم رو روی یک Filegroup قرار میدهند بعد هرکدوم از این Filegroup ها رو هم روی یکی از پارتیشن های هاردهای Raid قرار میدهند.وقتی کاربران با این دیتابیس شروع به کار میکنند اطلاعات به صورت پاراللی روی چند هارد و چند فایل دیتا نوشته میشود.
برای راه اندازی اون هم هنگامی که دیتابیس رو داری ایجاد میکنی میتونی مشخص کنی .

SYNDROME
پنج شنبه 02 خرداد 1387, 07:32 صبح
بعد از ایجاد DataBase نمی توان این عمل را انجام داد؟
آیا زمانی که اطلاعات شما حجم بالایی دارند و فقط یک سرور دارید که یک هارد دارد این روش کمکی می کند؟
با تشکر

حمیدرضاصادقیان
پنج شنبه 02 خرداد 1387, 07:57 صبح
سلام.بعد از ایجاد دیتابیس میتونی اینکارو انجام بدی.روی دیتابیس راست کلیک میکنی در قسمت PRoperties در Datafile میتونی فایلهای جدید ایجاد کنی و هرکدوم رو در یک فایل گروپ قرار بدی.
نه فایده ای نداره که روی یک هارد فایل گروپ به کار ببری. به خاطر اینکه در هارد Raid اگر 4 تا هارد داشته باشی همزمان هر 4تا باهم شروع به نوشتن اطلاعات میکنند ولی در یک هارد فقط روی یک فایل می نویسه.

AminSobati
پنج شنبه 02 خرداد 1387, 12:16 عصر
دوست عزیزم Filegroup کاربردهای زیادی داره و در SQL Server 2005 باز هم به این کاربردها اضافه شده:

1) جدا کردن فیزیکی جداولی که زیاد با هم Join میشن
2) جدا کردن ایندکسها از اصل جداول
3) جدا کردن اطلاعات حجیم (مثل text,ntext,image) از سایر اطلاعات که زیاد دسترسی دارند
4) read-only کردن بخشی از دیتابیس برای مقاصد Administration
5) Backup گیری از بخش خاصی از دیتابیس
6) در SQL Server 2005 امکان Partitioning و جدا کردن رکوردهای یک جدول فرضا بر حسب سال مالی

SYNDROME
جمعه 03 خرداد 1387, 06:58 صبح
با تشکر از دوستان
من می خواهم در یک بانک که 5 تا Table دارد 3 تا از اینها را در یک Group فایل قرار دهم.دقیقاً باید چه مراحلی را برای این کار انجام دهم؟
منتظر راهنمایی دوستان هستم

AminSobati
جمعه 03 خرداد 1387, 08:27 صبح
دقیقا باید اول Filegroup بسازید، بعد Data File بهش بدین، بعد Clustered Index جدول رو Rebuild کنین و مسیر جدید رو روی Filegroup مورد نظر بدین.
ساخت Filegroup و Data File از صفحه Properties دیتابیس مربوطه انجام میشه، Rebuild کردن ایندکس هم براحتی با Design کردن جدول و تغییر آیتم Filegroup و Save. که البته تمام این مراحل، دستور TSQL هم داره