jueves, 21 de marzo de 2013

Bases de datos en la nube

Base de datos en la nube
Es una base de datos que se ejecuta en la nube. Hay dos modelos de implementación: los usuarios pueden ejecutar las bases de datos en la nube de forma independiente, utilizando una imagen de máquina virtual, o pueden comprar el acceso a un servicio de base de datos, gestionada por un proveedor de base de datos en nube. De las bases de datos disponibles en la nube, algunas son basadas en SQL y algunos utilizan un modelo de datos NoSQL.
Implementación del modelo
Existen dos métodos principales para ejecutar una base de datos en la nube:
·       Imagen de máquina virtual: Las plataformas en la nube permiten a los usuarios comprar instancias de máquinas virtuales por un tiempo limitado. Es posible ejecutar una base de datos en estas máquinas virtuales. Los usuarios pueden subir su imagen propia con una base de datos instalada en ella, o utilizar imágenes prefabricadas de máquinas que ya incluyen una instalación optimizada de una base de datos. Por ejemplo Oracle provee una imagen prefabricada con una instalación de Oracle Database 11g Enterprise Edition on Amazon EC2.1
·      Base de datos como servicio: Algunas plataformas en la nube ofrecen opciones para el uso de bases de datos como servicio, sin lanzar físicamente una instancia de máquina virtual para la base de datos. En esta configuración, los propietarios de aplicaciones no tienen que instalar y mantener la base de datos por su cuenta. En cambio, el proveedor de servicios de base de datos se encarga de la instalación y el mantenimiento de la base de datos, y los propietarios de aplicaciones pagan de acuerdo a su uso.2 Por ejemplo, Amazon Web Services provee dos servicios de base de datos como parte de su oferta en la nube, SimpleDB que almacena pares llave-valor en formato NoSql y Amazon Relational Database Service que esta basado en SQL con una interfaz MySql.
 
10 de las más útiles bases de datos en la nube
Amazon Web Services
Tiene una variedad de servicios de bases de datos basadas en la nube, incluyendo bases de datos relacionales y NoSQL. Amazon Relational Database (SDR) ejecuta MySQL, Oracle o instancias de SQL Server, mientras que Amazon SimpleDB es una base de datos en menor escala pensada para cargas de trabajo más pequeñasAmazon también ofrece una variedad de servicios auxiliares de gestión de datos, tales como su almacén de datos denominado Redshift, así como Data Pipeline, que ayuda a que los usuarios integren datos de múltiples fuentes para facilitar la gestión.
EnterpriseDB
Se centra en las bases de datos de código abierto PostgreSQL, pero su verdadero reclamo a la fama es su capacidad para trabajar con las aplicaciones de la base de datos Oracle.Tiene replicación binaria y copias de seguridad programadas.
Garantia Data
Ofrece un servicio de puerta de enlace para que los usuarios ejecuten Redis de código abierto y servicios de bases de datos Memcached NoSQL en memoria en la nube pública de AWS. El uso de software de Garantia permite la configuración automática de estos datos de código abierto al ayudar a que los desarrolladores de plataformas escalen nodos, creen grupos y construyan la tolerancia a fallas.
Google Cloud SQL
Se centra en dos productos principales: Google Cloud SQL, que Google describe como una infraestructura de base de datos MySQL completamente relacional; y Google BigQuery, una herramienta de análisis para ejecutar consultas en grandes conjuntos de datos almacenados en la nube.
Microsoft Azure
Microsoft utiliza su tecnología de servidor de SQL para proporcionar una base de datos relacional, permitiendo que los clientes accedan a una base de datos SQL ya sea en su nube, o en instancias de servidor SQL en las máquinas virtuales, tiene un servicio de nube alojada en la (almacenamiento de objeto binario grande), se ha optimizado para archivos multimedia, como audio y video.
MongoLab
En el mundo NoSQL, hay una variedad de plataformas de base de datos para elegir, incluyendo MongoDB. MongoLab ofrece a los usuarios el acceso a MongoDB en una variedad de otros importantes proveedores de nube, incluyendo AWS, Azure y Joyent. Al igual que los otros tipos de servicios de puerta de enlace, MongoLab también se integra con varias herramientas de plataformas como servicio (PaaS) en el nivel de aplicación. MongoLab funciona con entornos compartidos o dedicados, siendo el último ligeramente más caro.
Rackspace
La base de datos de Rackspace viene en una nube o en una oferta gestionada a través de Cloud Databases, que es el nombre de su producto. Rackspace pone énfasis en la virtualización basada en contenedores de sus Cloud Databases, que dicen permitir un mayor rendimiento en el servicio de base de datos en comparación a si se ejecuta por completo en la infraestructura virtualizada.
SAP
La gigante de software SAP está jugando en la nube con HANA, una plataforma basada en la tecnología en memoria. Su base de datos en nube complementa las herramientas de base de datos que están en las instalaciones de la empresa -incluyendo Sybase-, y está disponible en la nube de Amazon Web Services. HANA incluye otras aplicaciones que no son de bases de datos, como herramientas de gestión empresarial y desarrollo de aplicaciones.
StormDB
A diferencia de otras bases de datos en la nube, StormDB sigue su distribución completa de base de datos relacional en los servidores de metal, lo que significa que no hay virtualización de máquinas. Los funcionarios de StormDB afirman que esto conduce a un mejor rendimiento y a una gestión más sencilla, porque los usuarios no tienen que elegir el tamaño de las instancias de máquina virtual que se ejecuta en su base de datos.
Xeround
Es una herramienta de gestión para la implementación de bases de datos MySQL fácilmente escalables a través de una variedad de proveedores y plataformas de nube. Su software permite una alta disponibilidad y escalabilidad, y funciona a través de una variedad de proveedores de nube incluyendo AWS, Rackspace, Joyent y HP, así como OpenStack y plataformas Citrix.
Brandon Butler, Network World (EE.UU.)
Bibliografía

Particiones en MySQL & Oracle


Particionado de tablas en MySQL
Particionar tablas en MySQL nos permite rotar la información de nuestras tablas en diferentes particiones, consiguiendo así realizar consultas más rápidas y recuperar espacio en disco al borrar los registros. El uso más común de particionado es según fecha (date).
Para ver si nuestra base de datos soporta particionado simplemente ejecutamos:
SHOW VARIABLES LIKE '%partition%';
A continuación veremos un ejemplo de cómo particionar una tabla por mes y posteriormente borrar o modificar su información.
Crear particiones
1.- Creamos la tabla reports:

CREATE TABLE reports (
  id int(10) NOT NULL AUTO_INCREMENT,
  date datetime NOT NULL,
  report TEXT,
  PRIMARY KEY (id,date)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
Como se puede ver hemos añadido como índice de tabla el campo date, esto es necesario si luego queremos particionar por fecha.
2.-
Ahora que tenemos la tabla creada vamos a particionar por mes:

ALTER TABLE reports PARTITION BY RANGE(TO_DAYS(date))(
  PARTITION p201111 VALUES LESS THAN (TO_DAYS("2011-12-01")),
  PARTITION p201112 VALUES LESS THAN (TO_DAYS("2012-01-01")),
  PARTITION p201201 VALUES LESS THAN (TO_DAYS("2012-02-01")),
  PARTITION p201202 VALUES LESS THAN (TO_DAYS("2012-03-01")),
  PARTITION p201203 VALUES LESS THAN (TO_DAYS("2012-04-01")),
  PARTITION p201204 VALUES LESS THAN (TO_DAYS("2012-05-01")),
  PARTITION p201205 VALUES LESS THAN (TO_DAYS("2012-06-01")),
  PARTITION pDefault VALUES LESS THAN MAXVALUE
);

La última partición (pDefault) tendrá todos los registros que no entren en las particiones anteriores. De esta manera nos aseguramos que la información nunca dejará de insertarse en la tabla.
Borrar particiones
Lo bueno de trabajar con particiones es que podemos borrar rápidamente registros sin tener que recorrer toda la tabla e inmediatamente recuperar el espacio en disco utilizado por la tabla.
Por ejemplo si queremos borrar la partición más antigua simplemente ejecutamos:
ALTER TABLE reports DROP PARTITION p201111;

Añadir particiones
En el ejemplo anterior las 2 últimas particiones creadas han sido:

PARTITION p201205 VALUES LESS THAN (TO_DAYS("2012-06-01")),
PARTITION pDefault VALUES LESS THAN MAXVALUE

El problema es que todos los INSERTs que se hagan después de mayo de 2012 se insertarán en pDefault. La solución sería añadir particiones nuevas para cubrir los próximos meses:
ALTER TABLE reports REORGANIZE PARTITION pDefault INTO (
  PARTITION p201206 VALUES LESS THAN (TO_DAYS("2012-07-01")),
  PARTITION pDefault VALUES LESS THAN MAXVALUE);

En el caso que no tuvieramos una partición del tipo pDefault simplemente ejecutamos:
ALTER TABLE reports ADD PARTITION (PARTITION p201206 VALUES LESS THAN (TO_DAYS("2012-07-01")));

Consultar particiones
Para consultar información de particiones creadas en una tabla así como también los registros que contiene cada una ejecutamos:
SELECT PARTITION_NAME,TABLE_ROWS FROM information_schema.PARTITIONS WHERE TABLE_NAME='reports';

Particionado de tablas en Oracle
Tipos de Particionado en Oracle
El particionado fue introducido por primera vez en la versión 8 de Oracle, como una nueva característica DW para la gestión de grandes cantidades de información, y para facilitar la tarea de los administradores de bases de datos. Dependiendo de la versión de Oracle en la que estemos, tenemos diferentes tipos de particionado disponibles:

  • Oracle 8.0: particionado Range.
  • Oracle 8i: además del particionado Range se añaden los tipos Hash y Composite.
  • Oracle 9iR2/10g: se amplían con el tipo List y se permiten nuevas combinaciones de tipos en el particionado Composite.
  • Oracle 11g: se introducen las columnas virtuales para particionar(que no existen físicamente en la tabla), así como el particionado de Sistema (donde podemos gestionar directamente en que partición de la tabla se insertan los registros) y el particionado por Intervalos.

Particionado de Tablas en Oracle


Básicamente, el particionado se realiza utilizando una clave de particionado (partitioning key), que determina en que partición de las existentes en la tabla van a residir los datos que se insertan. Oracle también permite realizar el particionado de índices y de tablas organizadas por índices. Cada partición además puede tener sus propias propiedades de almacenamiento. Las tablas particionadas aparecen en el sistema como una única tabla, realizando el sistema la gestión automática de lectura y escritura en cada una de las particiones (excepto para el caso de la partición de Sistema introducida en la versión 11g). La definición de las particiones se indica en la sentencia de creación de las tablas, con la sintaxis oportuna para cada uno de los tipos.
  • Particionado Range: la clave de particionado viene determinada por un rango de valores, que determina la partición donde se almacenara un valor.
  • Particionado Hash: la clave de particionado es una función hash, aplicada sobre una columna, que tiene como objetivo realizar una distribución equitativa de los registros sobre las diferentes particiones. Es útil para particionar tablas donde no hay unos criterios de particionado claros, pero en la que se quiere mejor el rendimiento.
  • Particionado List: la clave de particionado es una lista de valores, que determina cada una de las particiones.
  • Particionado Composite: los particionados anteriores eran del tipo simples (single o one-level), pues utilizamos un único método de particionado sobre una o más columnas. Oracle nos permite utilizar métodos de particionado compuestos, utilizando un primer particionado de un tipo determinado, y luego para cada partición, realizar un segundo nivel de particionado utilizando otro método. Las combinaciones son las siguientes (se han ido ampliando conforme han ido avanzando las versiones): range-hash, range-list, range-range, list-range, list-list, list-hash y hash-hash (introducido en la versión 11g).
  • Particionado Interval: tipo de particionado introducido igualmente en la versión 11g. En lugar de indicar los rangos de valores que van a determinar cómo se realiza el particionado, el sistema automáticamente creara las particiones cuando se inserte un nuevo registro en la b.d. Las técnicas de este tipo disponible son Interval, Interval List, Interval Range e Interval Hash (por lo que el particionado Interval es complementario a las técnicas de particionado vistas anteriormente).
  • Particionado System: se define la tabla particionada indicando las particiones deseadas, pero no se indica una clave de particionamiento. En este tipo de particionado, se delega la gestión del particionado a las aplicaciones que utilicen la base de datos (por ejemplo, en las sentencias sql de inserción deberemos de indicar en que partición insertamos los datos).
·         Particionado Range

·         Esta forma de particionamiento requiere que los registros estén identificado por un “partition key” relacionado por un predefinido rango de valores. El valor de las columnas “partition key” determina la partición a la cual pertenecerá el registro.


CREATE TABLE sales

  ( prod_id       NUMBER(6)

  , cust_id       NUMBER

  , time_id       DATE

  , channel_id    CHAR(1)

  , promo_id      NUMBER(6)

  , quantity_sold NUMBER(3)

  , amount_sold   NUMBER(10,2)

  )

 PARTITION BY RANGE (time_id)

 ( PARTITION sales_q1_2006 VALUES LESS THAN (TO_DATE('01-APR-2006','dd-MON-yyyy'))     TABLESPACE tsa

 , PARTITION sales_q2_2006 VALUES LESS THAN (TO_DATE('01-JUL-2006','dd-MON-yyyy'))    TABLESPACE tsb

 , PARTITION sales_q3_2006 VALUES LESS THAN (TO_DATE('01-OCT-2006','dd-MON-yyyy'))    TABLESPACE tsc

 , PARTITION sales_q4_2006 VALUES LESS THAN (TO_DATE('01-JAN-2007','dd-MON-yyyy'))    TABLESPACE tsd

 );


Este tipo de particionamiento está mejor situado cuando se tiene datos que tienen rango lógicos y que pueden ser distribuidos por este. Ej. Mes del Año o un valor numérico.

Particionado Hash

Los registros de la tabla tienen su localización física determinada aplicando un valor hash a la columna del partition key. La función hash devuelve un valor automático que determina a que partición irá el registro. Es una forma automática de balancear el particionado. Hay varias formas de construir este particionado. En el ejemplo siguiente vemos una definición sin indicar los nombres de las particiones (solo el número de particiones):

CREATE TABLE dept (deptno NUMBER, deptname VARCHAR(32))

     PARTITION BY HASH(deptno) PARTITIONS 16;

Igualmente, se pueden indicar los nombres de cada particion individual o los tablespaces donde se localizaran cada una de ellas:

CREATE TABLE dept (deptno NUMBER, deptname VARCHAR(32))

     STORAGE (INITIAL 10K)

     PARTITION BY HASH(deptno)

       (PARTITION p1 TABLESPACE ts1, PARTITION p2 TABLESPACE ts2,

        PARTITION p3 TABLESPACE ts1, PARTITION p4 TABLESPACE ts3);

Particionado List

Este tipo de particionado fue añadido por Oracle en la versión 9, permitiendo determinar el particionado según una lista de valores definidos sobre el valor de una columna especifica.

CREATE TABLE sales_list (salesman_id NUMBER(5), salesman_name VARCHAR2(30),

sales_state VARCHAR2(20),

sales_amount NUMBER(10),

sales_date DATE)

PARTITION BY LIST(sales_state)

(

PARTITION sales_west VALUES('California', 'Hawaii'),

PARTITION sales_east VALUES ('New York', 'Virginia', 'Florida'),

PARTITION sales_central VALUES('Texas', 'Illinois')

PARTITION sales_other VALUES(DEFAULT)

);

Este particionado tiene algunas limitaciones, como que no soporta múltiples columnas en la clave de particionado (como en los otros tipos), los valores literales deben ser únicos en la lista, permitiendo el uso del valor NULL (aunque no el valor MAXVALUE, que si puede ser utilizado en particiones del tipo Range). El valor DEFAULT sirve para definir la partición donde irán el resto de registros que no cumplen ninguna condición de las diferentes particiones.

Particionado Composite

Este tipo de particionado es compuesto, pues se conjuga el uso de dos particionados a la vez. Veamos un ejemplo utilizando el tipo RANGE y el HASH. En primer lugar, hace un particionado del tipo RANGE utilizando rangos de años. En segundo lugar, para cada partición definida por cada año, hacemos un segundo particionado (subparticion) del tipo aleatorio (HASH) por el valor de otra columna:

  

  CREATE TABLE TAB2 (ord_id     NUMBER(10),

     ord_day    NUMBER(2),

     ord_month  NUMBER(2),

     ord_year   NUMBER(4)

     )

  PARTITION BY RANGE(ord_year)

  SUBPARTITION BY HASH(ord_id)

  SUBPARTITIONS 8

   ( PARTITION q1 VALUES LESS THAN(2001)

     ( SUBPARTITION q1_h1 TABLESPACE TBS1,

       SUBPARTITION q1_h2 TABLESPACE TBS2,

       SUBPARTITION q1_h3 TABLESPACE TBS3,

       SUBPARTITION q1_h4 TABLESPACE TBS4

     ),

     PARTITION q2 VALUES LESS THAN(2002) 

     ( SUBPARTITION q2_h5 TABLESPACE TBS5,

       SUBPARTITION q2_h6 TABLESPACE TBS6,

       SUBPARTITION q2_h7 TABLESPACE TBS7,

       SUBPARTITION q2_h8 TABLESPACE TBS8

     ),

     PARTITION q3 VALUES LESS THAN(2003) 

     ( SUBPARTITION q3_h1 TABLESPACE TBS1,

       SUBPARTITION q3_h2 TABLESPACE TBS2,

       SUBPARTITION q3_h3 TABLESPACE TBS3,

       SUBPARTITION q3_h4 TABLESPACE TBS4

     ),

     PARTITION q4 VALUES LESS THAN(2004)

     ( SUBPARTITION q4_h5 TABLESPACE TBS5,

       SUBPARTITION q4_h6 TABLESPACE TBS6,

       SUBPARTITION q4_h7 TABLESPACE TBS7,

       SUBPARTITION q4_h8 TABLESPACE TBS8

     )

   )

Actividad #16: Bitàcoras
 
¿Qué es?
Las bitácoras son fundamentales en lo que es la administración de bases de datos, pues con estas se puede tener un registro físicamente de todos los usuarios u objetos que se encuentren en determinada base de datos así como la información de las operaciones de las transacciones. Está almacenada en disco de forma que no es afectada por ningún tipo de fallo salvo error del propio disco o catástrofe.
 
Funciones:
· En caso de pérdida de usuarios u objetos y sus dueños así como los roles que desempeñan dentro del gestor nos sirven como respaldo de la información.
 
· Para permitir la recuperación de transacciones fallidas, el sistema mantiene un fichero de bitácora o diario (también llamado fichero log ó journal). BD. Esta información puede necesitarse para recuperar desde transacciones fallidas.
 
Bitàcora en mysql:
mysql -hlocalhost -uroot --tee=C: "Bitacora.txt"
c=Letra del dispositivo de almacenamiento
"Bitacora.txt=nombre de la bitácora

Actividad #15: Comparaciòn de particion de HDD & Sitema de archivos


Sistemas de archivos

Los sistemas de archivos son los métodos y estructuras de datos que un Sistema operativo utiliza para seguir la pista de los archivos de un disco o partición; es decir, es la manera en la que se organizan los archivos en el disco. El término también es utilizado para referirse a una partición o disco que se está utilizando para almacenamiento, o el tipo del sistema de archivos que utiliza. Así uno puede decir “tengo dos sistemas de archivo” refiriéndose a que tiene dos particiones en las que almacenar archivos, o que uno utiliza el sistema de “archivos extendido”, refiriéndose al tipo del sistema de archivos.

Particion

Particionar un disco duro es realizar una división en él de modo que, a efectos prácticos, el sistema operativo crea que tienes varios discos duros, cuando en realidad sólo hay un único disco físico dividido en varias partes. Diferencia entre un disco o partición y el sistema de archivos

La diferencia entre un disco o partición y el sistema de archivos que contiene es importante. Unos pocos programas (incluyendo, razonablemente, aquellos que crean sistemas de archivos) trabajan directamente en los sectores crudos del disco o partición; si hay un archivo de sistema existente allí será destruido o corrompido severamente. La mayoría de programas trabajan sobre un sistema de archivos, y por lo tanto no utilizarán una partición que no contenga uno (o que contenga uno del tipo equivocado).

Antes de que una partición o disco sea utilizada como un sistema de archivos, necesita ser iniciada, y las estructura de datos necesitan escribirse al disco. Este proceso se denomina construir un sistema de archivos.

La mayoría de los sistemas de archivos UNIXtienen una estructura general parecida, aunque los detalles exactos pueden variar un poco. Los conceptos centrales son superbloque, nodo-i, bloque de datos, bloque de directorio, y bloque de indirección. El superbloque tiene información del sistema de archivos en conjunto, como su tamaño (la información precisa aquí depende del sistema de archivos). Un nodo-i tiene toda la información de un archivo, salvo su nombre. El nombre se almacena en el directorio, junto con el número de nodo-i. Una entrada de directorio consiste en un nombre de archivo y el número de nodo-i que representa al archivo. El nodo-i contiene los números de varios bloques de datos, que se utilizan para almacenar los datos en el archivo. Sólo hay espacio para unos pocos números de bloques de datos en el nodo-i; en cualquier caso, si se necesitan más, más espacio para punteros a los bloques de datos son colocados de forma dinámica. Estos bloques colocados dinámicamente son bloques indirectos; el nombre indica que para encontrar el bloque de datos, primero hay que encontrar su número en un bloque indirecto.

Los sistemas de archivos UNIX generalmente nos permiten crear un agujero en un archivo (esto se realiza con la llamada al sistema lseek(); compruebe su página de manual), lo que significa que el sistema de archivos simplemente intenta que en un lugar determinado en el archivo haya justamente cero Bytes, pero no existan sectores del disco reservados para ese lugar en el archivo (esto significa que el archivo utilizará un poco menos de espacio en disco). Esto ocurre frecuentemente en especial para pequeños binarios, librerías compartidas de Linux, algunas bases de datos, y algunos pocos casos especiales. (los agujeros se implementan almacenando un valor especial en la dirección del bloque de datos en el bloque indirecto o en el nodo-i. Esta dirección especial indica que ningún bloque de datos está localizado para esa parte del archivo, y por lo tanto, existe un agujero en el archivo).

Sistemas de archivos soportados por Linux:

Linuxsoporta una gran cantidad de tipos diferentes de sistemas de archivos. Para nuestros propósitos los más importantes son:

Minix

El más antiguo y supuestamente el más fiable, pero muy limitado en características (algunas marcas de tiempo se pierden, 30 caracteres de longitud máxima para los nombres de los archivos) y restringido en capacidad (como mucho 64 MB de tamaño por sistema de archivos).

Xia

Una versión modificada del sistema de archivos minix que eleva los límites de nombres de archivos y tamaño del sistema de archivos, pero por otro lado no introduce características nuevas. No es muy popular, pero se ha verificado que funciona muy bien.

Ext3

El sistema de archivos ext3 posee todas las propiedades del sistema de archivos ext2. La diferencia es que se ha añadido una bitácora (journaling). Esto mejora el rendimiento y el tiempo de recuperación en el caso de una caída del sistema. Se ha vuelto más popular que el ext2.

Ext2

El más sistema de archivos nativo Linux que posee la mayor cantidad de características. Está diseñado para ser compatible con diseños futuros, así que las nuevas versiones del código del sistema de archivos no necesitará rehacer los sistemas de archivos existentes.

Ext

Una versión antigua de ext2 que no es compatible en el futuro. Casi nunca se utiliza en instalaciones nuevas, y la mayoría de la gente que lo utilizaba han migrado sus sistemas de archivos al tipo ext2.

Reiserfs

Un sistema de archivos más robusto. Se utiliza una bitácora que provoca que la pérdida de datos sea menos frecuente. La bitácora es un mecanismo que lleva un registro por cada transacción que se va a realizar, o que ha sido realizada. Esto permite al sistema de archivos reconstruirse por sí sólo fácilmente tras un daño ocasionado, por ejemplo, por cierres del sistema inadecuados.

Adicionalmente, existe soporte para sistemas de archivos adicionales ajenos, para facilitar el intercambio de archivos con otros sistemas operativos. Estos sistemas de archivos ajenos funcionan exactamente como los propios, excepto que pueden carecer de características usuales UNIX , o tienen curiosas limitaciones, u otros inconvenientes.

Msdos

Compatibilidad con el sistema de archivos FATde MS-DOS (y OS/2 y Windows NT).

Umsdos

Extiende el dispositivo de sistema de archivos msdos en Linux para obtener nombres de archivo largos, propietarios, permisos, enlaces, y archivos de dispositivo. Esto permite que un sistema de archivos msdos normal pueda utilizarse como si fuera de Linux, eliminando por tanto la necesidad de una partición independiente para Linux.

Vfat

Esta es una extensión del sistema de archivos FAT conocida como FAT32. Soporta tamaños de discos mayores que FAT. La mayoría de discos con MS Windows son vfat.

so9660

El sistema de archivos estándar del CD-ROM; la extensión popular Rock Ridge del estándar del CD-ROM que permite nombres de archivo más largos se soporta de forma automática.

NFS

Un sistema de archivos de red que permite compartir un sistema de archivos entre varios ordenadores para permitir fácil acceso a los archivos de todos ellos.

Smbfs

Un sistema de archivos que permite compartir un sistema de archivos con un ordenador MS Windows. Es compatible con los protocolos para compartir archivos de Windows.

Algunos sistemas de archivo de Windows:

FAT

Los sistemas FAT (File Allocation Table -Tabla de Asignación de Archivos) son sencillos ya que lo único que hacen es guardar en un sector de arranque una tabla que le indica al sistema operativo donde están los archivos. FAT16 fue la primera versión para sistemas Windows pero se volvió obsoleto por no poder manejar mas de 65.000 archivos y un disco de 4GB de capacidad. FAT32, la siguiente versión, resolvió esto (puede manejar mas de 200 millones de archivos y discos de 2000GB), pero tiene como problemas una fragmentación importante de archivos, haciendo mas lenta la búsqueda en el disco, y que el tamaño máximo de archivo es de 4GB, un limitante bastante importante a la hora de la edición de video o backups. Otros inconvenientes de FAT son la falta de permisos de seguridad y ser muy propenso a errores. Este formato no desapareció ya que es muy útil en dispositivos extraibles como Diskettes, Pen drives, etc. por ser liviano y compatible con casi cualquier Sistema operativo.

NTFS

Con la salida de Windows XP se popularizó para el usuario hogareño el sistema de archivos NTFS (New Tech File System, que ya existía para Windows NT). Este formato, solucionó algunas cuestiones de seguridad y permite menos fragmentación que el anterior FAT32. Por otra parte sus límites son 16 TeraBytes de tamaño de archivo (1TB=1024GB), puede manejar algo mas de 4 mil millones de archivos y puede controlar discos de hasta 256TB. Los problemas de este sistema: no es recomendable para discos de menos de 400MB, no es compatible con sistemas operativos anteriores como Windows 98 y por último, no puede ser utilizado en medios extraibles de poca capacidad.

WinFS

Por último hay que destacar que Microsoft está desarrollando desde hace varios años un nuevo sistema de archivos llamado WinFS, que en un principio iba a estar integrado con Windows Vista. Sin embargo el proyecto parece estar parado, así que no hay novedades al respecto (el blog oficial de los desarrolladores de WinFS está abandonado desde 2006)

Actividad 2: Particiones en HDD

¿Qué es una Partición de disco?
Una partición podríamos decir que es un espacio de uso que asignamos en un disco duro. En cada disco duro podremos hacer varias particiones, de tal modo que todas ellas son en cierto modo independientes entre sí y podemos trabajar de manera individual sobre cada una, es decir, los datos que introduzcamos en una de ellas no afectan al espacio de las otras, si borramos los datos de una las demás no sufren variaciones, etc.
A efectos de empleo en un ordenador con un solo disco duro, si desde windows abrimos Mi PC y solo vemos una letra de disco (generalmente C), podemos entender que “para nuestro uso”, ese disco solo cuenta con una partición, si contásemos por ejemplo con dos letras (C y D) tendríamos dos particiones en ese disco.
Las particiones son un detalle importante a tener en cuenta en nuestros ordenadores, pues nos van a permitir por ejemplo:
  • Tener instalado el sistema operativo, drivers, programas, etc., en la primera partición.
  • Guardar archivos personales, música, películas, fotografías, etc., en la segunda partición.
Además de permitirnos tener organizada nuestra información, si llegado el caso tenemos que formatear el equipo (borrar y volver a instalar todo), solo borraríamos C y No perderíamos lo que se encuentre en D, que en este caso sería la segunda partición.
Importancia de las particiones
La importancia de las particiones a la hora de gestionar y organizar nuestra información.
Nos va a permitir por ejemplo, crear imágenes de disco de la unidad C, que es donde está el sistema y los programas instalados, pudiendo formatear en cualquier momento esa unidad sin perder dato alguno, al tenerlos ubicados en otras particiones.

Crear y formatear una partición del disco duro en WINDOWS 7

Para poder seguir estos pasos debe haber iniciado la sesión como Administrador.
Para crear una partición o un volumen (los dos términos suelen usarse indistintamente) en un disco duro, debe haber espacio sin asignar (vacío) en el disco duro o espacio disponible en una partición extendida del disco duro.
Si no hay espacio sin asignar, puede crearlo si reduce una partición existente, elimina una partición o usa un programa para crear particiones de terceros. Para obtener más información, consulte ¿Se pueden volver a crear particiones en el disco duro?. Para obtener más información acerca de la forma de volver a formatear un disco duro, consulte la sección "¿Qué es volver a formatear?", más adelante.

·         Para crear y formatear una partición (volumen)

Cuando cree particiones en un disco básico usando Administración de discos, los tres primeros volúmenes que cree se formatearán como particiones primarias. A partir del cuarto volumen, los volúmenes se configurarán como unidades lógicas de una partición extendida. Para obtener más información, consulte ¿Qué son las particiones y unidades lógicas?
1.      Para abrir Administración de equipos, haga clic en el botón Inicio , en Panel de control, en Sistema y mantenimiento, en Herramientas administrativas y, a continuación, haga doble clic en Administración de equipos. Si se le solicita una contraseña de administrador o una confirmación, escriba la contraseña o proporcione la confirmación.
2.      En el panel de navegación, en Almacenamiento, haga clic en Administración de discos.
3.      Haga clic con el botón secundario en una región sin asignar del disco duro y, a continuación, haga clic en Nuevo volumen simple.
4.      En el Asistente para nuevo volumen simple, haga clic en Siguiente.
5.      Escriba el tamaño del volumen que desea crear en megabytes (MB) o acepte el tamaño máximo predeterminado y, a continuación, haga clic en Siguiente.
6.      Acepte la letra de unidad predeterminada o seleccione una letra de unidad diferente para identificar la partición y, a continuación, haga clic en Siguiente.
7.      En el cuadro de diálogo Formatear la partición, realice una de las siguientes acciones:
·         Si no desea aplicar formato al volumen ahora mismo, haga clic en No formatear este volumen y, a continuación, haga clic en Siguiente.
·         Para formatear el volumen con la configuración predeterminada, haga clic en Siguiente.
8.      Revise sus opciones y luego haga clic en Finalizar.

·         Para formatear una partición existente (volumen)

Aviso

·         Al formatear un volumen, se destruyen todos los datos de la partición. Asegúrese de realizar copias de seguridad de todos los datos que desee guardar antes de comenzar.
·         No se puede formatear un disco o una partición actualmente en uso, incluida la partición que contiene Windows.
·         El formato rápido es una opción de formato que crea una tabla de archivos nueva pero que no sobrescribe ni borra completamente el volumen. Un formato rápido es mucho más rápido que uno normal, que borra completamente los datos existentes en el volumen.
1.      Para abrir Administración de equipos, haga clic en el botón Inicio , en Panel de control, en Sistema y mantenimiento, en Herramientas administrativas y, a continuación, haga doble clic en Administración de equipos. Si se le solicita una contraseña de administrador o una confirmación, escriba la contraseña o proporcione la confirmación.
2.      En el panel de navegación, en Almacenamiento, haga clic en Administración de discos.
3.      Haga clic con el botón secundario en el volumen que desea formatear y, a continuación, haga clic en Formatear.
4.      Para formatear el volumen con la configuración predeterminada, en el cuadro de diálogo Formatear, haga clic en Aceptar y, a continuación, de nuevo en Aceptar.

·         ¿Qué es volver a formatear?

Volver a formatear significa formatear un disco duro o una partición que ya se ha formateado previamente o que contiene datos. Al volver a formatear un disco, se eliminan todos los datos del disco.
En el pasado, a veces se recomendaba volver a formatear un disco duro y volver a instalar Windows como método para resolver problemas graves del equipo. Volver a formatear resolvía estos problemas, pero a costa de eliminar toda la información del equipo. Se tenía que volver a instalar los programas usando los discos o archivos de instalación originales y, a continuación, había que restaurar todos los archivos personales, como documentos, música e imágenes, a partir de copias de seguridad realizadas de antemano.
La versión actual de Windows ofrece una serie de opciones de recuperación menos drásticas, que proporcionan un mejor punto de partida para resolver los problemas del equipo. Para obtener más información, busque "opciones de recuperación del sistema" en Ayuda y soporte técnico de Windows. Volver a formatear e instalar se considerará en último recurso y solo se llevará a cabo si ninguna de las otras opciones de recuperación y diagnóstico resultan satisfactorias.
No se puede volver a formatear un disco o una partición actualmente en uso, incluida la partición que contiene Windows. Se trata de una característica de seguridad que impide que Windows se elimine accidentalmente. Para volver a formatear el disco duro del equipo y volver a instalar Windows, reinicie el equipo usando el disco de instalación de Windows (es lo que se conoce comúnmente como arrancar desde el disco de instalación). Durante el proceso de instalación, puede volver a crear particiones y formatear el disco duro y, a continuación, volver a instalar Windows. Este proceso borrará los archivos y programas, por lo que debe realizar copias de seguridad de los datos y archivos de programa antes de empezar. Para obtener más información, busque "instalación y reinstalación de Windows" en Ayuda.