成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Cassandra集群數(shù)據(jù)初始化的實(shí)現(xiàn)步驟

數(shù)據(jù)庫(kù) 其他數(shù)據(jù)庫(kù)
本文將討論的是Cassandra集群數(shù)據(jù)初始化的相關(guān)問(wèn)題,包括每一步的注意問(wèn)題,二次排序的問(wèn)題。

一個(gè)Cassandra集群需要投入時(shí)候,絕大多數(shù)時(shí)候都是會(huì)有初始化數(shù)據(jù)的,比如博客網(wǎng)站中所有的博客數(shù)據(jù),數(shù)據(jù)分析網(wǎng)站中所有的網(wǎng)頁(yè)信息,電子商務(wù)網(wǎng)站中所有的商品信息等等。這些初始化數(shù)據(jù)往往量的都非常大,不適用直接使用Thrift API的方式(談?wù)凜assandra的客戶端)直接導(dǎo)入。Facebook曾經(jīng)使用了叫做BinaryMemTable的方式導(dǎo)入(使用Binary Memtable將大量數(shù)據(jù)導(dǎo)入Cassandra)。

我們?cè)诩褐邪惭bHadoop和Cassandra,假設(shè)我們需要初始化的數(shù)據(jù)可以導(dǎo)入成一個(gè)平面文件(txt文件),然后上傳到HDFS中。其中每一臺(tái)機(jī)器既是Cassandra的節(jié)點(diǎn)也是Hadoop的Slave機(jī)器,并且每一臺(tái)Slave機(jī)器的Reduce的個(gè)數(shù)為1。

為了將大量的數(shù)據(jù)導(dǎo)入到集群中,我個(gè)人認(rèn)為有如下2中方案。

使用BinaryMemTable

1.運(yùn)行MapReduceJob

在Mapper中按照Key對(duì)導(dǎo)入的數(shù)據(jù)進(jìn)行分區(qū)。

在Reducer中,configure階段進(jìn)行以下操作:

1. 初始化Cassandra的消息服務(wù)和Gossip服務(wù)。

2. 創(chuàng)建Cassandra的文件目錄。

3. 關(guān)閉Cassandra的壓縮功能。

4. 等待一個(gè)Range的delay時(shí)間。

在Reducer中,reduce階段進(jìn)行以下操作:

1. 根據(jù)每一個(gè)key創(chuàng)建其對(duì)應(yīng)的ColumnFamily

2. 創(chuàng)建RowMutation的消息

3. 將消息發(fā)送到集群中所有應(yīng)該獲得該數(shù)據(jù)的節(jié)點(diǎn)中。

在Reducer中,close階段進(jìn)行以下操作:

1. 等待消息服務(wù)中所有的消息發(fā)送完畢。

2. 完畢Cassandra的消息服務(wù)和Gossip服務(wù)。

2.啟動(dòng)Cassandra集群

在Cassandra啟動(dòng)后,手動(dòng)執(zhí)行壓縮操作,合并之前產(chǎn)生的大量的SSTable文件。

自己生成SSTable文件

1.啟動(dòng)Cassandra集群

啟動(dòng)后,確保整個(gè)集群的ring已經(jīng)建立起來(lái)。

2.運(yùn)行MapReduceJob

在Mapper中,configure階段進(jìn)行以下操作:

1. 隨機(jī)連接一臺(tái)Cassandra機(jī)器

2. 獲取Cassandra集群的token map

在Mapper中,map階段進(jìn)行以下操作:

1. 根據(jù)數(shù)據(jù)的key對(duì)應(yīng)的節(jié)點(diǎn)地址劃分?jǐn)?shù)據(jù)

二次排序

1. 將節(jié)點(diǎn)地址和key相應(yīng)的數(shù)據(jù)作為一個(gè)Group

2. Group中的數(shù)據(jù)按照key的升序排序

在Reducer中,configure階段進(jìn)行以下操作:

1. 為每一個(gè)ColumnFamily創(chuàng)建一個(gè)SStableWriter實(shí)例。

在Reducer中,reduce階段進(jìn)行以下操作:

1. 根據(jù)每一個(gè)key創(chuàng)建其對(duì)應(yīng)的ColumnFamily

2. 調(diào)用相應(yīng)的SStableWriter.append()方法,將數(shù)據(jù)寫(xiě)入到指定的SStable文件中。

在Reducer中,close階段進(jìn)行以下操作:

1. 調(diào)用每一個(gè)ColumnFamily的SStableWriter.closeAndOpenReader()方法。

2. 將生成的SSTable文件SCP到應(yīng)該屬于的Cassandra的data目錄中。

3.重新啟動(dòng)Cassandra集群

原文標(biāo)題:Cassandra集群數(shù)據(jù)初始化方案的構(gòu)想

鏈接:http://www.cnblogs.com/gpcuster/archive/2010/07/03/1770452.html

【編輯推薦】

  1. MongoDB CEO談NoSQL的大數(shù)據(jù)量處理能力
  2. 拋棄關(guān)系數(shù)據(jù)庫(kù) PHP程序員應(yīng)了解MongoDB的五件事
  3. MongoDB,無(wú)模式文檔型數(shù)據(jù)庫(kù)簡(jiǎn)介
  4. 關(guān)系數(shù)據(jù)庫(kù)的末日是否已經(jīng)來(lái)臨
  5. 扔掉沉沒(méi)成本 嘗試關(guān)系數(shù)據(jù)庫(kù)替代品OODBMS

 

責(zé)任編輯:彭凡 來(lái)源: 博客園
相關(guān)推薦

2011-03-16 10:52:20

2023-11-12 23:08:17

C++初始化

2009-08-31 10:38:34

C#變量初始化

2010-01-05 15:35:21

.NET Framew

2010-02-01 14:21:24

C++初始化列表

2009-05-20 10:58:15

數(shù)據(jù)庫(kù)查詢初始化

2012-03-13 13:38:42

Java

2009-06-10 16:17:00

Netbeans JT初始化

2021-07-07 05:00:17

初始化源碼

2019-11-04 13:50:36

Java數(shù)組編程語(yǔ)言

2009-09-08 09:48:34

LINQ初始化數(shù)組

2009-11-11 15:29:15

ADO初始化

2010-01-22 15:47:37

VB.NET初始化網(wǎng)格

2010-07-28 10:22:33

FlexApplica

2021-03-12 10:30:11

SpringMVC流程初始化

2022-07-06 10:37:45

SpringServlet初始化

2020-12-03 09:50:52

容器IoC流程

2011-06-17 15:29:44

C#對(duì)象初始化器集合初始化器

2010-01-13 18:01:43

VB.NET數(shù)組初始化

2010-06-21 10:25:09

Linux APM
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 99精品久久久国产一区二区三 | 久久99深爱久久99精品 | 欧美精品黄| 欧美国产中文字幕 | 99热热99| 中文字幕在线免费视频 | 久久国产精品一区二区三区 | 欧美va大片| 国产美女自拍视频 | 亚洲欧美激情精品一区二区 | 国产精品av久久久久久毛片 | 久久精品国产亚洲a | 日日夜夜91 | 一区二区三区亚洲视频 | 国产成人精品亚洲日本在线观看 | 天堂久久久久久久 | 国产精品视频免费观看 | av成年人网站 | 亚洲精品视频播放 | 91在线影院 | 国产一级视频在线播放 | 不卡一区 | 九色www| 国产农村妇女毛片精品久久麻豆 | 欧美亚洲国语精品一区二区 | 国产区精品| 九九热在线视频免费观看 | 国产在线网站 | 美日韩免费视频 | 天天天天操 | 成人一区二区在线 | 91久久久久 | 日韩不卡一区二区 | 99精品久久久国产一区二区三 | 在线欧美视频 | 九色porny自拍视频 | 日韩一区二区三区精品 | 欧美精品综合在线 | h视频在线免费看 | 亚洲自拍偷拍视频 | 超碰欧美 |