پایگاه داده: تفاوت میان نسخه‌ها

محتوای حذف‌شده محتوای افزوده‌شده
جز ویرایش Joojecom378 (بحث) به آخرین تغییری که FreshmanBot انجام داده بود واگردانده شد
برچسب: واگردانی
FreshmanBot (بحث | مشارکت‌ها)
جز اصلاح فاصله مجازی + اصلاح نویسه با استفاده از AWB
خط ۷:
بعبارت دیگر، «پایگاه داده» اشاره به مجموعه‌ای از داده‌های مرتبط و ساختار یا سازمان است که دسترسی به این اطلاعات معمولاً از طریق «سیستم مدیریت پایگاه داده» (DBMS) متشکل از یک مجموعه یکپارچه از نرم‌افزارهای کامپیوتری است که اجازه می‌دهد تا کاربران برای ارتباط برقرار کردن با یک یا چند پایگاه داده‌ها و دسترسی به تمام اطلاعات موجود در پایگاه داده (اگر چه محدودیت ممکن است که دسترسی محدود به اطلاعات خاص وجود داشته باشد) را فراهم می‌کند. چگونگی این که توابع مختلف که ورود، ذخیره‌سازی و بازیابی مقادیر زیادی از اطلاعات و همچنین ارائه برای مدیریت را نشان می‌دهد که این اطلاعات سازمان یافته‌است. از آنجا که از ارتباط نزدیک بین آنها، اصطلاح «پایگاه داده» است که اغلب معمولی استفاده می‌شود برای اشاره به هر دو یک پایگاه داده و DBMS استفاده می‌شود. خارج از دنیای فناوری اطلاعات حرفه‌ای، پایگاه داده مدتی است که اغلب برای اشاره به هر مجموعه‌ای از داده‌های مرتبط (مانند یک صفحه گسترده یا یک شاخص کارت) استفاده می‌شود. در این مقاله تنها با پایگاه داده‌ای که در آن اندازه و شرایط ضروری استفاده از سیستم مدیریت پایگاه داده مهم است سروکار داریم. دی.بی.ام.اس. اس موجود به توابع مختلف اجازه می‌دهد که مدیریت یک پایگاه داده و داده‌های خود را انجام دهد که می‌توان آن را به چهار گروه اصلی طبقه‌بندی کرد:
# تعریف داده‌ها - ایجاد، اصلاح و حذف از تعاریف که سازمان داده را با استفاده از آن تعریف می‌کنیم.
# به روز رسانیروزرسانی - درج، اصلاح و حذف داده‌های واقعی.
# ارائه اطلاعات در یک فرم به‌طور مستقیم قابل استفاده یا برای پردازش بیشتر توسط برنامه‌های کاربردی دیگر. داده‌های بازیابی ممکن است در یک فرم اساساً همان است که در پایگاه داده یا در یک فرم جدید به دست آمده با تغییر یا ترکیب داده‌های موجود از پایگاه داده‌های ذخیره شده در دسترس ساخته شده‌است.
# اداره - ثبت نام و نظارت بر کاربران، اجرای امنیت داده‌ها، نظارت بر عملکرد، حفظ تمامیت داده‌ها، خرید و فروش با کنترل همزمانی، و دوره نقاهت بعد اطلاعات است که توسط برخی از رویداد مانند شکست غیرمنتظره سیستم خراب به وجود می‌آید.
خط ۱۹:
اولین کاربردهای اصطلاح پایگاه داده به ژوئن ۱۹۶۳ بازمی‌گردد، یعنی زمانی که شرکت System Development Corporation مسئولیت اجرایی یک طرح به نام «توسعه و مدیریت محاسباتی یک پایگاه داده‌ای مرکزی» را بر عهده گرفت. پایگاه داده به عنوان یک واژه واحد در اوایل دهه ۷۰ در اروپا و در اواخر دهه ۷۰ در خبر نامه‌های معتبر آمریکایی به کار رفت. (بانک داده‌ای یا در اوایل سال ۱۹۶۶ در روزنامه [[واشینگتن پست]] کار رفت)
 
اولین سیستم مدیریت پایگاه داده در دهه ۶۰ گسترش یافت. از پیشگامان این شاخه [[چارلز بکمن]] می‌باشد. مقالات بکمن این را نشان داد که فرضیات او کاربرد بسیار مؤثرتری برای دسترسی به وسایل ذخیره‌سازی را مهیا می‌کند. در آن زمانهازمان‌ها پردازش داده بر پایه کارت‌های منگنه و نوارهای مغناطیسی بود که پردازش سری اطلاعات را مهیا می‌کند. دو نوع مدل داده‌ای در آن زمانهازمان‌ها ایجاد شد:[[CODASYL]] موجب توسعه مدل شبکه‌ای شدکه ریشه در نظریات بکمن داشت و مدل سلسله مراتبی که توسط North American Rockwell ایجاد شد و بعداً با اقتباس از آن شرکت [[IBM]] محصولIMS را تولید نمود.{{سخ}}
مدل رابطه‌ای توسط E. F. Codd در سال ۱۹۷۰ ارائه شد. او مدل‌های موجود را مورد انتقاد قرار می‌داد. برای مدتی نسبتاً طولانی این مدل در مجامع علمی مورد تأیید بود. اولین محصول موفق برای میکرو کامپیوترها dBASE بودکه برای سیستم‌عامل‌هایCP/M و PC-DOS/MS-DOS ساخته شد. در جریان سال ۱۹۸۰ پژوهش بر روی پایگاه‌های مدل توزیع شده و ماشین‌های پایگاهی (database machines) متمرکز شد، اما تأثیر کمی بر بازار گذاشت. در سال ۱۹۹۰ توجهات به طرف مدل شیء گرا جلب شد. این مدل جهت کنترل داده‌های مرکب لازم بود و به‌سادگی بر روی پایگاه داده‌های خاص، مهندسی داده (شامل مهندسی نرم‌افزار منابع) و داده‌های چند رسانه‌ای کار می‌کرد.
 
خط ۲۸:
 
== توضیح دی.بی.ام. اس ==
DBMS یک سیستم نرم‌افزار پیچیده تکامل یافته‌است و توسعه آن به‌طور معمول به هزاران نفر و سال تلاش وتوسعه نیاز دارد. برخی از دی.بی.ام. اس مانند Adabas، اوراکل و DB2. هدف دی.بی.ام. اس رفع نیازهای برنامه‌های کاربردی ست. با این حال، این واقعیت است که هزینه توسعه می‌تواند مقرون به صرفه تر باشد. با این حال، DBMS همیشه راه حل بهینه‌ای دارد: در برخی مواردDBMS ممکن سربار غیرضروری را معرفی کند. نمونه‌های بسیاری از سیستم‌های که با استفاده از پایگاه داده‌های خاص وجود دارد. یک مثال رایج سیستم ایمیل است: سیستم‌های ایمیل طراحی شده‌است برای بهینه‌سازی مدیریت پیام‌های ایمیل، و نیازی بخش قابل توجهی از قابلیت DBMS است. بسیاری از بانکهایبانک‌های اطلاعاتی نرم‌افزار برنامه‌ای است برای دسترسی به پایگاه داده از طرف کاربران نهایی، بدون قرار دادن رابط DBMS به‌طور مستقیم. برنامه نویسان نرم‌افزار ممکن است یک پروتکل سیم به‌طور مستقیم، یا به احتمال زیاد از طریق یک رابط برنامه‌نویسی برنامه استفاده کنند. طراحان پایگاه داده و مدیران پایگاه داده با DBMS از طریق رابط‌های اختصاص داده شده برای ساخت و حفظ برنامه‌های کاربردی ' پایگاه‌های داده، و در نتیجه نیاز به برخی از دانش بیشتر و درک در مورد چگونگی عملکرد دی.بی.ام. اس و رابط خارجی و پارامترهای تنظیم دی.بی.ام. اس تعامل می‌کنند.
 
== نمونه ==
خط ۳۵:
پلت فرم SAP HANA موضوع بسیار مهم در حافظه پایگاه داده است. تا ماه مه سال ۲۰۱۲، HANA قادر به اجرا بر روی سرور با حافظه اصلی 100TB طراحی شده توسط آی بی ام بود. بنیانگذار شرکت ادعا کرد که این سیستم به اندازه کافی بزرگ برای اجرای بزرگترین مشتریان SAP بود.
 
پایگاه داده فعال شامل رویداد معماری محور است که می‌تواند به شرایط هر دو داخل و خارج از پایگاه داده، پاسخ دهد. استفاده احتمالی عبارتند از نظارت بر امنیت، هشدار، جمع‌آوری آمار و مجوز. بسیاری از بانکهایبانک‌های اطلاعاتی و ارائه ویژگی‌های پایگاه داده فعال در قالب عوامل پایگاه داده.
 
پایگاه داده ابر متکی بر فناوری ابر. پایگاه داده و بسیاری از DBMS، «در ابر» در حالی که برنامه‌های کاربردی آن هم توسط برنامه نویسان توسعه یافته و بعد حفظ می‌شود و توسط کاربران نهایی از طریق aweb مرورگر و رابط‌های برنامه کاربردی گسترش می‌یابد. آرشیو داده‌ها از پایگاه داده‌های عملیاتی و اغلب از منابع خارجی است مانند شرکت‌های تحقیقات بازار. انبار منبع اصلی اطلاعات برای استفاده توسط مدیران و دیگر کاربران نهایی است که ممکن است دسترسی به داده‌های عملیاتی نداشته باشند. به عنوان مثال، فروش اطلاعات ممکن است به روز بالغ هفته جمع و تبدیل از کد محصول داخلی به استفاده از UPCs به‌طوری‌که می‌توان آن‌ها را با داده‌های ACNielsen مقایسه شده‌است. • بعضی از اجزای اساسی و ضروری از انبار داده‌ها شامل: بازیابی، تجزیه و تحلیل، و داده کاوی، تبدیل، بارگیری و مدیریت داده‌ها، تا که آن‌ها را برای استفاده بیشتر در دسترس قرار دهد.
خط ۵۹:
پایگاه داده‌های تلفن همراه که در دستگاه رایانه همراه و تلفنهای همراه قرار دارد.
 
پایگاه داده عملیاتی ذخیره داده مفصل در مورد عملیات سازمان است. آن‌ها به‌طور معمول پردازش حجم نسبتاً بالایی از به روز رسانیروزرسانی با استفاده از معاملات را بر عهده دارند. مثالهامثال‌ها عبارتند از پایگاه داده‌های مشتری که رکورد تماس، اعتبار، و اطلاعات جمعیتی در مورد کسب و کار • مشتریان را بر عهده دارد. پایگاه داده پرسنل که نگهداری اطلاعات مانند حقوق و دستمزد، مزایای، داده مهارت‌های مورد کارکنان، سیستم‌های برنامه‌ریزی منابع سازمانی است که جزئیات رکورد در مورد اجزای محصول، موجودی قطعات، و پایگاه داده مالی که پیگیری پول سازمان، حسابداری و معاملات مالی را بر عهده دارد.
 
پایگاه داده موازی به دنبال بهبود عملکرد از طریق موازی برای انجام وظایفی مانند: بارگذاری اطلاعات، شاخص ساختمان و ارزیابی نمایش داده است. معماری DBMS موازی عمدتاً توسط معماری سخت‌افزار انجام می‌شود که عبارتند از:
خط ۸۲:
 
== طراحی و مدل‌سازی ==
اولین وظیفه یک طراح پایگاه داده این است که برای تولید یک مدل داده مفهومی که منعکس‌کننده ساختار اطلاعات در پایگاه داده برگزار می‌شود طرحی پیشنهاد کند. به منظور توسعه یک مدل موجودیت-ارتباط، اغلب با کمک ابزار طراحی. یکی دیگر از روش محبوب زبان مدل سازیمدل‌سازی یکپارچه است. مدل داده موفق به دقت حالت منعکس‌کننده بستگی دارد مدل ممکن از جهان خارج شود: به عنوان مثال، اگر مردم می‌توانند بیش از یک شماره تلفن داشته باشد، در حقیقت اجازه نمی‌دهد که بیش از یک اطلاعات ذخیره شود. طراحی مدل داده مفهومی خوب نیاز به درک خوبی از دامنه کاربرد کاربران دارد. معمولاً شامل پرسیدن سوال‌های عمیق در مورد چیزهایی که یک سازمان به آن علاقه دارد می‌باشد، مانند " یک مشتری می‌تواند یک عرضه‌کننده کالا باشد؟ "، یا " اگر یک محصول با دو فرم مختلف از بسته‌بندی به فروش می‌رسد، همان محصول یا محصولات مختلف آن است ؟"پرسش تعاریف اصطلاحات برای اشخاص (مشتریان، محصولات، پرواز، بخش پرواز) و روابط آن‌ها و ویژگی‌های ایجاد شده مورد استفاده قرار می‌گیرد. تولید مدل داده مفهومی گاهی اوقات شامل ورودی از فرایندهای کسب و کار، یا تجزیه و تحلیل گردش کار در سازمان است. این می‌تواند به ایجاد اطلاعاتی در پایگاه داده مورد نیاز کمک کند. به عنوان مثال، می‌تواند به تصمیم‌گیری پایگاه داده مورد نیاز برای نگهداری داده‌های تاریخی و همچنین داده‌های فعلی کمک کند. پس از تولید یک مدل داده مفهومی کاربران خوشحال هستند.
 
مرحله بعدی این است که این طرح را ترجمه کنند که پیاده‌سازی ساختمان داده‌های مربوطه در پایگاه داده‌است. این فرایند اغلب به نام طراحی پایگاه داده‌های منطقی، و خروجی مدل منطقی داده‌ها بیان شده در قالب یک طرح است. در حالی که مدل داده مفهومی (در تئوری حداقل) مستقل از انتخاب فناوری پایگاه داده‌است، مدل منطقی داده‌ها یک مدل پایگاه داده خاص پشتیبانی شده توسط DBMS را انتخاب می‌کند. (مدل شرایط داده‌ها و مدل پایگاه داده می‌باشد اغلب به جای یکدیگر استفاده می‌شود، اما در این مقاله ما با استفاده از مدل داده برای طراحی یک پایگاه داده خاص، و مدل پایگاه داده برای نماد مدل سازیمدل‌سازی بیان طراحی استفاده می‌کنیم) مدل پایگاه داده محبوب‌ترین پایگاه دادهٔ مدل رابطه‌ای، یا دقیق تر، مدل رابطه‌ای به عنوان زبان SQLنشان داده‌است. روند ایجاد یک طراحی پایگاه داده منطقی با استفاده از این مدل با استفاده از روش روشمند شناخته شده به عنوان روش عادی است. اطمینان حاصل می‌شود که در ابتدا «حقیقت» است که تنها در یک مکان ثبت شده، به‌طوری به روز رسانیروزرسانی و حذف به صورت خودکار برای حفظ انسجام انجام می‌شود. مرحله نهایی از طراحی پایگاه داده این است که تصمیم‌گیری برای عملکرد، مقیاس پذیری، بهبود، امنیت، و مانند آن تأثیر می‌گذارد که اغلب طراحی پایگاه داده‌های فیزیکی نامیده می‌شود. هدف کلیدی در این مرحله استقلال داده‌است، به این معنی که تصمیمات اتخاذ شده برای اهداف بهینه‌سازی عملکرد باید نامرئی باشد که برای پایان دادن به کاربران و برنامه‌های کاربردی است. طراحی فیزیکی عمدتاً توسط عملکرد مورد نیاز رانده می‌شود، و نیاز به دانش خوبی از الگوهای حجم کار و دسترسی انتظار می‌رود، و درک عمیق از ویژگی‌های ارائه شده توسط DBMS انتخاب شده‌است. یکی دیگر از جنبه طراحی پایگاه داده‌های فیزیکی امنیتی است. این شامل هر دو تعریف کنترل دسترسی به اشیاء پایگاه داده و همچنین تعریف سطوح امنیتی و روش برای داده‌ها است.
 
=== بحث اجرایی و تخصصی ===
در زمینه ساخت بانک اطلاعاتی برخی کدنویسان غیرمتخصص هستند که در آغاز زندگی حرفه‌ای خود بدون آشنایی ساختاری با پایه‌های سرور بانک اطلاعاتی اقدام به ساخت جداول یا حتی ایجاد ارتباطات بین جدولی می‌کنند (relations یا RDBMS). در طراحی بانک اطلاعاتی چند بحث ثابت همیشه مطرح است از جمله نرمال‌سازی (اجتناب از تکرار برای صرفه‌جویی در حجم)، نانرمال‌سازی (تلاش برای تکرار برای افزایش سرعت)، آشنایی با indexing یا مرتب‌سازی هدفمند بر اساس حروف شامل کلاسترد ایندکس (تقریباً همان PKs) و ایندکس‌های دوم با مبحث لوک‌آپ دوم (برای مثال ایندکس نام پس از یافتن به کلاستردایندکس ردیف خودش که معمولاً PK است مراجعه می‌کند تا ردیف را استخراج کند) و بحث‌هایی مانند [[درخت بی|B-tree]] که برخی به اشتباه آنراآن را با [[درخت دودویی|درخت باینری]] اشتباه می‌گیرند اما در واقع درخت خود-متعادل‌شونده است بدان معنی که خود سرور بر اساس تعداد ردیف‌های جدول اطلاعاتی تصمیم می‌گیرد که تا چند مرحله ایندکس‌ها را دسته دسته کند تا بتواند با مقایسه مقدار مورد جستجو در سریع‌ترین زمان ممکن به داده‌های ردیف مورد نظر برسد. سطوح مختلف این دسته‌بندی‌ها به سه گونه گره ریشه یا روت (تنها دسته‌بندی آغازین)، گره‌های شاخه با برنچ (میانی) و گره‌های برگ یا لیفز که به لیف پیجز شناخته‌می‌شوند (پایانی) وجود دارند. از جمله مباحث مهم افزایش کارایی بانک اطلاعاتی ایجاد ایندکس‌های ترکیبی یا کامپوزیت متناسب با نوع جستجو است که در زمان ایجاد ارتباطات بین جداول از اهمیت مهمی برخوردار است. در بین تمام این مباحث در برخی سرورها مانند مای‌اس‌کیوال اینکه از چه نوع موتور اطلاعاتی MyISAM یا InnoDB استفاده شود از اولین سوالات است زیرا اولی نماینده سرعت در ثبت اطلاعات است (معمولاً بایگانی) و دومی نماینده تعادل در سرعت هم ثبت و هم خواندن به این دلیل در اولی در زمان ثبت داده کل جدول را قفل می‌کند و با عنوان غیرتراکنشی یا غیرترزاکشن شناخته می‌شود در حالی که دومی برعکس است و ردیف‌ها را قفل می‌کند.
 
معمولاً فرایند طراحی بانک اطلاعاتی پس از مرحله [[طوفان فکر|طوفان فکر یا مغز]] آغاز می‌شود که مرحله طراحی مدل نیز ممکن است در همان محیطی انجام شود که برای طوفان فکر استفاده شده مانند MS Visio اما معمولاً پس از قطعی شدن تصمیمات دربارهٔ ساختار پروژه، مرحله مدل‌کشی و طراحی پایگاه داده مستقیم در استودیوهای طراحی بانک اطلاعاتی مانند MySQL Workbench یا SQL server management studio انجام می‌شود از این رو چه پروژه تحت [[فرایند یکپارچه رشنال|RUP]] یا [[توسعه نرم‌افزاری چابک|اجیل]] اجرا شود تغییرات می‌تواند بلافاصله در مدل اصلی اعمال شود.