超巨大テキストファイル(5TB = 5,120GB 以上)を読み込む

鈴川エディタホームページ


2014年01月06日 作成、2014年01月23日 更新

行数2兆5000億行以上、ファイルサイズ5TB以上の超巨大テキストファイルを編集
大規模テキスト
超巨大テキストファイル:超巨大行数(2,000億行)の編集

はじめに

鈴川エディタ(Windowsテキストエディター)がファイルサイズ5TB=5120GB以上の超巨大テキストファイルを読み込み、編集できることを示します。

鈴川エディタでは、作成、編集したテキストファイルは保存しなくても直ちに閉じることができます...

目次

目的

このページの目的は、鈴川エディタが少ないメモリ(50MB以下)で、大きいテキストファイル(5TB以上)を作成、読み込み、閲覧、編集ができることを示すことです。

ページトップ

方法

一つあたり約690GB、約79億行のXMLファイル(UTF-8)を8個つなげて読み込んで、ファイルサイズ約5.2TB、改行数約630億行のテキストファイルを作成します。

ページトップ

環境

このテストを実行した環境はこちらと同じです。

ページトップ

5TBファイルを作成

1つ690GB、79億行のXMLファイルを8個つなげて読み込みます。

図-1:[複数ファイルをつなげて開く]ダイアログボックス

このダイアログボックスで一つ690GB、79億行のXMLファイル
  D:\Data\jawiki-20121027-pages-meta-history.xml
を8個つないで一つのファイルとして読み込みます。
ファイル名は
  D:\Data\jawiki-20121027-pages-meta-history8.xml
です。文字コードはUTF-8です。ワークファイル文字コードもUTF-8です。

図-1-1
一つ690GB、79億行のXMLファイル
  D:\Data\jawiki-20121027-pages-meta-history.xml
を8個指定します。[開く]ボタンをクリックすると、読み込みを開始します。

[複数ファイルをつなげて開く]ダイアログボックス:Fig-1-1

図-1-2
690GB、79億行XMLファイル
  D:\Data\jawiki-20121027-pages-meta-history.xml
をエクスプローラーで示します。

[複数ファイルをつなげて開く]ダイアログボックス:Fig-1-3

ページトップ

図-2:複数ファイルをつなげて読み込んでいるところ

鈴川エディタは作業の間、編集プログレスダイアログで、時間や進捗率を表示します。
この作業には1,426分(約24時間)かかります。進捗率5%毎にプログレスダイアログを示します。

図-2-1
「複数ファイルをつなげて開く」を開始して10秒経過したところです。

複数ファイルをつなげて読み込んでいるところ:Fig-2-01

図-2-2
進捗率5%毎にプログレスダイアログを示します。

複数ファイルをつなげて読み込んでいるところ:Fig-2-02
複数ファイルをつなげて読み込んでいるところ:Fig-2-03
複数ファイルをつなげて読み込んでいるところ:Fig-2-04
複数ファイルをつなげて読み込んでいるところ:Fig-2-05
複数ファイルをつなげて読み込んでいるところ:Fig-2-06
複数ファイルをつなげて読み込んでいるところ:Fig-2-07
複数ファイルをつなげて読み込んでいるところ:Fig-2-08
複数ファイルをつなげて読み込んでいるところ:Fig-2-09
複数ファイルをつなげて読み込んでいるところ:Fig-2-10
複数ファイルをつなげて読み込んでいるところ:Fig-2-11
複数ファイルをつなげて読み込んでいるところ:Fig-2-12
複数ファイルをつなげて読み込んでいるところ:Fig-2-13
複数ファイルをつなげて読み込んでいるところ:Fig-2-14
複数ファイルをつなげて読み込んでいるところ:Fig-2-15
複数ファイルをつなげて読み込んでいるところ:Fig-2-16
複数ファイルをつなげて読み込んでいるところ:Fig-2-17
複数ファイルをつなげて読み込んでいるところ:Fig-2-18
複数ファイルをつなげて読み込んでいるところ:Fig-2-19
複数ファイルをつなげて読み込んでいるところ:Fig-2-20
複数ファイルをつなげて読み込んでいるところ:Fig-2-21
複数ファイルをつなげて読み込んでいるところ:Fig-2-22
複数ファイルをつなげて読み込んでいるところ:Fig-2-23

図-2-3
「複数ファイルをつなげて開く」を終了したところです。1,426分(約24時間)かかりました。読み込み時間はパソコン性能によって大きく異なります。テキストファイルの文字コードも読み込み時間に影響します。

複数ファイルをつなげて読み込んでいるところ:Fig-2-24

ページトップ

図-3:読み込み中のタスク マネージャー

編集プログレスダイアログを上に移動して、タスク マネージャーも表示します。読み込み中の鈴川エディタの使用メモリは約15MBです。

読み込み中のタスク マネージャー:Fig-3-1
読み込み中のタスク マネージャー:Fig-3-2
読み込み中のタスク マネージャー:Fig-3-3

ページトップ

図-4:読み込み終了

読み込み終了後、テキストウィンドウを3分割して、それぞれにテキストの先頭、中間、最後の部分を表示します。

図-4-1
読み込みが終了して、テキストの先頭部を表示しているところです。超巨大テキストの場合、読み込みが終了した後、テキストが表示されるまでしばらく時間がかかることがあります。

読み込み終了:Fig-4-1

図-4-2
[Ctrl]+[End]キーでテキストの最後部にジャンプしたところです。超巨大行数の場合、垂直スクロールタブを最下部までドラッグしてもテキストの最後部を表示できません。このような場合、[Ctrl]+[End]キーを使うとよいでしょう。

「指定位置へジャンプ」メニューを実行すると、[ジャンプ]ダイアログボックスが表示されますが、性能が劣るパソコンで超巨大テキストを表示、編集する場合、[ジャンプ]ダイアログボックスの表示にしばらく時間がかかることがありますので、表示されるまで操作をしないでお待ちください。

読み込み終了:Fig-4-2

図-4-3
テキストウィンドウを3分割して、それぞれにテキストの先頭、中間、最後の部分を表示しています。

読み込み終了:Fig-4-3

ページトップ

図-5:読み込み後のタスク マネージャー

読み込んだ5TBテキストファイルのテキストウィンドウを3分割して、その上にタスク マネージャーを表示します。鈴川エディタの使用メモリは約63MBです。

読み込み後ののタスク マネージャー:Fig-5-1
読み込み後ののタスク マネージャー:Fig-5-2
読み込み後ののタスク マネージャー:Fig-5-3

ページトップ

ハードディスクの状況

ハードディスクの使用状況をエクスプローラで表示します。

5TBファイルの読み込み、編集には5TBを超える容量のHDD(SSD)が必要です。一つのHDDでは容量が足りませんので、二つのHDD(3TB-HDD、2台)を使用します。鈴川エディタは一つのテキストファイルを読み込み、編集するために複数のワークフォルダ(HDD)を指定できます。これは鈴川エディタ独自の方法です。「RAID 0(ストライピング)」、「JBOD」とは関係ありません。

2台のHDDは共に3TBです。各HDDのドライブはそれぞれ一つだけでドライブ名はHとIです。HとIの下位フォルダは同じ構成です。フォルダ構成は以下の通りです。

個別ワークフォルダは以下のように指定しました。
H:\szkw32\Work\<+>H:\szkw32\SubWork\<+>I:\szkw32\SubWork\

図-6:5TBファイルの作成前

ファイル作成前のHドライブとIドライブは共に空です。ただし、鈴川エディタで使用する基本ワークフォルダ(空)があります。

図-6-1
Hドライブのプロパティです。2.72TB(名目3TB)がほぼすべて使用可能であることを示しています。

5TBファイルの作成前:Fig-6-1

図-6-2
H:\szkw32\フォルダのプロパティです。すべて未使用であることを示しています。

5TBファイルの作成前:Fig-6-2

図-6-3
Iドライブのプロパティです。2.72TB(名目3TB)がほぼすべて使用可能であることを示しています。

5TBファイルの作成前:Fig-6-3

図-6-4
I:\szkw32\フォルダのプロパティです。すべて未使用であることを示しています。

5TBファイルの作成前:Fig-6-4

ページトップ

図-7:5TBファイルの作成後

5TBファイルを作成した後のHドライブとIドライブを以下に示します。
合計使用ディスクサイズは、2.61TB × 2 = 5.22TB です。
ビーズフォルダの合計数は、67個 × 2 = 134個 です。
ビーズファイルの合計数は、(10000 × 66 + 6669)× 2 = 1,333,338個 です。

図-7-1
Hドライブのプロパティです。2.61TBが使用されています。

5TBファイルの作成後:Fig-7-1

図-7-2
H:\szkw32\フォルダのプロパティです。2.61TBが使用されています。
このフォルダの下に次の二つのワークファイルフォルダが作成されています。

  1. H:\szkw32\Work\1ai8wpfyzj\
  2. H:\szkw32\SubWork\1ai8wpfyzj\

5TBファイルの作成後:Fig-7-2

図-7-3
H:\szkw32\Work\フォルダのプロパティです。
このフォルダの下にワークファイルフォルダ「1ai8wpfyzj」が作成されています。このワークファイルフォルダで約22MBが使用されています。

5TBファイルの作成後:Fig-7-3

図-7-4
H:\szkw32\SubWork\フォルダのプロパティです。
このフォルダの下にワークファイルフォルダ「1ai8wpfyzj」が作成されています。このワークファイルフォルダで2.61TBが使用されています。

5TBファイルの作成後:Fig-7-4

図-7-5
Iドライブのプロパティです。2.61TBが使用されています。

5TBファイルの作成後:Fig-7-5

図-7-6
I:\szkw32\フォルダのプロパティです。2.61TBが使用されています。
このフォルダの下に次のワークファイルフォルダが作成されています。

  1. I:\szkw32\SubWork\1ai8wpfyzj\

5TBファイルの作成後:Fig-7-6

図-7-7
I:\szkw32\SubWork\フォルダのプロパティです。
このフォルダの下にワークファイルフォルダ「1ai8wpfyzj」が作成されています。このワークファイルフォルダで2.61TBが使用されています。

5TBファイルの作成後:Fig-7-7

図-7-8
H:\szkw32\Work\1ai8wpfyzj\はメインワークフォルダのワークファイルフォルダです。

5TBファイルの作成後:Fig-7-8

図-7-9
H:\szkw32\SubWork\1ai8wpfyzj\はサブワークフォルダのワークファイルフォルダです。その先頭付近です。
この中にビーズフォルダ(Dir1~Dir67)が67個あります。各ビーズフォルダの中に10,000個のビーズファイルが収納されています。

5TBファイルの作成後:Fig-7-9

図-7-10
H:\szkw32\SubWork\1ai8wpfyzj\はサブワークフォルダのワークファイルフォルダです。その最後付近です。

5TBファイルの作成後:Fig-7-10

図-7-11
I:\szkw32\SubWork\1ai8wpfyzj\はサブワークフォルダのワークファイルフォルダです。その先頭付近です。
この中にビーズフォルダ(Dir1~Dir67)が67個あります。各ビーズフォルダの中に10,000個のビーズファイルが収納されています。

5TBファイルの作成後:Fig-7-11

図-7-12
I:\szkw32\SubWork\1ai8wpfyzj\はサブワークフォルダのワークファイルフォルダです。その最後付近です。

5TBファイルの作成後:Fig-7-12

図-7-13
H:\szkw32\SubWork\1ai8wpfyzj\Dir1\は67個(Dir1~Dir67)あるビーズフォルダのうちの1番目です。その先頭付近です。
この中に10,000個のビーズファイル(Str0~Str9999)が収納されています。

5TBファイルの作成後:Fig-7-13

図-7-14
H:\szkw32\SubWork\1ai8wpfyzj\Dir1\は67個(Dir1~Dir67)あるビーズフォルダのうちの1番目です。その最後付近です。

5TBファイルの作成後:Fig-7-14

図-7-15
H:\szkw32\SubWork\1ai8wpfyzj\Dir30\は67個(Dir1~Dir67)あるビーズフォルダのうちの30番目です。その先頭付近です。
この中に10,000個のビーズファイル(Str290000~Str299999)が収納されています。

5TBファイルの作成後:Fig-7-15

図-7-16
H:\szkw32\SubWork\1ai8wpfyzj\Dir30\は67個(Dir1~Dir67)あるビーズフォルダのうちの30番目です。その最後付近です。

5TBファイルの作成後:Fig-7-16

図-7-17
H:\szkw32\SubWork\1ai8wpfyzj\Dir67\は67個(Dir1~Dir67)あるビーズフォルダのうちの67番目です。その先頭付近です。
この中に6,670個のビーズファイル(Str660000~Str666669)が収納されています。

5TBファイルの作成後:Fig-7-17

図-7-18
H:\szkw32\SubWork\1ai8wpfyzj\Dir67\は67個(Dir1~Dir67)あるビーズフォルダのうちの67番目です。その最後付近です。

5TBファイルの作成後:Fig-7-18

図-7-19
I:\szkw32\SubWork\1ai8wpfyzj\Dir1\は67個(Dir1~Dir67)あるビーズフォルダのうちの1番目です。その先頭付近です。
この中に10,000個のビーズファイル(Str0~Str9999)が収納されています。

5TBファイルの作成後:Fig-7-19

図-7-20
I:\szkw32\SubWork\1ai8wpfyzj\Dir1\は67個(Dir1~Dir67)あるビーズフォルダのうちの1番目です。その最後付近です。

5TBファイルの作成後:Fig-7-20

図-7-21
I:\szkw32\SubWork\1ai8wpfyzj\Dir30\は67個(Dir1~Dir67)あるビーズフォルダのうちの30番目です。その先頭付近です。
この中に10,000個のビーズファイル(Str290000~Str299999)が収納されています。

5TBファイルの作成後:Fig-7-21

図-7-22
I:\szkw32\SubWork\1ai8wpfyzj\Dir30\は67個(Dir1~Dir67)あるビーズフォルダのうちの30番目です。その最後付近です。

5TBファイルの作成後:Fig-7-22

図-7-23
I:\szkw32\SubWork\1ai8wpfyzj\Dir67\は67個(Dir1~Dir67)あるビーズフォルダのうちの67番目です。その先頭付近です。
この中に6,670個のビーズファイル(Str660000~Str666669)が収納されています。

5TBファイルの作成後:Fig-7-23

図-7-24
I:\szkw32\SubWork\1ai8wpfyzj\Dir67\は67個(Dir1~Dir67)あるビーズフォルダのうちの67番目です。その最後付近です。

5TBファイルの作成後:Fig-7-24

ページトップ


Copyright (c)2000 - 2019 鈴木由彦(Yoshihiko Suzuki)
e-Mail:szkwjp@gmail.com
HomePage:https://szkwjp.sakura.ne.jp/