ホームページ データベース mysql チュートリアル Ubuntu12.04+Nutch2.2.1+MySQL 配置笔记

Ubuntu12.04+Nutch2.2.1+MySQL 配置笔记

Jun 07, 2016 pm 03:24 PM
マッチ

日期:2013/10/13 系统 :Ubuntu12.04LTS JDK :1.7.0_21 Nutch :2.2.1 MySQL :5.5.32 ------------------------------------------------------------------------------------------------------------------------------------------------------------

    

日期:2013/10/13

系统:Ubuntu12.04LTS

JDK:1.7.0_21

Nutch:2.2.1

MySQL:5.5.32

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Pre1:安装配置OracleJDK

Pre2:安装配置MySQL      sudo apt-get install mysql-server,mysql-client

Pre3:安装配置Apache Ant  sudo apt-get install ant

Start:Ubuntu下搭建Nutch2.2.1,并以MySQL作为数据库,UTF-8为默认编码综合配置

     

Step1:MySQL配置

首先编辑 /etc/mysql/my.cnf 文件在[mysqld]下面添加以下内容:

innodb_file_format=barracuda
innodb_file_per_table=true
innodb_large_prefix=true
character-set-server=utf8
collation-server=utf8mb4_unicode_ci
max_allowed_packet=500M
ログイン後にコピー

然后创建数据库与数据表:

CREATE DATABASE nutch DEFAULT CHARACTER SET utf8mb4 DEFAULT COLLATE utf8;
ログイン後にコピー
CREATE TABLE `webpage` (
`id` varchar(767) NOT NULL,
`headers` blob,
`text` mediumtext DEFAULT NULL,
`status` int(11) DEFAULT NULL,
`markers` blob,
`parseStatus` blob,
`modifiedTime` bigint(20) DEFAULT NULL,
`score` float DEFAULT NULL,
`typ` varchar(32) CHARACTER SET latin1 DEFAULT NULL,
`batchId` varchar(32) CHARACTER SET latin1 DEFAULT NULL, 
`baseUrl` varchar(767) DEFAULT NULL,
`content` longblob,
`title` varchar(2048) DEFAULT NULL,
`reprUrl` varchar(767) DEFAULT NULL,
`fetchInterval` int(11) DEFAULT NULL,
`prevFetchTime` bigint(20) DEFAULT NULL,
`inlinks` mediumblob,
`prevSignature` blob,
`outlinks` mediumblob,
`fetchTime` bigint(20) DEFAULT NULL,
`retriesSinceFetch` int(11) DEFAULT NULL,
`protocolStatus` blob,
`signature` blob,
`metadata` blob,
PRIMARY KEY (`id`)
) ENGINE=InnoDB
ROW_FORMAT=COMPRESSED
DEFAULT CHARSET=utf8;
ログイン後にコピー
注:表中的字段根据nutch的conf文件“gora-sql-mapping”进行设置。同时也可通过自动方式生成数据库和表:配置好“gora-sql-mapping”、“gora.properties”及其它文件后,首次通过运行”bin/nutchinject urls”即可自动生成数据库和表,不过或许在自动生成的时候你会遇到问题,不过没有关系,通过及时查看hadoop.log文件你便会发现很多问题(如下图之一)与MySQL支持的数据类型、数据长度有关,只需要根据日志提示做修改、调试(可借助navicat工具像SQLServer方便操作数据库),然后再重复自动生成过程,直到成功为止。


Step2:Nutch配置

获取Nutch2.2.1,从官网http://www.apache.org/dyn/closer.cgi/nutch/下载,然后解压至本地安装目录,如本地根目录为${APACHE_NUTCH_HOME}

 配置nutch对mysql的支持,修改${APACHE_NUTCH_HOME}/ivy/ivy.xml文件

将以下行的注释取消:

<dependency org="”mysql”" name="”mysql-connector-java”" rev="”5.1.18″" conf="”*-">default”/></dependency>
ログイン後にコピー
<span><dependency org="org.apache.gora" name="gora-sql" rev="0.1.1-incubating" conf="*->default"></dependency></span>
ログイン後にコピー

修改以下行:

<pre class="brush:php;toolbar:false"><span><dependency org="org.apache.gora" name="gora-core" rev="0.3" conf="*->default"></dependency></span>
ログイン後にコピー
为:

<span><dependencyorg name="gora-core"><span>rev="0.2.1"</span>conf="*->default"/></dependencyorg></span>
ログイン後にコピー

Step3:数据库连接配置

编辑${APACHE_NUTCH_HOME}/conf/gora.properties文件,注释掉默认的数据库连接配置,同时添加以下配置内容:

###############################
#  MySQL configure   #
###############################
gora.sqlstore.jdbc.driver=com.mysql.jdbc.Driver
gora.sqlstore.jdbc.url=jdbc:mysql://localhost:3306/nutch?createDatabaseIfNotExist=true
gora.sqlstore.jdbc.user=xxxx(MySQL用户名)
gora.sqlstore.jdbc.password=xxxx(MySQL密码)
ログイン後にコピー

Step4:数据表映射配置

修改${APACHE_NUTCH_HOME}/conf/gora.properties文件,这里的修改建议按照前面介绍的自动生成数据表的方法进行修改,网上说的要将primarykey的长度从512修改成767,即:

改:  为:

Step5:nutch-site.xml配置

添加以下配置:

<property>
	<name>http.agent.name</name>
	<value>Your Nutch Spider</value>
</property>
<property>
	<name>http.accept.language</name>
	<value>zh-cn, en-us,en-gb,en;q=0.7,*;q=0.3</value>
	<description>*</description>
</property>
<property>
	<name>parser.character.encoding.default</name>
	<value>utf-8</value>
	<description>*</description>
</property>
<property>
	<name>storage.data.store.class</name>
	<value>org.apache.gora.sql.store.SqlStore</value>
	<description>*</description>
</property>
ログイン後にコピー
特别需要注意,本人在配置过程中也遇到了:
java.lang.NullPointerException 
at org.apache.avro.util.Utf8.<init>(Utf8.java:37) 
at org.apache.nutch.crawl.GeneratorReducer.setup(GeneratorReducer.java:100) 
at org.apache.hadoop.mapreduce.Reducer.run(Reducer.java:174) 
at org.apache.hadoop.mapred.ReduceTask.runNewReducer(ReduceTask.java:649) 
at org.apache.hadoop.mapred.ReduceTask.run(ReduceTask.java:418) 
at org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner.java:398) </init>
ログイン後にコピー
解决办法就是在上述文件中另外添加一个属性:
<property>

    <name>generate.batch.id</name>

    <value>*</value>

</property>
ログイン後にコピー
Step6:使用ant 构建Nutch

(关于ant的命令,这里就不说明了),只需要切换到${APACHE_NUTCH_HOME}下执行ant clean 然后ant 即可。构建完毕后会在${APACHE_NUTCH_HOME}目录下生成runtime 文件夹。

Step:7 网页抓取,种子配置

创建种子文件

cd${APACHE_NUTCH_HOME}/runtime/local 
mkdir -p urls 
echo 'http://www.sina.com.cn' > urls/seed.txt
echo 'http://www.ifeng.com' > urls/seed.txt
ログイン後にコピー
执行爬取操作
bin/nutchcrawl urls -depth 5   -topN 10
ログイン後にコピー

至此,已经完成了基本的配置。






このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

i7 3770に最適なグラフィックスカードは何ですか? i7 3770に最適なグラフィックスカードは何ですか? Dec 29, 2023 am 09:12 AM

Core i73770 にはどのグラフィックス カードが適していますか? RTX3070 は、優れたパフォーマンスと高度なテクノロジーを備えた非常に強力なグラフィックス カードです。ゲームをプレイする場合でも、グラフィックをレンダリングする場合でも、機械学習を実行する場合でも、RTX3070 は簡単に処理できます。 NVIDIA の Ampere アーキテクチャを使用し、5888 CUDA コアと 8GB GDDR6 メモリを搭載しており、スムーズなゲーム体験と高品質のグラフィック効果を提供できます。 RTX3070 は、リアルな光と影の効果を表現できるレイ トレーシング テクノロジーもサポートしています。全体として、RTX3070 は、高性能と高品質を追求する人に適した、強力で高度なグラフィックス カードです。 RTX3070はNVIDIAシリーズのグラフィックスカードです。第2世代NVIDを搭載

i73770 と rx5600xt (i73770 と rx5600xt) i73770 と rx5600xt (i73770 と rx5600xt) Jan 04, 2024 am 11:26 AM

rx5600xt を搭載した i73770 RX5600XT グラフィックス カードは R53600CPU と一致するため、i7-3770 を選択しました。 RX5600XT グラフィックス カードの評価結果は次のとおりです。 RX5600XT グラフィックス カードは優れたグラフィックス カードであり、テスト後のパフォーマンスは非常に良好です。 AMDのRDNAアーキテクチャを採用し、6GBGDDR6ビデオメモリと192ビットメモリインターフェイスを備え、PCIe4.0バスをサポートし、優れたゲームパフォーマンスを備えています。すべてのテストにおいて、RX5600XT グラフィックス カードは良好なパフォーマンスを示しました。高解像度では、スムーズなゲーム体験を実現し、ほとんどのゲームで 60 FPS 以上のフレーム レートを維持します。最新のゲームでは、優れた機能も提供できます。

3070に11600kfを合わせるのが妥当でしょうか? 3070に11600kfを合わせるのが妥当でしょうか? Jan 02, 2024 am 11:54 AM

3070で13600kfは妥当でしょうか? 「花と言葉遊び」は、毎日新しいレベルが更新される人気のテキスト パズル ゲームです。その中の「ノスタルジア クリーニング」はレベルの 1 つで、プレイヤーは絵の中の時代に合わない 12 個の場所を見つける必要があります。今回は、「言葉遊びフラワーズ」の懐かしのお掃除レベルをクリアしたことのない方に具体的な操作方法を知っていただくための攻略法を紹介します。ゲーム用途であればI513600KFもI713700KFもゲーム体験に違いはありませんので、この場合はCPUにI513600KFを選択してください。グラフィックカードはRTX3070を選択できます。ゲームが異なればハードウェア要件も異なることに注意してください。

Core 第 10 世代 i5_mx330 に適したマザーボードはどれですか? Core 第 10 世代 i5_mx330 に適したマザーボードはどれですか? Dec 27, 2023 pm 02:17 PM

1. MX330 シャーシの概要 MX330 は、Shenzhen Hangjia Technology Co., Ltd. が製造するミッドタワーシャーシです。シンプルでエレガントな外観を持ち、高品質の鋼板で作られています。優れた冷却性能と拡張性を備えており、高性能マザーボードやプロセッサーとの使用に非常に適しています。プロセスの周波数が高く、消費電力が低くなります。強力なマルチコア処理機能とインテリジェントなアクセラレーション テクノロジを備えており、ほとんどのユーザーの日常使用のニーズと軽いゲームのニーズを満たすことができます。 3. MX330 シャーシの放熱性能 MX330 シャーシのデザインは、オールブラックのグリッド スタイルを採用しており、前面と上部には大面積メッシュが装備されており、

Xiaomi コンピューターのパフォーマンスを向上させるために適切なマザーボード コンピューター アクセサリを選択するにはどうすればよいですか? Xiaomi コンピューターのパフォーマンスを向上させるために適切なマザーボード コンピューター アクセサリを選択するにはどうすればよいですか? Dec 28, 2023 am 10:11 AM

Xiaomi コンピューターにはどのマザーボードが適していますか? 今日の情報技術の急速な発展の時代において、コンピューターは人々の生活に欠かせないツールの 1 つとなっています。コンピューターを選択するとき、マザーボードは最も重要なコンポーネントの 1 つです。有名なテクノロジー企業として、Xiaomi は一連の高性能コンピューター製品も発売しています。では、Xiaomi はどのようなマザーボードを選択すべきでしょうか?この記事では、パフォーマンス、安定性、拡張性、ブランドの評判など、さまざまな側面からパフォーマンスについて詳しく説明します。パフォーマンスは、マザーボードを選択する際の最も重要な考慮事項の 1 つです。 Xiaomi のハイエンド コンピューターは最高の構成を備えているため、それに見合った強力なパフォーマンスを備えたマザーボードを選択する必要があります。 Intel の第 10 世代 Core プロセッサなど、最新世代のプロセッサをサポートするマザーボードの選択を検討できます。マザーボードのメモリとストレージの拡張

1150 マザーボードに適した推奨最小 CPU 1150 マザーボードに適した推奨最小 CPU Jan 04, 2024 pm 09:22 PM

ローエンドの中央処理装置 (CPU) を選択する場合は、手頃な価格と基本的なニーズのバランスをとることが重要です。 1150 マザーボードを使用しているユーザーは、適切な最小構成 CPU を選択することで、毎日のオフィス作業、Web ブラウジング、軽いエンターテイメントのニーズを満たすことができます。この記事では、パフォーマンス、価格、消費電力、拡張性の観点から、最適な CPU をいくつか紹介します。最も低いパフォーマンスの CPU の選択の中で、パフォーマンスは重要な考慮事項です。一般的なオフィス ユーザーや軽いエンターテイメント ユーザーにとっては、クアッドコア プロセッサーで十分なニーズを満たすことができます。 Intel の i3 シリーズと PentiumG シリーズはどちらも良い選択です。 i3 シリーズは、より高いパフォーマンスとより大きなキャッシュを備えており、マルチタスクおよびマルチスレッド アプリケーションの処理に適しています。 PentiumGシリーズは、

i56500 と GTX1070 のペアリングは適切ですか (i56500 と GTX1070 のペアリングは適切ですか) i56500 と GTX1070 のペアリングは適切ですか (i56500 と GTX1070 のペアリングは適切ですか) Jan 08, 2024 am 08:25 AM

i56500 と GTX1070 を組み合わせるのは適切ですか? もっと真剣に考えたいのであれば、答えはノーです。しかし、実際の状況に基づいて、この組み合わせに問題はありません。なぜノーと言うのですか?現在、より多くの構成が必要な大規模なスタンドアロン ゲームの場合、gtx1070 で i76700k または i56500 を使用し、他の構成と設定が同じ場合、通常はフレーム レートが異なり、6700k のフレーム レートはより高くなる傾向があります。実際、これはバレルの原理に近いものです。余裕があるかどうかの問題ではありません。鍵となるのは、ゲームにおける CPU の需要がどれだけ高いかです。しかし、i56500 と gtx1070 の互換性を考慮すると、ほとんどのゲームでは、フレーム レートはすでにかなり優れており、素晴らしいゲーム体験を提供できるため、次のようなものになります。

ラップトップに適したマウスを選択してください ラップトップに適したマウスを選択してください Jan 02, 2024 pm 09:54 PM

ラップトップではどのようなマウスを使用すればよいですか? ワイヤレス マウスを使用するのが最善です。 1. ワイヤレスマウスはワイヤーが絡まる問題がなく、操作がより便利です。 2. ワイヤレスマウスを装備しているため、ケーブルが煩雑になるのを避け、移動する際により自由になります。 3. ワイヤレスマウスをノートパソコンに接続するためにケーブルを使用する必要がなく、ケーブルが簡単に抜けないため、使用体験が向上します。 4. 出張などの場合は、ワイヤレスマウスの方が持ち運びに便利です。ラップトップでマウスを使用する場合は、ワイヤレスマウスを選択する必要があります。ワイヤレスマウスはケーブルが不要なため、ケーブルの絡まりを避けてより便利に使用できます。同時に、無線マウスの感度と応答速度は有線マウスよりも優れており、作業効率を向上させることができます。長時間使用する場合は充電式を選択することをお勧めします

See all articles