日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Nutch2.4 存储方式配置

發布時間:2024/9/19 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Nutch2.4 存储方式配置 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Nutch2.x 存儲方式配置

Nutch2.x存儲映射技術Gora

在Nutch2.x只后,Nutch存儲映射使用apache的Gora(Gora是一個開源的ORM框架),為了了解Gora是個什么東西,我就從網上隨便搜了一些Gora框架的介紹。

Gora就是一個大數據的表示與持久化框架,它有如下特點

  • 數據持久化:它可以對列數據進行持久化,如HBase,Cassandra,Hypertable; key-value數據進行持久化,如Voldermort,Redis等,SQL數據庫進行持久化,如MySQL,HSQLDB,也可以對文件進行HDFS存儲 。

  • 數據訪問:可以使用Java API對數據進行輕松的訪問

  • 索引:可以持久化對象到Lucene或者Solr中去,可以使用Gora API來進行查詢

  • 分析:可以使用Apache Pig,Hive,cascading來對數據進行分析

  • MR的支持:原生支持Hadoop的MR框架,這個已經被用在Nutch 2.0上了

  • 支持使用Pig,lucene,hive等針對數據進行持久化,索引和分析工作

    目前除Nutch2外,在其他開源產品中使用Gora的好像沒有看到

    ? Nutch2系列通過gora對存儲層進行了擴展,可以選擇使用HBase、Accumulo、Cassandra 、MySQL 、DataFileAvroStore、AvroStore中任何一種來存儲數據,但其中一些并不成熟。

    ? 目前gora還亟待改進。對于追求性能極致的朋友來說,nutch2.x還不穩定,建議使用nutch1.x,利用HDFS和MapReduce的數據本地化及天然的并行性,可以優化到非常快的速度。

  • Apache Gora介紹-阿里云開發者社區 (aliyun.com)

    引用原文發布時間:2016-05-13

    現在:2021-12-03(相隔了5年了,到現在了Gora還在跟新,看來Apache想對NoSQL數據庫們提供一套通用的框架)

    到Gora的0.9版本已經可以適配一下大數據框架了,我們這里可以看到Solr這些搜索引擎的適配

    Gora 0.9 provides support for the following projects

    • Apache Avro 1.8.2
    • Apache HBase 2.1.1
    • Apache Cassandra 3.11.0 (Datastax Java Driver 3.3.0)
    • Apache Solr 8.0.0
    • Apache Lucene 8.0.0
    • MongoDB (Mongo Java Driver) 3.5.0
    • Apache Accumlo 1.7.1
    • Apache CouchDB 1.4.2
    • Amazon DynamoDB (Amazon Java SDK) 1.10.55
    • Infinispan 7.2.5.Final
    • JCache 1.0.0 with JCache provider Hazelcast 3.6.4
    • OrientDB 2.2.22
    • Aerospike 4.2.2
    • Apache Ignite 2.6.0
    • Apache Pig 0.16.0
    • Apache Flink 1.6.2
    • Apache Hadoop 2.5.2
    • Apache Spark 2.2.1
    • Test containers 1.4.2

    Nutch2.x默認的存儲方式

    • 打開apache-nutch-2.4\conf文件夾下面的nutch-default.xml文件
    • 或者在apache-nutch-2.4\runtime\local\conf文件夾下面的nutch-default.xml文件(源碼經過ant編譯后才有)

    找到storage properties,可以看到如果我們不在nutch-site.xml中不配置storage.data.store.class這個property時,默認是會使用org.apache.gora.memory.store.MemStore作為存儲方式

    org.apache.gora.memory.store.MemStore
    Gora class for storing data in a Memory based implementation for tests.

    從這個可以知道這個默認存儲方式的內存的,用于測試使用

    <!-- storage properties --><property><name>storage.data.store.class</name><value>org.apache.gora.memory.store.MemStore</value><description>The Gora DataStore class for storing and retrieving data.Currently the following stores are available:org.apache.gora.sql.store.SqlStore Default store. A DataStore implementation for RDBMS with a SQL interface.SqlStore uses JDBC drivers to communicate with the DB. As explained in ivy.xml, currently >= gora-core 0.3 is not backwards compatable with SqlStore.org.apache.gora.cassandra.store.CassandraStoreGora class for storing data in Apache Cassandra.org.apache.gora.hbase.store.HBaseStoreGora class for storing data in Apache HBase.org.apache.gora.accumulo.store.AccumuloStoreGora class for storing data in Apache Accumulo.org.apache.gora.memory.store.MemStoreGora class for storing data in a Memory based implementation for tests.org.apache.gora.mongodb.store.MongoStoreGora class for storing data in MongoDB.org.apache.gora.solr.store.SolrStoreGora class for storing data in Apache Solr.</description> </property>

    更改Nutch2.x的存儲方式

    更改為HBaseStore
    • 在apache-nutch-2.4\runtime\local\conf文件夾下面的nutch-site.xml文件(源碼經過ant編譯后才有runtime目錄)中添加以下配置
    <property><name>storage.data.store.class</name><value>org.apache.gora.hbase.store.HBaseStore</value> </property>
    • 查看apache-nutch-2.4\runtime\local\conf文件夾下面的gora.properties文件(源碼經過ant編譯后才有runtime目錄),根據HBaseStore properties注釋,對hbase.site.xml配置有效的hbase.zookeeper.quorum屬性,如果沒配置就默認zookeeper的地址是localhost:2181。
    ######################### # HBaseStore properties # ######################### # HBase requires that the Configuration has a valid "hbase.zookeeper.quorum" # property. It should be included within hbase-site.xml on the classpath. When # this property is omitted, it expects Zookeeper to run on localhost:2181.# To greatly improve scan performance, increase the hbase-site Configuration # property "hbase.

    在apache-nutch-2.4\runtime\local\conf中的hbase.site.xml添加屬性hbase.zookeeper.quorum。

    <property> <name>hbase.zookeeper.quorum</name><!--更改為自己zookeeper的地址--><value>localhost</value> </property>
    更改為MySQL

    在apache-nutch-2.4\runtime\local\conf文件夾下面的nutch-site.xml文件(源碼經過ant編譯后才有runtime目錄)中添加以下配置

    <property><name>storage.data.store.class</name><value>org.apache.gora.sql.store.SqlStore</value> </property>
    • 在apache-nutch-2.4\runtime\local\conf文件夾下面的gora.properties文件(源碼經過ant編譯后才有runtime目錄),添加以下配置。
    ############################### # MySQL properties # ############################### gora.sqlstore.jdbc.driver=com.mysql.jdbc.Driver gora.sqlstore.jdbc.url=jdbc:mysql://localhost:3306/nutch?useUnicode=true&character=utf8&useSSL=false&serverTimezone=UTC gora.sqlstore.jdbc.user=xxxxx gora.sqlstore.jdbc.password=xxxxx

    添加對應的jar包

    Nutch是使用ivy實現jar包管理的,ivy是類似于maven的jar包管理工具,在使用ant編譯源碼前,對ivy的依賴配置進行修改。

    打開apache-nutch-2.4\ivy文件夾,找到ivy.xml文件。

    找到Hadoop Dependencies的依賴配置,可以根據自己的需要修改成自己hadoop版本的jar包。

    <!-- Hadoop Dependencies --><dependency org="org.apache.hadoop" name="hadoop-common" rev="2.5.2" conf="*->default"><exclude org="hsqldb" name="hsqldb" /><exclude org="net.sf.kosmosfs" name="kfs" /><exclude org="net.java.dev.jets3t" name="jets3t" /><exclude org="org.eclipse.jdt" name="core" /><exclude org="org.mortbay.jetty" name="jsp-*" /><exclude org="ant" name="ant" /></dependency><dependency org="org.apache.hadoop" name="hadoop-hdfs" rev="2.5.2" conf="*->default"/><dependency org="org.apache.hadoop" name="hadoop-mapreduce-client-core" rev="2.5.2" conf="*->default"/><dependency org="org.apache.hadoop" name="hadoop-mapreduce-client-jobclient" rev="2.5.2" conf="*->default"/><!-- End of Hadoop Dependencies -->

    找到Gora的依賴配置

    <!--================--> <!-- Gora artifacts --> <!--================--> <!-- N.B. To use Gora SNAPSHOT's, replace the 'ref' value with the SNAPSHOT version and add changing="true" alongside the dependency declaration.--> <dependency org="org.apache.gora" name="gora-core" rev="0.8" conf="*->default"/>
    使用Hbase的時候

    把hbase的依賴的注釋去掉

    <dependency org="org.apache.gora" name="gora-hbase" rev="0.8" conf="*->default" /> <dependency org="org.apache.hbase" name="hbase-common" rev="1.4.8" conf="*->default" />
    使用mysql的時候

    org.apache.gora.sql.store.SqlStore
    Default store. A DataStore implementation for RDBMS with a SQL interface.
    SqlStore uses JDBC drivers to communicate with the DB. As explained in
    ivy.xml, currently >= gora-core 0.3 is not backwards compatable with
    SqlStore.

    根據nutch-site.xml中關于SqlStore 的解析,需要gora-core的版本要在0.3以下。

    <dependency org="org.apache.gora" name="gora-core" rev="0.2.1" conf="*->default"/>

    并添加gora-sql的依賴和MySQL的驅動

    <!--gora-sql依賴--> <dependency org="org.apache.gora" name="gora-sql" rev="0.1.1-incubating" conf="*->default" /> <!--添加mysql驅動--> <dependency org="mysql" name="mysql-connector-java" rev="5.1.18" conf="*->default"/>

    庫表的創建

    Hbase的列名映射

    使用Hbase時需要對數據列進行映射,

    MySQL庫表 的創建

    使用MySQL整合nutch2.4要給MySQL創建一個表,以存儲爬取的數據。

    CREATE DATABASE nutch DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; CREATE TABLE `webpage` (`id` varchar(767) CHARACTER SET latin1 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, `baseUrl` varchar(512) CHARACTER SET latin1 DEFAULT NULL, `content` mediumblob, `title` varchar(2048) DEFAULT NULL, `reprUrl` varchar(512) CHARACTER SET latin1 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 DEFAULT CHARSET=utf8;

    總結

    以上是生活随笔為你收集整理的Nutch2.4 存储方式配置的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 欧美性生交xxxxx | 一级黄色性视频 | 成人中文字幕在线观看 | 少妇做爰免费理伦电影 | 四虎影视成人永久免费观看亚洲欧美 | www色婷婷| 午夜国产一区二区三区 | 中国av片 | 草久在线观看 | 精品久久毛片 | 寡妇av | 久久岛国 | 精品无码国产一区二区三区51安 | 波多野吉衣视频在线观看 | 亚洲国产麻豆 | 欧美视频性 | 天天操天天插 | 欧美日韩一区二区三区69堂 | 亚洲综合第一页 | 噜噜狠狠狠狠综合久久 | av狠狠 | 尤物视频在线免费观看 | 天堂√ | av午夜天堂 | 国产乱码一区二区三区播放 | 国产性按摩| 亚洲天堂色| 久久久久性 | 超碰最新上传 | 黄色中文字幕 | 美女啪啪动态图 | 欧美成人精品一区二区男人看 | 久久久久久色 | 狠狠躁日日躁 | 亚洲欧美成人综合 | 亚洲成熟女性毛茸茸 | 日韩视频h | 久久久亚洲国产 | 一级黄色免费视频 | 成人在线综合 | 你懂的视频网站 | 欧美第九页 | 青青草久久伊人 | 操网站| 久久久久亚洲av成人网人人网站 | 亚洲视频手机在线 | 草av | 图片区视频区小说区 | 精品美女一区二区三区 | 成人区人妻精品一区二区网站 | 男女羞羞在线观看 | 国产精品视频成人 | 日韩色在线 | 欧美亚洲黄色片 | 青青导航 | 日日鲁鲁鲁夜夜爽爽狠狠视频97 | 午夜精品极品粉嫩国产尤物 | 在线免费看av片 | 92av视频 | 草逼导航 | 亚洲精品欧美在线 | 亚洲欧美日韩一区二区三区在线观看 | 午夜免费福利影院 | 精品无码三级在线观看视频 | 在线国产一区二区 | 天天操操操操操 | 日本色网址 | 久久久一级片 | 羞辱狗奴的句子有哪些 | 贝利弗山的秘密在线观看 | 91精品国产乱码久久久久久久久 | 欧美丰满熟妇bbb久久久 | 自拍偷拍第5页 | 网友自拍视频 | 在线视频区 | 干干操操| 大奶子在线观看 | 天天色天天爱 | 亚洲精品成人片在线观看精品字幕 | 久久成人a | 亚洲经典在线 | 日韩一区二区三区三四区视频在线观看 | 少妇一级淫片免费播放 | 日韩精品久久久久久久 | 国产成人精品一区二区三区福利 | 久久久夜| 午夜寻花 | 少妇无码吹潮 | www.99av| 婷综合 | 超91在线 | 日韩少妇毛片 | 香蕉一级片| 香蕉视频官方网站 | 九九影视理伦片 | 嫩草影院在线观看视频 | 欧美1级片 | 波多野结衣理论片 | 亚洲性猛交xxxx乱大交 |