自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Cassandra配置文件中相關(guān)配置項(xiàng)詳解

數(shù)據(jù)庫(kù)
今天我們要介紹的是NoSQL數(shù)據(jù)庫(kù)陣營(yíng)中的Cassandra配置文件相關(guān)配置項(xiàng),了解這些配置項(xiàng)的作用對(duì)于大家用好Cassandra有幫助。

Cassandra中所有的運(yùn)行配置都是在配置文件cassandra.yaml中進(jìn)行配置。

下面依次講解Cassandra中的配置項(xiàng):

cluster_name

設(shè)置Cassandra集群的名稱。

在Cassandra集群中,每一臺(tái)服務(wù)器都必須具備相應(yīng)的集群的名稱。如果名稱不一致,則當(dāng)前Cassandra服務(wù)器無(wú)法加入集群。

initial_token

Cassandra服務(wù)器的初始化Token值,這個(gè)值代表了Cassandra服務(wù)器在一致性哈希環(huán)中的位置。

當(dāng)Cassandra第一次啟動(dòng)的時(shí)候,會(huì)從該配置項(xiàng)中讀取,如果留空,將隨機(jī)生成一個(gè)Token值。如果Cassandra不是第一次啟動(dòng),將從系統(tǒng)表中讀取該Token值。

auto_bootstrap

第一次啟動(dòng)的時(shí)候,是否在加入Cassandra集群時(shí)從其他服務(wù)器獲取屬于本服務(wù)器的數(shù)據(jù)。

如果當(dāng)前Cassandra服務(wù)器不在seed配置選項(xiàng)中,并且是第一次啟動(dòng),將從Cassandra集群中其他服務(wù)器獲取屬于本服務(wù)器的數(shù)據(jù)。

hinted_handoff_enabled

是否開(kāi)啟當(dāng)前Cassandra服務(wù)器的HINT操作。

如果開(kāi)啟該功能,Cassandra服務(wù)器將緩存發(fā)送給暫時(shí)失效的其他Cassandra服務(wù)器的數(shù)據(jù),等待失效的服務(wù)器恢復(fù)后,再將緩存的數(shù)據(jù)發(fā)送給恢復(fù)的服務(wù)器。

authenticator

驗(yàn)證使用Cassandra的用戶是否合法,這是安全認(rèn)證的第一步。

Cassandra中定義了一系列驗(yàn)證用戶的策略,可以選擇的項(xiàng)為:

org.apache.cassandra.auth.AllowAllAuthenticator

所有的用戶都是合法的。

org.apache.cassandra.auth.SimpleAuthenticator

合法的用戶和對(duì)應(yīng)的密碼都在passwd.properties文件中定義。

authority

驗(yàn)證該用戶是否具備操作某一個(gè)Column Family的權(quán)限,這是安全認(rèn)證的第一步。

Cassandra中定義了一系列驗(yàn)證用戶權(quán)限的策略,可以選擇的項(xiàng)為:

org.apache.cassandra.auth.AllowAllAuthority

所有的用戶具備所有的權(quán)限。

org.apache.cassandra.auth.SimpleAuthority

合法的用戶和對(duì)應(yīng)的權(quán)限都在access.properties文件中定義。

partitioner

Cassandra集群中數(shù)據(jù)分區(qū)的策略。

同一個(gè)Cassandra集群中的每一臺(tái)服務(wù)器中的該配置需要一致。

Cassandra中定義了一系列數(shù)據(jù)分區(qū)的策略,可以選擇的項(xiàng)為:

  1. org.apache.cassandra.dht.RandomPartitioner  
  2. org.apache.cassandra.dht.ByteOrderedPartitioner  
  3. org.apache.cassandra.dht.OrderPreservingPartitioner  
  4. org.apache.cassandra.dht.CollatingOrderPreservingPartitioner  
  5. data_file_directories 

SSTable文件在磁盤中的存儲(chǔ)位置。

這個(gè)選項(xiàng)可以設(shè)置多個(gè)值,即如果服務(wù)器具有多個(gè)磁盤,可以將這幾個(gè)磁盤都指定為存儲(chǔ)SSTable文件的位置。如果可能,可以考慮將data_file_directories和commitlog_directory設(shè)置在不同的磁盤中,這樣有利于分散整體系統(tǒng)的磁盤I/O的壓力。

commitlog_directory

commitlog文件在磁盤中的存儲(chǔ)位置。

如果可能,可以考慮將data_file_directories和commitlog_directory設(shè)置在不同的磁盤中,這樣有利于分散整體系統(tǒng)的磁盤I/O的壓力。

saved_caches_directory

數(shù)據(jù)緩存文件在磁盤中的存儲(chǔ)位置。

commitlog_rotation_threshold_in_mb

每一個(gè)commitlog文件的大小。

commitlog_sync

記錄commitlog的方式。

可以選擇的項(xiàng)為:

periodic

周期記錄commitlog,每一次有數(shù)據(jù)更新都將操作commitlog。

batch

批量記錄commitlog,每一段時(shí)間內(nèi)數(shù)據(jù)的更新將批量一次操作commitlog。

commitlog_sync_period_in_ms

周期記錄commitlog時(shí),刷新commitlog文件的時(shí)間間隔。這個(gè)選項(xiàng)只有在commitlog_sync= periodic時(shí)才能設(shè)置。

commitlog_sync_batch_window_in_ms

批量記錄commitlog時(shí),批量操作緩存的時(shí)間間隔。這個(gè)選項(xiàng)只有在commitlog_sync= batch

時(shí)才能設(shè)置。

seeds

Cassandra集群中的種子節(jié)點(diǎn)地址

這個(gè)選項(xiàng)可以設(shè)置多個(gè)值,即Cassandra集群中有多個(gè)種子節(jié)點(diǎn)。

集群中所有的服務(wù)器在啟動(dòng)的時(shí)候,都將于seed節(jié)點(diǎn)進(jìn)行通信,從而獲取集群的相關(guān)信息。如果某一臺(tái)服務(wù)器被設(shè)置為seed節(jié)點(diǎn),那么在啟動(dòng)的時(shí)候,將自動(dòng)加入集群,并且不會(huì)執(zhí)行Bootstrap的操作,即無(wú)法從集群的其他節(jié)點(diǎn)中獲取相應(yīng)的數(shù)據(jù)。

disk_access_mode

Cassandra訪問(wèn)SSTable文件中的Data文件和Index文件時(shí)是否使用虛擬內(nèi)存映射的形式。

可以選擇的項(xiàng)為:

auto

自動(dòng)選擇合適的文件訪問(wèn)形式,如果是64位系統(tǒng),則為mmap形式,否則為standard形式。

mmap

訪問(wèn)SSTable文件中的Data文件和Index文件時(shí),都采用虛擬內(nèi)存映射的形式。

mmap_index_only

訪問(wèn)SSTable文件中的Index文件時(shí)采用虛擬內(nèi)存映射的形式。

standard

訪問(wèn)SSTable文件中的Data文件和Index文件時(shí),都不采用虛擬內(nèi)存映射的形式。

使用虛擬內(nèi)存映射的形式訪問(wèn)文件能夠加快對(duì)文件的讀寫(xiě)速度,但是這是以消耗而外的內(nèi)存作為代價(jià)的。所以要根據(jù)實(shí)際內(nèi)存大小與文件大小來(lái)選擇合適的文件訪問(wèn)方式。

concurrent_reads

并發(fā)讀取的線程數(shù)。

這個(gè)選項(xiàng)設(shè)置得越大,Cassandra在進(jìn)行讀取操作時(shí)可以使用的線程數(shù)就越多。推薦的配置為:CPU的個(gè)數(shù)*2。

concurrent_writes

并發(fā)寫(xiě)入的線程數(shù)。

這個(gè)選項(xiàng)設(shè)置得越大,Cassandra在進(jìn)行寫(xiě)入操作時(shí)可以使用的線程數(shù)就越多。

memtable_flush_writers

memtable中的數(shù)據(jù)寫(xiě)入到磁盤成為SSTable文件的并發(fā)數(shù)。

這個(gè)選項(xiàng)的默認(rèn)配置為data_file_directories中指定的目錄的個(gè)數(shù)。

sliced_buffer_size_in_kb

進(jìn)行范圍讀取操作時(shí),讀取SSTable文件使用的緩存大小。

storage_port

Cassandra集群中服務(wù)器與服務(wù)器之間相互通信的端口號(hào)。

listen_address

Cassandra集群中服務(wù)器與服務(wù)器之間相互通信的地址。如果留空,將默認(rèn)使用服務(wù)器的機(jī)器名。

rpc_address

Cassandra服務(wù)器對(duì)外提供服務(wù)的地址。如果留空,將默認(rèn)使用服務(wù)器的機(jī)器名。

rpc_port

Cassandra服務(wù)器對(duì)外提供服務(wù)的端口號(hào)。

rpc_keepalive

Cassandra服務(wù)器對(duì)外提供服務(wù)連接是否一直保持。

thrift_framed_transport_size_in_mb

使用Thrift Frame每次傳遞的數(shù)據(jù)大小。如果該選項(xiàng)為0,則禁用Thrift Frame。

thrift_max_message_length_in_mb

使用Thrift傳遞的數(shù)據(jù)最大值。

snapshot_before_compaction

Cassandra在執(zhí)行數(shù)據(jù)壓縮操作前,是否對(duì)需要壓縮的SSTable文件做數(shù)據(jù)快照(snapshot)。

binary_memtable_throughput_in_mb

binary memtable的緩存大小。

binary memtable用于大量數(shù)據(jù)的初始化操作。

column_index_size_in_kb

SSTable文件中的Data文件對(duì)應(yīng)Column索引的數(shù)據(jù)大小間隔。如果這個(gè)值越小,在Column索引中找到相應(yīng)的值速度就越快,但是會(huì)消耗更多的內(nèi)存與磁盤空間。

in_memory_compaction_limit_in_mb

在Cassandra執(zhí)行數(shù)據(jù)壓縮時(shí),如果某一個(gè)key對(duì)應(yīng)的數(shù)據(jù)的大小超過(guò)了in_memory_compaction_limit_in_mb的限制,將采用延后壓縮的機(jī)制進(jìn)行壓縮,避免使用過(guò)多的內(nèi)存。

rpc_timeout_in_ms

如果Cassandra服務(wù)器在處理外部請(qǐng)求的時(shí)候,如果超過(guò)了rpc_timeout_in_ms的限制,將拋出超時(shí)異常給調(diào)用的客戶端。

endpoint_snitch

Cassandra集群中網(wǎng)絡(luò)的選擇策略。

Cassandra中定義了一系列網(wǎng)絡(luò)的選擇策略,可以選擇的項(xiàng)為:

  1. org.apache.cassandra.locator.SimpleSnitch  
  2. org.apache.cassandra.locator.RackInferringSnitch  
  3. org.apache.cassandra.locator.PropertyFileSnitch  
  4. dynamic_snitch 

是否啟用動(dòng)態(tài)的節(jié)點(diǎn)選擇策略。啟動(dòng)該選項(xiàng)可以在做有效地避免相應(yīng)緩慢的節(jié)點(diǎn)。

和這個(gè)選項(xiàng)相關(guān)的其他選項(xiàng)為:

  1. dynamic_snitch_update_interval_in_ms  
  2. dynamic_snitch_reset_interval_in_ms  
  3. dynamic_snitch_badness_threshold  
  4. request_scheduler 

設(shè)置資源調(diào)度分配策略

Cassandra中定義了一系列網(wǎng)絡(luò)的選擇策略,可以選擇的項(xiàng)為:

org.apache.cassandra.scheduler.NoScheduler

所有的請(qǐng)求分配的計(jì)算資源都是均等的。

org.apache.cassandra.scheduler.RoundRobinScheduler

對(duì)不同的Keyspace分配不同的計(jì)算資源。

在多租戶的情況下適合使用RoundRobinScheduler。

index_interval

SSTable文件中的Index文件對(duì)應(yīng)內(nèi)存索引的數(shù)據(jù)大小間隔。如果這個(gè)值越小,在內(nèi)存索引中找到相應(yīng)的值速度就越快,但是會(huì)消耗更多的內(nèi)存。

keyspaces

定義Keyspace的屬性。

name:定義keyspace的名稱。

replica_placement_strategy:定義數(shù)據(jù)的備份策略,可選的項(xiàng)為:

  1. org.apache.cassandra.locator.SimpleStrategy  
  2. org.apache.cassandra.locator.OldNetworkTopologyStrategy  
  3. org.apache.cassandra.locator.NetworkTopologyStrategy  
  4. org.apache.cassandra.locator.LocalStrategy 

replication_factor:定義數(shù)據(jù)的備份數(shù)。

column_families:定義Column Family的屬性

column_type:定義Column Family的類型??梢栽O(shè)置為Super或者Standard,如果不設(shè)置,為Standard類型。

compare_with:Column名稱的排序規(guī)則??蛇x的項(xiàng)為:

  1. AsciiType  
  2. UTF8Type  
  3. LexicalUUIDType  
  4. TimeUUIDType  
  5. LongType  
  6. IntegerType 

compare_subcolumns_with:SuperColumn下的Column名稱的排序規(guī)則??蛇x的項(xiàng)為:

  1. AsciiType  
  2. UTF8Type  
  3. LexicalUUIDType  
  4. TimeUUIDType  
  5. LongType  
  6. IntegerType 

rows_cached:row緩存的數(shù)量,可以為整數(shù)或者百分比。

keys_cached:key緩存的數(shù)量,可以為整數(shù)或者百分比。

row_cache_save_period_in_seconds:定義Column Family中的持久化row緩存的時(shí)間間隔,如果為0,關(guān)閉持久化row緩存功能。

key_cache_save_period_in_seconds:定義Column Family中的持久化key緩存的時(shí)間間隔,如果為0,關(guān)閉持久化key緩存功能。

gc_grace_seconds:定義Column Family中數(shù)據(jù)標(biāo)記為刪除后到真正進(jìn)行物理刪除的時(shí)間間隔,如果不設(shè)置,默認(rèn)為10天(864000秒)。

memtable_flush_after_mins:定義Column Family中memtable最大的生存時(shí)間。

memtable_throughput_in_mb:定義Column Family中memtable最大緩存的數(shù)據(jù)大小。

memtable_operations_in_millions:定義Column Family中memtable最大緩存的數(shù)據(jù)條數(shù)。

min_compaction_threshold:定義Column Family中執(zhí)行數(shù)據(jù)壓縮的最小SSTable文件數(shù)。

max_compaction_threshold:定義Column Family中執(zhí)行數(shù)據(jù)壓縮的最大SSTable文件數(shù)。

default_validation_class:定義Column Family中默認(rèn)校驗(yàn)值的類型規(guī)則??蛇x的項(xiàng)為:

  1. AsciiType  
  2. UTF8Type  
  3. LexicalUUIDType  
  4. TimeUUIDType  
  5. LongType  
  6. IntegerType 

column_metadata:定義二級(jí)索引的屬性。

name:定義需要進(jìn)行二級(jí)索引的Column名稱。

validator_class:定義Column Family中校驗(yàn)值的類型規(guī)則??蛇x的項(xiàng)為:

  1. AsciiType  
  2. UTF8Type  
  3. LexicalUUIDType  
  4. TimeUUIDType  
  5. LongType  
  6. IntegerType 

index_type:定義二級(jí)索引的類型,目前支持的選項(xiàng)為:KEYS

原文鏈接:http://www.cnblogs.com/gpcuster/archive/2010/11/12/1875388.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)推薦

2010-12-09 10:21:26

Cassandra

2011-03-02 13:12:37

vsftpd配置

2009-07-09 15:55:18

WebWork配置文件

2020-04-09 13:23:29

Nginx配置文件模板

2010-06-17 16:23:32

Grub2 配置

2009-06-05 10:35:02

struts.prop配置文件

2009-08-13 09:58:55

C#讀取配置文件

2009-12-21 11:19:50

WCF配置文件

2010-03-30 18:04:45

Nginx http服

2010-06-07 16:23:06

HadoopOnDem

2024-04-25 12:35:14

JSONC#開(kāi)發(fā)

2013-08-20 10:12:37

入侵檢測(cè)系統(tǒng)ossec

2019-11-22 10:00:53

ICC配置文件Windows 10

2010-12-28 16:35:32

Outlook 配置文

2010-03-01 15:26:18

Linux配置文件

2011-01-13 16:27:26

Linux配置文件

2010-03-16 14:05:19

Cassandra

2011-01-19 14:00:21

2010-03-02 15:28:51

Linux系統(tǒng)用戶

2010-03-01 10:14:01

Linux usera
點(diǎn)贊
收藏

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