Diferencia entre revisiones de «WinFS»

De Wikipedia, la enciclopedia libre
Contenido eliminado Contenido añadido
Sin resumen de edición
Revertidos los cambios de 213.96.197.227 a la última edición de
Línea 6: Línea 6:


Finalmente el proyecto se descartó el [[25 de junio]] de [[2006]]. Se planeó incorporar en [[Windows 7]], la nueva versión de [[Windows]], pero una vez más de descartó utilizar este sistema de archivos.
Finalmente el proyecto se descartó el [[25 de junio]] de [[2006]]. Se planeó incorporar en [[Windows 7]], la nueva versión de [[Windows]], pero una vez más de descartó utilizar este sistema de archivos.
WinFS
From Wikipedia, the free encyclopedia De Wikipedia, la enciclopedia libre
Jump to: navigation , search Saltar a navegación, búsqueda


WinFS (short for Windows Future Storage ) [ 1 ] is the code name for a data storage and management system based on relational databases , developed by Microsoft and first demonstrated in 2003 as an advanced storage subsystem for the Microsoft Windows operating system , designed for persistence and management of structured , semi-structured as well as unstructured data . WinFS (acrónimo de Windows Future Storage) [1] es el nombre de código para un almacenamiento de datos y sistema de gestión basado en bases de datos relacionales, desarrollado por Microsoft y demostró por primera vez en 2003 como un subsistema de almacenamiento avanzadas para el sistema de explotación de Microsoft Windows, diseñado para la persistencia y la gestión de estructurados, semi-estructurados, así como los datos no estructurados.

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. WinFS incluye una base de datos relacional para el almacenamiento de información, y permite que cualquier tipo de información que se almacena en ella, siempre que exista un esquema bien definido para el tipo. 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. Elementos de datos individuales podrían estar relacionados entre sí por relaciones, que son inferidos por el sistema basado en ciertos atributos o explícitamente por el usuario. 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. Como los datos tiene un esquema bien definido, cualquier aplicación puede reutilizar los datos, y utilizando las relaciones, los datos relacionados pueden ser eficazmente organizada, así como recuperar. 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. Dado que el sistema conoce la estructura y la intención de la información, se puede utilizar para hacer consultas complejas que permiten realizar búsquedas avanzadas a través de los datos y la agregación de varios elementos de datos mediante la explotación de las relaciones entre ellos.
A mockup calendar application sorting images by the dates and using their relationship with contacts to filter the images. Una aplicación de calendario maqueta de clasificación imágenes en las fechas y el uso de su relación con los contactos para filtrar las imágenes. WinFS aimed to provide a shared schema system that would enable such a scenario. De WinFS objetivo de garantizar el sistema de esquemas compartidos que permitan a tal escenario.

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. Mientras que WinFS y su esquema de tipo común hacen posible que una aplicación para reconocer los tipos de datos diferentes, la solicitud aún no se ha codificado para hacer los tipos de datos diferentes. Consequently, it would not allow development of a single application that can view or edit all data types; rather what WinFS enables applications to understand is the structure of all data and extract the information that it can use further. En consecuencia, no permitiría el desarrollo de una aplicación única que puede ver o editar todos los tipos de datos, más bien lo que WinFS permite que las aplicaciones de entender es la estructura de todos los datos y extraer la información que puede utilizar más. When WinFS was introduced at the 2003 Professional Developers Conference , Microsoft also released a video presentation, named IWish, [ 2 ] showing mockup interfaces that showed how applications would expose interfaces that take advantage of a unified type system. Cuando WinFS se introdujo en el 2003 Professional Developers Conference, Microsoft también dio a conocer un video de presentación, denominada IWish, [2] muestra interfaces maqueta que muestra cómo las aplicaciones se exponen interfaces que se aprovechan de un sistema de tipo unificado. 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. Los conceptos mostrados en el video van desde las aplicaciones que utilizan las relaciones de los artículos que ofrecen opciones de filtrado de forma dinámica a las aplicaciones de agrupación de múltiples tipos de datos relacionados y hacerlas en una presentación unificada.

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. WinFS fue presentado como uno de los pilares de la "ola Longhorn" de las tecnologías, y pondría a la venta como parte de la próxima versión de 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 upcoming releases of ADO.NET and Microsoft SQL Server . [ 3 ] While it was then assumed by observers that WinFS was finished as a project, in November 2006 Steve Ballmer announced that WinFS was still in development, though it was not clear how the technology was to be delivered. [ 4 ] Posteriormente se decidió que sería WinFS buque después del lanzamiento de Windows Vista, pero esos planes fueron archivados en junio de 2006, con algunos de sus tecnologías de componentes que se integran en próximas versiones de ADO.NET y Microsoft SQL Server. [3] Si bien es tomado después por los observadores que WinFS se terminó como un proyecto, en noviembre de 2006 Steve Ballmer anunció que WinFS todavía estaba en desarrollo, aunque no estaba claro cómo la tecnología iba a ser entregada. [4]
Contents Contenidos
[hide]

* 1 Motivation 1 Motivación
* 2 Overview 2 Resumen
* 3 Development 3 Desarrollo
* 4 Data storage 4 Almacenamiento de datos
o 4.1 Architecture 4.1 Arquitectura
+ 4.1.1 Data store 4.1.1 Datos de la tienda
o 4.2 Data model 4.2 Modelo de datos
+ 4.2.1 Type system 4.2.1 Tipo de sistema de
+ 4.2.2 Relationships 4.2.2 Relaciones
+ 4.2.3 Rules 4.2.3 Reglamento
o 4.3 RAV 4,3 RAV
o 4.4 Access control De control de acceso 4.4
* 5 Data retrieval 5 Obtención de datos
o 5.1 Searches 5.1 Búsquedas
o 5.2 Notifications 5.2 Notificaciones
* 6 Data sharing 6 Intercambio de datos
* 7 Application support 7 Solicitud de apoyo
o 7.1 Shell namespace 7,1 de espacio de nombres de Shell
o 7.2 Microsoft Rave 7,2 Microsoft Rave
o 7.3 StoreSpy 7,3 StoreSpy
o 7.4 Type Browser 7.4 el tipo de navegador
o 7.5 OPather 7,5 OPather
o 7.6 Project "Orange" 7.6 Proyecto "Naranja"
* 8 See also 8 Véase también
* 9 References 9 Referencias
* 10 External links 10 Enlaces externos

[ edit ] Motivation [Editar] Motivación

Many filesystems found on common operating systems , including the NTFS filesystem which is used in modern versions of Microsoft Windows, store files and other objects only as a stream of bytes , and have little or no information about the data stored in the files. Sistemas de ficheros Muchos se encuentran en los sistemas operativos comunes, incluyendo el sistema de archivos NTFS que se utiliza en las versiones modernas de Microsoft Windows, los archivos de almacén y otros objetos sólo como un flujo de bytes, y tienen poca o ninguna información sobre los datos almacenados en los archivos. Such file systems also provide only a single way of organizing the files, namely via directories and file names. [ 5 ] [ 6 ] Estos sistemas de archivos también se proporcionan sólo una sola manera de organizar los archivos, es decir, a través de los directorios y nombres de archivo. [5] [6]

Because a file system has no knowledge about the data it stores, [ 5 ] applications tend to use their own, often proprietary , file formats . Debido a que un sistema de archivos no tiene conocimiento acerca de los datos que almacena, [5], las aplicaciones tienden a utilizar sus propios, a menudo de propiedad, los formatos de archivo. This hampers sharing of data between multiple applications. Esto dificulta el intercambio de datos entre múltiples aplicaciones. It becomes difficult to create an application which processes information from multiple file types, because the programmers have to understand the structure and semantics of all the files. [ 7 ] Using common file formats is a workaround to this problem but not a universal solution; there is no guarantee that all applications will use the format. Se hace difícil crear una aplicación que procesa la información de diversos tipos de archivo, porque los programadores tienen que entender la estructura y la semántica de todos los archivos. [7] Uso de formatos de archivo común es una solución a este problema, pero no una solución universal, hay hay garantía de que todas las aplicaciones se utiliza el formato. Data with standardized schema, such as XML documents and relational data fare better as they have a standardized structure and run-time requirements. [ 8 ] De datos con el esquema estandarizado, como los documentos XML y datos relacionales les va mejor ya que tienen una estructura estandarizada y ejecutar los requisitos de tiempo. [8]

Also, a traditional file system can retrieve and search data based only on the filename, because the only knowledge it has about the data is the name of the files that store the data. [ 7 ] A better solution is to tag files with attributes that describe them. Además, un sistema de archivos tradicionales pueden recuperar y la búsqueda de datos basado sólo en el nombre del archivo, ya que el único conocimiento que tiene acerca de los datos es el nombre de los archivos que el almacén de datos. [7] Una mejor solución es etiquetar los archivos con atributos que describirlos. Attributes are metadata about the files such as the type of file (such as document , picture , music , creator , etc). [ 5 ] This allows files to be searched for by their attributes, in ways not possible using a folder hierarchy, such as finding "pictures which have person X" . Los atributos son los metadatos sobre los archivos tales como el tipo de archivo (como en el documento, fotografía, música, creador, etc.) [5] Esto permite que los archivos que se deben buscar por sus atributos, de manera que no es posible usando una jerarquía de carpetas, por ejemplo, como encontrar "imágenes que tienen la persona X". The attributes can be recognizable by either the file system natively, or via some extension. [ 5 ] Desktop search applications take this concept a step further. Los atributos pueden ser reconocidos por el sistema de archivos de forma nativa, o por medio de alguna extensión. [5] aplicaciones de búsqueda de escritorio tomar este concepto un paso más. They extract data, including attributes, from files and index it. Que extraer los datos, incluidos los atributos de los archivos y el índice de ella. To extract the data, they use a filter for each file format. Para extraer los datos, que utilizan un filtro para cada formato de archivo. This allows for searching based on both the file's attributes and the data in it. [ 5 ] Esto permite búsquedas basadas en los atributos del archivo y los datos en ella. [5]

However, this still does not help in managing related data, as disparate items do not have any relationships defined. Sin embargo, esto todavía no ayuda en la gestión de datos relacionados, como elementos dispares, no tienen ninguna relación definida. For example, it is impossible to search for "the phone numbers of all persons who live in Acapulco and each have more than 100 appearances in my photo collection and with whom I have had e-mail within last month" . Por ejemplo, es imposible para buscar "los números de teléfono de todas las personas que viven en Acapulco y cada uno tiene más de 100 apariciones en mi colección de fotos y con los que he tenido e-mail en el último mes". Such a search encompasses needs to have a data model which has both the semantics as well as relationships of data defined. [ 5 ] [ 6 ] WinFS aims to provide such a data model and the runtime infrastructure that can be used to store the data as well as the relationships between data items according to the data model, doing so at a satisfactory level of performance. Tal búsqueda abarca las necesidades de contar con un modelo de datos que tiene tanto la semántica, así como las relaciones de los datos definidos. [5] [6] WinFS tiene por objeto proporcionar un modelo de datos y la infraestructura en tiempo de ejecución que pueden ser utilizados para almacenar los datos como , así como las relaciones entre los elementos de datos según el modelo de datos, haciendo a un nivel satisfactorio de rendimiento.
[ edit ] Overview [Editar] Información general

WinFS natively recognizes different types of data, such as picture , e-mail , document , audio , video , calendar , contact , among others; rather than just bytestreams as with file systems. WinFS nativa reconoce diferentes tipos de datos, como la fotografía, correo electrónico, documentos, audio, vídeo, calendario, contactos, entre otros, en lugar de sólo bytestreams como con sistemas de archivos. Data stored and managed by the system are instances of the data type recognized by the WinFS runtime. Los datos almacenados y gestionados por el sistema son ejemplos del tipo de datos reconocidos por el tiempo de ejecución de WinFS. The data are structured by means of properties. Los datos se estructuran por medio de las propiedades. For example, an instance of a résumé type will surface the data by exposing certain properties like Name , Educational Qualification , Experience , among others. Por ejemplo, una instancia de un tipo de superficie se resumen los datos mediante la exposición de algunas propiedades como el nombre, la Educación cualificación, experiencia, entre otros. Each of the properties may be of simple types like strings , integers , or dates or complex types like contacts . [ 7 ] [ 9 ] Different data types expose different properties. Cada una de las propiedades pueden ser de tipos simples como cadenas, enteros o fechas o tipos complejos, como los contactos. [7] [9] Diferentes tipos de datos de exponer diferentes propiedades. Besides that, WinFS also allows different data instances to be related together, such as a document and a contact can be related by an Authored By relationship. [ 6 ] [ 9 ] Relationships are also exposed as properties; for example if a document is related to a contact by a Created By relationship, then the document will have a Created By property. Además de eso, WinFS también permite que diferentes instancias de datos para ser relacionados entre sí, como un documento y un contacto puede estar relacionado con un Escrito por relación. [6] [9] Las relaciones también se exponen como propiedades, por ejemplo, si está relacionado con un documento a un contacto de un ser creado por la relación, entonces el documento tendrá un Creada por la propiedad. When it is accessed, the relationship is traversed and the related data returned. [ 9 ] By following the relations, all related data can be reached. [ 6 ] WinFS promotes sharing of data between applications by making the data types accessible to all applications, along with their schemas. [ 7 ] So any application, when it wants to use a WinFS type, by using the schema can find out the structure of the data and utilize the information. Cuando se accede a ella, la relación se atraviesa y los datos relativos devueltos. [9] Siguiendo las relaciones, todos los datos relacionados se puede llegar. [6] WinFS promueve el intercambio de datos entre aplicaciones, haciendo los tipos de datos accesibles a todas las aplicaciones, junto con sus esquemas. [7] Así, cualquier aplicación, cuando se quiere utilizar un tipo de WinFS, utilizando el esquema se puede encontrar la estructura de los datos y utilizar la información. So, an application has access to all data on the system, even though the developer did not have to write parsers to recognize the different data formats. Así, una aplicación que tiene acceso a todos los datos en el sistema, a pesar de que el desarrollador no tiene que escribir analizadores de reconocer los formatos de datos diferentes. It can also use the relationships and related data to create dynamic filters to present the information the application deals with, in different ways. También puede utilizar las relaciones y los datos relacionados con la creación de filtros dinámicos para presentar la información de la aplicación basta con, en diferentes formas. The WinFS API further abstracts the task of accessing data. Los resúmenes de la API WinFS aún más la tarea de acceder a los datos. All WinFS types are exposed as .NET objects with the properties of the object directly mapping to the properties of the data type. [ 5 ] Also, by letting different applications which deal with the same data share the same WinFS data instance rather than storing the same data in different files, the hassles of synchronizing the different stores when the data change are removed. [ 10 ] Thus WinFS can reduce redundancies. [ 5 ] [ 8 ] Todos los tipos están expuestos como WinFS. Objetos NET con las propiedades del objeto directamente la asignación a las propiedades del tipo de datos. [5] Además, al permitir que diferentes aplicaciones que tratan de los mismos datos que comparten los mismos datos de WinFS ejemplo, en lugar de almacenar la mismos datos en diferentes archivos, las molestias de la sincronización de las diferentes tiendas cuando se quitan los datos de cambios. [10] Así, WinFS puede reducir los despidos. [5] [8]

Access to all the data in the system allows complex searches for data to be performed across all the data items managed by WinFS. El acceso a todos los datos en el sistema permite búsquedas complejas que los datos se realiza a través de todos los elementos de datos gestionados por WinFS. In the example used above ( "the phone numbers of all persons who live in Acapulco and each have more than 100 appearances in my photo collection and with whom I have had e-mail within last month" ), WinFS can traverse the subject relationship of all the photos to find the contact items. En el ejemplo anterior ( "los números de teléfono de todas las personas que viven en Acapulco y cada uno tiene más de 100 apariciones en mi colección de fotos y con los que he tenido e-mail en el último mes"), WinFS puede atravesar la relación objeto de todas las fotos para encontrar los puntos de contacto. Similarly, it can filter all emails in last month and access the communicated with relation to reach the contacts. Del mismo modo, se puede filtrar todos los mensajes de correo electrónico en el último mes y el acceso a la comunicación con relación al alcance de los contactos. The common contacts can then be figured out from the two sets of results and their phone number retrieved by accessing the suitable property of the contact items. Los contactos comunes pueden ser calculado de los dos conjuntos de resultados y su número de teléfono recuperado mediante el acceso a la propiedad adecuada de los puntos de contacto.

WinFS, in addition to fully schematized data (like XML and relational data), supports semi-structured (like images, which has an unstructured bitstream plus structured metadata) as well as unstructured (like files) as well. WinFS, además de los datos totalmente esquematizada (como XML y datos relacionales), apoya semi-estructuradas (como imágenes, que tiene un flujo de bits no estructuradas, más de metadatos estructurados), así como no estructurados (como archivos) también. It stores the unstructured components directly as files while storing the structured metadata in the structured store. [ 9 ] Internally, WinFS uses a relational database to manage data. Almacena los componentes directamente como archivos no estructurados, mientras que el almacenamiento de los metadatos estructurados en el almacén estructurado. [9] Internamente, WinFS utiliza una base de datos relacional para gestionar los datos. However, it does not limit the data to belonging to any particular data model, like relational or hierarchical , but can be of any well-defined schema. Sin embargo, no limita los datos a los que pertenecen a cualquier modelo de datos particular, como relacional o jerárquica, pero puede ser de cualquier esquema bien definido. The WinFS runtime maps the schema to a relational modality, [ 5 ] by defining the tables it will store the types in and the primary keys and foreign keys that would be required to represent the relationships. Los mapas de tiempo de ejecución de WinFS el esquema a una modalidad de relación, [5] mediante la definición de las tablas que se almacenará en los tipos y las claves principales y claves externas que se requiere para representar las relaciones. WinFS includes mappings for object and XML schemas by default; mappings for other schemas needs to be specified. WinFS incluye asignaciones para el objeto y esquemas XML en forma predeterminada, las asignaciones para los esquemas de otras necesidades que se determine. Object schemas are specified using XML; WinFS generates code to surface the schemas as .NET classes . ADO.NET can be used to directly specify the relational schema, though a mapping to the object schema needs to be provided to surface it as classes. [ 9 ] All relationship traversals are performed as joins on these tables. Esquemas de objetos se especifican usando XML; WinFS genera el código a la superficie de los esquemas como. Clases NET. ADO.NET se puede utilizar para especificar directamente el esquema relacional, a pesar de una asignación al objeto de esquema debe proporcionarse a la superficie como las clases. [ 9] Todos los recorridos se realizan como la relación se une en estas tablas. WinFS also automatically creates indexes on these tables, to facilitate fast access to the information. [ 9 ] Indexes significantly speed up joins, and thus traversing relationships to retrieve related data is performed very fast. WinFS también crea automáticamente índices en estas tablas, para facilitar el acceso rápido a la información. [9] Los índices que acelerar la une, por lo que atraviesan las relaciones para recuperar los datos relacionados se realiza muy rápido. Indexes are also used during searching of information; searching and querying use the indexes so that the operations complete quickly, much like desktop search systems. Los índices son también utilizados durante la búsqueda de información, búsqueda y consulta de los índices de uso de manera que las operaciones de manera completa, rápida, al igual que los sistemas de búsqueda de escritorio.
[ edit ] Development [Editar] Desarrollo
Structured Storage Timeline De almacenamiento estructurado línea de tiempo
1990 — 1990 --
– --
1991 — 1991 --
– --
1992 — 1992 --
– --
1993 — 1993 --
– --
1994 — 1994 --
– --
1995 — 1995 --
– --
1996 — 1996 --
– --
1997 — 1997 --
– --
1998 — 1998 --
– --
1999 — 1999 --
– --
2000 — 2000 --
– --
2001 — 2001 --
– --
2002 — 2002 --
– --
2003 — 2003 --
– --
2004 — 2004 --
– --
2005 — 2005 --
– --
2006 — 2006 --
– --
2007 — 2007 --
– --
2008 — 2008 --
– --
2009 — 2009 --
OFS in Cairo [ 11 ] OFS en El Cairo [11]
Storage+, using SQL 7.0 [ 11 ] Almacenamiento +, utilizando SQL Server 7.0 [11]
RFS , using SQL 2000 [ 11 ] RFS, utilizando SQL Server 2000 [11]
Exchange Webstore [ 12 ] Intercambio Webstore [12]
Outlook LIS [ 12 ] LIS Outlook [12]
WinFS [ 11 ] WinFS [11]
Under Development [ 4 ] Bajo el Desarrollo [4]
← ←
Cancelled Cancelado
← ←
Cancelled Cancelado
← ←
Cancelled Cancelado
← ←
Features cut Características de corte
← ←
Features cut Características de corte
← ←
Cancelled Cancelado
← ←
No known info No hay información conocida
Timeline of the various structured storage projects by Microsoft . Cronología de los diversos proyectos de almacenamiento estructurado por Microsoft. None yet has resulted in a full featured runtime and API around it. Ninguno sin embargo, ha resultado en un tiempo de ejecución ofrecido completo de la API y alrededor de ella. Years are approximate. Años son aproximados.

The development of WinFS is an extension to a feature which was initially planned in the early 1990s. El desarrollo de WinFS es una extensión de una característica que inicialmente estaba previsto a principios de 1990. Dubbed Object File System , it was supposed to be included as part of Cairo . Doblada Objeto del sistema de archivos, se suponía que se incluya como parte de El Cairo. OFS was supposed to have powerful data aggregation features, [ 11 ] but the Cairo project was shelved, and with it OFS. OFS se supone que cuenta con la agregación de datos de gran alcance, [11] El Cairo, pero el proyecto fue dejado de lado, y con él OFS. However, later during the development of COM , a storage system, called Storage+, based on then-upcoming SQL Server 8.0, was planned, which was slated to offer similar aggregation features. [ 11 ] This, too, never materialized, and a similar technology, Relational File System (RFS), was conceived to be launched with SQL Server 2000. [ 11 ] However, SQL Server 2000 ended up being a minor upgrade to SQL Server 7.0 and RFS was not implemented. Sin embargo, más tarde, durante el desarrollo de la COM, un sistema de almacenamiento, llamado almacenamiento +, a partir de entonces próximo SQL Server 8.0, se planificó, que estaba programada para ofrecer funciones de agregación similar. [11] Esto también nunca se materializaron, y similares tecnología, relacional File System (RFS), fue concebido para ser lanzado con SQL Server 2000. [11] Sin embargo, SQL Server 2000 terminó siendo una actualización menor para SQL Server 7.0 y RFS no se aplicó.

But the concept was not scrapped. [ 11 ] It just morphed into WinFS. Pero el concepto no fue desechado. [11] Sólo se transformó en WinFS. WinFS was initially planned for inclusion in Windows Vista , [ 13 ] and build 4051 of Windows Vista, then called by its codename "Longhorn", given to developers at the Microsoft Professional Developers Conference in 2003, included WinFS, but it suffered from significant performance issues. [ 11 ] In August 2004, Microsoft announced that WinFS would not ship with Windows Vista; it would instead be available as a downloadable update after Vista's release. [ 11 ] WinFS se había previsto inicialmente para su inclusión en Windows Vista, [13] y la construcción de 4051 de Windows Vista, llamado por su nombre en código "Longhorn", dado a los desarrolladores en la Microsoft Professional Developers Conference en 2003, incluye WinFS, pero sufrió significativas en el rendimiento cuestiones. [11] En agosto de 2004, Microsoft anunció que WinFS no vienen con Windows Vista; en su lugar estaría disponible como una actualización descargable después del lanzamiento de Vista. [11]

On August 29, 2005, [ 11 ] Microsoft quietly made Beta 1 of WinFS available to MSDN subscribers. El 29 de agosto de 2005, [11] Microsoft calladamente Beta 1 de WinFS disponible para los suscriptores de MSDN. It worked on Windows XP , and required the .NET Framework to run. Se trabajó en Windows XP, y requiere el. NET Framework para funcionar. The WinFS API was included in the System.Storage namespace. [ 14 ] The beta was refreshed on December 1, 2005 to be compatible with version 2.0 of the .NET Framework. [ 15 ] WinFS Beta 2 was planned for some time later in 2006, [ 16 ] and was supposed to include integration with Windows Desktop Search , so that search results include results from both regular files and WinFS stores, as well as allow access of WinFS data using ADO.NET . [ 17 ] La API de WinFS se incluyó en el espacio de nombres System.Storage. [14] La beta se ha renovado el 1 de diciembre de 2005 para ser compatible con la versión 2.0 de. NET Framework. [15] WinFS Beta 2 estaba prevista para poco después en 2006 , [16] y se suponía que incluyen la integración con Windows Desktop Search, de modo que los resultados que incluyen los resultados de ambos archivos WinFS regular y tiendas, así como permitir el acceso de los datos de WinFS utilizando ADO.NET. [17]

However, on June 23, 2006, the WinFS team at Microsoft announced that WinFS would no longer be delivered as a separate product, [ 3 ] and some components would be brought under the umbrella of other technologies - like the object-relational mapping components into ADO.NET Entity Framework ; support for unstructured data, adminless mode of operation, support for file system objects via the FILESTREAM data type, and hierarchical data [ 18 ] in SQL Server 2008 , then codenamed Katmai , [ 19 ] as well as integration with Win32 APIs and Windows Shell and support for traversal of hierarchies by traversing relationships into later releases of Microsoft SQL Server ; [ 18 ] and the synchronization components into Microsoft Sync Framework . [ 18 ] However, having a shared-schema storage system built into a future iteration of Microsoft Windows has not yet been ruled out. [ 18 ] Sin embargo, el 23 de junio de 2006, el equipo de WinFS de Microsoft anunció que WinFS no sería entregada como un producto independiente, [3] y algunos componentes serían puestos bajo el paraguas de otras tecnologías - como el objeto, los componentes de mapeo relacional en ADO.NET Entity Framework, soporte para datos no estructurados, adminless modo de funcionamiento, el apoyo a los objetos del sistema de archivos a través del tipo de datos FILESTREAM, y los datos jerárquica [18] en SQL Server 2008, entonces con nombre en código Katmai, [19], así como la integración con API de Win32 y el Shell de Windows y el apoyo para el recorrido de las jerarquías de las relaciones que atraviesan en versiones posteriores de Microsoft SQL Server; [18] y los elementos de sincronización en Microsoft Sync Framework. [18] Sin embargo, con un sistema de almacenamiento compartido de esquema integrado en un futuro iteración de Microsoft Windows no ha sido descartada. [18]

With that announcement, most analysts assumed that the WinFS project was being killed off. Con ese anuncio, la mayoría de los analistas considera que el proyecto WinFS estaba siendo exterminados. But in November 2006, Steve Ballmer said in an interview that WinFS is being actively developed but integration into the Windows codebase will come only after the technology has fully incubated. Pero en noviembre de 2006, Steve Ballmer, dijo en una entrevista que WinFS se está desarrollando activamente, sino la integración en el código base de Windows llegará sólo después de que la tecnología ha incubado plenamente. It was subsequently confirmed in an interview with Bill Gates and that Microsoft plans to migrate applications like Windows Media Player , Windows Photo Gallery , Microsoft Office Outlook etc to use WinFS as the data storage back-end. [ 20 ] Posteriormente se confirmó en una entrevista con Bill Gates y que Microsoft planea migrar las aplicaciones como Windows Media Player, Windows Photo Gallery, Microsoft Office Outlook, etc usar WinFS como el almacenamiento de datos de back-end. [20]
[ edit ] Data storage [Editar] Almacenamiento de datos
[ edit ] Architecture [Editar] Arquitectura
Architecture of the WinFS Stack Arquitectura de la pila de WinFS

WinFS uses a relational engine, which is derived from SQL Server 2005, [ 21 ] to provide the data relations mechanism. WinFS usa un motor relacional, que se deriva de SQL Server 2005, [21] para proporcionar el mecanismo de las relaciones de datos. WinFS stores are simply SQL Server database (.MDF) files with the FILESTREAM attribute set. [ 22 ] These files are stored in access-restricted folder named "System Volume Information" placed into the volume root, in folders under the folder "WinFS" with names of GUIDs of these stores. [ 22 ] WinFS tiendas son simplemente bases de datos SQL Server (. MDF) archivos con el atributo de FILESTREAM. [22] Estos archivos se almacenan en la carpeta de acceso restringido llamada "System Volume Information" situada en la raíz del volumen, en las carpetas bajo la carpeta "WinFS" con los nombres de los GUID de estas tiendas. [22]

At the bottom of the WinFS stack lies WinFS Core which interacts with the filesystem and provides file access and addressing capabilities. [ 7 ] The relational engine leverages the WinFS core services to present a structured store and other services such as locking which the WinFS runtime uses to implement the functionality. En la parte inferior de la WinFS pila se encuentra Core WinFS que interactúa con el sistema de archivos y proporciona acceso a archivos y hacer frente a las capacidades. [7] El motor relacional aprovecha los servicios básicos de WinFS para presentar un almacén de estructura y otros servicios, como el bloqueo que el tiempo de ejecución utiliza WinFS para implementar la funcionalidad. The WinFS runtime expose Services such as Synchronization and Rules which can be used to synchronize WinFS stores or perform certain actions on the occurrence of certain events. [ 7 ] El tiempo de ejecución WinFS exponer los servicios, tales como la sincronización y el Reglamento que se puede utilizar para sincronizar las tiendas de WinFS o realizar determinadas acciones en la ocurrencia de ciertos eventos [7].

WinFS runs as a service which runs three processes [ 23 ] - WinFS.exe , which hosts relational datastore, WinFSSearch.exe , which hosts the indexing and querying engine, and WinFPM.exe (WinFS File Promotion Manager) , which interfaces with the underlying file system. WinFS se ejecuta como un servicio que cuenta con tres procesos [23] - WinFS.exe, que alberga el almacén de datos relacionales, WinFSSearch.exe, que alberga el motor de indexación y consulta, y WinFPM.exe (Gerente de Promoción de archivos WinFS), que interactúa con el subyacente sistema de archivos. It allows programmatic access to its features, via a set of .NET Framework APIs , that enables applications to define custom made data types, define relationships among data, store and retrieve information, and allow advanced searches. [ 5 ] [ 7 ] The applications can then aggregate the data and present the aggregated data to the user. Permite el acceso mediante programación a sus características, a través de un conjunto de. NET Framework API, que permite a las aplicaciones personalizadas se definen los tipos de datos, definir las relaciones entre los datos, almacenar y recuperar información, y permiten la búsqueda avanzada. [5] [7] Las aplicaciones a continuación, puede agregar los datos y presentar los datos agregados para el usuario.
[ edit ] Data store [Editar] Datos de la tienda

WinFS stores data in relational stores, which are exposed as virtual locations called stores . [ 11 ] A WinFS store is a common repository where any application can store data along with its metadata, relationships and schema. WinFS tiendas en los almacenes de datos relacionales, los que están expuestos como lugares virtuales llamados almacenes. [11] Una tienda de WinFS es un repositorio común en cualquier aplicación puede almacenar los datos junto con sus metadatos, las relaciones y el esquema. WinFS runtime can apply certain relationships itself; for example, if the values of the subject property of a picture and the name property of a contact are same, then WinFS can relate the contact with the picture. [ 24 ] Relations can also be specified by other applications or the user. [ 25 ] WinFS se puede aplicar en tiempo de ejecución de determinadas relaciones, por ejemplo, si los valores de la propiedad en cuestión de una imagen y la propiedad de nombre de un contacto son los mismos, entonces WinFS se pueden relacionar el contacto con la imagen. [24] Las relaciones también pueden ser especificados por otras aplicaciones o el usuario. [25]

WinFS provides a unified storage but stops short of defining the format that is to be stored in the data stores. WinFS proporciona un almacenamiento unificado pero no llega a definir el formato que se va a almacenar en los almacenes de datos. Instead it supports data to be written in application specific formats. En su lugar, apoya los datos sean escritos en la aplicación de formatos específicos. But applications must provide a schema that defines how the file format should be interpreted. [ 5 ] For example, a schema could be added to allow WinFS to understand how to read and thus be able to search and analyze, say, a PDF file. Pero las aplicaciones deben proporcionar un esquema que define cómo el formato de archivo debe ser interpretado. [5] Por ejemplo, un esquema podría añadirse para permitir WinFS para entender cómo leer y por lo tanto ser capaz de buscar y analizar, por ejemplo, un archivo PDF. By using the schema, any application can read data from any other application, and also allows different applications to write in each other's format by sharing the schema. [ 25 ] Al utilizar el esquema, todas las aplicaciones pueden leer datos de cualquier otra aplicación, y también permite que diferentes aplicaciones de escribir el uno al otro mediante el intercambio de formato del esquema. [25]

Multiple WinFS stores can be created on a single machine. [ 25 ] This allows different classes of data to be kept segregated, for example, official documents and personal documents can be kept in different stores. WinFS múltiples tiendas se pueden crear en una sola máquina. [25] Esto permite que las diferentes clases de datos que deben mantenerse separados, por ejemplo, documentos oficiales y documentos personales pueden mantenerse en diferentes tiendas. WinFS, by default, provides only one store, named "DefaultStore". [ 11 ] WinFS stores are exposed as shell objects, akin to Virtual folders , which dynamically generates a list of all items present in the store and presents them in a folder view. WinFS, por defecto, proporciona sólo una tienda, llamada "DefaultStore". [11] WinFS tiendas se exponen como objetos de concha, parecido a carpetas virtuales, que genera dinámicamente una lista de todos los artículos presentes en el almacén y los presenta en una vista de carpeta . The shell object also allows searching information in the datastore. [ 11 ] El objeto Shell también permite la búsqueda de información en el almacén de datos. [11]

A data unit that has to be stored in a WinFS store is called a WinFS Item . [ 5 ] [ 25 ] A WinFS item, along with the core data item, also contains information on how the data item is related to other data. Una unidad de datos que tiene que ser almacenado en un almacén de WinFS se denomina un elemento de WinFS. [5] [25] Un elemento de WinFS, junto con el elemento básico de datos, también contiene información sobre cómo el elemento de datos se relaciona con otros datos. This Relationship is stored in terms of logical links. Esta relación se almacena en términos de vínculos lógicos. Links specify which other data items the current item is related with. Enlaces especificar los elementos que otros datos del elemento actual está relacionada con. Put in other words, links specify the relationship of the data with other data items. Dicho en otras palabras, los vínculos especificar la relación de los datos con otros elementos de datos. Links are physically stored using a link identifier, which specifies the name and intent of the relationship, such as type of or consists of . [ 5 ] The link identifier is stored as an attribute of the data item. Los enlaces se almacenan físicamente mediante un identificador de enlace, el cual especifica el nombre y el propósito de la relación, como el tipo o la componen. [5] El identificador de enlace se almacena como un atributo del elemento de datos. All the objects which have the same link id are considered to be related. [ 5 ] An XML schema , defining the structure of the data items that will be stored in WinFS, must be supplied to the WinFS runtime beforehand. [ 5 ] In Beta 1 of WinFS, the schema assembly had to be added to the GAC before it could be used. Todos los objetos que tienen el mismo identificador de enlace se consideran similares. [5] Un esquema XML, la definición de la estructura de los elementos de datos que serán almacenados en WinFS, se deberá suministrar al tiempo de ejecución WinFS de antemano. [5] En la versión beta 1 de WinFS, el esquema de montaje tuvo que ser añadido a la GAC antes de que pudiera ser utilizado.
[ edit ] Data model [Editar] Modelo de Datos de

WinFS models data using the data items, along with their relationships , extensions and rules governing its usage. [ 7 ] WinFS needs to understand the type and structure of the data items, so that the information stored in the data item can be made available to any application that requests it. WinFS modelos de datos mediante los elementos de datos, junto con sus relaciones, ampliaciones y normas que rigen su uso. [7] WinFS necesita comprender el tipo y la estructura de los elementos de datos, de modo que la información almacenada en el elemento de datos puede ponerse a disposición de cualquier aplicación que lo solicite. This is done by the use of schemas. Esto se hace mediante el uso de esquemas. For every type of data item that is to be stored in WinFS, a corresponding schema needs to be provided to define the type, structure and associations of the data. Para cada tipo de dato que se almacena en WinFS, un esquema correspondiente debe ser siempre para definir el tipo, la estructura y las asociaciones de los datos. These schemas are defined using XML . [ 5 ] Estos esquemas se definen utilizando XML. [5]

Predefined WinFS schemas include schemas for documents, e-mail, appointments, tasks, media, audio, video, and also includes system schemas that include configuration, programs, and other system-related data. [ 7 ] Custom schemas can be defined on a per-application basis, in situations where an application wants to store its data in WinFS, but not share the structure of that data with other applications, or they can be made available across the system. [ 7 ] WinFS esquemas predefinidos incluyen esquemas de los documentos, el correo electrónico, citas, tareas, medios de comunicación, audio, vídeo, y también incluye el sistema de esquemas que incluyen la configuración, programas, y el sistema de otros datos relacionados. [7] esquemas personalizados se pueden definir en una cada aplicación, en situaciones en que una aplicación necesita para almacenar sus datos en WinFS, pero no comparten la estructura de los datos con otras aplicaciones, o pueden ponerse a disposición de todo el sistema. [7]
[ edit ] Type system [Editar] Sistema de Tipo de
WinFS Type Hierarchy WinFS Jerarquía de tipos

The most important difference between a file system and WinFS is that WinFS knows the type of each data item that it stores. La diferencia más importante entre un sistema de archivos WinFS y que WinFS se conoce el tipo de cada elemento de datos que almacena. And the type specifies the properties of the data item. Y el tipo se especifican las propiedades del elemento de datos. The WinFS type system is closely associated with the .NET framework's concept of classes and inheritance . El sistema de tipos de WinFS está estrechamente asociado con el concepto. NET Framework de clases y la herencia. A new type can be created by extending and nesting any predefined types. [ 5 ] Un nuevo tipo puede ser creado por la ampliación y la anidación de cualquier tipo predefinidos. [5]

WinFS provides four predefined base types – Items , Relationships , ScalarTypes and NestedTypes . [ 5 ] An Item is the fundamental data object which can be stored, and a Relationship is the relation or link between two data items. WinFS proporciona cuatro tipos base predefinidos - Elementos, Relaciones, ScalarTypes y NestedTypes. [5] El artículo es el objeto de datos fundamental que puede ser almacenado, y una relación es la relación o vínculo entre dos elementos de datos. Since all WinFS items must have a type, the type of item stored defines its properties. Dado que todos los artículos de WinFS debe tener un tipo, el tipo de elemento almacenado define sus propiedades. The properties of an Item may be a ScalarType, which defines the smallest unit of information a property can have, or a NestedType, which is a collection of more than one ScalarTypes and/or NestedTypes. Las propiedades de un elemento puede ser un ScalarType, que define la unidad más pequeña de información que una propiedad puede tener, o una NestedType, que es una colección de más de un ScalarTypes y / o NestedTypes. All WinFS types are made available as .NET CLR classes . [ 25 ] Todos los tipos de WinFS se facilitan. NET clases de CLR. [25]

Any object represented as a data unit, such as contact, image, video, document etc, can be stored in a WinFS store as a specialization of the Item type. [ 25 ] By default, WinFS provides Item types for Files, Contact, Documents, Pictures, Audio, Video, Calendar, and Messages. Cualquier objeto representado como una unidad de datos, como contactos, imágenes, vídeo, etc documento, pueden ser almacenados en un almacén de WinFS como una especialización del tipo de artículo. [25] De forma predeterminada, WinFS proporciona tipos de elementos para los archivos, contactos, documentos , fotos, audio, vídeo, Agenda y Mensajes. The File Item can store any generic data, which is stored in file systems as files. El artículo puede almacenar cualquier archivo de datos genéricos, que se almacena en sistemas de archivos como archivos. But unless an advanced schema is provided for the file, by defining it to be a specialized Item, WinFS will not be able to access its data. Pero a menos de un esquema avanzado está prevista para el archivo, mediante la definición de que es un artículo especializado, WinFS no será capaz de acceder a sus datos. Such a file Item can only support being related to other Items. [ 5 ] Este tipo de archivo del artículo sólo puede ofrecer a estar relacionados con otros elementos. [5]
Defining a new Type Definición de un nuevo tipo de

A developer can extend any of these types, or the base type Item, to provide a type for his custom data. Un desarrollador puede ampliar cualquiera de estos tipos, o el tipo base del artículo, para proporcionar un tipo de sus datos personalizados. The data contained in an Item is defined in terms of properties, or fields which hold the actual data. Los datos contenidos en un artículo se define en términos de propiedades o campos que contienen los datos reales. For example, an Item Contact may have a field Name which is a ScalarType, and one field Address , a NestedType, which is further composed of two ScalarTypes. Por ejemplo, un punto de contacto pueden tener un nombre de campo que es un ScalarType, y un campo de dirección, un NestedType, que también está compuesto de dos ScalarTypes. To define this type, the base class Item is extended and the necessary fields are added to the class. [ 5 ] A NestedType field can be defined as another class which contains the two ScalarType fields. Para definir este tipo, la clase base del artículo se amplía y los campos necesarios se agregan a la clase. [5] Un campo NestedType se puede definir como otra clase que contiene los dos campos ScalarType. Once the type is defined, a schema has to be defined, which denotes the primitive type of each field, for example, the Name field is a String, the Address field is a custom defined Address class, both the fields of which are Strings. Una vez definido el tipo, un esquema tiene que ser definida, lo que denota el tipo primitivo de cada campo, por ejemplo, el campo de nombre es una cadena, el campo de Dirección es una costumbre clase definida de direcciones, tanto en el ámbito de los cuales son cadenas. Other primitive types that WinFS supports are Integer , Byte , Decimal , Float , Double , Boolean and DateTime, among others. [ 5 ] The schema will also define which fields are mandatory and which are optional. [ 26 ] The Contact Item defined in this way will be used to store information regarding the Contact, by populating the properties field and storing it. Otros tipos primitivos que soporta WinFS son Entero, Byte, Decimal, Float, doble, Boolean y DateTime, entre otros. [5] El esquema también se define qué campos son obligatorios y cuáles son opcionales. [26] El punto de contacto definidos en el presente manera se utiliza para almacenar información sobre el contacto, poblando el campo de las propiedades y almacenamiento. Only those fields marked as mandatory needs to be filled up during initial save. [ 25 ] Other fields may be populated later by the user, or not populated at all. Sólo los campos marcados como obligatorios necesita para ser llenado durante la fase inicial guardar. [25] Los otros campos se poblada más tarde por el usuario, o no se llena del todo. If more properties fields, such as last conversed date , need to be added, this type can be extended to accommodate them. Si hay más propiedades de los campos, como la fecha conversó pasado, hay que añadir, este tipo se puede extender para adaptarse a ellos. Item types for other data can be defined similarly. Los tipos de elementos de otros datos pueden ser definidos de manera similar.
Relationships Relaciones

WinFS creates tables for all defined Items. [ 26 ] All the fields defined for the Item form the columns of the table and all instances of the Item are stored as rows in the table for the respective Items. WinFS crea tablas para todos los elementos definidos. [26] Todos los campos definidos para el formulario del elemento de las columnas de la tabla y todas las instancias del artículo se almacenan como filas de la tabla de los artículos respectivos. Whenever some field in the table refers to data in some other table, it is considered a relationship. Cada vez que algún campo de la tabla se refiere a los datos de otra tabla, en algunos, se considera una relación. The schema of the relationship specifies which tables are involved and what the kind and name of the relationshp is. El esquema de la relación especifica que las tablas están implicados y cuál es el tipo y el nombre de la relationshp es. The WinFS runtime manages the relationshp schemas. [ 25 ] All Items are exposed as .NET CLR objects , with a uniform interface providing access to the data stored in the fields. El tiempo de ejecución WinFS gestiona los esquemas relationshp. [25] Todos los artículos se exponen como. NET de objetos CLR, con una interfaz uniforme, facilitando el acceso a los datos almacenados en los campos. Thus any application can retrieve object of any Item type and can use the data in the object, without being aware of the physical structure the data was stored in. [ 5 ] Así, cualquier aplicación puede recuperar objetos de cualquier tipo de elemento y puede utilizar los datos en el objeto, sin ser conscientes de la estructura física de los datos se almacenan pulgadas [5]

WinFS types are exposed as .NET classes, which can be instantiated as .NET objects. Tipos se exponen como WinFS. Clases NET, que puede ser ejemplificada como. NET. Data are stored in these type instances by setting their properties. Los datos se almacenan en estos casos el tipo de establecimiento de sus propiedades. Once done, they are persisted into the WinFS store. Una vez hecho esto, que se conservan en el almacén de WinFS. A WinFS store is accessed using an ItemContext class (see Data retrieval section for details). Una tienda de WinFS se accede utilizando una clase de itemContext (véase la sección de recuperación de datos para más detalles). ItemContext allows transactional access to the WinFS store; ie all the operations since binding an ItemContext object to a store till it is closed either all succeed or are all rolled back. ItemContext permite el acceso transaccional a la tienda de WinFS, es decir, todas las operaciones desde un objeto vinculante itemContext a un almacén hasta que se cierra o bien todos tienen éxito o son todos deshace. As changes are made to the data, they are not written to the disc; rather they are written to an in-memory log. Cuando se realizan cambios a los datos, que no se escriben en el disco, sino que están escritos en un registro en memoria. Only when the connection is closed are the changes written to the disc in a batch. Sólo cuando se cierra la conexión son los cambios por escrito a la disco en un lote. This helps to optimize disc I/O. [ 9 ] The following code snippet, written in C# , creates a contact and stores it in a WinFS store. Esto ayuda a optimizar el disco I / O. [9] El siguiente fragmento de código, escrito en C #, crea un contacto y lo guarda en un almacén de WinFS.

//Connect to the default WinFS store / / Conectarse a la tienda de WinFS por defecto
using ( ItemContext ic = ItemContext. Open ( ) ) utilizando (IC = itemContext itemContext. open ())
{ (
//Create the contact and set the data in appropriate properties / / Crear el contacto y establecer los datos de las propiedades adecuadas
ContactEAddress contact = new ContactEAddress ( ) ; Contacto ContactEAddress = ContactEAddress nuevo ();
//Name is a ComplexType / / Nombre es un ComplexType
contact. Name = new PersonName ( ) ; de contacto. Name = PersonName nuevo ();
contact. Name . Displayname = "Doe, John" ; de contacto. Nombre. DisplayName = "Pérez, Juan";
contact. Name . FirstName = "John" ; de contacto. Nombre. FirstName = "John";
contact. Name . LastName = "Doe" ; de contacto. Nombre. Apellidos = "Doe";
//Telephone number is a ComplexType / / Número de teléfono es un ComplexType
contact. TelephoneNumber = new TelephoneNumber ( ) ; //ComplexType de contacto. NumeroTelefonico = NumeroTelefonico nuevo (); / / complexType
contact. TelephoneNumber . Country = CountryCode. Antarctica ; de contacto. NumeroTelefonico. Country = countryCode. Antártida;
contact. TelephoneNumber . Areacode = 4567 ; de contacto. NumeroTelefonico. codigoDeArea = 4567;
contact. TelephoneNumber . Number = 9876543210 ; de contacto. NumeroTelefonico. Number = 9876543210;
//Age is a SimpleType / / La edad es un SimpleType
contact. Age = 111 ; de contacto. Edad = 111;
//Add the object to the user's personal folder. / / Añadir el objeto a la carpeta personal del usuario.
//This relates the item with the Folder pseudo-type, for backward / / Esto se relaciona el tema con el pseudo-Carpeta tipo, para mantener la
//compatibility, as this lets the item to be accessed in a folder / / la compatibilidad, ya que esto permite que el elemento a tener acceso a una carpeta
//hierarchy for apps which are not WinFS native. / / la jerarquía para aplicaciones que no son nativos de WinFS.
Folder containingFolder = UserDataFolder. FindMyPersonalFolder ( ) ; ContainingFolder carpeta = UserDataFolder. FindMyPersonalFolder ();
containingFolder. OutFolderMemberRelationship . AddItem ( ic, contact ) ; containingFolder. OutFolderMemberRelationship. AddItem (IC, de contacto);
//Find a document and relate with the document. / / Buscar un documento y se relacionan con el documento. Searching begins by creating an La búsqueda comienza por la creación de un
//ItemSearcher object. / / Objeto ItemSearcher. Each WinFS type object contains a GetSearcher() method Cada tipo de objeto contiene una WinFS GetSearcher () método de
//that generates an ItemSearcher object which searches documents of that type. / / que genera un objeto ItemSearcher que busca documentos de ese tipo.
using ( ItemSearcher searcher = Document. GetSearcher ( ic ) ) utilizando (ItemSearcher buscador = Documento. GetSearcher (IC))
{ (
Document d = searcher. Find ( @"Title = 'Some Particular Document'" ) ; Documento d = buscador. Find (@ "title = 'algún documento especial'");
d. OutAuthoringRelationship . AddItem ( ic, contact ) ; d. OutAuthoringRelationship. AddItem (IC, de contacto);
} )
//Since only one document is to be found, the ItemContext.FindOne() method / / A partir de un solo documento se encuentra, el ItemContext.FindOne () método de
//could be used as well. / / se podría utilizar también.
//Find a picture and relate with it / / Buscar una imagen y se relacionan con ella
using ( ItemSearcher searcher = Picture. GetSearcher ( ic ) ) utilizando (ItemSearcher = buscador de imágenes. GetSearcher (IC))
{ (
Picture p = searcher. Find ( @"Occasion = 'Graduation' and Sequence = '3'" ) ; P = buscador de imágenes. Find (@ "ocasion =" graduación "y Secuencia = '3 '");
p. OutSubjectRelationship . AddItem ( ic, contact ) ; p. OutSubjectRelationship. AddItem (IC, de contacto);
} )
//Persist to the store and close the reference to the store / / Persist a la tienda y cerca de la referencia a la tienda
ic. Update ( ) ; ic. Update ();
ic. Close ( ) ; ic. Close ();
} )

[ edit ] Relationships [Editar] Relaciones

A datum can be related to one more item, giving rise to a one-to-one relationship, or with more than one items, resulting in a one-to-many relationship. [ 5 ] The related items, in turn, may be related to other data items as well, resulting in a network of relationships, which is called a many-to-many relationship. Un dato puede ser relacionado a un tema más, dando lugar a un uno-a-una relación, o con más de un artículos, resultando en un uno-a-muchos. [5] Los temas relacionados, a su vez, puede ser relacionados con otros elementos de datos, así, resultando en una red de relaciones, que se llama de muchos a muchos. Creating a relationship between two Items create another field in the data of the Items concerned which refer the row in the other Item's table where the related object is stored. [ 25 ] Creación de una relación entre dos artículos de crear otro campo en los datos de las partidas en cuestión, que se refieren la fila en la tabla del artículo de otras donde se almacena el objeto relacionado. [25]
WinFS Relationships Relaciones de WinFS

In WinFS, a Relationship is an instance of the base type Relationship, which is extended to signify a specialization of a relation. En WinFS, una relación es un ejemplo del tipo de base de relación, que se extiende a significar una especialización de una relación. A Relationship is a mapping between two items, a Source and a Target. Una relación es una correspondencia entre dos puntos, un origen y un destino. The source has an Outgoing Relationship, whereas the target gets an Incoming Relationship. [ 26 ] WinFS provides three types of primitive relationships – Holding Relationship , Reference Relationship and Embedding Relationship . [ 5 ] Any custom relationship between two data types are instances of these relationship types. La fuente tiene una relación de salida, mientras que el objetivo obtiene una relación de Entrantes [26]. WinFS ofrece tres tipos de relaciones primitivas - Celebración de Relación, Relación de referencia e incrustación de relación. [5] Cualquier relación personalizada entre dos tipos de datos son ejemplos de estas relaciones tipos.

* Holding Relationships specifies ownership and lifetime (which defines how long the relationship is valid) of the Target Item. Sosteniendo especifica las relaciones de propiedad y la vida (que define la duración de la relación es válida) del elemento de destino. For example, the Relationship between a folder and a file, and between an Employee and his Salary record, is a Holding Relationship – the latter is to be removed when the former is removed. Por ejemplo, la relación entre una carpeta y un archivo, y entre un empleado y su historial de sueldos, es una relación Holding - la segunda es que se quita cuando se elimina el anterior. A Target Item can be a part of more than one Holding Relationships. Un elemento de destino puede ser una parte de más de un Relaciones Holding. In such a case, it is to be removed when all the Source Items are removed. En tal caso, es que se quitan cuando se eliminan todos los artículos de la Fuente.
* Reference Relationships provide linkage between two Items, but do not have any lifetime associated, ie, each Item will continue to be stored even without the other. Relaciones de referencia de enlace entre dos puntos, pero no tienen ninguna vida asociados, es decir, cada artículo se seguirán almacenados, incluso sin la otra.
* Embedding Relationships give order to the two Items which are linked by the Relationship, such as the Relationship between a Parent Item and a Child Item. Relaciones incrustación dar orden a los dos temas que están vinculados por la relación, tales como la relación entre un elemento primario y un elemento secundario.

Relationships between two Items can either be set programmatically by the application creating the data, or the user can use the WinFS Item Browser to manually relate the Items. [ 26 ] A WinFS item browser can also graphically display the items and how they are related, to enable the user to know how their data are organized. [ 25 ] Las relaciones entre dos elementos bien se puede establecer mediante programación de la aplicación la creación de los datos, o el usuario puede utilizar el navegador del artículo WinFS de forma manual se refieren los artículos. [26] Un explorador tema WinFS también puede representar gráficamente los elementos y cómo se relacionan, para permitir al usuario saber cómo se organizan los datos. [25]
[ edit ] Rules [Editar] Reglas

WinFS includes Rules , [ 27 ] which are executed when a certain condition is met. WinFS, incluye las reglas, [27] que se ejecutan cuando se cumple una condición determinada. WinFS rules work on data and data relationships. WinFS normas de trabajo en los datos y los datos de las relaciones. For example, a rule can be created which 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 which relates the Item with some other Item. Por ejemplo, una regla puede ser creado, que establece que cuando un elemento se crea que contiene campo "Nombre" y si el valor de dicho campo es un nombre especial, una relación debe ser creado que se refiere el artículo con algún otro elemento. WinFS rules can also access any external application. WinFS normas también pueden acceder a cualquier aplicación externa. For example, a rule can be built which launches a Notify application whenever a mail is received from a particular contact. [ 27 ] WinFS rules can also be used to add new properties fields to existing data Items. [ 27 ] Por ejemplo, una regla se puede construir una aplicación que lanza Notificarme cuando se recibe un correo electrónico de un contacto en particular. [27] WinFS reglas también se pueden utilizar para agregar nuevas propiedades de los campos a los actuales elementos de datos. [27]

WinFS rules are also exposed as .NET CLR objects. WinFS normas también están expuestos como. NET CLR objetos. As such any rule can be used for any purpose. Como tal, cualquier norma puede ser utilizada para cualquier propósito. A rule can even be extended by inheriting from it to form a new rule which consists of the condition and action of the parent rule plus something more. [ 27 ] Una norma puede incluso ser prorrogado por la herencia de él para formar una nueva regla que consiste en la condición y acción de la regla de los padres, más algo más. [27]
[ edit ] RAV [Editar] RAV

WinFS supports creating Rich Application Views (RAV) by aggregating different data in a virtual table format. WinFS soporta la creación de Rich Vistas Aplicación (RAV) mediante la agregación de datos diferentes en un formato de tabla virtual. Unlike database view , where each individual element can only be a scalar value, RAVs can have complex Items or even collection of Items. A diferencia de opinión de la base de datos, donde cada elemento individual sólo puede ser un valor escalar, RAVs puede tener elementos complejos o incluso la recogida de elementos. The actual data can be across multiple data types or instances and can even be retrieved by traversing relationships. [ 9 ] RAVs are intrinsically paged (dividing the entire set of data into smaller pages containing disconnected subsets of the data) by the WinFS runtime. Los datos reales pueden ser a través de múltiples tipos de datos o de casos e incluso pueden ser recuperados por las relaciones que atraviesan. [9] RAVs son intrínsecamente paginado (dividiendo el conjunto de datos en páginas más pequeñas que contienen subconjuntos desconectado de los datos) por el tiempo de ejecución de WinFS. The page size is defined during creation of the view and the WinFS API exposes methods to iterate over the pages. El tamaño de página se define durante la creación de la vista y la API de WinFS expone métodos para iterar sobre las páginas. RAVs also supports modification of the view according to different grouping parameters. RAVs también apoya la modificación de la vista de acuerdo a diferentes parámetros de la agrupación. Views can also be queried against. Visitas también se pueden consultar en contra.
[ edit ] Access control [Editar] El control de acceso

Even though all data are shared, everything is not equally accessible. A pesar de que se comparten todos los datos, no todo es igualmente accesible. WinFS uses the Windows authentication system to provide two data protection mechanisms. [ 25 ] First, there is share-level security that controls access to your WinFS share. WinFS usa el sistema de autenticación de Windows para proporcionar dos mecanismos de protección de datos. [25] En primer lugar, no hay seguridad a este nivel que controla el acceso a compartir su WinFS. Second, there is item level security that supports NT compatible security descriptors. En segundo lugar, no hay seguridad a nivel de elemento que apoya NT descriptores de seguridad compatibles. The process accessing the item must have enough privileges to access it. El proceso de acceso al elemento debe tener privilegios suficientes para acceder a ella. Also in Vista there is the concept of "integrity level" for an application. También en Vista existe el concepto de "nivel de integridad" para una aplicación. Higher integrity data cannot be accessed by a lower integrity process. Datos de mayor integridad no se puede acceder por un proceso de menor integridad.
[ edit ] Data retrieval [Editar] Obtención de datos
Flowchart for creating, searching and updating WinFS data instances Diagrama de flujo para la creación, búsqueda y actualización de datos de casos de WinFS

The primary mode of data retrieval from a WinFS store is querying the WinFS store according to some criteria, [ 7 ] which returns an enumerable set of items matching the criteria. El modo principal de la recuperación de datos de un almacén de WinFS es consultar el WinFS almacenar de acuerdo con algunos criterios, [7] que devuelve un conjunto enumerable de elementos coincidentes con los criterios. The criteria for the query is specified using the OPath query language . Los criterios para la consulta se especifica mediante el lenguaje de consulta OPath. The returned data are made available as instances of the type schemas, conforming to the .NET object model . [ 28 ] The data in them can be accessed by accessing the properties of individual objects. [ 26 ] Los datos devueltos están disponibles como ejemplos de los esquemas de tipo, conforme a las. Modelo de objetos de NET. [28] Los datos que en ellos se puede acceder mediante el acceso a las propiedades de los objetos individuales. [26]

Relations are also exposed as properties. Las relaciones también están expuestos como propiedades. Each WinFS Item has two properties, named IncomingRelationships and OutgoingRelationships , which provides access to the set of relationship instances the item participates in. The other item which participates in one relationship instance can be reached through the proper relationship instance. [ 9 ] [ 26 ]

The fact that the data can be accessed using its description, rather than location, can be used to provide end-user organizational capabilities without limiting to the hierarchical organization as used in file-systems. In a file system, each file or folder is contained in only one folder. But WinFS Items can participate in any number of holding relationships, that too with any other items. As such, end users are not limited to only file/folder organization. Rather, a contact can become a container for documents; a picture a container for contacts and so on. For legacy compatibility, WinFS includes a pseudo-type called Folder which is present only to participate in holding relationships and emulate file/folder organization. Since any WinFS Item can be related with more than one Folder item, from an end user perspective, an item can reside in multiple folders without duplicating the actual data. [ 9 ] Applications can also analyze the relationship graphs to present various filters. For example, an email application can analyze the related contacts and the relationships of the contacts with restaurant bills and dynamically generate filters like "Emails sent to people I had lunch with" .
[ edit ] Searches

The WinFS API provides a class called the ItemContext class, which is bound to a WinFS store. The ItemContext object can be used to scope the search to the entire store or a subset of it. It also provides transactional access to the store. [ 14 ] An object of this class can then spawn an ItemSearcher object which then takes the type (an object representing the type) of the item to be retrieved or the relationship and the OPath query string representing the criteria for the search. [ 26 ] [ 29 ] A set of all matches are returned, which can then be bound to an UI widget for displaying en masse or enumerating individually. [ 25 ] The properties items can also be modified and then stored back to the data store to update the data. The ItemContext object is closed (which marks the end of association of the object with the store) when the queries are made or changes merged into the store.

Related items can also be accessed through the items. The IncomingRelationships and OutgoingRelationships properties gives access to all the set of relationship instances, typed to the name of the relationship. These relationship objects expose the other item via a property. So, for example, if a picture is related to a picture, it can be accessed by traversing the relationship as:

ContactsCollection contacts = picture. OutgoingRelationships . Cast ( typeof ( Contact ) ) . Value ;
//This retrieves the collection of all outgoing relationships from a picture object
//and filters down the contacts reachable from them and retrieves its value.
//Or the relationship can be statically specified as
ContactsCollection contacts = picture. OutgoingRelationships . OutContactRelationship . Contact ;

An OPath query string allows to express the parameters that will be queried for to be specified using Item properties, embedded Items as well as Relationships . [ 30 ] It can specify a single search condition, such as "title = Something'" , or a compound condition such as "title = 'Title 1' || title = 'Title 2' && author = 'Someone'" . These boolean and relational operations can be specified using C# like && , || , = , != operators as well as their English-like equivalent like EQUAL , NOT EQUAL . SQL like operators such as LIKE , GROUP BY and ORDER BY are also supported, as is wildcard conditions. [ 30 ] So, "title LIKE 'any*'" is a valid query string. These operators can be used to execute complex searches such as

using ( ItemContext ic = ItemContext. Open ( ) )
{ (
//Searching begins by creating a ItemSearcher object. The searcher is created from a
//relationship instance because the contacts being searched for are in relation. The El
//first parameter defines the scope of the search. An ItemContext as the scope means
//the entire store is to be searched. Scope can be limited to a set of Items which may
//be in a holding relationship with the contacts. In that case, the set is passed as
//the scope of the search.
ItemSearcher searcher = OutContactRelationship. GetTargetSearcher ( ic, typeof ( Contact ) ) ;
ContactCollection contacts = searcher. FindAll ( "OutContactRelationship.Contact.Name LIKE 'A*'" ) ;
ic. Close ( ) ;
} )

The above code snippet creates an ItemSearcher object that searchs on the OutContactRelationship instance that relates pictures and contacts, in effect searching all pictures related with a contact. It then runs the query Name LIKE 'A*'" on all contacts reachable through OutContactRelationship , returning the list of "contacts whose names start with A and whose pictures I have" . Similarly more relationships could be taken into account to further narrow down the results. [ 9 ] [ 26 ] Further, a natural language query processor, which parses query in natural language and creates a well-formed OPath query string to search via proper relationships, can allow users to make searches such as "find the name of the wine I had with person X last month" , provided financial management applications are using WinFS to store bills.

Different relations specify a different set of data. So when a search is made which encompasses multiple relations, the different sets of data are retrieved individually and a union of the different sets is computed. The resulting set contains only those data items which correspond to all the relations. [ 26 ]
[ edit ] Notifications

WinFS also includes better support for handling data that changes frequently. Using WinFS Notifications , applications choose to be notified of changes to selected data Items . WinFS will raise an ItemChangedEvent , using the .NET Event model, when a subscribed-to Item changes, and the event will be published to the applications. [ 26 ]
[ edit ] Data sharing

WinFS allows easy sharing of data between applications, and among multiple WinFS stores, which may reside on different computers, by copying to and from them. [ 31 ] 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. [ 11 ] WinFS data can also be manually shared using network shares , by sharing the legacy shell object. [ 31 ] Non-WinFS file formats can be stored in WinFS stores, using the File Item, provided by WinFS. Importers can be written, to convert specific file formats to WinFS Item types. [ 31 ]

In addition, WinFS provides services to automatically synchronize items in two or more WinFS stores, subject to some predefined condition, such as " share only photos " or " share photos which have an associated contact X ". [ 31 ] The stores may be on different computers. Synchronization is done in a peer-to-peer fashion; there is no central authority. A synchronization can be either manual or automatic or scheduled. During synchronization, WinFS finds the new and modified Items, and updates accordingly. If two or more changes conflict, WinFS can either resort to automatic resolution based on predefined rules, or defer the synchronization for manual resolution. WinFS also updates the schemas, if required. [ 31 ]
[ edit ] Application support
[ edit ] Shell namespace

WinFS Beta 1 includes a shell namespace extension, which surfaces WinFS stores as top level objects in My Computer view. [ 11 ] Files can be copied into and out of the stores, as well as applications can be directly used to save there. Even folders such as My Documents can be redirected to the stores. [ 11 ] WinFS uses Importer plug-ins to analyze the files as they were being imported to the store and create proper WinFS schemas and objects, and when taking the objects out, re-pack them into files. [ 31 ] If importers for certain files are not installed, they are stored as generic File types.
[ edit ] Microsoft Rave

Microsoft Rave is an application that shipped with WinFS Beta 1. It allows synchronization of two or more WinFS stores, and supports synchronization in full mesh mode as well as the central hub topology. While synchronizing, Microsoft Rave will determine the changes made to each store since the last sync, and update accordingly. When applying the changes, it also detects if there is any conflict, ie, the same data has been changed on both stores since the last synchronization. It will either log the conflicting data for later resolution or have it resolved immediately. Microsoft Rave uses peer-to-peer technology to communicate and transfer data.
[ edit ] StoreSpy
WinFS included StoreSpy , a WinFS Item browser that could be used to browse structured data instances with their properties and relationships.

With WinFS Beta 1, Microsoft included an unsupported application called StoreSpy , [ 32 ] 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 [ 33 ] 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. [ 34 ] But the WinFS project was cut back before it could materialize.
[ edit ] Type Browser

WinFS also includes another application, named WinFS Type Browser , which can be used to browse the WinFS types, as well as visualize the hierarchical relationship between WinFS types. [ 35 ] A WinFS type, both built-in types as well as custom schemas, can be visualized along with all the properties and methods that it supports. It also shows the types that it derives from as well as other types that extend the type schema. However, while it was included with WinFS, it was released as an unsupported tool. [ 35 ]
[ edit ] OPather

WinFS Beta 1 also includes an unsupported application, named OPather . [ 36 ] It presents a graphical interface for writing Opath queries. It can be used by selecting target object type and specifying the parameters of the query. It also includes Intellisense -like parameter completion feature. It can then be used to perform visualization tasks like binding results of a query to a DataGrid control, create views of the data in WinFS itself, or just extract the query string.
[ edit ] Project "Orange"

Microsoft launched a project to build a data visualization application for WinFS. It was codenamed "Project Orange" and was supposedly built using Windows Presentation Foundation . [ 37 ] It was supposed to provide exploration of Items stored in WinFS stores, and data relationships were supposed to be a prominent part of the navigation model. It was supposed to let people allow organization of the WinFS stores graphically as well – productizing many of the concepts shown in the IWish Concept Video . However, since the WinFS project went dark, the status of this project is unknown.
[ edit ] See also [Editar] Véase también

* Desktop organizer
* Relational Database Management System
* Storage , a storage management system for GNOME desktop
* NEPOMUK-KDE

[ edit ] References [Editar] Referencias

1. ^ "Leaked Windows hints at changes to come" . http://news.zdnet.co.uk/software/0,1000000121,2131385,00.htm . Retrieved 2007-05-04 . Obtenido 2007-05-04.
2. ^ "IWish Concept Video" . Microsoft . http://download.microsoft.com/download/c/e/2/ce28874c-4f44-4dbd-babb-727685e2be96/WinFS_IWish_720x486_2mbs.wmv . Retrieved 2008-07-14 . Obtenido 2008-07-14.
3. ^ a b Quentin Clark (June 23, 2006). "WinFS Update" . What's in Store . MSDN Blogs . http://blogs.msdn.com/winfs/archive/2006/06/23/644706.aspx . Retrieved 2006-06-23 .
4. ^ a b "WinFS Still In The Works Despite Missing Vista" . http://www.crn.com/software/196600671 . Retrieved 2007-06-30 .
5. ^ a b c d e f g h i j k l m n o p q r s t u v w x Shawn Wildermuth. "A Developer's Perspective on WinFS: Part 1" . MSDN . http://msdn2.microsoft.com/en-us/library/ms996622.aspx . Retrieved 2007-06-30 .
6. ^ a b c d Vijay Bangaru. "Unify, Organize, Explore, and Innovate. Oh my! (Part 2)" . WinFS Team Blog . http://blogs.msdn.com/winfs/archive/2005/11/01/487894.aspx . Retrieved 2007-06-30 .
7. ^ a b c d e f g h i j k Sean Grimaldi. "The WinFS Files: Divide et Impera" . MSDN . http://msdn2.microsoft.com/en-us/library/aa480690.aspx . Retrieved 2007-06-30 .
8. ^ a b Thomas Rizzo. "WinFS 101: Introducing the New Windows File System" . MSDN . http://msdn2.microsoft.com/en-US/library/aa480687.aspx . Retrieved 2007-06-30 .
9. ^ a b c d e f g h i j k "WinFS on The .NET Show" . http://www.microsoft.com/downloads/info.aspx?na=90&p=&SrcDisplayLang=en&SrcCategoryId=&SrcFamilyId=e049f148-460c-47af-93a0-dfd0f4edf598&u=http%3a%2f%2fdownload.microsoft.com%2fdownload%2f6%2fb%2f6%2f6b659b87-eafa-4c15-8783-1476e59bba13%2fdotnetshow41_300k.EXE . Retrieved 2007-07-04 . Obtenido 2007-07-04.
10. ^ Vijay Bangaru. "Unify, Organize, Explore, and Innovate. Oh my! (Part 1)" . WinFS Team Blog . http://blogs.msdn.com/winfs/archive/2005/10/24/484380.aspx . Retrieved 2007-06-30 .
11. ^ a b c d e f g h i j k l m n o p q Paul Thurrott. "Windows Storage Foundation (WinFS) Preview" . http://www.winsupersite.com/showcase/winfs_preview.asp . Retrieved 2007-06-30 .
12. ^ a b My tryst with Destiny, err… Integrated Storage
13. ^ Cath Everett. "Will Longhorn be worth the pain?" . ZDNet . http://news.zdnet.co.uk/software/0,1000000121,39191853,00.htm . Retrieved 2007-06-30 .
14. ^ a b "WinFS for Developers" . NTFS.com . http://www.ntfs.com/winfs_developers.htm . Retrieved 2007-07-04 . Obtenido 2007-07-04.
15. ^ Vijay Bangaru. "WinFS Beta 1 Refresh now available" . WinFS Team Blog . http://blogs.msdn.com/winfs/archive/2005/12/01/499042.aspx . Retrieved 2007-06-30 .
16. ^ Shan Sinha. "Showing off the next release of WinFS at Tech Ed 2006, in Boston! Join us!" . WinFS Team Blog . http://blogs.msdn.com/winfs/archive/2006/05/22/604075.aspx . Retrieved 2007-06-30 .
17. ^ Sanjay Anand. "My tryst with Destiny, err… Integrated Storage" . WinFS Team Blog . http://blogs.msdn.com/winfs/archive/2006/02/24/538925.aspx . Retrieved 2007-06-30 .
18. ^ a b c d Quentin Clark. "Where is WinFS now?" . http://perspectives.on10.net/blogs/jonudell/Where-is-WinFS-now/ . Retrieved 2008-05-17 . Obtenido 2008-05-17.
19. ^ Quentin Clark. "Update to the Update" . WinFS Team Blog . http://blogs.msdn.com/winfs/archive/2006/06/26/648075.aspx . Retrieved 2007-06-30 .
20. ^ Daniel Kornev (December 19, 2006). "A few words about WinFS: The project is back on track" . Channel 9 . http://channel9.msdn.com/ShowPost.aspx?PostID=267149 .
21. ^ Nate Mook. "MS Explains WinFS, Releases Beta 1" . BetaNews . http://www.betanews.com/article/MS_Explains_WinFS_Releases_Beta_1/1125353356 . Retrieved 2007-07-02 .
22. ^ a b Shishir Mehrotra (September 2005). ""WinFS" Future Directions: An Overview" . Professional Developers Conference 2005 presentations . Microsoft . http://microsoft.sitestream.com/PDC05/DAT/DAT209_files/intro.htm . Retrieved 2006-05-22 . Obtenido 2006-05-22. (Currently offline, mirror ).
23. ^ Erwyn van der Meer. "First Look on WinFS Beta 1" . http://bloggingabout.net/blogs/erwyn/archive/2005/08/30/9156.aspx . Retrieved 2007-07-03 .
24. ^ Vijay Bangaru. "WinFS Mailbox" . WinFS Team Blog . http://blogs.msdn.com/winfs/archive/2005/09/13/465269.aspx . Retrieved 2007-06-30 .
25. ^ a b c d e f g h i j k l Richard Grimes. "Revolutionary File Storage System Lets Users Search and Manage Files Based on Content" . MSDN Magazine . http://msdn.microsoft.com/msdnmag/issues/04/01/WinFS/ . Retrieved 2007-06-30 .
26. ^ a b c d e f g h i j Shawn Wildermuth (July 2004). "A Developer's Perspective on WinFS: Part 2" . MSDN . Microsoft . http://msdn2.microsoft.com/en-us/library/ms996631.aspx . Retrieved 2007-06-30 .
27. ^ a b c d Kati Dimitrova. "About WinFS Rules" . WinFS Team Blog . http://blogs.msdn.com/winfs/archive/2005/10/10/479416.aspx . Retrieved 2007-06-30 .
28. ^ Vijay Bangaru. "Unify, Organize, Explore, and Innovate. Oh my! (Part 4)" . WinFS Team Blog . http://blogs.msdn.com/winfs/archive/2005/11/18/494707.aspx . Retrieved 2007-06-30 .
29. ^ Thomas Rizzo, Sean Grimaldi (October 18, 2004). "An Introduction to "WinFS" OPath" . MSDN . Microsoft . http://msdn2.microsoft.com/en-us/library/aa480689.aspx . Retrieved 2007-06-30 .
30. ^ a b "Innovative Data Programming Platform" . http://www.codeplex.com/classifier/Wiki/View.aspx?title=Innovative%20Data%20Programming%20Platform&referringTitle=WinFS . Retrieved 2007-03-15 . Obtenido 2007-03-15.
31. ^ a b c d e f Neil Padgett. "Getting Data Into WinFS with WinFS Synchronization" . WinFS Team Blog . http://blogs.msdn.com/winfs/archive/2005/11/17/494222.aspx . Retrieved 2007-06-30 .
32. ^ Wei-Meng Lee. "WinFS -StoreSpy" . http://weimenglee.blogspot.com/2005/09/winfs-storespy.html . Retrieved 2007-06-30 .
33. ^ "Stefano Demiliani WeBlog:WinFS StoreSpy v0.8 for the WinHEC 2004 Longhorn Build" . http://dotnetjunkies.com/WebLog/demiliani/archive/2004/05/20/14044.aspx . Retrieved 2007-03-12 . Obtenido 2007-03-12.
34. ^ "StoreSpy should become StoreEditor" . http://winfx.edu.pl/art1953.html . Retrieved 2007-06-30 .
35. ^ a b Sanjay Nagamangalam. "Visualizing WinFS Types" . WinFS Team Blog . http://blogs.msdn.com/winfs/archive/2005/09/08/462713.aspx . Retrieved 2007-07-03 .
36. ^ Luiz Miranda. "Using OPather To Help Write Queries" . WinFS Team Blog . http://blogs.msdn.com/winfs/archive/2005/09/13/465218.aspx . Retrieved 2007-06-30 .
37. ^ Shishir Mehrotra. "The killer app for getting users organized" . WinFS Team Blog . http://blogs.msdn.com/winfs/archive/2006/05/16/599183.aspx . Retrieved 2007-06-30 .

[ edit ] External links [Editar] Enlaces externos

* WinFS Blog
* WinFS at the Microsoft Developer Network [ dead link ]
* Channel 9 Videos
* WinFS Newsgroup
* WinFS Beta 1 Review
* WinFS area on NetFXGuide.com
== Enlaces externos ==
== Enlaces externos ==
http://blogs.msdn.com/winfs/
http://blogs.msdn.com/winfs/

Revisión del 10:48 22 ene 2010

WinFS es un sistema de archivos que fue desarrollado por Microsoft para utilizarlo en su sistema operativo Windows. En un principio, el nombre significaba Windows Future Storage (almacenamiento del futuro), pero ahora significa Windows File System (sistema de archivos). En 1992, su precursor fue llamado Object File System (OFS) y estaba planeado para formar parte de Windows Cairo.

Existió un desconcierto general acerca de si WinFS era en sí mismo un sistema de archivos, o si solamente era una extensión del sistema actual, ya que en varios documentos técnicos se habla de que las funciones tradicionales de un sistema de archivos las sigue haciendo NTFS y WinFS solamente lo complementa agregando funciones de búsqueda típicos de una base de datos, basándose en la próxima versión de SQL Server, cuyo nombre provisional es Yukon. Sin embargo otros documentos y citas parecen indicar que esta relación entre WinFS y NTFS se da solamente con el propósito de aumentar la compatibilidad con los sistemas existentes y evitar que sea necesario realizar conversiones de un sistema al otro para usar los beneficios de WinFS y que finalmente esta relación desaparecerá dando paso a volúmenes en los cuales WinFS será el sistema de archivos nativo. Aún es muy temprano para sacar una conclusión acerca de cuál de estas opciones es la correcta ya que WinFS probablemente sufra importantes modificaciones antes de su lanzamiento oficial, e incluso después de éste.

Se esperaba que WinFS facilitase la clasificación y las búsquedas de archivos, superando a la habitual relación jerárquica carpeta-archivo, mediante carpetas dinámicas cuyo contenido es el resultado de una consulta o archivos contenidos en dos o más carpetas. Aunque estaba previsto que viniera con todas las versiones, sólo saldrá en el 2007 junto con la versión servidor de Vista, llamado Windows Server 2008. Se esperaba que fuera lanzado después como actualización en el Service Pack 1 para Vista y el SP3 para Windows XP, y fuera incluido en cada DVD de instalación de Windows Vista.

Finalmente el proyecto se descartó el 25 de junio de 2006. Se planeó incorporar en Windows 7, la nueva versión de Windows, pero una vez más de descartó utilizar este sistema de archivos.

Enlaces externos

http://blogs.msdn.com/winfs/