Кіріспе
Windows деректер сақтау жүйесі жобасы
WinFS (Windows Future Storage дегеннің қысқаша атауы) – Microsoft компаниясы әзірлеген және 2003 жылы алғаш рет көрсетілген, деректерді сақтау және басқару жүйесі жобасы. Ол Microsoft Windows операциялық жүйесі үшін құрылымды, жартылай құрылымды және құрылымдалмаған деректерді сақтау және басқаруға арналған кеңейтілген сақтау жүйесі ретінде жоспарланған. WinFS ақпаратты сақтау үшін реляциялық деректер базасын қамтиды және егер олар үшін жақсы анықталған схема болса, кез келген ақпаратты сақтауға мүмкіндік береді. Жеке деректер элементтері белгілі бір атрибуттарға негізделген жүйемен немесе пайдаланушымен нақты көрсетілген қатынастар арқылы байланыстырылуы мүмкін. Деректердің жақсы анықталған схемасы болғандықтан, кез келген қолданба деректерді қайта пайдалана алады; ал қатынастарды пайдалану арқылы байланысты деректерді тиімді ұйымдастыруға және алуға болады. Жүйе ақпараттың құрылымы мен мақсатын білгендіктен, деректерді іздеуді және олардың арасындағы қатынастарды пайдалану арқылы әртүрлі деректерді жинақтауды қамтамасыз ететін күрделі сұраныстарды жасауға болады. WinFS және оның ортақ типтік схемасы қолданбаға әртүрлі деректер түрлерін тануға мүмкіндік береді, бірақ әртүрлі деректер түрлерін көрсету үшін қолданбаны бағдарламалау қажет. Осыдан келіп, барлық дерек түрлерін көруге немесе өңдеуге болатын бір қолданбаны жасау мүмкін емес; керісінше, WinFS қолданбаларға барлық деректердің құрылымын түсінуге және одан әрі пайдалана алатын ақпаратты алуға мүмкіндік береді. WinFS 2003 жылғы Professional Developers Conference-те таныстырылған кезде, Microsoft IWish деп аталатын бейнепрезентацияны да жариялады, онда бірыңғай типтік жүйенің мүмкіндіктерін пайдаланатын интерфейстерді қалай көрсетуге болатынын көрсететін макет интерфейстері ұсынылды. Видеода көрсетілген идеялар элементтердің қатынастарын пайдаланатын қолданбалардан бастап, сүзгілеу опцияларын динамикалық түрде ұсынуға дейін, бірнеше байланысты деректер түрлерін топтастыратын және оларды біріктірілген түрде көрсететін қолданбаларға дейін қамтыды. WinFS «Longhorn» технологиялар толқынының маңызды тірегі ретінде қарастырылды және Windows-тың келесі нұсқасының құрамына енгізілуі жоспарланған. Бірақ кейін WinFS Windows Vista шығарылғаннан кейін шығарылады деп шешілді, алайда 2006 жылдың маусым айында бұл жоспарлар тоқтатылды, ал оның кейбір компоненттік технологиялары ADO.NET және Microsoft SQL Server-ге енгізілді.
WinFS (short for Windows Future Storage) was the code name for a canceled data storage and management system project based on relational databases, developed by Microsoft and first demonstrated in 2003. It was intended as an advanced storage subsystem for the Microsoft Windows operating system, designed for persistence and management of structured, semi structured and unstructured data. WinFS includes a relational database for storage of information, and allows any type of information to be stored in it, provided there is a well defined schema for the type. Individual data items could then be related together by relationships, which are either inferred by the system based on certain attributes or explicitly stated by the user. As the data has a well defined schema, any application can reuse the data; and using the relationships, related data can be effectively organized as well as retrieved. Because the system knows the structure and intent of the information, it can be used to make complex queries that enable advanced searching through the data and aggregating various data items by exploiting the relationships between them. While WinFS and its shared type schema make it possible for an application to recognize the different data types, the application still has to be coded to render the different data types. Consequently, it would not allow development of a single application that can view or edit all data types; rather, what WinFS enables applications to do is understand the structure of all data and extract the information that they can use further. When WinFS was introduced at the 2003 Professional Developers Conference, Microsoft also released a video presentation, named IWish, showing mockup interfaces that showed how applications would expose interfaces that take advantage of a unified type system. The concepts shown in the video ranged from applications using the relationships of items to dynamically offer filtering options to applications grouping multiple related data types and rendering them in a unified presentation. WinFS was billed as one of the pillars of the "Longhorn" wave of technologies, and would ship as part of the next version of Windows. It was subsequently decided that WinFS would ship after the release of Windows Vista, but those plans were shelved in June 2006, with some of its component technologies being integrated into ADO. NET and Microsoft SQL Server.
Сәулет
WinFS дерек қатынастары механизмін қамтамасыз ету үшін SQL Server 2005-тен алынған реляциялық қозғалтқышты пайдаланады. WinFS сақтағыштары – бұл FILESTREAM атрибуты орнатылған, жай SQL Server дерекқорының (.MDF) файлдары. Бұл файлдар "System Volume Information" деп аталатын, қол жеткізуге шектеу қойылған папкада (томның түбінде орналасқан), "WinFS" папкасының ішіндегі папкаларда, осы сақтағыштардың GUID атауларымен сақталады. WinFS.exe, онда қатынастық деректер қоймасы орналасқан; WinFSSearch.exe, онда индекстеу және сұрату қозғалтқышы орналасқан; WinFPM.exe (WinFS File Promotion Manager), ол негізгі файл жүйесімен байланысады. Ол NET Framework API жиынтығы арқылы мүмкіндіктеріне бағдарламалық түрде қол жеткізуге мүмкіндік береді. Бұл қолданбаларға арнайы дерек түрлерін анықтауға, деректер арасындағы қатынастарды анықтауға, ақпаратты сақтауға және алуға, сондай-ақ кеңейтілген іздеулерді жүргізуге мүмкіндік береді. Қатынастарды басқа қолданбалар немесе пайдаланушы да анықтай алады. WinFS біріктірілген сақтауды қамтамасыз етеді, бірақ деректер сақтағыштарында сақталатын форматты анықтауға дейін жетпейді. Оның орнына ол қолданбаға тән форматтарда деректерді жазуды қолдайды. Бірақ қолданбалар файл форматын қалай түсіндіру керектігін анықтайтын схеманы ұсынуы керек. Осылайша анықталған контактілік элемент қасиеттер өрісін толтырып, оны сақтау арқылы контакт туралы ақпаратты сақтау үшін пайдаланылады. Бастапқы сақтауда міндетті деп белгіленген өрістерді ғана толтыру қажет. Олар белгілі бір шарт орындалғанда орындалатын операциялар. WinFS ережелері деректер мен деректер қатынастары бойынша жұмыс істейді. Мысалы, "Name" өрісін қамтитын элемент құрылғанда және егер осы өрістің мәні белгілі бір атау болса, элементті басқа элементпен байланыстыратын қатынас құру керек деп айтатын ереже жасалуы мүмкін. WinFS ережелері кез келген сыртқы қолданбаға да кіре алады. Мысалы, белгілі бір контактіден электрондық пошта келген сайын хабарлама жіберетін қолданбаны іске қосатын ереже құрастыруға болады. Олардағы деректерге жеке нысандардың қасиеттеріне қол жеткізу арқылы қол жеткізуге болады. Барлық сәйкестіктердің жиынтығы қайтарылады, оны UI элементіне жаппай көрсету үшін немесе жеке-жеке қарау үшін байланыстыруға болады. WinFS элементін WinFS емес файлдық жүйеге көшіруге болады, бірақ егер бұл дерек элементі WinFS сақтағышына қайтарылмаса, ол WinFS ұсынатын кеңейтілген қызметтерді қолдамайды. WinFS API сонымен қатар WinFS емес қолданбалармен бөлісуді де қолдайды. WinFS WinFS сақтағыштарына қол жеткізу үшін қабықша нысанын ұсынады. Бұл нысан WinFS элементтерін виртуалды папкалар иерархиясына бейімдейді және кез келген қолданба оған қол жеткізе алады. Бұл WinFS сақтағыштарын WinFS элементтерінің иерархиялық көрінісін ұсыну арқылы қарауға мүмкіндік берді. Ол автоматты түрде қол жеткізу рұқсаттарына, күніне және басқа метадеректерге негізделген виртуалды папкаларды жасады және оларды дәстүрлі папкалар сияқты иерархиялық ағаш көрінісінде көрсетті. Қолданба әртүрлі элемент түрлері үшін жекелеген қойындыларды жасады. StoreSpy дүкендегі элементтерді, қатынастарды, көп жиынтықтарды, ішкі элементтерді, кеңейтімдерді және басқа да түрлерді толық метадеректермен бірге көруге мүмкіндік берді. Сондай-ақ, қолмен іздеуді орындау және оларды виртуалды папкалар ретінде сақтау үшін іздеу интерфейсі ұсынылды. Сонымен қатар, WinFS ережелерінің графикалық көрінісі де ұсынылды. Алайда, ол элементтерді немесе олардың қасиеттерін өңдеуге рұқсат бермеді, бірақ болашақ нұсқаға қосу жоспарланған. Бірақ WinFS жобасы іске асырылмас бұрын қысқартылды.
WinFSSearch. exe, which hosts the indexing and querying engine
WinFPM. exe (WinFS File Promotion Manager), which interfaces with the underlying file system
It allows programmatic access to its features via a set of NET Framework APIs. These enable applications to define custom made data types, define relationships among data, store and retrieve information, and allow advanced searches. Relations can also be specified by other applications or the user. WinFS provides unified storage, but stops short of defining the format that is to be stored in the data stores. Instead it supports writing data in application specific formats. But applications must provide a schema that defines how the file format should be interpreted. The Contact Item defined in this way will be used to store information regarding the Contact, by populating the properties field and storing it. Only those fields marked as mandatory needs to be filled up during initial save. which are executed when a certain condition is met. WinFS rules work on data and data relationships. For example, a rule can be created that states that whenever an Item is created which contains field "Name" and if the value of that field is some particular name, a relationship should be created that relates the Item with some other Item. WinFS rules can also access any external application. For example, a rule can be built which launches a Notify application whenever a mail is received from a particular contact. The data in them can be accessed by accessing the properties of individual objects. A set of all matches is returned, which can then be bound to a UI widget for displaying en masse or enumerating individually. A WinFS item can also be copied to a non WinFS file system, but unless that data item is put back into the WinFS store, it will not support the advanced services provided by WinFS. The WinFS API also provides some support for sharing with non WinFS applications. WinFS exposes a shell object to access WinFS stores. This object maps WinFS items to a virtual folder hierarchy, and can be accessed by any application. which allowed one to browse WinFS stores by presenting a hierarchical view of WinFS Items. It automatically generated virtual folders based on access permissions, date and other metadata, and presented them in a hierarchical tree view, akin to what traditional folders are presented in. The application generated tabs for different Item types. StoreSpy allowed viewing Items, Relationships, MultiSet, Nested Elements, Extensions and other types in the store along with its full metadata. It also presented a search interface to perform manual searches, and save them as virtual folders. The application also presented a graphical view of WinFS Rules. However, it did not allow editing of Items or their properties, though it was slated for inclusion in a future release. But the WinFS project was cut back before it could materialize.
Браузердің түрі
WinFS-ке WinFS типтерін қарауға және WinFS типтері арасындағы иерархиялық байланысты визуализациялауға арналған WinFS Type Browser деп аталатын тағы бір қосымша кіреді. WinFS типі, кіріктірілген типтері де, қолданушы жасаған схемалары да, оны қолдайтын барлық қасиеттері мен әдістерімен бірге визуализациялануы мүмкін. Ол сондай-ақ, одан туындаған типтерді және типтік схеманы кеңейтетін басқа типтерді де көрсетеді. Дегенмен, WinFS-ке қосылған болса да, ол қолдау көрсетілмейтін құрал ретінде жарияланды. Ол Opath сұраныстарын жазуға арналған графикалық интерфейс ұсынады. Оны нысаналық объектінің типін таңдап және сұраныстың параметрлерін анықтау арқылы пайдалануға болады. Бұған қоса, Intellisense сияқты параметрді автоматты толықтыру мүмкіндігі де бар. Содан кейін оны DataGrid басқару элементіне сұраныстың нәтижелерін байланыстыру, WinFS-те деректердің көрінісін құру немесе жай ғана сұраныс жолын алу сияқты визуализациялау міндеттерін орындау үшін қолдануға болады.
"Оранж" жобасы
Microsoft WinFS үшін деректерді визуализациялауға арналған бағдарлама жасау жобасын іске қосты. Ол "Project Orange" деп аталды және Windows Presentation Foundation негізінде құрылған деп есептелді. Оның WinFS сақтағыштарындағы элементтерді зерттеуді қамтамасыз етуі, ал деректер арасындағы байланыстар навигациялық модельдің маңызды бөлігі болуы тиіс еді. Бұл пайдаланушыларға WinFS сақтағыштарын графикалық түрде ұйымдастыруға мүмкіндік беруі керек еді, сондай-ақ IWish тұжырымдамалық бейне WMV файлында көрсетілген көптеген идеяларды іске асыруға арналған еді. Дегенмен, WinFS жобасы тоқтатылғандықтан, бұл жобаның қазіргі жағдайы белгісіз.