MapR FSとは - わかりやすく解説 Weblio辞書 (original) (raw)

MapR FS 特徴
開発者 マップアール
正式名 MapR FS
導入 2011 (Linux)
構造
ディレクトリ B木
領域管理 マルチレベルB木
限度
最大ファイル サイズ 16 EiB
最大ファイル数 上限なし
最大ボリューム サイズ 上限なし
特徴
パーミッション 標準Unix、アクセス制御表現
透過的圧縮 あり
透過的暗号化 あり
対応OS Linux
テンプレートを表示

MapR File System (MapR FS) は非常に大規模で高い性能が求められる用途をサポートする分散ファイルシステムである[1]。MapR FSは多様なインタフェースに対応しており、これにはNFSFUSEインタフェースを経由した従来型のRead/Writeファイルアクセスに加えて、Apache HadoopApache Sparkといった多くのシステムで使われているHDFSインタフェースも含まれる[2][3]。またファイル志向のアクセスだけではなく、MapR FSはApache HBase APIおよびApache Kafka API、さらにはドキュメントデータベースインタフェースを利用したテーブルやメッセージストリームへのアクセスにも対応している。

MapR FSは2010年に最初のリリースが行われたが[4]、テーブルおよびメッセージングインタフェースの追加に伴い現在ではMapR Converged Data Platformと称されることが多い。しかしながら、これらすべての形式の永続データストレージを実装するために同じコア技術が使われており、すべてのインタフェースは最終的に同一のサーバプロセスが処理を担っている。データ基盤全体の個々の機能を区別するために、MapR FSの名称は特にファイル志向インタフェースを指すときに使われる。同様に、MapR DBもしくはMapR JSON DBはテーブル型インタフェースを指すときに使われ、MapR Streamsはメッセージストリーミング機能の説明のために使われる。

MapR FSはクラスタファイルシステムにおいて、クライアントからユニバーサルな名前空間を使用して、ファイルだけでなくテーブルなどの他のオブジェクトに対してもアクセスできるようにしている。ファイル、テーブル、ストリームに対してはアクセス制御表現を使用したアクセス制御も提供されている。アクセス制御表現は、一般に利用されている(限定的な)アクセス制御リストの機能拡張版で、許可されたユーザーやグループの単なるリストではなく、ユーザーおよびグループのブール表現による組み合わせによりパーミッションを構成することを可能にしている。

目次

歴史

MapR FSは、より高性能で安定した基盤を提供することでApache Hadoopの能力をさらに引き出すことを目指し、2009年にMapR Technologiesにより開発が開始された。MapR FSの設計はAndrew File System (AFS) のような様々な他のシステムの影響を受けている。特にAFSにおけるボリュームの概念は、MapR FSにおける実装は全く異なるものの、ユーザーからの見え方の観点では非常に似ている部分がある。AFSとMapR FSの間の大きな違いの一つは、MapR FSは強い整合性モデルを採用する一方で、AFSは弱い整合性のみを提供している点である。

Hadoopプログラムをサポートするという当初の目標を達成するため、MapR FSはHDFSの関数呼び出しを専用の遠隔手続き呼出し (RPC) メカニズムに基づく内部APIに変換することでHDFS APIに対応している。通常のHDFSのWrite-Onceモデルは、MapR FSでは(たとえHDFS API利用時でも)書き換え可能なファイルシステムで置き換えられている。ファイルの変更に対応する能力を備えたことにより、NFS操作を内部MapR RPC呼び出しに変換するNFSサーバの実装が可能になった。Filesystem in Userspace (FUSE) インタフェースやApache HBase APIの近似エミュレーションでも同様の仕組みが使われている。

アーキテクチャ

MapR FSにおけるファイルは、通常各256MBのサイズ(ただし各ファイルで指定可能)のチャンクに分割するように内部で実装されている。各チャンクは、クラスタ内における複製の基本単位であるコンテナに書き込まれる。コンテナの複製は、各複製が書き込み操作を次の複製に一列で転送していく直線型の方法か、マスターとなる複製が書き込み操作を他のすべての複製に同時に転送していくスター型の方法のいずれかで行われる。すべての複製への書き込みが完了した時点で、マスターとなる複製により書き込み完了の応答が返される。内部ではコンテナはB木を実装しており、ファイルオフセットをファイル内部のチャンクにマッピングしたり、ファイルオフセットをチャンク内部の正しい8kBブロックにマッピングしたりするなど、様々なレベルで使われている。

これらのB木はディレクトリの実装にも使われている。ディレクトリに含まれる各ファイル・ディレクトリ名の長いハッシュが、子ファイルやディレクトリテーブルの検索に使用されている。

ボリュームはディレクトリと多くの似た点を持つ特別なデータ構造であるが、追加のアクセス制御と運用管理操作を提供しているのが特徴である。ボリュームの重要な機能の一つに、あるボリュームがデータを格納するクラスタ内のノードを制限するための機能がある。この機能は、幅広いタイプの負荷を処理しており、激しい競合が発生しているマルチテナントシステムにおいて性能を制御するために使われる。

MapR FSではコンテナのトランザクションを実装したり、整合性のある障害回復を達成するために特許技術が利用されている。

ファイルシステムに含まれるその他の技術には次のようなものがある[5]:

関連項目

脚注・出典

  1. ^Flash Memory Summit”. Samsung. 2016年6月21日閲覧。
  2. ^ Dunning, Ted; Friedman, Ellen (January 2015). “Chapter 3: Understanding the MapR Distribution for Apache Hadoop” (English). Real World Hadoop (First ed.). Sebastopol, CA: O'Reilly Media, Inc. pp. 23–28. ISBN 978-1-491-92395-5. http://shop.oreilly.com/product/0636920038450.do 2016年6月21日閲覧。.
  3. ^How MapR improves our productivity and simplifies our design”. Medium. 2016年6月21日閲覧。
  4. ^MapR 1.0 Release Notes”. MapR. 2016年6月21日閲覧。
  5. ^MapR File System”. Hortonworks. 2016年6月21日閲覧。

外部リンク

ファイルシステムカテゴリ
ディスク Advanced Disc Filing System(英語版) AdvFS(英語版Apple File System Be File System(英語版Btrfs CrossDOS(英語版) Disc Filing System(英語版) Episode(英語版EFS HPFS ext ext2 ext3 ext3cow ext4 FAT FAT12 FAT16 FAT32 exFAT Files-11 HAMMER HFS HFS Plus IBM General Parallel File System JFS Macintosh File System(英語版MINIX NetWare File System(英語版NILFS Novell Storage Service NTFS QFS QNX4FS ReFS ReiserFS Reiser4 SpadFS(英語版UBIFS UFS VERITAS File System Write Anywhere File Layout(英語版XFS Xsan ZFS 光ディスク / 磁気テープ HSF ISO 9660 ISO 13490 UDF LTFS Flashメモリ / SSD FAT exFAT CHFS TFAT FFS2 F2FS JFFS JFFS2 LogFS(英語版) NVFS YAFFS UBIFS 分散ファイルシステム Coda CXFS(英語版) GFS2 Google File System OCFS2 QFS Xsan
ネットワーク AFS OpenAFS AFP DFS GPFS Google File System Lustre NCP NFS POHMELFS Hadoop Plan 9 FS SMB (CIFS) SSHFS
特殊用途 cramfs Dokan FUSE SquashFS UMSDOS UnionFS aufs initrd 疑似・仮想 configfs devfs procfs specfs sysfs tmpfs WinFS 暗号化 EncFS EFS ZFS UFS2