Microsoft SQL Server - Wikipedia. Microsoft SQL Server. Developer(s)Microsoft. Initial release. April 2. SQL Server 1. 0. Stable release. Microsoft® SQL Server® 2012 Express is a powerful and reliable free data management system that delivers a rich and reliable data store for lightweight Web Sites. Get a free, entry-level SQL Server edition that’s ideal for deploying small databases in production environments with the Microsoft SQL Server 2016 Express edition. Microsoft SQL Server is a relational database management system developed by Microsoft. As a database server, it is a software product with the primary function of. SQL Server edition Definition; Enterprise: The premium offering, SQL Server Enterprise edition delivers comprehensive high-end datacenter capabilities with blazing. SQL Server 2. 01. June 1, 2. 01. 6; 1. Development status. Active. Written in. ![]() ![]() Earlier SQL Server versions. Books Online for SQL Server 2014 Books Online; Install SQL Server 2014 Express and other older SQL Server versions.C, C++Operating system. Microsoft Windows, Windows Server, Linux (beta in March 2. As a database server, it is a software product with the primary function of storing and retrieving data as requested by other software applications—which may run either on the same computer or on another computer across a network (including the Internet). Microsoft markets at least a dozen different editions of Microsoft SQL Server, aimed at different audiences and for workloads ranging from small single- machine applications to large Internet- facing applications with many concurrent users. History. The RTM version is 1. SQL Server 2. 01. These editions are. It can manage databases as large as 5. CPU cores). It differs from Enterprise edition in that it supports fewer active instances (number of nodes in a cluster) and does not include some high- availability functions such as hot- add memory (allowing memory to be added while the server is still running), and parallel indexes. Web. SQL Server Web Edition is a low- TCO option for Web hosting. Business Intelligence. Introduced in SQL Server 2. Self Service and Corporate Business Intelligence. It includes the Standard Edition capabilities and Business Intelligence tools: Power. Pivot, Power View, the BI Semantic Model, Master Data Services, Data Quality Services and x. Velocity in- memory analytics. Note that this edition has been retired in SQL Server 2. While there are no limitations on the number of databases or users supported, it is limited to using one processor, 1 GB memory and 1. GB database files (4 GB database files prior to SQL Server Express 2. R2). Two additional editions provide a superset of features not in the original Express Edition. The first is SQL Server Express with Tools, which includes SQL Server Management Studio Basic. SQL Server Express with Advanced Services adds full- text search capability and reporting services. Unlike the other editions of SQL Server, the SQL CE engine is based on SQL Mobile (initially designed for use with hand- held devices) and does not share the same binaries. Due to its small size (1 MB DLL footprint), it has a markedly reduced feature set compared to the other editions. For example, it supports a subset of the standard data types, does not support stored procedures or Views or multiple- statement batches (among other limitations). It is limited to 4 GB maximum database size and cannot be run as a Windows service, Compact Edition must be hosted by the application using it. The 3. 5 version includes support for ADO. NET Synchronization Services. SQL CE does not support ODBC connectivity, unlike SQL Server proper. Developer. SQL Server Developer Edition includes the same features as SQL Server Enterprise Edition, but is limited by the license to be only used as a development and test system, and not as production server. Starting early 2. Microsoft made this version free of charge to the public. This edition does not include SQL Server Integration Services, Analysis Services, or Reporting Services. Discontinued editions. SQL Server 7 and SQL Server 2. Intended for use as an application component, it did not include GUI management tools. Later, Microsoft also made available a web admin tool. Included with some versions of Microsoft Access, Microsoft development tools, and other editions of SQL Server. Had workload or connection limits like MSDE, but no database size limit. Includes standard management tools. Intended for use as a mobile / disconnected proxy, licensed for use with SQL Server 2. Standard edition. It supports 2. 56 logical processors and virtually unlimited memory and comes with Stream. Insight Premium edition. All operations that can be invoked on SQL Server are communicated to it via a Microsoft- defined format, called Tabular Data Stream (TDS). TDS is an application layer protocol, used to transfer data between a database server and a client. Initially designed and developed by Sybase Inc. Consequently, access to SQL Server is available over these protocols. In addition, the SQL Server API is also exposed over web services. SQL Server supports different data types, including primary types such as Integer, Float, Decimal, Char (including character strings), Varchar (variable length character strings), binary (for unstructured blobs of data), Text (for textual data) among others. The rounding of floats to integers uses either Symmetric Arithmetic Rounding or Symmetric Round Down (fix) depending on arguments: SELECT Round(2. Microsoft SQL Server also allows user- defined composite types (UDTs) to be defined and used. It also makes server statistics available as virtual tables and views (called Dynamic Management Views or DMVs). In addition to tables, a database can also contain other objects including views, stored procedures, indexes and constraints, along with a transaction log. A SQL Server database can contain a maximum of 2. OS- level files with a maximum file size of 2. Secondary data files, identified with a . Log files are identified with the . A page is the basic unit of I/O for SQL Server operations. A page is marked with a 9. ID of the object that owns it. Page type defines the data contained in the page: data stored in the database, index, allocation map which holds information about how pages are allocated to tables and indexes, change map which holds information about the changes made to other pages since last backup or logging, or contain large data types such as image or text. While page is the basic unit of an I/O operation, space is actually managed in terms of an extent which consists of 8 pages. A database object can either span all 8 pages in an extent (. A row in a database table cannot span more than one page, so is limited to 8 KB in size. However, if the data exceeds 8 KB and the row contains varchar or varbinary data, the data in those columns are moved to a new page (or possibly a sequence of pages, called an allocation unit) and replaced with a pointer to the data. The partition size is user defined; by default all rows are in a single partition. A table is split into multiple partitions in order to spread a database over a computer cluster. Rows in each partition are stored in either B- tree or heap structure. If the table has an associated, clustered index to allow fast retrieval of rows, the rows are stored in- order according to their index values, with a B- tree providing the index. The data is in the leaf node of the leaves, and other nodes storing the index values for the leaf data reachable from the respective nodes. If the index is non- clustered, the rows are not sorted according to the index keys. An indexed view has the same storage structure as an indexed table. A table without a clustered index is stored in an unordered heap structure. However, the table may have non- clustered indices to allow fast retrieval of rows. In some situations the heap structure has performance advantages over the clustered structure. Both heaps and B- trees can span multiple allocation units. Any 8 KB page can be buffered in- memory, and the set of all pages currently buffered is called the buffer cache. The amount of memory available to SQL Server decides how many pages will be cached in memory. The buffer cache is managed by the Buffer Manager. Either reading from or writing to any page copies it to the buffer cache. Subsequent reads or writes are redirected to the in- memory copy, rather than the on- disc version. The page is updated on the disc by the Buffer Manager only if the in- memory cache has not been referenced for some time. While writing pages back to disc, asynchronous I/O is used whereby the I/O operation is done in a background thread so that other operations do not have to wait for the I/O operation to complete. Each page is written along with its checksum when it is written. When reading the page back, its checksum is computed again and matched with the stored version to ensure the page has not been damaged or tampered with in the meantime. As such, it needs to control concurrent access to shared data, to ensure data integrity—when multiple clients update the same data, or clients attempt to read data that is in the process of being changed by another client. SQL Server provides two modes of concurrency control: pessimistic concurrency and optimistic concurrency. When pessimistic concurrency control is being used, SQL Server controls concurrent access by using locks. Locks can be either shared or exclusive. Exclusive lock grants the user exclusive access to the data—no other user can access the data as long as the lock is held. Shared locks are used when some data is being read—multiple users can read from data locked with a shared lock, but not acquire an exclusive lock. The latter would have to wait for all shared locks to be released. Locks can be applied on different levels of granularity—on entire tables, pages, or even on a per- row basis on tables. For indexes, it can either be on the entire index or on index leaves. The level of granularity to be used is defined on a per- database basis by the database administrator. While a fine- grained locking system allows more users to use the table or index simultaneously, it requires more resources, so it does not automatically yield higher performance. SQL Server also includes two more lightweight mutual exclusion solutions—latches and spinlocks—which are less robust than locks but are less resource intensive. SQL Server uses them for DMVs and other resources that are usually not busy. SQL Server also monitors all worker threads that acquire locks to ensure that they do not end up in deadlocks—in case they do, SQL Server takes remedial measures, which in many cases are to kill one of the threads entangled in a deadlock and roll back the transaction it started.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. Archives
August 2017
Categories |