MS SQL сервер

**MS SQL Server** бол microsoft компанийн үйлдвэрлэсэн Холбоотой Өгөгдлийн Сангийн удирдлагын систем юм. Түүний албан ёсны хэл нь Transact-SQL бөгөөд мөн ANSI/ISO стандартын Зохион Байгуулалттай Дарааллын Хэл /SQL/ ийг Microsoft болон Sybase хоёр хоёулаа хэрэглэдэг. 

## Түүх 
MS SQL Server –ийн кодын бааз нь (хувилбар 7.0 оос өмнөх) Sybase SQL Server дээр суурилсан байсан ба microsoft-ын дээд түвшний өгөгдлийн сангийн зах зээлд Oracle , IBM , Sybase тай өрсөлдөж орох оролдлого байсан. Microsoft нь Sybase болон Ashton-Tate-тай албан ёсоор баг болж 1989 оны үед SQL Server 1.0 for OS/2 гэж нэрлэгдсэн анхны бүтээгдэхүүнийг үүсгэж зах зээлд гаргасан ба энэ нь 
Unix, VMS дээрх Sybase SQL Server 3.0 тэй бараг адилхан байсан. Microsoft SQL Server 4.2 хувилбар нь 1992 онд (Microsoft OS/2 хувилбар 1.3 дээр хамт багцлагдах боломжтой) гарсан. Дараа нь Microsoft SQL Server 4.21 for Windows NT хувилбар нь Windows NT 3.1 системтэй ижил хугацаанд мөн боловсруулагдаж дууссан. Microsoft SQL Server 6.0 нь NT системд зориулагдсан анхны хувилбар байсан ба Sybase аас ямар нэгэн зааварчилгаа ороогүй байсан.

Windows NT хөгжүүлэгдэж дууссан үед Sybase, microsoft тэдний өөрсдийн загвар болон борлуулалтын төлөвлөгөөнөөс болж заргалдан хоёр тусдаа замаар явахаар болж салсан. Microsoft нь microsoft-ийн үйлдлийн системд зориулагдан бичигдсэн SQL ийн бүх хувилбарын эрхийг тохиролцож өөртөө авсан. Дараа нь Sybase энэхүү хэргээс болж өөрийн бүтээгдэхүүний нэрийг Adaptive Server Enterprise болгон өөрчилсөн. 1994 он хүртэл Microsoft-ийн SQL Server нь Sybase-ийн 3 зохиогчийн эрхийн тэмдэглэгээг өөрийн бүтээгдэхүүний баглаан дээр гаргаж байсан. 
Хуваагдсанаас хойш, хэд хэдэн өөрчлөлтүүд тус тусдаа хийгдсэн. SQL Server 7.0 хувилбар нь анхны Хэрэглэгчийн Зурган интерфейс /GUI/ тэй байсан ба Sybase-ийн кодыг өөрөөр ахин бичсэн байсан. Энэ нь MS SQL Server 2000 дээр амжилттай болсон ба энэ хувилбар нь анхны IA-64 архитектурт зориулагдсан хувилбар байсан.

Microsoft-ийн өмнөх SQL Server бүтээгдэхүүн (SQL Server 2000) ээс хойшхи 6 жилийн хугацаанд, хүчин чадал нь улам боловсронгуй болж, клиент-IDE хэрэгслүүд, мөн хэд хэдэн нэмэлт системүүдээр SQL Server 2005 нь хүчирхэгжсэн байна. Эдгээрт : ETL хэрэгсэл (SQL сервер нэгтгэх үйлчилгээ эсвэл SSIS ), Мэдээллийн Сервер/Reporting Server/, бас OLAP , data mining сервер (Analysis Services), бас хэд хэдэн захианы технологиуд тухайлбал Service Broker, Notifcation Services нар юм.

### SQL Server 2005 
SQL Server 2005 нь 2005 оны 11 сард хөгжүүлэгдэж дууссан ба SQL Server 2000 –ийн залгамжлагч байв. Энэ нь XML өгөгдлийг зохион байгуулах үндсэн дэмжлэгтэй, нэмэлтээр холбоотой өгөгдлийг зохион байгуулах боломжтой байв. Энэ зорилгын хүрээнд XML дата төрлийг өгөгдлийн сангийн өгөгдлийн 2 төрөл болох багана болон literal уудад хоёуланд нь ашиглах боломжтой болгосон.

XML баганууд нь XSD тогтолцоотой холбогдох боломжтой ; XML дата нь хадгалагдахдаа дахин шалгагддаг: XML нь өгөгдлийн санд хадгалагдахаасаа өмнө 2тын тоололд шилждэг. Мөн тусгайлан индекслэх боломжууд XML датад боломжтой байдаг. XML дата нь Xquery-г ашиглан биелэгддэг; SQL Server 2005 өөртөө T-SQL хэлийг агуулсан байдаг ба энэ нь T-SQL дэх Xquery –г суулгах боломжтой болгосон. Нэмж хэлэхэд, Xquery нь XML DML гэж нэрлэгдэх шинэ өргөтгөлийг тодорхойлж өгсөн ба энэ нь query-д суурилсан өөрчлөлтийг XML датад хийх боломжтой болгосон. SQL Server 2005 нь бас SOAP хүсэлтүүд доторх задлагдсан TDS пакетуудыг хэрэглэгдэж байх үед вэб сервист задлах боломжийг өгөгдлийн сангийн серверт олгодог. Өгөгдөл вэб сервисээр нэвтрэх үед үр дүн нь XML ээр буцдаг. 

Холбоост өгөгдөлд, T-SQL нь алдааг хянах болон рекурсив дараалалтай ажиллах боломжийг агуулдаг. SQL Server 2005 нь бас шинэ индекслэх алгоритм ба маш сайн алдааг сэргээх системүүдээр тоноглогдсон. Дата хуудсууд нь алдааг хайх уян хатан алгоритмаар шалгадаг, мөн маш сайн шалгадаг боломж зэрэг нь маш сайн үр дүнг үзүүлдэг. Зөвшөөрөл ба нэвтрэх шалгалтууд илүү нарийвчилсан, мөн команд боловсруулагч нь нэг дор 2 командын дарааллыг илүү ухаалгаар ажиллуулах боломжтой болсон. Хүснэгт болон индексүүд дэх хэсгүүд илүү бие даасан, тэгэхээр багц руу өгөгдлийн санг оруулах нь илүү хялбар болсон. SQL CLR нь SQL Server 2005 ийг .NET Framework тай холбохоор зохицуулагдсан.

### SQL Server 2008 
SQL Server ийн дараагийн хувилбар нь SQL Server 2008 юм. “Katmai” код нэртэй бөгөөд 2008 оны 2 сарын 27 нд хөгжүүлэгдэж эхэлсэн . 2008 оны 3-р улиралд хөгжүүлэгдэж дуусна гэсэн төлөвлөгөөтэй байна. Хамгийн сүүлийн мэдээ нь 2 сарын 19нд гарсан ба self-tuning (өөрөө тохируулах) өгөгдлийн зохион байгуулах технологи, өөрөө зохион байгуулах, SQL Server Always On технологийн хөгжүүлэлт зэргийг хөгжүүлэх хугацаа дуусахаас өмнө боловсруулах зорилготой ажиллаж байна. SQL Server 2008 нь зохион байгуулагдсан өгөгдөл, хагас зохион байгуулагдсан өгөгдөл энэ дотроо зураг, аудио болон видео файлууд гэх мэт мультимедиа файлыг дэмжиж ажилладаг болно. Одоогийн хувилбарт мультимедиа файлыг BLOBs байдлаар хадгалж болох боловч тэд чанар муутай хадгалагддаг. Мicrosoft компанийн албан тушаалтны хэлснээр SQL Server 2008 нь XML, email, цаг/хуанли, файл, бичиг баримт гэх мэт бүх төрлийн өгөгдлийн төрлийг хайх,анализ хийх, хуваалцах(shareлэх), синхронизиац хийх боломжтойгоор хадгалдаг болох болно.

Бусад олон өгөгдлийн төрлүүд нэмэгдсэн, тодорхойлогдсон цаг, огноо болон байрлал-хамааралтай өгөгдлийн Spatial төрөл гэх мэт. Зохион байгуулагдсан өгөгдөл, хагас зохион байгуулагдсан өгөгдөлд дэмжлэг болохоор FILESTREAM өгөгдлийн төрөл нэмэгдэж орсон, энэ нь файл системд хадгалагдсан дурын файлд хэрэглэгдэх боломжтой. Зохион байгуулагдсан болон метадата нь SQL Server-ийн өгөгдлийн санд хадгалагдсан байдаг, учир нь файл системд зохион байгуулагдаагүй бүрэлдэхүүнүүд ч бас хадгалагдаж байдаг. SQL Server 2008 нь рекурсив командын дарааллыг хэрэглэхгүйгээр өөртөө нэгтгэгдсэн байдаг T-SQL -г ашиглан hierarchical (шатласан) өгөгдлийн бүтцийг зохион байгуулах зэрэг олон боломжуудтай. 

## Хувилбарууд 
MS SQL Server нь олон янзын хувилбаруудтай ба тус бүр өөрсдийн давамгай чадваруудтай ба мөн өөр өөр түвшний хэрэглэгчдэд зориулагдсан. Эдгээрийг доор дурдвал :
;SQL Server Compact Edition (SQL CE): Энэ нь SQL Server-ийн бага оврын хувилбар юм (2MB DLL footprint-тэй). Бусдаасаа бага хэмжээтэй байх ба мөн чадваруудыг нь багасган тохируулсан. Энэ хувилбар нь хамгийн ихдээ 4 ГБ хэмжээтэй байх боломжтой өгөгдлийн сангаар хязгаарлагдсан. Мөн Windows орчинд ажилладаггүй. 
;SQL Server Express Edition: Бол SQL Server-н багасгасан, үнэгүй хувилбар боловч өгөгдлийн сангийн үндсэн цөм хөдөлгүүрийг агуулсан байдаг. Өгөгдлийн сангийн , хэрэглэгчийн тоонд хязгаарлалт байдаггүй ба нэг процессор, 1GB ram, 4 GB өгөгдлийн сангийн файлтай байхаар хязгаарлагддаг. Бүтэн өгөгдлийн сан нь ганцхан .DBF файл байдаг. Энэ нь тэгэхээр XCOPY технологийг ашиглахад хялбар болгож байдаг. 
; SQL Server Workgroup Edition: Энэ хувилбар нь өгөгдлийн сангийн цөм хөдөлгүүр, функцуудыг агуулдаг боловч нэмэлт үйлчилгээнүүдийг агуулдаггүй. 
;SQL Server Standard Edition: Энэ хувилбар нь өгөгдлийн сангийн цөм хөдөлгүүр, stand-alone үйлчилгээний дагуух зүйлсийг агуулдаг. Enterprise хувилбараас ялгаатай нь хязгаарлагдмал нэг дор холбогдох боломжтой хэрэглэгчийн тоо юм. Бас зарим өндөр түвшний hot-add memory (сервер ажиллаж байх үед ч санах ой нэмэх боломжтой ! )гэх мэт функцууд , параллель индекслэх функц байдаггүй. 
; SQL Server Enterprise Edition: Энэ хувилбар нь SQL Server-н иж бүрэн хувилбар бөгөөд өгөгдлийн сангийн цөм хөдөлгүүр, нэмэлт үйлчилгээнүүд, SQL Server cluster –г үүсгэх, зохион байгуулах өргөн хэмжээний боломжууд хавсаргагдсан байдаг. 
; SQL Server Developer Edition: Энэ хувилбар нь Enterprise хувилбарын зарим чанаруудыг агуулсан боловч зөвхөн хөгжүүлэх, тестлэх боломжтой, өөрөөр хэлбэл бүтээгдэхүүн (өгөгдлийн бааз) серверт ажиллуулах боломжгүй лицензтэй байдаг. Энэ хувилбар нь Microsoft-н DreamSpark хөтөлбөрийн дагуу оюутнууд үнэгүй татаж авах боломжтой байдаг. 

## Хавсралт 
MS SQL Server-н талаар доорх номнуудаас илүү дэлгэрэнгүй авч болно:
* Delaney, Kalen, et al (2007). *Inside SQL Server 2005: Query Tuning and Optimization*. Microsoft Press. ISBN 0-7356-2196-9.
* Ben-Gan, Itzik, et al (2006). *Inside Microsoft SQL Server 2005: T-SQL Programming*. Microsoft Press. ISBN 0-7356-2197-7.

Ангилал:Хамааралт өгөгдлийн сангийн менежментийн систем
Ангилал:Microsoft программ хангамж
Ангилал:Windows