MySQL, PostgreSQLと全文検索性能を比較する

はじめに

DoqueDBは、自由度の高い日本語全文検索や類似文書検索を特長とするデータベース管理システム(DBMS)です。今回、同様の機能をもつ他社ソフトウェアと性能比較を行いましたので、結果を公開します。Elasticsearchなど、データベース機能を持たない全文検索エンジンは対象としておりませんので、ご承知おきください。

検索対象として、十分な規模をもち、入手が容易なWikipedia日本語版および青空文庫のデータを使用しています。読者の方々にも追試いただけるよう、データ作成手順 (Wikipedia日本語版, 青空文庫) を掲載しました。

測定には公正を期しておりますが、ご指摘などありましたら「お問い合わせページ」よりご連絡ください。

1. 比較対象

比較対象としたDBMSは以下のものです。バージョン情報については後述します。

  • DoqueDB (Bigram)
  • MySQL + Mroonga (Bigram)
  • MySQL + Mroonga (MeCab)
  • MySQL + InnoDB (Bigram)
  • PostgreSQL + PGroonga (Bigram)
  • PostgreSQL + PGroonga (MeCab)
  • PostgreSQL + pg_bigm (Bigram) ※全文検索のみ

Mroonga、PGroongaは、全文検索エンジンGroongaをMySQLおよびPostgreSQLから使用するためのモジュールです。これ以降、MroongaとPGroongaを区別する必要のない文脈では、これらをGroonga系と総称します。括弧内は索引作成時に指定したトークナイザー(※)です。pg_bigmは類似文書検索を実現する機能をもたないため、全文検索のみ比較を行います。

※ トークナイザーがBigramのときは、データ内の連続した2文字を索引語とします。MeCabのときは、形態素解析で得られた語を索引語とします。たとえばデータが「ある日本当の」だった場合、Bigram索引では「日本」が見つかりますが、MeCab 索引では「日本」は見つかりません。

2. 測定結果

2.1 所見

  • データのロードおよび全文索引作成では、DoqueDBはGroonga系より最大2.5倍ほど処理に時間を要しました。
  • 全文検索では、DoqueDBはGroonga系とほぼ遜色ない処理速度で検索が行われました。とくに項目数の多いAND検索、OR検索ではDoqueDBが高速でした。
  • 類似文書検索では、DoqueDBはGroonga系より1~2桁処理に時間がかかりますが、特定のケースで極端に遅くなることがあります。これについては「7. 類似文書検索が遅くなるケースの考察」をご覧ください。
  • 類似文書検索の結果は適合度の高い順にソートされています。結果の妥当性において、主観的にはDoqueDBはGroonga系に劣らないと思われました。ただし、青空文庫で長いテキストを類似文書検索した結果については、上位10件程度を除いてそれほど有効な結果は得られないようでした。詳細については読者のご判断にお任せします。
  • MySQL+InnoDBは、処理時間、類似文書検索結果の妥当性のいずれにおいても、DoqueDBやGroonga系のレベルに達していないようでした。

2.2 データ登録および全文索引作成

データのロードおよび全文索引作成にかかった処理時間、また作成されたDBのファイルサイズを示します。登録データの詳細については「4. 登録データ」を参照してください。

Wikipedia日本語版

DBMS DoqueDB
(Bigram)
MySQL
+Mroonga
(Bigram)
MySQL
+Mroonga
(MeCab)
MySQL
+InnoDB
(Bigram)
PostgrSQL
+PGroonga
(Bigram)
PostgrSQL
+PGroonga
(MeCab)
PostgrSQL
+pg_bigm
(Bigram)
ロード 1:22.982 1:39.682 1:37.803 4:52.388 2:15.131 2:03.726 2:16.900
全文索引作成 22:10.429 8:48.674 15:45.120 2:31:32.006 8:20.764 16:39.710 15:40.586
ファイルサイズ 5.9GB 7.5GB 6.1GB 11GB 7.9GB 6.4GB 5.0GB

青空文庫

類似文書検索機能を持たないpg_bigmを対象から除外しています。

DBMS DoqueDB
(Bigram)
MySQL
+Mroonga
(Bigram)
MySQL
+Mroonga
(MeCab)
MySQL
+InnoDB
(Bigram)
PostgrSQL
+PGroonga
(Bigram)
PostgrSQL
+PGroonga
(MeCab)
ロード 7.453秒 9.190秒 9.964秒 35.965秒 21.782秒 21.784秒
全文索引作成 2:43.330 1:07.391 1:41.010 23:46.451 1:15.955 2:51.373
ファイルサイズ 993MB 1.2GB 924MB 1.7GB 1.1GB 845MB

2.3 全文検索性能

全文検索の性能指標として、単独のキーワード検索、複数キーワードのOR検索およびAND検索にかかった処理時間と、検索された結果の件数(※)を示します。検索データの詳細については「5. 検索データ」を参照してください。

※ MeCab索引では単語境界をまたぐキーワードは見つからないため、結果件数は少なくなります。Bigram索引どうしで結果件数が異なるのは、正規化仕様の違いによります。正規化により表記のゆれが同一視されるため、広範囲に正規化を行うと結果件数が増大します。したがって、Bigramの中では正規化を行わないpg_bigmの件数が最も少なくなります。

Wikipedia日本語版

DBMS DoqueDB
(Bigram)
MySQL
+Mroonga
(Bigram)
MySQL
+Mroonga
(MeCab)
MySQL
+InnoDB
(Bigram)
PostgrSQL
+PGroonga
(Bigram)
PostgrSQL
+PGroonga
(MeCab)
PostgrSQL
+pg_bigm
(Bigram)
テレビアニメ 19ミリ秒
(14,205件)
14ミリ秒
(14,205件)
6ミリ秒
(13,940件)
8.333秒
(14,205件)
49ミリ秒
(14,205件)
34ミリ秒
(13,940件)
443ミリ秒
(14,205件)
データベース 13ミリ秒
(4,873件)
10ミリ秒
(4,839件)
3ミリ秒
(4,666件)
5.032秒
(4,838件)
35ミリ秒
(4,839件)
17ミリ秒
(4,666件)
181ミリ秒
(4,838件)
PostgreSQL
OR MySQL
20ミリ秒
(247件)
3ミリ秒
(247件)
2ミリ秒
(246件)
2.898秒
(247件)
17ミリ秒
(247件)
17ミリ秒
(246件)
9ミリ秒
(246件)
日本 84ミリ秒
(530,076件)
40ミリ秒
(530,063件)
793ミリ秒
(471,823件)
523ミリ秒
(530,058件)
318ミリ秒
(530,063件)
294ミリ秒
(471,823件)
127ミリ秒
(530,058件)
4語のOR検索
※1
61ミリ秒
(284,543件)
32ミリ秒
(281,432件)
66ミリ秒
(255,247件)
396ミリ秒
(281,432件)
242ミリ秒
(281,432件)
214ミリ秒
(255,247件)
80ミリ秒
(281,432件)
6語のOR検索
※2
71ミリ秒
(305,782件)
39ミリ秒
(302,749件)
74ミリ秒
(276,206件)
856ミリ秒
(302,749件)
269ミリ秒
(302,749件)
232ミリ秒
(276,206件)
1.047秒
(302,749件)
8語のOR検索
※3
70ミリ秒
(323,771件)
43ミリ秒
(320,896件)
82ミリ秒
(294,171件)
898ミリ秒
(320,896件)
285ミリ秒
(320,896件)
247ミリ秒
(294,171件)
1.413秒
(320,896件)
4語のAND検索
※4
12ミリ秒
(2,435件)
122ミリ秒
(2,396件)
88ミリ秒
(1,243件)
288ミリ秒
(2,396件)
132ミリ秒
(2,396件)
102ミリ秒
(1,243件)
10ミリ秒
(2,396件)
6語のAND検索
※5
9ミリ秒
(451件)
64ミリ秒
(450件)
49ミリ秒
(268件)
583ミリ秒
(450件)
74ミリ秒
(450件)
58ミリ秒
(268件)
193ミリ秒
(450件)
8語のAND検索
※6
5ミリ秒
(190件)
68ミリ秒
(189件)
54ミリ秒
(125件)
577ミリ秒
(189件)
79ミリ秒
(189件)
63ミリ秒
(125件)
134ミリ秒
(189件)

※1 東京 OR 京都 OR 大阪 OR 福岡
※2 札幌 OR 東京 OR 名古屋 OR 京都 OR 大阪 OR 福岡
※3 札幌 OR 仙台 OR 東京 OR 名古屋 OR 京都 OR 大阪 OR 広島 OR 福岡
※4 東京 AND 京都 AND 大阪 AND福岡
※5 札幌 AND 東京 AND 名古屋 AND 京都 AND 大阪 AND 福岡
※6 札幌 AND 仙台 AND 東京 AND 名古屋 AND 京都 AND 大阪 AND 広島 AND 福岡

2.4 類似文書検索性能

類似文書検索の性能指標として、長いテキストを対象とした類似文書検索の結果を示します。処理時間は適合度で上位50件を表示したときのものです。括弧内はその検索で見つかる文書の総件数を示します。なお、類似文書検索機能を持たないpg_bigmを対象から除外しています。検索データの詳細については「5. 検索データ」を参照してください。

Wikipedia日本語版

DBMS DoqueDB
(Bigram)
MySQL
+Mroonga
(Bigram)
MySQL
+Mroonga
(MeCab)
MySQL
+InnoDB
(Bigram)
PostgrSQL
+PGroonga
(Bigram)
PostgrSQL
+PGroonga
(MeCab)
29文字 ※1
上位50件
1.157秒 ※4
(131,251件)
4ミリ秒
(4,324件)
4ミリ秒
(3,844件)
3.789秒
(1,088,962件)
7ミリ秒
(4,324件
9ミリ秒
(3,844件)
546文字 ※2
上位50件
155ミリ秒
(560,641件)
5ミリ秒
(5,955件)
15ミリ秒
(21,903件)
※5 10ミリ秒
(5,955件)
77ミリ秒
(21,903件)
3,224文字 ※3
上位50件
121ミリ秒
(120,705件)
20ミリ秒
(51,261件)
25ミリ秒
(32,084件)
※5 156ミリ秒
(51,261件)
116ミリ秒
(32,084件)

※1 「船が難破し無人島に漂着した少年たちが島で生き延びて生還する」(29文字)
※2 「兼六園」概要 (546文字)
※3 「新横浜」本文データ (3,224文字)
※4 「7. 類似文書検索が遅くなるケースの考察」で説明します。
※5 以下のエラーが発生し、実行が正常終了しませんでした。
ERROR 188 (HY000) at line 2: FTS query exceeds result cache limit

青空文庫

DBMS DoqueDB
(Bigram)
MySQL
+Mroonga
(Bigram)
MySQL
+Mroonga
(MeCab)
MySQL
+InnoDB
(Bigram)
PostgrSQL
+PGroonga
(Bigram)
PostgrSQL
+PGroonga
(MeCab)
29文字 ※1
上位50件
231ミリ秒
(9,205件)
5ミリ秒
(388件)
4ミリ秒
(222件)
85ミリ秒
(16,004件)
1ミリ秒
(388件)
1ミリ秒
(222件)
1,000文字 ※2
上位50件
82ミリ秒
(15,357件)
8ミリ秒
(2,655件)
8ミリ秒
(4,179件)
6.562秒
(16,858件)
5ミリ秒
(2,655件)
8ミリ秒
(4,179件)
10,000文字 ※3
上位50件
193ミリ秒
(15,829件)
16ミリ秒
(5,721件)
21ミリ秒
(4,908件)
54.064秒
(16,902件)
14ミリ秒
(5,721件)
19ミリ秒
(4,908件)

※1 「船が難破し無人島に漂着した少年たちが島で生き延びて生還する」(29文字)
※2 芥川龍之介「本所両国」冒頭より1,000文字
※3 芥川龍之介「本所両国」冒頭より10,000文字

2.5 類似文書検索結果

類似文書検索結果の妥当性を見るため、検索結果を適合度の順にソートした上位50件のタイトルを示します。MySQL+InnoDBでは、Wikipedia日本語版で検索データの文字数が多いときに類似文書検索が正常終了しないため、結果を空欄としています。また、該当する機能を持たないpg_bigmは比較対象から除外しています。Groonga系はほぼ同じ結果となるため、MySQL+Mroongaで代表し、PostgreSQL+PGroongaの結果を省略しています。

Wikipedia日本語版

※「▶」行をクリックすると内容が展開表示されます。

「船が難破し無人島に漂着した少年たちが島で生き延びて生還する」(29文字) 上位50件
順位 DoqueDB
(Bigram)
MySQL
+Mroonga
(Bigram)
MySQL
+Mroonga
(MeCab)
MySQL
+InnoDB
(Bigram)
1 ひかりごけ事件 琉球の朝貢と冊封の
歴史
ビーチコーミング 少年保護手続
2 パールアンド
ハーミーズ環礁
ビーチコーミング 琉球の朝貢と冊封の
歴史
千夜一夜物語の
あらすじ
3 野村長平 漂着物 漂着物 名古屋アベック殺人
事件
4 南国ドミニオン 銚子市 銚子市 特別攻撃隊
5 ゲオルク・シュテラー 漂流・漂着ごみ 漂流・漂着ごみ 小笠原諸島の自然
6 還住 (青ヶ島) ナホトカ号重油流出
事故
蛮社の獄 琉球の朝貢と冊封の
歴史
7 フライデーあるいは
太平洋の冥界
唐物抜荷事件 ナホトカ号重油流出
事故
第二次世界大戦
8 ヘンドリック・ハメル 寄船 野村長平 銚子市
9 蠅の王 カムチャツカ半島 唐物抜荷事件 八丈小島のマレー
糸状虫症
10 東京島 千島国 無人島 還住 (青ヶ島)
11 ジョン万次郎 はだしのコンサート 千夜一夜物語の
あらすじ
ラサ島鉱業所
12 家族ロビンソン漂流記
ふしぎな島のフローネ
日本の国際関係 南国ドミニオン 明治天皇
13 ビリーバーズ 還住 (青ヶ島) はだしのコンサート 無人航空機
14 冒険ガボテン島 1797年1月13日の海戦 寄船 ルイーザ・メイ・
オルコット
15 漂流 (小説) オデッセイ・マリーン
・エクスプロレイション
オデッセイ・マリーン
・エクスプロレイション
少年たち
(ミュージカル)
16 ひかりごけ (オペラ) 野村長平 1797年1月13日の海戦 大阪・愛知・岐阜連続
リンチ殺人事件
17 ロビンソン・
クルーソー
阿倍仲麻呂 日本の離島架橋 キン肉マンの登場人物
18 エウウォラン王の航海 オデュッセウス バハマの歴史 モルゴス
19 フライング・ギャング 日朝関係史 還住 (青ヶ島) 硫黄島の戦い
20 無人島物語シリーズ 善六 ワラタ (貨客船) 女子高生コンクリート
詰め殺人事件
21 マタンゴ バハマの歴史 カムチャツカ半島 日本の離島架橋
22 鳥島 (八丈支庁) ワラタ (貨客船) フランスの
アイルランド遠征
南硫黄島原生自然環境
保全地域
23 難破船バタヴィア号の
惨劇
千夜一夜物語の
あらすじ
メデューズ号の筏 反ユダヤ主義
24 ラメイ島虐殺事件 補陀落渡海 難破船 (曲) 北大東島のリン鉱山
25 メデューズ (帆走
フリゲート)
南国ドミニオン 波切騒動 能登半島地震
(2024年)
26 レッツ☆ラグーン えびす 東京島 市川一家4人殺害事件
27 寄船 メデューズ号の筏 タホ川 進ぬ!電波少年
28 クレ環礁 波切騒動 屋那覇島 大韓民国の少年法制
29 ヤン・ヤンセ・
ウェルテフレー
フランスの
アイルランド遠征
進ぬ!電波少年 元寇
30 無人島 (ハイドン) 難破船 (曲) 水島諸島 少女漫画
31 ヘロニモ・デ・
アギラール
シェイクスピア別人説 尖閣諸島問題 男の娘
32 美浜事件 徳川家康 千島国 セント・キルダ
33 ターロウ・
オブライエン
ローマの建国神話 鳥島 (八丈支庁) イスラーム世界の
少年愛
34 ビーチコーミング フランク・ワースリー 無人島物語シリーズ 尖閣諸島問題
35 下北弁 サン=フェリペ号事件 オデュッセウス 水谷新六
36 阿倍仲麻呂 タホ川 無人島物語 スター・ウォーズの
戦い一覧
37 スウェプト・アウェイ ベンジャミン・
ホーニゴールド
古代エジプト文学 文禄・慶長の役
38 難船ス物語 メデューズ (帆走
フリゲート)
大沢権右衛門 レイテ沖海戦
39 ウルグアイ空軍機
571便遭難事故
ウィリアム・
フィップス
フランクリン遠征 芙蓉部隊
40 ルーツ・サーチ
食心物体X
大沢権右衛門 メデューズ (帆走
フリゲート)
無人島
41 アルカイオス 古代エジプト文学 シェイクスピア別人説 ペリリューの戦い
42 ドラえもん のび太の
南海大冒険
フランクリン遠征 ベンジャミン・
ホーニゴールド
銀河英雄伝説の戦役
43 無人島ジョーク 北朝鮮漂流船問題 ウィリアム・
フィップス
インパール作戦
44 ラ・ペルーズ伯ジャン=
フランソワ・ド・ガロー
東京島 四阪島 彦島
45 尖閣諸島戦時遭難事件 黄金山神社 (石巻市) サバイバルキッズ 蛮社の獄
46 無人島のディーバ 日本語学校 マタンゴ 神戸連続児童殺傷事件
47 DAISOUNAN 安龍福 阿倍仲麻呂 エルヴィン・ロンメル
48 無人島に生きる十六人 日本の貿易史 日朝関係史 柏の少女殺し事件
49 ジェームス・マシュー
・バリー
平群広成 サン=フェリペ号事件 八重山諸島のマラリア
50 大黒屋光太夫 ミンスミート作戦 えびす 沖縄戦

「兼六園」概要 (546文字) 上位50件
順位 DoqueDB
(Bigram)
MySQL
+Mroonga
(Bigram)
MySQL
+Mroonga
(MeCab)
MySQL
+InnoDB
(Bigram)
1 兼六園 兼六園 兼六園
2 百万石通り 千波湖 千波湖
3 金沢城 雪吊 金沢市
4 日本三名園 金沢市 松平定信
5 金沢市 公園 偕楽園
6 雪吊 北陸鉄道金沢市内線 影の王国
7 明治紀念之標 前田育徳会 山の音
8 北陸鉄道金沢市内線 百万石通り 偕楽園 (札幌市)
9 玉泉園 成巽閣 水戸市
10 兼六園ジュニアカップ 新倉山浅間公園 人力飛行機
11 北鉄金沢中央バス 偕楽園 ヴィクトリーナ姫路
12 北陸鉄道金沢営業所 ヒートン (金具) 南湖公園
13 金沢駅バスターミナル 冬囲い 日本三名園
14 本多の森北電ホール 堂形のシイノキ 材木町 (岡崎市)
15 小松市 七十一番職人歌合 天徳寺
(福井県若狭町)
16 石川県営兼六園野球場 偕楽園 (札幌市) 伊屋ヶ谷
17 石川県立野球場 日本三名園 黒子 (氏族)
18 辰巳用水 石川県政記念しいのき
迎賓館
八女提灯
19 本多の森公園 金沢駅バスターミナル 霊巌寺 (泰山)
20 石川県 南湖公園 奉節県
21 前田育徳会 金沢電気軌道 高橋数良
22 堂形のシイノキ 栗林公園 国体
23 国立工芸館 山の音 夜梅祭
24 白鳥路温泉 影の王国 公園
25 ケンロクエンクマガイ 千葉公園 寛政の改革
26 石川県立工業高等学校 北陸鉄道金沢営業所 天明の打ちこわし
27 金沢神社 熱水泉 架空電車線方式
28 金沢駅 国体 村井古道
29 栗林公園 名古屋鉄道 喜多野徳俊
30 四高記念文化交流館 郵政省 2005年アメリカ
グランプリ
31 国立病院機構金沢医療
センター
バブル時代 偕楽園駅
32 西部緑地公園 新銀行東京 ノヴゴロド公国
33 偕楽園 パナソニック汐留
美術館
栗林公園
34 金沢湯涌江戸村 もずやん 尊号一件
35 金沢エクスプレス号 関西文化学術研究都市 迎賓館
36 金沢電気軌道 ドナルド・マクドナルド・
ハウス
吊下式ソナー
37 石川県立能楽堂 らびすた新杉田 隠密剣士
38 戸室石 五階百貨店 久恒秀治
39 さくら道 びゅうお TMライナー
40 シティライナー
(北陸鉄道)
木内綾 茨城県道178号
常磐公園線
41 金城霊澤 大名庭園 玉泉園
42 医王山県立自然公園 鷹司隆子 元藤燁子
43 宝円寺 水戸市 堀田正敦
44 金沢市立味噌蔵町
小学校
夜梅祭 ミシュラン
45 永安寺 (金沢市) 五山送り火 帰真園
46 広坂 (金沢市) 江之子島 福島市市民会館
47 NHK金沢放送局 前田氏 中島遊園地競馬場
48 加賀藩 洛陽名園記 オール沖縄
49 石川県道・富山県道
10号金沢湯涌福光線
元禄文化 長谷川宣以
50 しらさぎ (列車) 幕末期の文化 江戸時代

「新横浜」本文データ (3,224文字) 上位50件
順位 DoqueDB
(Bigram)
MySQL
+Mroonga
(Bigram)
MySQL
+Mroonga
(MeCab)
MySQL
+InnoDB
(Bigram)
1 新横浜 新横浜 大倉山 (横浜市)
2 新横浜駅 大倉山 (横浜市) 新横浜
3 新横浜プリンスホテル 横浜市営バス港北
営業所
横浜市営バス港北
営業所
4 羽田アクセス線
(新横浜)
横浜線 東急バス虹が丘営業所
5 北新横浜 東急バス新羽営業所 相鉄・JR直通線
6 篠原町 (横浜市) 相鉄・JR直通線 新横浜プリンスホテル
7 港北区 相鉄本線 横浜市営地下鉄ブルー
ライン
8 観音寺 (横浜市) 神奈川東部方面線 キュービックプラザ
新横浜
9 キュービックプラザ
新横浜
東急東横線 東急バス新羽営業所
10 神奈川東部方面線 川崎鶴見臨港バス
鶴見営業所
川崎鶴見臨港バス
鶴見営業所
11 横浜市営バス港北
営業所
相鉄新横浜線 川和町
12 大豆戸町 相鉄バス 上麻生ダム
13 北新横浜駅 相模鉄道 柴田秋雄
14 川崎鶴見臨港バス
鶴見営業所
東急バス虹が丘営業所 相鉄新横浜線
15 横浜線 東急バス東山田営業所 小金牧
16 新横浜パフォーマンス 横浜市営地下鉄ブルー
ライン
神奈川東部方面線
17 西谷駅 北七番丁通り 菊名
18 新綱島駅 大甲橋 東急東横線
19 三枚町 菊名 東急バス東山田営業所
20 菅田町 (横浜市) 横浜市 相模鉄道
21 横浜市営地下鉄ブルー
ライン
長尾景春の乱 相鉄本線
22 相模新駅 羽沢 (群馬県南牧村) 神奈川県立港北高等
学校
23 ジェイアール東海
ツアーズ
国際興業バス赤羽
営業所
長尾景春の乱
24 のぞみ (列車) 出初式 鳥山川
25 岸根町 鳥山川 NTTデータ伏見ビル
26 名古屋飛ばし 神奈川県立港北高等
学校
羽沢 (群馬県南牧村)
27 羽沢町 横浜市営バス緑営業所 横浜市営バス緑営業所
28 横浜市立城郷小学校 羽沢町 横浜線
29 ウインズ新横浜 二毛作 新横浜駅
30 東海道新幹線 東京メトロ副都心線 大倉山駅 (神奈川県)
31 相鉄いずみ野線 小机町 飛騨川流域一貫開発
計画
32 東急バス新羽営業所 横浜市消防局特別高度
救助部隊
新羽町
33 2018年東海道新幹線
車内殺傷事件
太田道灌 西谷駅
34 新幹線こだま号に特化
した旅行商品と乗車券類
相鉄20000系電車 飛騨川バス転落事故
35 新横浜ステーション
開発
西谷駅 太田道灌
36 篠原城 (横浜市) 横浜の都市デザイン 菊名駅
37 綱島 菅田町 (横浜市) ホテルアソシア高山
リゾート
38 夢の超特急 (小説) 羽地朝秀 小机城
39 横浜市営バス緑営業所 小机城 新羽駅
40 大倉山駅 (神奈川県) マリンパル女川 羽沢町
41 東急新横浜線 埼京線 長尾景春
42 大和市 横浜高速鉄道みなと
みらい線
東京メトロ副都心線
43 上菅田町 羽沢横浜国大駅 相鉄バス
44 横浜市営バス港北
ニュータウン営業所
三枚町 羽田アクセス線
(新横浜)
45 相鉄新横浜線 川崎鶴見臨港バス塩浜
営業所
横浜の都市デザイン
46 相鉄本線 菊名駅 あざみ野
47 港北警察署 長尾景春 東海道新幹線
48 鳥山町 (横浜市) 相鉄いずみ野線 横浜市
49 横浜アリーナ 大倉山駅 (神奈川県) 横浜市営バス港北
ニュータウン営業所
50 心霊スポット巡礼
ツアー
東急新横浜線 横浜市営バス浅間町
営業所

青空文庫

青空文庫では複数の作品が同一タイトルで収録されていることがあります。たとえば芥川龍之介『本所両国』の新字新仮名版と旧字旧仮名版、複数話構成の野村胡堂『銭形平次捕物控』など。

※「▶」行をクリックすると内容が展開表示されます。

「船が難破し無人島に漂着した少年たちが島で生き延びて生還する」(29文字) 上位50件
順位 DoqueDB
(Bigram)
MySQL
+Mroonga
(Bigram)
MySQL
+Mroonga
(MeCab)
MySQL
+InnoDB
(Bigram)
1 海島冒険奇譚
海底軍艦
無人島に生きる十六人 無人島に生きる十六人 鎖国
2 無人島に生きる十六人 海島冒険奇譚
海底軍艦
新宝島 無人島に生きる十六人
3 新宝島 海上の道 海島冒険奇譚
海底軍艦
新宝島
4 少年連盟 ウニデス潮流の彼方 後の業平文治 道標
5 沈黙の水平線 鎖国 怪塔王 海島冒険奇譚
海底軍艦
6 大菩薩峠 少年連盟 ボニン島物語 海上の道
7 怪奇人造島 新宝島 思い出す事など 旅愁
8 鎖国 大菩薩峠 大菩薩峠 罪と罰
9 ウニデス潮流の彼方 光をかかぐる人々 電気鳩 少年連盟
10 海上の道 後の業平文治 少年連盟 日本その日その日
11 イノチガケ ボニン島物語 真珠 江戸三国志
12 恐竜島 怪塔王 エリザベスと
エセックス
ニールスのふしぎな旅
13 ボニン島物語 大師の入唐 怪奇人造島 伊沢蘭軒
14 海難記 真珠 恐竜島 ドグラ・マグラ
15 光をかかぐる人々 伊沢蘭軒 南国太平記 チベット旅行記
16 他計甚麽(竹島)雑誌 恐竜島 鎖国 怪塔王
17 自分は見た 他計甚麽(竹島)雑誌 旅愁 妖怪博士
18 氷島の漁夫 石の信仰とさえの神と 淪落の青春 生々流転
19 後の業平文治 故郷七十年 昭和遊撃隊 新生
20 紅毛傾城 電気鳩 牡丹 ジエィン・エア
21 海底大陸 淪落の青春 恐竜艇の冒険 神州天馬侠
22 光と風と夢 旅愁 ガリバー旅行記 南国太平記
23 颱風雑俎 大菩薩峠 大金塊 経済学及び課税の
諸原理
24 幽霊船 吉田松陰 他計甚麽(竹島)雑誌 花と龍
25 少年探偵長 怪奇人造島 見えざる敵 獄中への手紙
26 「太平洋漏水孔」
漂流記
海底大陸 人外魔境 カラマゾフの兄弟
27 大空魔艦 私本太平記 海底大陸 新・水滸伝
28 電気鳩 新書太閤記 新書太閤記 ウニデス潮流の彼方
29 海に生くる人々 エリザベスと
エセックス
黒田如水 光をかかぐる人々
30 海郷風物記 福翁自伝 私本太平記 渡良瀬川
31 恐竜艇の冒険 新潮記 噂ばなし 大菩薩峠
32 伊良湖岬 ドグラ・マグラ 日記 親鸞
33 エリザベスと
エセックス
昭和遊撃隊 我が人生観 暗黒公使
34 宝島 銭形平次捕物控 服部先生の思出 超人間X号
35 怪塔王 夜明け前 潜航艇「鷹の城」
36 ガリバー旅行記 木綿以前の事 四十八人目 明暗
37 探検実記 地中の秘密 瓶詰地獄 天狗外伝
斬られの仙太
吾輩は猫である
38 重吉漂流紀聞 イーリアス 生々流転 火星兵団
39 牡丹 黒田如水 枕上浮雲 大菩薩峠
40 故郷七十年 噂ばなし カラマゾフの兄弟 ガリバー旅行記
41 昭和遊撃隊 我が人生観 斬られの仙太 故郷七十年
42 真珠 潜航艇「鷹の城」 新生 鉄人Q
43 ノンシャラン道中記 服部先生の思出 蔦葛木曽棧 後の業平文治
44 鞄らしくない鞄 人外魔境 茶話 少年探偵長
45 東洋文化史における
仏教の地位
日記 粟田口霑笛竹(澤紫
ゆかりの咲分)
蔦葛木曽棧
46 船旅 自分は見た 「太平洋漏水孔」
漂流記
人口論
47 新生 人外魔境 小泉八雲の家庭生活 人口論
48 人外魔境 古寺巡礼 職工と微笑 大岡政談
49 大師の入唐 恐竜艇の冒険 家常茶飯
附・現代思想
石狩川
50 病牀六尺 ガリバー旅行記 青銅の基督 真珠夫人

芥川龍之介「本所両国」(作品ID 48, 旧字旧仮名) 冒頭より1,000文字 上位50件
順位 DoqueDB
(Bigram)
MySQL
+Mroonga
(Bigram)
MySQL
+Mroonga
(MeCab)
MySQL
+InnoDB
(Bigram)
1 本所両国 本所両国 本所両国 道標
2 本所両国 本所両国 本所両国 ジエィン・エア
3 二つの絵 丹下左膳 渋江抽斎 伊沢蘭軒
4 大導寺信輔の半生 大菩薩峠 津軽 罪と罰
5 追憶 渋江抽斎 殺人鬼 新・水滸伝
6 大導寺信輔の半生 真景累ヶ淵 妖怪博士 鎖国
7 花火と大川端 菊模様皿山奇談 伊沢蘭軒 チベット旅行記
8 銭形平次捕物控 中里介山の
『大菩薩峠』
金魚撩乱 旅愁
9 少年 大菩薩峠 蜜のあわれ 親鸞
10 私のこと あさひの鎧 大菩薩峠 日本その日その日
11 半七捕物帳 奇談クラブ〔戦後版〕 クララ 吹雪物語
12 銭形平次捕物控 大菩薩峠 大導寺信輔の半生 続生活の探求
13 銭形平次捕物控 大岡政談 大導寺信輔の半生 南国太平記
14 四十八人目 奇怪な再会 新・水滸伝 神州天馬侠
15 両国界隈 銭形平次捕物控 融和問題に関する
歴史的考察
江戸三国志
16 水 附渡船 社会時評 真珠夫人
17 新編忠臣蔵 大導寺信輔の半生 嫉妬する夫の手記 花と龍
18 銭形平次捕物控 大導寺信輔の半生
19 伊沢蘭軒 大菩薩峠 浮標 カラマゾフの兄弟
20 塩原多助一代記 新・水滸伝 大塩平八郎 レ・ミゼラブル
21 銭形平次捕物控 話に聞いた近藤勇 樅ノ木は残った 新生
22 震災日誌 大菩薩峠 親鸞の水脈 明暗
23 雪の日 忘れ残りの記 樅ノ木は残った レ・ミゼラブル
24 渋江抽斎 融和問題に関する
歴史的考察
三人の相馬大作 経済学及び課税の
諸原理
25 銭形平次捕物控 人生案内 死体の匂い レ・ミゼラブル
26 夜明け前 銭形平次捕物控 樅ノ木は残った 火星兵団
27 両国橋の欄干 死体の匂い 神戸 故郷七十年
28 銅銭会事変 新書太閤記 追憶 殺人鬼
29 柳橋考 大菩薩峠 或る少女の死まで ジャン・クリストフ
30 縮図 明治世相百話 少年 ドグラ・マグラ
31 銭形平次捕物控 新編忠臣蔵 みみずのたはこと 死線を越えて
32 両国今昔 半七捕物帳 純粋経済学要論 石狩川
33 日曜日から日曜日まで 銭形平次捕物控 レ・ミゼラブル
34 銭形平次捕物控 伊沢蘭軒 親鸞
35 銭形平次捕物控 大菩薩峠 自由人 名曲決定盤
36 酒友列伝 大菩薩峠 死線を越えて 浮雲
37 銭形平次捕物控 道標 砂がき 人口論
38 芥川竜之介論 綺堂むかし語り 雪国の春 源頼朝
39 半七捕物帳 両国界隈 小説新論 新編忠臣蔵
40 銭形平次捕物控 親鸞の水脈 深夜の市長 吾輩は猫である
41 銭形平次捕物控 レ・ミゼラブル 蔦葛木曽棧
42 銭形平次捕物控 銭形平次捕物控 賤民概説 渡良瀬川
43 忘れ残りの記 半七捕物帳 立枯れ 真珠夫人
44 大菩薩峠 故郷七十年 十五年間 獄中への手紙
45 仇討姉妹笠 巴里より 生きぬく力 森の生活
――ウォールデン――
46 深川浅景 賤民概説 仇討禁止令 現代哲学講話
47 顎十郎捕物帳 棺桶の花嫁 名古屋スケッチ 折々の記
48 銭形平次捕物控 銭形平次捕物控 石狩川 いやな感じ
49 日和下駄 銭形平次捕物控 娘煙術師
50 大岡政談 日本その日その日 菊模様皿山奇談 小熊秀雄全集-19

芥川龍之介「本所両国」(作品ID 48, 旧字旧仮名) 冒頭より10,000文字 上位50件
順位 DoqueDB
(Bigram)
MySQL
+Mroonga
(Bigram)
MySQL
+Mroonga
(MeCab)
MySQL
+InnoDB
(Bigram)
1 本所両国 本所両国 本所両国 道標
2 花火と大川端 本所両国 荒天吉日 ジエィン・エア
3 両国界隈 本所両国 罪と罰
4 二つの絵 浅茅生 さぶ 新・水滸伝
5 水 附渡船 さぶ 河沙魚 チベット旅行記
6 雪の日 荒天吉日 岩石の間 旅愁
7 銭形平次捕物控 大岡政談 四十八人目 親鸞
8 銭形平次捕物控 丹下左膳 渋江抽斎 伊沢蘭軒
9 日曜日から日曜日まで 努力論 梅里先生行状記 日本その日その日
10 銭形平次捕物控 雪之丞変化 神州天馬侠 江戸三国志
11 両国今昔 河沙魚 平の将門 鎖国
12 銭形平次捕物控 明治世相百話 明治世相百話 南国太平記
13 銭形平次捕物控 神州天馬侠 小説 円朝 神州天馬侠
14 私のこと 真景累ヶ淵 津軽 続生活の探求
15 柳橋考 寄席と芝居と 猫の蚤とり武士 吹雪物語
16 両国橋の欄干 伊沢蘭軒 丹下左膳
17 本所両国 渋江抽斎 ドグラ・マグラ カラマゾフの兄弟
18 銭形平次捕物控 四十八人目 黒死館殺人事件 真珠夫人
19 銭形平次捕物控 平の将門 伊沢蘭軒 花と龍
20 深川浅景 梅里先生行状記 脱線息子 ドグラ・マグラ
21 銭形平次捕物控 追憶 夜の蝶 新生
22 銭形平次捕物控 満蒙遊記 半七捕物帳 獄中への手紙
23 銭形平次捕物控 新・水滸伝 半七捕物帳 レ・ミゼラブル
24 銭形平次捕物控 小説 円朝 かんかん虫は唄う 明暗
25 銭形平次捕物控 大菩薩峠 西洋人情話 英国孝子
ジョージスミス之伝
火星兵団
26 すみだ川 神曲 丹下左膳 レ・ミゼラブル
27 半七捕物帳 鉄塔の怪人 業平文治漂流奇談 経済学及び課税の
諸原理
28 銭形平次捕物控 ドグラ・マグラ 塩原多助一代記 殺人鬼
29 銭形平次捕物控 落語・教祖列伝 名人地獄 故郷七十年
30 銭形平次捕物控 死線を越えて 雪之丞変化 吾輩は猫である
31 銭形平次捕物控 我が円朝研究 親鸞 名曲決定盤
32 銭形平次捕物控 植物一日一題 好色破邪顕正 レ・ミゼラブル
33 伊沢蘭軒 智恵の一太郎 一本の花 死線を越えて
34 銭形平次捕物控 丹下左膳 新・水滸伝 新編忠臣蔵
35 銭形平次捕物控 明治劇談
ランプの下にて
灰色の眼の女 真珠夫人
36 日和下駄 随筆 宮本武蔵 努力論 黒死館殺人事件
37 銭形平次捕物控 巴里より 新生 蔦葛木曽棧
38 銭形平次捕物控 下谷叢話 青べか物語 浮雲
39 明治世相百話 ああ玉杯に花うけて 青べか物語 森の生活
――ウォールデン――
40 銭形平次捕物控 青べか物語 地震なまず 源頼朝
41 水害雑録 青べか物語 赤ひげ診療譚 レ・ミゼラブル
42 雪の日 半七捕物帳 吸血鬼 ジャン・クリストフ
43 蝙蝠 日本その日その日 我が愛する詩人の伝記 折々の記
44 放し鰻 甲州鎮撫隊 宮本武蔵 人口論
45 西洋人情話 英国孝子
ジョージスミス之伝
満蒙遊記 石狩川
46 銭形平次捕物控 塩原多助一代記 宮本武蔵 現代哲学講話
47 江戸前の釣り 菊模様皿山奇談 夜明け前 生々流転
48 大菩薩峠 夜の蝶 日本その日その日 いやな感じ
49 銭形平次捕物控 安吾武者修業 鎖国 雪之丞変化
50 力餅 幻術天魔太郎 江戸芸術論 渡良瀬川

2.6 測定上の留意事項

  • MySQLでは照合順序にutf8mb4_ja_0900_as_cs_ksを指定しています。DoqueDBとPostgreSQLではUTF-8の文字コード順で照合を行います。※1
  • DoqueDBでは文字処理において標準の正規化、Groonga系ではNormalizerAutoによる正規化を行っています。InnoDBでも簡易的な正規化が行われています。pg_bigmでは正規化を行っていません。※1
  • データ登録においては明示的なトランザクション処理を行っていません。
  • 類似文書検索では本文出力のオーバヘッドを避けるため、本文を除く書誌事項とスコアのみ出力しています。
  • 類似文書検索、全文検索はそれぞれ少なくとも4回以上実施し、処理時間については最後の3回の平均をとっています。
  • 測定条件を揃えるため、処理時間は対象クエリの前後に置いた時刻取得クエリの差分から計算しています。

※1 各DBMSの正規化の詳細については以下のQiita記事をご覧ください。
DoqueDB:MySQL, PostgreSQLと正規化を比較してみる

3. 測定環境

測定は以下の環境で行いました。

3.1 プラットフォーム

  • 機種:PowerEdge R220
  • OS:CentOS Stream release 9
  • CPU:Xeon(R) CPU E3-1271 v3 (3.6GHz, 8Mキャッシュ, ターボ, 4C/8T, 80W)
  • メモリ:32GB (1600MHz UDIMMs)

3.2 ソフトウェアバージョン

  • DoqueDB 1.1.0 (gcc11.4版)
  • MySQL 8.4.0 ※2
  • Groonga 14.0.5
  • Mroonga 13.04
  • PostgreSQL 16.1 ※3
  • PGroonga 3.2.1
  • pg_bigm 1.2 (全文検索のみ)

※2 InnoDB測定時にはinnodb_dedicated_serverをONにし、innodb_buffer_pool_sizeを初期状態の128MBから実メモリの75%である24GBに変更しています。
※3 work_memを初期状態の4MBから10MBに変更しています。

4. 登録データ

全文検索および類似文書検索は以下のデータを対象として実施しました。 詳細についてはそれぞれのデータ作成手順をご覧ください。

4.1 Wikipedia日本語版

  • 全文検索、類似文書検索の対象データとして使用
  • 2024年7月1日取得
  • データ件数:1,412,164件
  • 平均データ長:964文字
  • 書誌情報:項目ID, タイトル, 本文 ※4
  • 本文はインフォボックス, リスト要素, 表要素, 脚注・出典, 本文をもたない見出し等を含まない ※4

※4 本文データの取り出しにはwikiextractorを使用しています。以下の記事を参考にさせていただきました。
全文検索のテストデータ作成にWikipediaのデータを利用してみました。

データ作成手順

性能測定用のデータは以下の手順で作成しました。Python3の実行環境が必要です。

①Wikidump取得
以下よりjawiki-latest-pages-articles.xml.bz2を取得します。4GB近いサイズがあります。
Wikipedia:データベースダウンロード
②wikiextractorによる本文抽出
wikiextractorを用いて本文を抽出します。本家はattardi版ですが、エラーが出るという報告があり、いくつかforkがあります。今回はprokotg版を使いました。
GitHub – attardi/wikiextractor: A tool for extracting plain text from Wikipedia dumps
GitHub – prokotg/wikiextractor: A tool for extracting plain text from Wikipedia dumps

インストールと実行のようすは以下のとおりです。

# git clone https://github.com/prokotg/wikiextractor
# cd wikiextractor
# pip3 install wikiextractor
# wikiextractor jawiki-latest-pages-articles.xml.bz2 --json
INFO: Preprocessing 'jawiki-latest-pages-articles.xml.bz2' to collect template definitions: this may take some time.
INFO: Preprocessed 100000 pages
INFO: Preprocessed 200000 pages
INFO: Preprocessed 300000 pages
...
INFO: Loaded 102815 templates in 1363.0s
INFO: Starting page extraction from jawiki-latest-pages-articles.xml.bz2.
INFO: Using 7 extract processes.
INFO: Extracted 100000 articles (421.3 art/s)
INFO: Extracted 200000 articles (571.7 art/s)
INFO: Extracted 300000 articles (679.8 art/s)
...
INFO: Finished 7-process extraction of 2300305 articles in 2713.1s (847.8 art/s)
#

終了するとtextフォルダの下にAA, AB, AC, …が作られ、その中にwiki_00 ~ wiki_99 が出力されます。jsonのキーはid, revid, url, title, textの5つになります。

③CSV形式への変換
各DBMSでロードできるようにCSV形式に変換します。カラムはid (整数), title (文字列), text (文字列)のみとし、結果を/work/data/jawiki.csvに書き出します。以下のスクリプトをjson2csv.pyに保存し、「python3 json2csv.py text/*/*」を実行してください。

import sys
import json
nfiles = str(len(sys.argv) - 1)
with open('/work/data/jawiki.csv', mode='w', encoding='utf-8') as output:
  for pos, infile in enumerate(sys.argv[1:]):
    sys.stderr.write('\r' + str(pos + 1) + '/' + nfiles)
    with open(infile, encoding='utf-8') as input:
      for line in input:
        entry = json.loads(line)
        if not entry['text']:
          continue
        id = entry['id']
        title = entry['title'].replace('"', '""')
        text = entry['text'].replace('"', '""') \
          .replace('&', '&') \
          .replace('&lt;', '<') \
          .replace('&gt;', '>')
        output.write(id + ',"' + title + '","' + text + '"\n')
sys.stderr.write('\n')

4.2 青空文庫

  • 類似文書検索の対象データとして使用
  • 2022年4月13日取得
  • データ件数:16,909件
  • 平均データ長:13,582文字
  • 書誌情報:作品ID, 作品名, 作家姓, 作家名, テキストファイルURL, 本文
  • 著作権存続中の作品を含まない
データ作成手順

性能測定用のデータは以下の手順で作成しました。Perlの実行環境が必要です。

①青空文庫の全データ取得とCSVへの加工
DoqueDBのドキュメント「使ってみよう」の「9. 青空文庫の全データで検索する」に従って、青空文庫の書誌情報CSVファイルと本文テキストデータを作成します。
②単一CSVファイルへの変換
各DBMSでロードできるように、①で作ったデータを単一CSVファイルに変換します。以下のスクリプトをmake-aozora-csv.plに保存し、「perl make-aozora-csv.pl」を実行してください。

use utf8;
use strict;
use warnings;
use Text::ParseWords;
use Encode;
use IO::Handle;
use open IN  => ":utf8";
use open OUT => ":utf8";
my $infile  = "insert.csv";
my $outfile = "/work/data/aozora.csv";
open(IN,  "<$infile")  || die "can't open $infile $!\n";
open(OUT, ">$outfile") || die "can't open $outfile $!\n";
while (<IN>) {
    chomp;
    my $line = $_;
    my @d = &parse_line(',', 1, $line);
    my $file = $d[56];
    $file =~ s/^FILE //;
    open(TXT, "<$file") || die "can't open $file $!\n";
    my $c = do { local $/; <TXT> };
    close(TXT);
    $c =~ s/\r//g;
    $c =~ s/"/""/g;
    print OUT "$d[0],$d[1],$d[15],$d[16],$d[50],\"", $c, "\"\n";
}
close(IN);
close(OUT);
exit;

5. 検索データ

全文検索および類似文書検索では以下の検索データを使用しました。

5.1 全文検索

Wikipedia日本語版

  • テレビアニメ ※5
  • データベース ※5
  • PostgreSQL OR MySQL ※5
  • 日本 ※5
  • 東京 OR 京都 OR 大阪 OR 福岡
  • 札幌 OR 東京 OR 名古屋 OR 京都 OR 大阪 OR 福岡
  • 札幌 OR 仙台 OR 東京 OR 名古屋 OR 京都 OR 大阪 OR 広島 OR 福岡
  • 東京 AND 京都 AND 大阪 AND福岡
  • 札幌 AND 東京 AND 名古屋 AND 京都 AND 大阪 AND 福岡
  • 札幌 AND 仙台 AND 東京 AND 名古屋 AND 京都 AND 大阪 AND 広島 AND 福岡

※5 以下の記事を参考にさせていただきました。
MroongaとPGroonga – Groongaを使ってMySQLとPostgreSQLで日本語全文検索

5.2 類似文書検索

Wikipedia日本語版

「船が難破し無人島に漂着した少年たちが島で生き延びて生還する」(29文字)

船が難破し無人島に漂着した少年たちが島で生き延びて生還する

「兼六園」概要 (546文字)

兼六園(けんろくえん)は、石川県金沢市に存在する日本庭園である。国の特別名勝に指定されている。広さは約11.7ヘクタール。概要 17世紀中期、加賀藩によって金沢城の外郭に造営された「大名庭園」を起源とする江戸時代を代表する池泉回遊式庭園であり、岡山市の後楽園と水戸市の偕楽園と並んで日本三名園の1つに数えられる。2009年3月16日発売の『ミシュラン観光ガイド』では、最高評価の3つ星に選ばれた。園名は、松平定信が『洛陽名園記』を引用し、宏大・幽邃・人力・蒼古・水泉・眺望の6つの景観を兼ね備えていることから命名した。四季それぞれに趣が深く、季節ごとにさまざまな表情を見せるが、特に雪に備えて行われる雪吊は冬の風物詩となっている。県内でも随一の桜・梅・紅葉の名所でもあり、日本さくら名所100選にも選ばれている。金沢市の中心部に位置し、周辺には成巽閣、国立工芸館、石川県立美術館、金沢21世紀美術館、石川県政記念しいのき迎賓館を肇めとした文化施設(兼六園周辺文化の森)などの観光地があり、道路(百間堀通り)を隔てて橋一本で金沢城公園とも繋がっている。兼六園の管理等に関しては石川県都市公園条例で定められており、石川県都市公園条例施行規則で開園時間や入園料、無料入園期間などが定められている。

「新横浜」本文データ (3,224文字)

新横浜(しんよこはま)は、横浜市港北区にある新横浜駅を中心とする地域及び町名である。狭義の地名としては、新横浜一丁目から三丁目まである。住居表示未実施区域。広義には、新横浜北部地区・新横浜長島地区・新横浜南部地区、大豆戸(まめど)町の環状2号沿いも含む。略称は新横(しんよこ)。
新横浜区域は、横浜市における都心(ツインコア)の一つである新横浜都心に指定されている。都心としての新横浜には、上記3地区に城郷地区(小机駅周辺地区)、羽沢地区(羽沢横浜国大駅周辺地区)、新羽地区(新羽・北新横浜駅周辺地区)が加わる。
歴史.
室町時代には長尾景春の乱の戦場になったといわれる。
新幹線が開通する前は横浜市内最大の水田地帯で、昭和期に至るまで、鶴見川を中心に田畑が鴨居・川和方面から小机、新羽、岸根、大倉山方面に至るまで一面に広がっていたが、この近辺では二毛作ができず、土地の価値は低かったという。しかし、1964年に東海道新幹線が、翌年に環状2号がそれぞれ開通すると状況は一変した(なお、新幹線の計画発表前に、不動産ブローカーが「フォード社が自動車工場を作る」という触れ込みでこの地の田畑を買い漁ったという)。特に1976年に「ひかり」が新横浜駅に停車するようになってからは、企業やホテル等が集積し、著しい発展を遂げてきたことから、新幹線によって出来た街といえる。
1985年3月14日には市営地下鉄が延伸開業し、さらに、 横浜アリーナや新横浜プリンスホテル・ペペの開業、2002 FIFAワールドカップの決勝戦が横浜国際総合競技場(日産スタジアム)で行われたことにより、知名度は大きく上がり、イベントとビジネスの街として成長している。
1992年の「のぞみ」運行開始の際にはその停車駅となり、その後も年を重ねるにつれて新幹線の停車本数を増やしていき、ついに2008年3月15日のダイヤ改正では「新幹線全停車」という最高レベルに格上げされた。
2022年、神奈川県は新横浜一丁目および二丁目を県暴力団排除条例に基づき暴力団排除特別強化地域に指定した。
2023年3月18日に相鉄・東急直通線が開通し、相鉄線方面・東急東横線・目黒線方面からの利便性が向上する。
概要.
新横浜北部地区.
新幹線の線路より北側の、横浜上麻生道路、太尾新道、鳥山川に囲まれた地域である。
新横浜と言えば大体この地区を指し、オフィスビルやホテルなどが林立している。駅の目の前には環状2号が通っており、新横浜ラーメン博物館もこの地区にある。新横浜一丁目 - 新横浜三丁目には半導体関連、CAD、画像関係等の、いわゆるIT企業が多数集積している。雑居ビルも多く、オフィスが多いためテナントはコンビニ・喫茶店・居酒屋・カラオケ屋が主である。ほぼ碁盤の目状に区画整理が行われ、共同溝も掘られていて、電線・電話線は見えず、整然とした街並みである。
新横浜駅北口にはバスターミナル(高速・空港バス含む)とタクシープール、プリンスホテルの正面玄関には空港バス乗り場が設けられている("新横浜駅発着路線バス一覧)。"
新横浜駅北口を出てまっすぐ進むと鶴見川の支流の鳥山川があり、浜鳥橋、鳥山大橋、ワールドカップ大橋が架かっている。山側には鶴見川の本流が流れており、新横浜大橋、亀甲橋が架かっている。鳥山川の土手には「新横浜駅前公園」があり、簡易アスレチックも併設され、近所の住民の散歩コースになっている。近くを流れる鶴見川は昔から何度も氾濫している川であることから、川寄りのビルの地下には貯水槽が設置されている。鳥山川の対岸には日産スタジアム(旧横浜国際総合競技場)があり、サッカーの試合、著名アーティストのライブなどのイベントが開催されると、この辺りは人で溢れかえる。また、さらに2.5キロメートルほど先には第三京浜港
北ICがある。
新横浜駅北口の北東方向には円柱状の高層ビル「新横浜プリンスホテル」(42階建て 149メートル)があり、そのホテルに直結している商業施設「プリンスペペ」は休日になると買い物客で賑っている。その斜め向かいには横浜アリーナがあり、イベントが行われる際には駅は人で溢れかえり、歩道や陸橋は大混雑となる。
新横浜に初めて建った超高層ビルであるプリンスホテルは、新横浜のシンボル的存在である。
移設前のタクシープール直上に地上19階・地下4階建ての駅ビル(キュービックプラザ新横浜・ホテルアソシア新横浜)は2008年3月26日に開業し(ホテルアソシア新横浜は4月1日開業)、駅ビルからバス乗り場・既設歩道橋へ繋がるペデストリアンデッキが同年11月26日に開通した。
プロムナードが整備されており、「新横浜駅前プロムナード整備事業」で、平成2年度国土交通省手づくり郷土賞(街灯のある街角)
受賞。
新横浜長島地区.
新横浜駅から横浜市営地下鉄ブルーラインあざみ野駅方面の隣駅である北新横浜駅にかけての東側一体が、開発中の新横浜長島地区である(横浜市都市整備局)。「長島」の名は事業地であった新羽町の字から採っているが、町名変更に伴って北新横浜一丁目・二丁目となっている。
市営地下鉄は、北新横浜駅から新羽駅の少し先まで高架区間である。北新横浜一丁目には地下鉄の新羽車両基地がある。
また、首都高速神奈川7号横浜北線の新横浜出入口がある。
新横浜南部地区.
新幹線の線路より南側の新横浜篠原線・新横浜南口線(いずれも道路名)を軸とした、篠原町・大豆戸町の一部を指す。
北口とは対照的に、駅前には小規模なロータリーと雑居ビルが1棟あるだけである。駅前の通りを菊名方面へ行くと、港北七福神の1つ、大黒天が祀られている大黒天正覚院がある。篠原口から篠原消防出張所の脇を曲がると、篠原八幡神社があり、名木古木に指定されている木々が茂っている。
この地区の道路状況は極めて悪く、見通しの悪い道や狭い道が多々あるが、市と住民・地権者との対立が続いており、開発・土地区画整理は難航を極めていた。ゆえに、横浜線では2分程度で到着できる菊名駅から徒歩では20分以上かかるなど、不便さが目立つ。
2003年3月31日に本地区の事業計画「新横浜駅南部地区土地区画整理事業」が失効した。これにより、本地区を通る予定であった「都市計画道路新横浜篠原線」・「都市計画道路新横浜南口線」・「横浜市道新横浜元石川線」の延長・拡幅も白紙撤回となった。
2023年現在、横浜市では新横浜篠原線について計画変更の上で改めて整備を行うほか、駅前の約3.5haのエリアを再開発するまちづくり計画を明らかにしており、住民から意見を求めている。
地価.
商業地の地価は、2024年(令和6年)1月1日の公示地価によると、新横浜一丁目17-12の地点で668,000円/m2、新横浜二丁目3-8の地点で1,230,000円/m2、新横浜三丁目7-3の地点で2,200,000円/m2となっている。
町名.
1975年(昭和50年)区画整理事業に伴い、鳥山町・岸根町・篠原町・大豆戸町の一部から新設された。町名は新幹線の駅名に因む。
世帯数と人口.
2024年(令和6年)4月30日現在(横浜市発表)の世帯数と人口は以下の通りである。
人口の変遷.
国勢調査による人口の推移。
世帯数の変遷.
国勢調査による世帯数の推移。
学区.
市立小・中学校に通う場合、学区は以下の通りとなる(2023年4月時点)。
事業所.
2021年(令和3年)現在の経済センサス調査による事業所数と従業員数は以下の通りである。
事業者数の変遷.
経済センサスによる事業所数の推移。
従業員数の変遷.
経済センサスによる従業員数の推移。
篠原口側の主な施設.
篠原町の項も参照のこと。
その他.
警察.
町内の警察の管轄区域は以下の通りである。

青空文庫

「船が難破し無人島に漂着した少年たちが島で生き延びて生還する」(29文字)

船が難破し無人島に漂着した少年たちが島で生き延びて生還する

芥川龍之介「本所両国」(作品ID 48, 旧字旧仮名) 冒頭より1,000文字

本所両国 芥川龍之介 「大溝」 僕は本所界隈のことをスケツチしろといふ社命を受け、同じ社のO君と一しよに久振りに本所へ出かけて行つた。今その印象記を書くのに当り、本所両国と題したのは或は意味を成してゐないかも知れない。しかしなぜか両国は本所区のうちにあるものの、本所以外の土地の空気も漂つてゐることは確かである。そこでO君とも相談の上、ちよつと電車の方向板じみた本所両国といふ題を用ひることにした。-- 僕は生れてから二十歳頃までずつと本所に住んでゐた者である。明治二三十年代の本所は今日のやうな工業地ではない。江戸二百年の文明に疲れた生活上の落伍者が比較的大勢住んでゐた町である。従つて何処を歩いてみても、日本橋や京橋のやうに大商店の並んだ往来などはなかつた。若しその中に少しでも賑やかな通りを求めるとすれば、それは僅に両国から亀沢町に至る元町通りか、或は二の橋から亀沢町に至る二つ目通り位なものだつたであらう。勿論その外に石原通りや法恩寺橋通りにも低い瓦屋根の商店は軒を並べてゐたのに違ひない。しかし広い「お竹倉」をはじめ、「伊達様」「津軽様」などといふ大名屋敷はまだ確かに本所の上へ封建時代の影を投げかけてゐた。…… 殊に僕の住んでゐたのは「お竹倉」に近い小泉町である。「お竹倉」は僕の中学時代にもう両国停車場や陸軍被服廠に変つてしまつた。しかし僕の小学時代にはまだ「大溝」に囲まれた、雑木林や竹藪の多い封建時代の「お竹倉」だつた。「大溝」とはその名の示す通り、少くとも一間半あまりの溝のことである。この溝は僕の知つてゐる頃にはもう黒い泥水をどろりと淀ませてゐるばかりだつた。(僕はそこへ金魚にやる孑孑を掬ひに行つたことをきのふのやうに覚えてゐる。)しかし「御維新」以前には溝よりも堀に近かつたのであらう。僕の叔父は十何歳かの時に年にも似合はない大小を差し、この溝の前にしやがんだまま、長い釣竿をのばしてゐた。すると誰か叔父の刀にぴしりと鞘当てをしかけた者があつた。叔父は勿論むつとして肩越しに相手を振り返つてみた。僕の一家一族の内にもこの叔父程負けぬ気の強かつた者はない。かういふ叔父はこの時にも相手によつては売られた喧嘩を買ふ位の勇気は持つてゐたのであらう。が、相手は誰かと思ふと、朱鞘の大小を閂差しに差した身の丈抜群の侍だつた。しかも誰にも恐れられてゐた「新徴組」の一人に違ひなかつた。か

芥川龍之介「本所両国」(作品ID 48, 旧字旧仮名) 冒頭より10,000文字

本所両国 芥川龍之介 「大溝」 僕は本所界隈のことをスケツチしろといふ社命を受け、同じ社のO君と一しよに久振りに本所へ出かけて行つた。今その印象記を書くのに当り、本所両国と題したのは或は意味を成してゐないかも知れない。しかしなぜか両国は本所区のうちにあるものの、本所以外の土地の空気も漂つてゐることは確かである。そこでO君とも相談の上、ちよつと電車の方向板じみた本所両国といふ題を用ひることにした。-- 僕は生れてから二十歳頃までずつと本所に住んでゐた者である。明治二三十年代の本所は今日のやうな工業地ではない。江戸二百年の文明に疲れた生活上の落伍者が比較的大勢住んでゐた町である。従つて何処を歩いてみても、日本橋や京橋のやうに大商店の並んだ往来などはなかつた。若しその中に少しでも賑やかな通りを求めるとすれば、それは僅に両国から亀沢町に至る元町通りか、或は二の橋から亀沢町に至る二つ目通り位なものだつたであらう。勿論その外に石原通りや法恩寺橋通りにも低い瓦屋根の商店は軒を並べてゐたのに違ひない。しかし広い「お竹倉」をはじめ、「伊達様」「津軽様」などといふ大名屋敷はまだ確かに本所の上へ封建時代の影を投げかけてゐた。…… 殊に僕の住んでゐたのは「お竹倉」に近い小泉町である。「お竹倉」は僕の中学時代にもう両国停車場や陸軍被服廠に変つてしまつた。しかし僕の小学時代にはまだ「大溝」に囲まれた、雑木林や竹藪の多い封建時代の「お竹倉」だつた。「大溝」とはその名の示す通り、少くとも一間半あまりの溝のことである。この溝は僕の知つてゐる頃にはもう黒い泥水をどろりと淀ませてゐるばかりだつた。(僕はそこへ金魚にやる孑孑を掬ひに行つたことをきのふのやうに覚えてゐる。)しかし「御維新」以前には溝よりも堀に近かつたのであらう。僕の叔父は十何歳かの時に年にも似合はない大小を差し、この溝の前にしやがんだまま、長い釣竿をのばしてゐた。すると誰か叔父の刀にぴしりと鞘当てをしかけた者があつた。叔父は勿論むつとして肩越しに相手を振り返つてみた。僕の一家一族の内にもこの叔父程負けぬ気の強かつた者はない。かういふ叔父はこの時にも相手によつては売られた喧嘩を買ふ位の勇気は持つてゐたのであらう。が、相手は誰かと思ふと、朱鞘の大小を閂差しに差した身の丈抜群の侍だつた。しかも誰にも恐れられてゐた「新徴組」の一人に違ひなかつた。かれは叔父を尻目にかけながら、にやにや笑つて歩いてゐた。叔父は彼を一目みたぎり、二度と長い釣竿の先から目をあげずにゐたとかいふことである。 僕は小学時代にも「大溝」の側を通る度にこの叔父の話を思ひ出した。叔父は「御維新」以前には新刀無念流の剣客だつた。(叔父が安房上総へ武者修行に出かけ、二刀流の剣客と仕合をした話も矢張り僕を喜ばせたものである。)それから「御維新」前後には彰義隊に加はる志を持つてゐた。最後に僕の知つてゐる頃には年とつた猫背の測量技師だつた。「大溝」は今日の本所にはない。叔父も亦大正の末年に食道癌を病んで死んでしまつた。本所の印象記の一節にかういふことを加へるのは或は私事に及び過ぎるであらう。しかし僕はO君と一しよに両国橋を渡りながら、大川の向うに立ち並んだ無数のバラツクを眺めた時には実際烈しい流転の相に驚かない訣には行かなかつた。僕の「大溝」を思ひ出したり、その又「大溝」に釣をしてゐた叔父を思ひ出したりすることも必しも偶然ではないのである。 両国 両国の鉄橋は震災前と変らないといつても差支へない。唯鉄の欄干の一部はみすぼらしい木造に変つてゐた。この鉄橋の出来たのはまだ僕の小学時代である。しかし櫛形の鉄橋には懐古の情も起つて来ない。僕は昔の両国橋に--狭い木造の両国橋にいまだに愛惜を感じてゐる。それは僕の記憶によれば、今日よりも下流にかゝつてゐた。僕は時々この橋を渡り、浪の荒い「百本杭」や芦の茂つた中洲を眺めたりした。中洲に茂つた芦は勿論、「百本杭」も今は残つてゐない。「百本杭」もその名の示す通り、河岸に近い水の中に何本も立つてゐた乱杭である。昔の芝居は殺し場などに多田の薬師の石切場と一しよに度々この人通りの少ない「百本杭」の河岸を使つてゐた。僕は夜は「百本杭」の河岸を歩いたかどうかは覚えてゐない。が、朝は何度もそこに群がる釣師の連中を眺めに行つた。O君は僕のかういふのを聞き、大川でも魚の釣れたことに多少の驚嘆を洩らしてゐた。一度も釣竿を持つたことのない僕は「百本杭」で釣れた魚の何と何だつたかを知つてゐない。しかし或夏の夜明けにこの河岸へ出かけてみると、いつも多い釣師の連中は一人もそこに来てゐなかつた。その代りに杭の間には坊主頭の土左衛門が一人俯向けに浪に揺すられてゐた。…… 両国橋の袂にある表忠碑も昔に変らなかつた。表忠碑を書いたのは日露役の陸軍総司令官大山巖侯爵である。日露役の始まつたのは僕の中学へはひり立てだつた。明治二十五年に生れた僕は勿論日清役のことを覚えてゐない。しかし北清事変の時には大平といふ広小路(両国)の絵草紙屋へ行き、石版刷の戦争の絵を時々一枚づつ買つたものである。それ等の絵には義和団の匪徒や英吉利兵などは斃れてゐても、日本兵は一人も斃れてゐなかつた。僕はもうその時にも矢張り日本兵も一人位は死んでゐるのに違ひないと思つたりした。しかし日露役の起つた時には徹頭徹尾露西亜位悪い国はないと信じてゐた。僕のリアリズムは年と共に発達する訣には行かなかつたのであらう。もつともそれは僕の知人なども出征してゐた為めもあるかも知れない。この知人は南山の戦に鉄条網にかかつて戦死してしまつた。鉄条網といふ言葉は今日では誰も知らない者はない。けれども日露役の起つた時には全然在来の辞書にない、新しい言葉の一つだつたのである。僕は大きい表忠碑を眺め、今更のやうに二十年前の日本を考へずにはゐられなかつた。同時に又ちよつと表忠碑にも時代錯誤に近いものを感じない訣には行かなかつた。 この表忠碑の後には確か両国劇場といふ芝居小屋の出来る筈になつてゐた。現に僕は震災前にも落成しない芝居小屋の煉瓦壁を見たことを覚えてゐる。けれども今は薄汚ない亜鉛葺きのバラツクの外に何も芝居小屋らしいものは見えなかつた。もつとも僕は両国の鉄橋に愛惜を持つてゐないやうにこの煉瓦建の芝居小屋にも格別の愛惜を持つてゐない。両国橋の木造だつた頃には駒止め橋もこの辺に残つてゐた。のみならず井生村楼や二州楼といふ料理屋も両国橋の両側に並んでゐた。その外に鮨屋の与平、鰻屋の須崎屋、牛肉の外にも冬になると猪や猿を食はせる豊田屋、それから回向院の表門に近い横町にあつた「坊主軍鶏」--かう一々数へ立てて見ると、本所でも名高い食物屋は大抵この界隈に集つてゐたらしい。 「富士見の渡し」 僕等は両国橋の袂を左へ切れ、大川に沿つて歩いて行つた。「百本杭」のないことは前にも書いた通りである。しかし「伊達様」は残つてゐるかも知れない。僕はまだ幼稚園時代からこの「伊達様」の中にある和霊神社のお神楽を見に行つたものである。なんでも母などの話によれば、女中の背中におぶさつたまま、熱心にお神楽をみてゐるうちに「うんこ」をしてしまつたこともあつたらしい。しかし何処を眺めても、亜鉛葺きのバラツクの外に「伊達様」らしい屋敷は見えなかつた。「伊達様」の庭には木犀が一本秋ごとに花を盛つてゐたものである。僕はその薄甘い※ひを子供心にも愛してゐた。あの木犀も震災の時に勿論灰になつてしまつたことであらう。 流転の相の僕を脅すのは「伊達様」の見えなかつたことばかりではない。僕は確かこの近所にあつた「富士見の渡し」を思ひ出した。が、渡し場らしい小屋は何処にも見えない。僕は丁度道ばたに芋を洗つてゐた三十前後の男に渡し場の有無をたづねて見ることにした。しかし彼は「富士見の渡し」といふ名前を知つてゐないのは勿論、渡し場のあつたことさへ知らないらしかつた。「富士見の渡し」はこの河岸から「明治病院」の裏手に当る向う河岸へ通つてゐた。その又向う河岸は掘割りになり、そこに時々何処かの家の家鴨なども泳いでゐたものである。僕は中学へはひつた後も或親戚を尋ねる為めに度々「富士見の渡し」を渡つて行つた。その親戚は三遊派の「五りん」とかいふもののお上さんだつた。僕の家へ何かの拍子に円朝の息子の出入したりしたのもかういふ親戚のあつた為めであらう。僕は又その家の近所に今村次郎といふ標札を見付け、この名高い速記者(種々の講談の)に敬意を感じたことを覚えてゐる。-- 僕は講談といふものを寄席では殆ど聞いたことはない。僕の知つてゐる講釈師は先代の邑井吉瓶だけである。(もつとも典山とか伯山とか或は又伯龍とかいふ新時代の芸術家を知らない訣ではない。)従つて僕は講談を知る為めに大抵今村次郎氏の速記本に依つた。しかし落語は家族達と一しよに相生町の広瀬だの米沢町(日本橋区)の立花家だのへ聞きに行つたものである。殊に度々行つたのは相生町の広瀬だつた。が、どういふ落語を聞いたかは生憎はつきりと覚えてゐない。唯吉田国五郎の人形芝居を見たことだけは未だにありありと覚えてゐる。しかも僕の見た人形芝居は大抵小幡小平次とか累とかいふ怪談物だつた。僕は近頃大阪へ行き、久振りに文楽を見物した。けれども今日の文楽は僕の昔見た人形芝居よりも軽業じみたけれんを使つてゐない。吉田国五郎の人形芝居は例へば清玄の庵室などでも、血だらけな清玄の幽霊は大夫の見台が二つに割れると、その中から姿を現はしたものである。寄席の広瀬も焼けてしまつたであらう。今村次郎氏も明治病院の裏手に--僕は正直に白状すれば、今村次郎氏の現存してゐるかどうかも知らないものの一人である。 そのうちに僕は震災前と--といふよりも寧ろ二十年前と少しも変らないものを発見した。それは両国駅の引込み線を抑へた、三尺に足りない草土手である。僕は実際この草土手に「国亡びて山河在り」といふ詠嘆を感じずにはゐられなかつた。しかしこの小さい草土手にかういふ詠嘆を感じるのはそれ自身僕には情なかつた。 「お竹倉」 僕の知人は震災の為めに何人もこの界隈に斃れてゐる。僕の妻の親戚などは男女九人の家族中、やつと命を全うしたのは二十前後の息子だけだつた。それも火の粉を防ぐ為めに戸板をかざして立つてゐたのを旋風の為めに捲き上げられ、安田家の庭の池の側へ落ちてどうにか息を吹き返したのである。それから又僕の家へ毎日のやうに遊びに来た「お条さん」という人などは命だけは助かつたものの、一時は発狂したのも同様だつた。(「お条さん」は髪の毛の薄い為めに何処へも片付かずにゐる人だつた。しかし髪の毛を生やす為めに蝙蝠の血などを頭へ塗つてゐた。)最後に僕の通つてゐた江東小学校の校長さんは両眼とも明を失つた上、前年にはたつた一人の息子を失ひ、震災の年には御夫婦とも焼け死んでしまつたとか言ふことだつた。僕も本所に住んでゐたとすれば、恐らくは矢張りこの界隈に火事を避けてゐたことであらう。従つて又僕は勿論、僕の家族も彼等のやうに非業の最後を遂げてゐたかも知れない。僕は高い褐色の本所会館を眺めながら、こんなことをO君と話し合つたりした。 「しかし両国橋を渡つた人は大抵助かつてゐたのでせう?」 「両国橋を渡つた人はね。……それでも元町通りには高圧線の落ちたのに触れて死んだ人もあつたと言ふことですよ。」 「兎に角東京中でも被服廠程大勢焼け死んだところはなかつたのでせう。」 かういふ種々の悲劇のあつたのはいづれも昔の「お竹倉」の跡である。僕の知つてゐた頃の「お竹倉」は大体「御維新」前と変らなかつたものの、もう総武鉄道会社の敷地の中に加へられてゐた。僕はこの鉄道会社の社長の次男の友達だつたから、妄りに人を入れなかつた「お竹倉」の中へも遊びに行つた。そこは前にも言つたやうに雑木林や竹藪のある、町中には珍らしい野原だつた。のみならず古い橋のかかつた掘割りさへ大川に通じてゐた。僕は時々空気銃を肩にし、その竹藪や雑木林の中に半日を暮らしたものである。溝板の上に育つた僕に自然の美しさを教へたものは何よりも先に「お竹倉」だつたであらう。僕は中学を卒業する前に英訳の「猟人日記」を拾ひ読みにしながら、何度も「お竹倉」の中の景色を--「とりかぶと」の花の咲いた藪の陰や大きい昼の月のかかつた雑木林の梢を思ひ出したりした。「お竹倉」は勿論その頃には厳しい陸軍被服廠や両国駅に変つてゐた。けれども震災後の今日を思へば、--「卻つて并州を望めば是故郷」と支那人の歌つたのも偶然ではない。 総武鉄道の工事の始まつたのはまだ僕の小学時代だつたであらう。その以前の「お竹倉」は夜は「本所の七不思議」を思ひ出さずにはゐられない程もの寂しかつたのに違ひない。夜は?--いや、昼間さへ僕は「お竹倉」の中を歩きながら、「おいてき堀」や「片葉の芦」は何処かこのあたりにあるものと信じない訣には行かなかつた。現に夜学に通ふ途中、「お竹倉」の向うに莫迦囃しを聞き、てつきりあれは「狸囃し」に違ひないと思つたことを覚えてゐる。それはおそらくは小学時代の僕一人の恐怖ではなかつたのであらう。なんでも総武鉄道の工事中にそこへ通つてゐた線路工夫の一人は宵闇の中に幽霊を見、気絶してしまつたとかいふことだつた。 「大川端」 本所会館は震災前の安田家の跡に建つたのであらう。安田家は確か花崗石を使つたルネサンス式の建築だつた。僕は椎の木などの茂つた中にこの建築の立つてゐたのに明治時代そのものを感じてゐる。が、セセツシヨン式の本所会館は「牛乳デイ」とかいふものの為に植込みのある玄関の前に大きいポスタアを掲げたり、宣伝用の自動車を並べたりしてゐた。僕の水泳を習ひに行つた「日本游泳協会」は丁度この河岸にあつたものである。僕はいつか何かの本に三代将軍家光は水泳を習ひに日本橋へ出かけたと言ふことを発見し、滑稽に近い今昔の感を催さない訣には行かなかつた。しかし僕等の大川へ水泳を習ひに行つたと言ふことも後世には不可解に感じられるであらう。現に今でもO君などは「この川でも泳いだりしたものですかね」と少からず驚嘆してゐた。 僕は又この河岸にも昔に変らないものを発見した。それは--生憎何の木かはちよつと僕には見当もつかない。が、兎に角新芽を吹いた昔の並み木の一本である。僕の覚えてゐる柳の木は一本も今では残つてゐない。けれどもこの木だけは何かの拍子に火事にも焼かれずに立つてゐるのであらう。僕は殆どこの木の幹に手を触れて見たい誘惑を感じた。のみならずその木の根元には子供を連れたお婆さんが二人曇天の大川を眺めながら、花見か何かにでも来てゐるやうに稲荷鮨を食べて話し合つてゐた。 本所会館の隣にあるのは建築中の同愛病院である。高い鉄の櫓だの、何階建かのコンクリイトの壁だの、殊に砂利を運ぶ人夫だのは確かに僕を威圧するものだつた。同時に又工業地になつた「本所の玄関」といふ感じを打ち込まなければ措かないものだつた。僕は半裸体の工夫が一人、汗に体を輝かせながら、シヤベルを動かしてゐるのを見、本所全体もこの工夫のやうに烈しい生活をしてゐることを感じた。この界隈の家々の上に五月幟の翻つてゐたのは僕の小学時代の話である。今では、--誰も五月幟よりは新しい日本の年中行事になつたメイ・デイを思ひ出すのに違ひない。 僕は昔この辺にあつた「御蔵橋」と言ふ橋を渡り、度々友綱の家の側にあつた或友達の家へ遊びに行つた。彼も亦海軍の将校になつた後、二三年前に故人になつてゐる。しかし僕の思ひ出したのは必しも彼のことばかりではない。彼の住んでゐた家のあたり、--瓦屋根の間に樹木の見える横町のことも思ひ出したのである。そこは僕の住んでゐた元町通りに比べると、はるかに人通りも少なければ「しもた家」も殆ど門並みだつた。「椎の木松浦」のあつた昔は暫く問はず、「江戸の横網鶯の鳴く」と北原白秋氏の歌つた本所さへ今ではもう「歴史的大川端」に変つてしまつたと言ふ外はない。如何に万法は流転するとはいへ、かういふ変化の絶え間ない都会は世界中にも珍らしいであらう。 僕等はいつか工事場らしい板囲ひの前に通りかかつた。そこにも労働者が二三人、せつせと槌を動かしながら、大きい花崗石を削つてゐた。のみならず工事中の鉄橋さへ泥濁りに濁つた大川の上へ長々と橋梁を横たへてゐた。僕はこの橋の名前は勿論、この橋の出来る話も聞いたことはなかつた。震災は僕等の後にある「富士見の渡し」を滅してしまつた。が、その代りに僕等の前に新しい鉄橋を造らうとしてゐる。…… 「これは何といふ橋ですか?」 麦藁帽を冠つた労働者の一人は矢張り槌を動かしたまま、ちよつと僕の顔を見上げ、存外親切に返事をした。 「これですか? これは蔵前橋です。」 「一銭蒸汽」 僕等はそこから引き返して川蒸汽の客になる為に横網の浮き桟橋へおりて行つた。昔はこの川蒸汽も一銭蒸汽と呼んだものである。今はもう賃銭も一銭ではない。しかし五銭出しさへすれば、何区でも勝手に行かれるのである。けれども屋根のある浮き桟橋は--震災は勿論この浮き桟橋も炎にして空へ立ち昇らせたのであらう。が、一見した所は明治時代に変つてゐない。僕等はベンチに腰をおろし、一本の巻煙草に火をつけながら、川蒸汽の来るのを待つことにした。「石垣にはもう苔が生えてゐますね。もつとも震災以来四五年になるが、……」 僕はふとこんなことを言ひ、O君の為に笑はれたりした。 「苔の生えるのは当り前であります。」 大川は前にも書いたやうに一面に泥濁りに濁つてゐる。それから大きい浚渫船が一艘起重機を擡げた向う河岸も勿論「首尾の松」や土蔵の多い昔の「一番堀」や「二番堀」ではない。最後に川の上を通る船も今では小蒸汽や達磨船である。五大力、高瀬船、伝馬、荷足、田船などといふ大小の和船も何時の間にか流転の力に押し流されたのであらう。僕はO君と話しながら、「※湘日夜東に流れて去る」といふ支那人の詩を思ひ出した。かういふ大都会の中の川は※湘のやうに悠々と時代を超越してゐることは出来ない。現世は実に大川さへ刻々に工業化してゐるのである。 しかしこの浮き桟橋の上に川蒸汽を待つてゐる人々は大抵大川よりも保守的である。僕は巻煙草をふかしながら、唐桟柄の着物を着た男や銀杏返しに結つた女を眺め、何か矛盾に近いものを感じない訣には行かなかつた。同時に又明治時代にめぐり合つた或懐しみに近いものを感じない訣には行かなかつた。そこへ下流から漕いで来たのは久振りに見る五大力である。艫の高い五大力の上には鉢巻をした船頭が一人一丈余りの櫓を押してゐた。それからお上さんらしい女が一人御亭主に負けずに竿を差してゐた。かういふ水上生活者の夫婦位妙に僕等にも抒情詩めいた心もちを起させるものは少ないかも知れない。僕はこの五大力を見送りながら、--その又五大力の上にゐる四五歳の男の子を見送りながら、幾分か彼等の幸福を羨みたい気さへ起してゐた。 両国橋をくぐつて来た川蒸汽はやつと浮き桟橋へ横着けになつた。「隅田丸三十号」(?)--僕は或はこの小蒸汽に何度も前に乗つてゐるのであらう。兎に角これも明治時代に変つてゐないことは確かである。川蒸汽の中は満員だつた上、立つてゐる客も少くない。僕等はやむを得ず舟ばたに立ち、薄日の光に照らされた両岸の景色を見て行くことにした。尤も船ばたに立つてゐたのは僕等二人に限つた訣ではない。僕等の前には夏外套を着た、顋髯の長い老人さへやはり船ばたに立つてゐたのである。 川蒸汽は静かに動き出した。すると大勢の客の中に忽ち「毎度御やかましうございますが」と甲高い声を出しはじめたのは絵葉書や雑誌を売る商人である。これも亦昔に変つてゐない。若し少しでも変つてゐるとすれば、「何ごとも活動ばやりの世の中でございますから」などと云ふ言葉を挾んでゐることであらう。僕はまだ小学時代からかう云ふ商人の売つてゐるものを一度も買つた覚えはない。が、天窓越しに彼の姿を見おろし、ふと僕の小学時代に伯母と一しよに川蒸汽へ乗つた時のことを思ひ出した。 乗り継ぎ「一銭蒸汽」 僕等はその時にどこへ行つたのか、兎に角伯母だけは長命寺の桜餅を一籠膝にしてゐた。すると男女の客が二人、僕等の顔を尻目にかけながら、「何か※ひますね」「うん、糞臭いな」などと話しはじめた。長命寺の桜餅を糞臭いとは、--僕は未だに生意気にもこの二人を田舎者めと軽蔑したことを覚えてゐる。長命寺にも震災以来一度も足を入れたことはない。それから長命寺の桜餅は、--勿論今でも昔のやうに評判の善いことは確かである。しかし※や皮にあつた野趣だけはいつか失はれてしまつた。…… 川蒸汽は蔵前橋の下をくぐり、廐橋へ真直に進んで行つた。そこへ向うから僕等の乗つたのとあまり変らない川蒸汽が一艘矢張り浪を蹴つて近づき出した。が、七八間隔ててすれ違つたのを見ると、この川蒸汽の後部には甲板の上に天幕を張り、ちやんと大川の両岸の景色を見渡せる設備も整つてゐた。かういふ古風な川蒸汽も亦目まぐるしい時代の影響を蒙らない訣には行かないらしい。その後へ向うから走つて来たのはお客や芸者を乗せたモオタアボオトである。屋根船や船宿を知つてゐる老人達は定めしこのモオタアボオトに苦々しい顔をすることであらう。僕は江戸趣味に随喜する者ではない。従つて又モオタアボオトを無風流と思ふ者ではない。しかし僕の小学時代に大川に浪を立てるものは「一銭蒸汽」のあるだけだつた。或はその外に利根川通ひの外輪船のあるだけだつた。僕は渡し舟に乗る度に「一銭蒸汽」の浪の来ることを、--このうねうねした浪の為に舟の揺れることを恐れたものである。しかし今日の大川の上に大小の浪を残すものは一々数へるのに耐へないであらう。 僕は船端に立つたまま、鼠色に輝いた川の上を見渡し、確か広重も描いてゐた河童のことを思ひ出した。河童は明治時代には、--少くとも「御維新」前後には大根河岸の川にさへ出没してゐた。僕の母の話に依れば、観世新路に住んでゐた或男やもめの植木屋とかは子供のおしめを洗つてゐるうちに大根河岸の川の河童に腋の下をくすぐられたと言ふことである。(観世新路に植木屋の住んでゐたことさへ僕等にはもう不思議である。)まして大川にゐた河童の数は決して少くはなかつたであらう。いや、必しも河童ばかりではない。僕の父の友人の一人は夜網を打ちに出てゐたところ、何か舳へ上つたのを見ると、甲羅だけでも盥ほどあるすつぽんだつたなどと話してゐた。僕は勿論かういふ話を尽く事実とは思つてゐない。けれども明治時代--或は明治時代以前の人々はこれ等の怪物を目撃する程この町中を流れる川に詩的恐怖を持つてゐたのであらう。 「今ではもう河童もゐないでせう。」 「かう泥だの油だの一面に流れてゐるのではね。--しかしこの橋の下あたりには年を取つた河童の夫婦が二匹未だに住んでゐるかも知れません。」 川蒸汽は僕等の話の中に廐橋の下へはひつて行つた。薄暗い橋の下だけは浪の色もさすがに蒼んでゐた。僕は昔は渡し舟へ乗ると、--いや、時には橋を渡る時さへ、磯臭い※のしたことを思ひ出した。しかし今日の大川の水は何の※も持つてゐない。若し又持つてゐるとすれば、唯泥臭い※だけであらう。…… 「あの橋は今度出来る駒形橋ですね?」 O君は生憎僕の問に答へることは出来なかつた。駒形は僕の小学時代には大抵「コマカタ」と呼んでゐたものである。が、それもとうの昔に「コマガタ」と発音するやうになつてしまつた。「君は今駒形あたりほとゝぎす」を作つた遊女も或は「コマカタ」と澄んだ音を「ほとゝぎす」の声に響かせたかつたかも知れない。支那人は「文章は千古の事」と言つた。が、文章もおのづから※を失つてしまふことは大川の水に変らないのである。 柳島 僕等は川蒸汽を下りて吾妻橋の袂へ出、そこへ来合せた円タクに乗つて柳島へ向ふことにした。この吾妻橋から柳島へ至る電車道は前後に二三度しか通つた覚えはない。まして電車の通らない前には一度も通つたことはなかつたであらう。一度も?--若し一度でも通つたとすれば、それは僕の小学時代に業平橋かどこかにあつた或可也大きい寺へ葬式に行つた時だけである。僕はその葬式の帰りに確か父に「御維新」前の本所の話をして貰つた。父は

6. データ登録・検索SQL

Wikipedia日本語版を対象に、データ登録および検索に使用したSQLを示します。各DBMSの構文詳細については以下のQiita記事をご覧ください。
DoqueDB:MySQL, PostgreSQLと構文を比較してみる

6.1 データ登録SQL

DoqueDB (Bigram)

DROP DATABASE jawiki IF EXISTS;
CREATE DATABASE jawiki;
-- データベースjawikiに接続して以下を実行する

CREATE TABLE jawiki (
  id        INT,
  title     NTEXT,
  content   NTEXT,
  PRIMARY KEY(id)
);

INSERT INTO jawiki INPUT FROM PATH '/work/data/jawiki.csv'
  HINT 'code="utf-8" InputField=(1,2,3)';

CREATE FULLTEXT INDEX jawiki_idx ON jawiki(content)
  HINT 'KWIC, DELAYED,
    INVERTED=(NORMALIZED=(STEMMING=FALSE, DELETESPACE=FALSE),
    INDEXING=DUAL, TOKENIZER=DUAL:JAP:ALL:2 @NORMRSCID:1 @UNARSCID:1)';

MySQL + Mroonga (Bigram)

DROP DATABASE IF EXISTS jawiki;
CREATE DATABASE jawiki;
USE jawiki;

CREATE TABLE jawiki (
  id        INT PRIMARY KEY,
  title     TEXT,
  content   MEDIUMTEXT NOT NULL
) ENGINE = Mroonga DEFAULT CHARSET=utf8mb4
           COLLATE=utf8mb4_ja_0900_as_cs_ks;

LOAD DATA INFILE '/work/data/jawiki.csv' INTO TABLE jawiki
  FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY ''
  LINES TERMINATED BY '\n';

CREATE FULLTEXT INDEX jawiki_idx ON jawiki(content)
  COMMENT 'tokenizer "TokenBigram", normalizer "NormalizerAuto"';

MySQL + Mroonga (MeCab)

DROP DATABASE IF EXISTS jawiki_mecab;
CREATE DATABASE jawiki_mecab;
USE jawiki_mecab;

CREATE TABLE jawiki (
  id        INT PRIMARY KEY,
  title     TEXT,
  content   MEDIUMTEXT NOT NULL
) ENGINE = Mroonga DEFAULT CHARSET=utf8mb4
           COLLATE=utf8mb4_ja_0900_as_cs_ks;

LOAD DATA INFILE '/work/data/jawiki.csv' INTO TABLE jawiki
  FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY ''
  LINES TERMINATED BY '\n';

CREATE FULLTEXT INDEX jawiki_idx ON jawiki(content)
  COMMENT 'tokenizer "TokenMecab", normalizer "NormalizerAuto"';

MySQL + InnoDB (Bigram)

DROP DATABASE IF EXISTS jawiki_inno;
CREATE DATABASE jawiki_inno;
USE jawiki_inno;

CREATE TABLE jawiki (
  FTS_DOC_ID BIGINT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY,
  id        INT,
  title     TEXT,
  content   MEDIUMTEXT NOT NULL
) ENGINE = InnoDB DEFAULT CHARSET=utf8mb4
           COLLATE=utf8mb4_ja_0900_as_cs_ks;

LOAD DATA INFILE '/work/data/jawiki.csv' INTO TABLE jawiki
  FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY ''
  LINES TERMINATED BY '\n'
  (id, title, content);

CREATE FULLTEXT INDEX jawiki_idx ON jawiki(content) WITH PARSER ngram;

PostgreSQL + PGroonga (Bigram)

DROP DATABASE IF EXISTS jawiki;
CREATE DATABASE jawiki WITH ENCODING 'UTF8'
  LC_COLLATE = 'ja_JP.UTF8' LC_CTYPE = 'ja_JP.UTF8'
  TEMPLATE = template0;
\connect jawiki

CREATE TABLE jawiki (
  id        INT PRIMARY KEY,
  title     TEXT,
  content   TEXT
);

COPY jawiki (id, title, content) FROM '/work/data/jawiki.csv'
  WITH (FORMAT CSV, DELIMITER ',', QUOTE '"', ESCAPE '"');

CREATE EXTENSION IF NOT EXISTS pgroonga;
CREATE INDEX jawiki_idx ON jawiki USING pgroonga(content)
  WITH (tokenizer='TokenBigram', normalizers='NormalizerAuto');

PostgreSQL + PGroonga (MeCab)

DROP DATABASE IF EXISTS jawiki_mecab;
CREATE DATABASE jawiki_mecab WITH ENCODING 'UTF8'
  LC_COLLATE = 'ja_JP.UTF8' LC_CTYPE = 'ja_JP.UTF8'
  TEMPLATE = template0;
\connect jawiki_mecab

CREATE TABLE jawiki (
  id        INT PRIMARY KEY,
  title     TEXT,
  content   TEXT
);

COPY jawiki (id, title, content) FROM '/work/data/jawiki.csv'
  WITH (FORMAT CSV, DELIMITER ',', QUOTE '"', ESCAPE '"');

CREATE EXTENSION IF NOT EXISTS pgroonga;
CREATE INDEX jawiki_idx ON jawiki USING pgroonga(content)
  WITH (tokenizer='TokenMecab', normalizers='NormalizerAuto');

PostgreSQL + pg_bigm (Bigram)

DROP DATABASE IF EXISTS jawiki_bigm;
CREATE DATABASE jawiki_bigm WITH ENCODING 'UTF8'
  LC_COLLATE = 'ja_JP.UTF8' LC_CTYPE = 'ja_JP.UTF8'
  TEMPLATE = template0;
\connect jawiki_bigm

CREATE TABLE jawiki (
  id        INT PRIMARY KEY,
  title     TEXT,
  content   TEXT
);

COPY jawiki (id, title, content) FROM '/work/data/jawiki.csv'
  WITH (FORMAT CSV, DELIMITER ',', QUOTE '"', ESCAPE '"');

CREATE EXTENSION IF NOT EXISTS pg_bigm;
CREATE INDEX jawiki_idx ON jawiki USING gin (content gin_bigm_ops);

6.2 全文検索SQL (単一検索語, AND検索, OR検索)

DoqueDB

SELECT COUNT(*) FROM jawiki
  WHERE content CONTAINS('日本');

SELECT COUNT(*) FROM jawiki
  WHERE content CONTAINS('東京'&'京都'&'大阪'&'福岡');

SELECT COUNT(*) FROM jawiki
  WHERE content CONTAINS('東京'|'京都'|'大阪'|'福岡');

MySQL共通

SELECT COUNT(*) FROM jawiki
  WHERE MATCH(content) AGAINST('日本' IN BOOLEAN MODE);

SELECT COUNT(*) FROM jawiki
  WHERE MATCH(content) AGAINST('+東京 +京都 +大阪 +福岡' IN BOOLEAN MODE);

SELECT COUNT(*) FROM jawiki
  WHERE MATCH(content) AGAINST('東京 OR 京都 OR 大阪 OR 福岡' IN BOOLEAN MODE);

PostgreSQL + PGROONGA共通

SELECT COUNT(*) FROM jawiki
  WHERE content &@ '日本';

SELECT COUNT(*) FROM jawiki
  WHERE content &@~ '東京 京都 大阪 福岡';

SELECT COUNT(*) FROM jawiki
  WHERE content &@~ '東京 OR 京都 OR 大阪 OR 福岡';

PostgreSQL + pg_bigm

SELECT COUNT(*) FROM jawiki
  WHERE content LIKE '%日本%';

SELECT COUNT(*) FROM jawiki 
  WHERE content LIKE '%東京%' AND content LIKE '%京都%'
    AND content LIKE '%大阪%' AND content LIKE '%福岡%';

SELECT COUNT(*) FROM jawiki
  WHERE content LIKE '%東京%' OR content LIKE '%京都%'
     OR content LIKE '%大阪%' OR content LIKE '%福岡%';

6.3 類似文書検索SQL

DoqueDB

SELECT SCORE(content) AS sco, id, title
  FROM jawiki
  WHERE content CONTAINS FREETEXT('…検索テキスト…')
  ORDER BY sco DESC LIMIT 50;

MySQL共通

SELECT MATCH(content) AGAINST('…検索テキスト…' IN NATURAL LANGUAGE MODE)
    AS sco, id, title
  FROM jawiki
  WHERE MATCH(content) AGAINST('…検索テキスト…' IN NATURAL LANGUAGE MODE)
  ORDER BY sco DESC LIMIT 50;

PostgreSQL共通

SELECT PGROONGA_SCORE(tableoid, ctid) AS sco, id, title
  FROM jawiki
  WHERE content &@* ('…検索テキスト…')
  ORDER BY sco DESC LIMIT 50;

6.4 類似文書件数取得SQL

DoqueDB

SELECT COUNT(*)
  FROM jawiki
  WHERE content CONTAINS FREETEXT('…検索テキスト…');

MySQL共通

SELECT COUNT(*)
  FROM jawiki
  WHERE MATCH(content) AGAINST('…検索テキスト…' IN NATURAL LANGUAGE MODE);

PostgreSQL共通

SELECT COUNT(*)
  FROM jawiki
  WHERE content &@* ('…検索テキスト…');

7. 類似文書検索が遅くなるケースの考察

DoqueDBの類似文書検索では、特定の条件下で検索に非常に時間がかかるケースがあります。今回の性能比較において、Wikipedia日本語版で29文字の類似文書検索を行うとその条件に該当することが判明したため、発生条件と対策方法について説明します。

SELECT WORD() を使うことで、実際の類似文書検索でどのような検索語が生成され、使われるかを調べることができます。ここでは WORD LIMIT を指定して、生成される可能性のあるすべての候補を列挙しています。

SQL> SELECT WORD(content) FROM jawiki WHERE content CONTAINS FREETEXT(
      '船が難破し無人島に漂着した少年たちが島で生き延びて生還する' WORD LIMIT 20);
{word(content)}
{'船' language '' category 'Helpful' scale 0.67 df 66873}
{'難破' language '' category 'Helpful' scale 0.67 df 1023}
{'無人島' language '' category 'Helpful' scale 0.67 df 1712}
{'漂着' language '' category 'Helpful' scale 0.67 df 1415}
{'少年' language '' category 'Helpful' scale 0.67 df 34723}
{'少年 たち' language '' category 'Helpful' scale 0.20 df 960}
{'島' language '' category 'Helpful' scale 0.67 df 215876}
{'生き' language '' category 'Helpful' scale 0.67 df 36209}
{'生き 延び' language '' category 'Helpful' scale 0.20 df 3085}
{'延び' language '' category 'Helpful' scale 0.67 df 9184}
{'生還' language '' category 'Helpful' scale 0.67 df 2257}
SQL>

結果をみると、いくつかの語でDF値 (Document Frequency=文書頻度, その語を含む文書数) が高くなっています。これらの語を単独で類似文書検索すると、「船」「島」「生き」で特に時間がかかることがわかりました。

類似文書検索のアルゴリズムでは、通常、このように文書頻度の高い語は検索語として選択されにくくなっています。しかし、今回のように検索テキストが短い場合にはこのような語も検索語に含まれることがあり、結果として処理時間に影響します。ただし、青空文庫を対象とした場合は相対的に文書頻度が小さく、ここまで処理時間が増大してはいません。

このようなケースへの対策としては、問題となる語を明示的に検索語から除外する方法が考えられます。それを試してみましょう。今回の類似文書検索ではデフォルトの質問処理辞書 (term) が使われているので、termの禁止辞書 (/var/lib/DoqueDB/data/term/stopDict.utf8) にこれらの語を以下のように登録し、DoqueDBを再起動します。

船
島
生き

結果は以下のようになりました。ほかのケースと同等の処理時間になったことがわかります。

条件 初期状態 禁止語:船, 島, 生き
29文字 上位50件 1.157秒
(131,251件)
106ミリ秒
(48,318件)

生成される検索語は以下のように変化しました。

SQL> SELECT WORD(content) FROM jawiki WHERE content CONTAINS FREETEXT(
      '船が難破し無人島に漂着した少年たちが島で生き延びて生還する' WORD LIMIT 20);
{word(content)}
{'難破' language '' category 'Helpful' scale 0.67 df 1023}
{'無人島' language '' category 'Helpful' scale 0.67 df 1712}
{'漂着' language '' category 'Helpful' scale 0.67 df 1415}
{'少年' language '' category 'Helpful' scale 0.67 df 34723}
{'少年 たち' language '' category 'Helpful' scale 0.20 df 960}
{'延び' language '' category 'Helpful' scale 0.67 df 9184}
{'生還' language '' category 'Helpful' scale 0.67 df 2257}
SQL>

類似文書検索結果の上位50件は以下のように変化しています。応用分野にもよりますが、類似文書検索としては十分な精度が保たれている、と言ってよいのではないでしょうか。

Wikipedia日本語版 29文字での類似文書検索結果比較 (初期状態, 禁止語あり)
順位 初期状態 禁止語:船, 島, 生き
1 ひかりごけ事件 パールアンドハーミーズ環礁
2 パールアンドハーミーズ環礁 ひかりごけ事件
3 野村長平 野村長平
4 フライデーあるいは太平洋の冥界 南国ドミニオン
5 南国ドミニオン フライデーあるいは太平洋の冥界
6 ゲオルク・シュテラー ゲオルク・シュテラー
7 還住 (青ヶ島) 漂流 (小説)
8 漂流 (小説) 還住 (青ヶ島)
9 ひかりごけ (オペラ) 冒険ガボテン島
10 ロビンソン・クルーソー ロビンソン・クルーソー
11 家族ロビンソン漂流記 ふしぎな島のフローネ 無人島物語シリーズ
12 マタンゴ 蠅の王
13 鳥島 (八丈支庁) ひかりごけ (オペラ)
14 蠅の王 レッツ☆ラグーン
15 東京島 東京島
16 ジョン万次郎 マタンゴ
17 レッツ☆ラグーン 5人の軍隊
18 寄船 家族ロビンソン漂流記 ふしぎな島のフローネ
19 ヘロニモ・デ・アギラール 鳥島 (八丈支庁)
20 ヘンドリック・ハメル ジョン万次郎
21 ビーチコーミング ヘロニモ・デ・アギラール
22 下北弁 ビーチコーミング
23 阿倍仲麻呂 ヘンドリック・ハメル
24 冒険ガボテン島 寄船
25 ビリーバーズ ジェームス・マシュー・バリー
26 無人島ジョーク 無人島物語
27 無人島物語シリーズ 無人島ジョーク
28 尖閣諸島戦時遭難事件 ビリーバーズ
29 DAISOUNAN 下北弁
30 ジェームス・マシュー・バリー 小笠原貞任
31 大黒屋光太夫 阿倍仲麻呂
32 エウウォラン王の航海 直子のトロピックエンジェル ~漂流~
33 クレ環礁 DAISOUNAN
34 神秘の島 彼とわたしの漂流日記
35 夜の声 (小説) M3~ソノ黒キ鋼~
36 ヘンダーソン島 (ピトケアン諸島) チャタム島
37 外離島 ドナルドの難破船
38 ドナルドの難破船 パンゲアの娘 KUNIE
39 三国丸 (廻船) エウウォラン王の航海
40 5人の軍隊 神秘の島
41 スイスのロビンソン クレ環礁
42 ウィリアム・ホイットフィールド 尖閣諸島戦時遭難事件
43 ミニョネット号事件 流されて…
44 美浜事件 大黒屋光太夫
45 ウェージャーの海戦 無人島 (ハイドン)
46 フライング・ギャング 外離島
47 難破船バタヴィア号の惨劇 スウェプト・アウェイ
48 タホ川 漂流兄妹~理科の知識で大脱出!?~
49 ドラえもん のび太の南海大冒険 釣りバカ日誌イレブン
50 将軍 (小説) 夜の声 (小説)

TOP