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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

Hbase二级索引+CDH+Lily

發(fā)布時間:2024/8/23 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Hbase二级索引+CDH+Lily 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1.更改表結構,允許復制

已存在的表 disable 'tableName' alter 'tableName',{NAME =>'fn', REPLICATION_SCOPE =>1} enable 'tableName' 不存在的表 create ‘table‘,{NAME =>‘cf‘, REPLICATION_SCOPE =>1} #其中1表示開啟replication功能,0表示不開啟,默認為0

2.創(chuàng)建相應的SolrCloud集合
接下來在安裝有Solr的機器上運行
這里得路徑和用戶名都可以自己定義

# 生成實體配置文件:solrctl instancedir --generate /opt/hbase-indexer/index1# index1 意思代表用戶

此時/opt/hbase-indexer/index1目錄下會有個conf文件夾,我們修改下面得schema.xml文件.
在最下面新加一個字段

<field name="HBase_Indexer_Test_cf1_name" type="string" indexed="true" stored="true"/> 屬性解析: name:這里的name是自定義,但是后面要使用到,要和后面的Morphline.conf文件中的outputField屬性對應。 type:字段類型 indexed:是否建立索引 stored:是否存儲

注意:這里name字段它對應了我們后續(xù)需要修改Morphline.conf文件中的outputField屬性。因此可以看成是hbase中需要創(chuàng)建索引的值。因此我們建議將其與表名和列族結合,格式建議如下:

HBase_Indexer_ZDTable_fn_name Hbase_indexer_表名_列簇_列名

再修改solrconfig.xml,找到下面的配置將false改為true,這個是硬提交,會影響性能

<autoCommit><maxTime>${solr.autoCommit.maxTime:60000}</maxTime><openSearcher>true</openSearcher></autoCommit>

3.創(chuàng)建 collection實例并將配置文件上傳到 zookeeper:

solrctl instancedir --create index1 /opt/hbase-indexer/index1

4.上傳到 zookeeper之后,其他節(jié)點就可以從zookeeper下載配置文件。接下來創(chuàng)建 collection:

solrctl collection --create index1如果希望將數(shù)據分散到各個節(jié)點進行存儲和檢索,則需要創(chuàng)建多個shard,需要使用如下命令solrctl collection --create bqjr -s 7-r 3-m 21其中-s表示設置Shard數(shù)為7,-r表示設置的replica數(shù)為3,-m表示最大shards數(shù)目(7*3)

5.創(chuàng)建 Lily HBase Indexer 配置

[root@test119 index1]# cat morphline-hbase-mapper.xml <?xml version="1.0"?> <!-- table:需要索引的HBase表名稱--> <!-- mapper:用來實現(xiàn)和讀取指定的Morphline配置文件類,固定為MorphlineResultToSolrMapper--> <indexer table="zh_ams_ns:zhongda_custom_task_cp" mapper="com.ngdata.hbaseindexer.morphline.MorphlineResultToSolrMapper" read-row="never" > <!--param中的name參數(shù)用來指定當前配置為morphlineFile文件 --> <!--value用來指定morphlines.conf文件的路徑,絕對或者相對路徑用來指定本地路徑,如果是使用Cloudera Manager來管理morphlines.conf就直接寫入值morphlines.conf"--><param name="morphlineFile" value="morphlines.conf"/> <!--value="ZDTableMap",這里test3Map是自定義,接下來要使用。其他的mapper,param name等屬性默認即可--><param name="morphlineId" value="ZDTableMap"/> </indexer>

6.配置Morphline
通過CM頁面進入到Key-Value Store Indexer的配置頁面,里面有一個Morphlines文件。修改它:

修改完后重啟Key-Value Store服務

SOLR_LOCATOR : {# Name of solr collectioncollection : hbaseindexer# ZooKeeper ensemblezkHost : "$ZK_HOST" }morphlines : [ { #與morphline-hbase-mapper中value相同 id : ZDTableMap importCommands : ["org.kitesdk.**", "com.ngdata.**"]commands : [ {extractHBaseCells {mappings : [{inputColumn : "fn:name"outputField : "HBase_Indexer_ZDTable_fn_name" type : string source : value}]}}{ logDebug { format : "output record: {}", args : ["@{}"] } } ] } ]

注:

id:表示當前morphlines的名稱,與上一步的value="test3Map"要一致 importCommands:需要引入的命令包地址 extractHBaseCells:該命令用來讀取HBase列數(shù)據并寫入到SolrInputDocument對象中,該命令必須包含零個或者多個mappings命令對象。 mappings:用來指定HBase列限定符的字段映射。 inputColumn:需要寫入到solr中的HBase列字段。值包含列族和列限定符,并用‘ : ’分開。其中列限定符也可以使用通配符*來表示,譬如可以使用c1:*表示讀取只要列族為data的所有hbase列數(shù)據,也可以通過c1:na*來表示讀取列族為c1列限定符已na開頭的字段值. outputField:用來表示morphline讀取的記錄需要輸出的數(shù)據字段名稱,該名稱必須和solr中的schema.xml文件的field節(jié)點自定義的name名稱保持一致,否則寫入不正確 type:用來定義讀取HBase數(shù)據的數(shù)據類型,HBase中的數(shù)據都是以byte[]的形式保存,但是所有的內容在Solr中索引為text形式,所以需要一個方法來把byte[]類型轉換為實際的數(shù)據類型。type參數(shù)的值就是用來做這件事情的。現(xiàn)在支持的數(shù)據類型有:byte,int,long,string,boolean,float,double,short和bigdecimal。當然你也可以指定自定的數(shù)據類型,只需要實現(xiàn)com.ngdata.hbaseindexer.parse.ByteArrayValueMapper接口即可 source:用來指定HBase的KeyValue那一部分作為索引輸入數(shù)據,可選的有‘value’和'qualifier',當為value的時候表示使用HBase的列值作為索引輸入,當為qualifier的時候表示使用HBase的列限定符作為索引輸入

7.注冊 Lily HBase Indexer Configuration 和 Lily HBase Indexer Service

hbase-indexer add-indexer \ --name ZDindexer \ --indexer-conf /opt/hbase-indexer/index1/morphline-hbase-mapper.xml --connection-param solr.zk=test110:2181,test115:2181,test119:2181/solr \ --connection-param solr.collection=index1 \ --zookeeper test110:2181,test115:2181,test119:2181

運行hbase-indexer list-indexers查看添加成功,
此時新增數(shù)據已經可以通過solr查詢
8.批量同步索引
在運行命令的目錄下必須有morphlines.conf文件,執(zhí)行

find / |grep morphlines.conf$

一般我們選擇最新的那個process
cd 進入目錄

hadoop --config /etc/hadoop/conf \ jar /opt/cloudera/parcels/CDH/lib/hbase-solr/tools/hbase-indexer-mr-1.5-cdh5.14.0-job.jar \ --conf /etc/hbase/conf/hbase-site.xml \ --hbase-indexer-file /opt/hbase-indexer/index1/morphline-hbase-mapper.xml \ --zk-host test110:2181,test115:2181,test119:2181/solr \ --collection index1 \ --reducers 0 \ --go-live

總結

以上是生活随笔為你收集整理的Hbase二级索引+CDH+Lily的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: a色视频 | 午夜性片 | 人人澡人人草 | 免费国产在线观看 | 流白浆视频 | jizz国产免费 | 富婆如狼似虎找黑人老外 | 久久精品黄aa片一区二区三区 | 亚洲色图.com| 狠狠爱网站 | 国产91精品一区二区绿帽 | 国产午夜精品免费一区二区三区视频 | 天美视频在线观看 | 四川一级毛毛片 | 嫩草一二三| 欧美中文视频 | 国产精品青青草 | 肉肉av福利一精品导航 | www中文在线 | 夜夜操网 | 亚洲欧洲一区二区 | 国产自精品| 影音先锋亚洲一区 | 午夜免费福利影院 | 草的我好爽 | 欧美一区二区三区四区五区 | 99国产超薄肉色丝袜交足 | 一区二区三区精品在线 | 99热国产在线观看 | 夜夜涩 | 亚洲国产激情 | 91视频三区 | 黄色片免费播放 | 日韩黄大片 | 亚洲福利网 | 国产精品一区二区在线免费观看 | 国产无遮挡又黄又爽又色 | 隣の若妻さん波多野结衣 | 老妇女性较大毛片 | 午夜国产视频 | 国产在线播放一区二区 | 强乱中文字幕av一区乱码 | 日韩欧美在线中文字幕 | 黄色一级免费网站 | 水果派解说av | 精品久操 | 日韩一区二区三区三四区视频在线观看 | 中文字幕第35页 | 正在播放国产精品 | 国产精品久久久久久三级 | 奇米影视777在线观看 | 久久伊人一区 | 亚洲成人免费看 | 亚洲高清天堂 | 国产123区 | 理想之城连续剧40集免费播放 | 肥臀熟女一区二区三区 | 日本免费一区二区视频 | 成片免费观看 | 国产激情视频网站 | 亚洲区视频在线观看 | 亚洲毛茸茸 | 国产高清视频在线免费观看 | avtt2015| 国产黑丝在线观看 | 免费av电影网址 | 国产欧美综合一区 | 日穴视频| 欧美大片一区 | 亚洲视频在线观看一区二区 | 夜夜嗨av一区二区三区四区 | 国产v综合v亚洲欧美久久 | 国产成人无码www免费视频播放 | 天堂在线免费观看 | 国产av无码专区亚洲av毛片搜 | 免费观看黄色 | 男人天堂一区 | 日韩喷潮 | 色av性av丰满av | 伊人久久大香线蕉 | 婷婷影院在线观看 | 黄色一级视频在线观看 | 毛片黄片免费看 | 亚洲精品久久夜色撩人男男小说 | 国产精品伦一区二区三区 | 天堂网avav| 九九色九九 | av色图| www日本色 | 亚洲乱色熟女一区二区 | 国产精品亚洲成在人线 | 国产精品69久久久久孕妇欧美 | 好看的中文字幕电影 | 午夜精品剧场 | 国产精品探花视频 | 最近中文字幕免费 | 九一在线视频 | 69人妻精品久久无人专区 | 日韩欧美猛交xxxxx无码 |