yanzongshuai的专栏

专注于MySQL、MariaDB、Percona、PostgreSQL数据库及Aerospike等nosql数据库

Aerospike SSD模式时,磁盘数据存储格式

1、磁盘数据格式2、代码分析//磁盘头初始化函数 ssd_device_header * ssd_init_header(as_namespace *ns) { //header的大小是1M ssd_device_header *h = cf_valloc(SSD_DEFAULT_HEADER_...

2018-01-04 20:57:52

阅读数:511

评论数:0

Aerospike保证不了一致性

介绍Aerospike虽然号称支持事务,但是并不能满足事务的一致性。对于内存+持久化的模式,当事务提交后,事务操作的记录值并没有刷到磁盘上,只是将其存到了swb的缓存中。这个缓存由一个后台线程进行刷写。如果事务提交后,此时所有的值都是看得到的;而其值没有刷到磁盘上,此时宕机重启后是会丢失记录的。至...

2017-12-28 21:54:55

阅读数:510

评论数:0

Aerospike insert、drop、read和emigrate加锁及引用计数流程

1、insert2、drop3、read                                                    4、emigrate

2017-12-07 21:56:31

阅读数:224

评论数:0

Aerospike Has Removed the Large Data Type (LDT) Feature--Aerospike已经不再支持LDT特性

In 2013, Aerospike introduced a new feature known as Large Data Types (LDTs) to enable Aerospike to handle data that exceeded our row size limit. On ...

2017-12-02 17:07:52

阅读数:344

评论数:0

Aerospike的bin内存管理--即列内存管理

1、内存申请函数调用write_master->write_master_dim->write_master_bin_ops->write_master_bin_ops_loop->as_bin_particle_alloc_from_client:该函数对as_bin_s...

2017-12-01 20:32:05

阅读数:429

评论数:0

Aerospike 的索引内存管理--as_index->dim

2017-12-01 20:29:29

阅读数:496

评论数:0

Aerospike rd记录的rec_props结构

rd的rec_props存放三部分记录属性内容:LDT信息、set name、keyd。这三部分内存空间是连续的,这里只是分割开来方便说明。 如果rd不是LDT类型,那么是不存放第一部分内容的,直接开始就是存放set name。 rd->rec_props的p_data存放LDT、set n...

2017-11-26 19:24:48

阅读数:358

评论数:0

Aerospike partition tree的内存管理

as_namespaces_init:1、uint32_t stage_capacity = as_mem_check() for (capacity = MAX_STAGE_CAPACITY; capacity >= MIN_STAGE_CAPACITY; capacity /=...

2017-11-19 10:34:54

阅读数:506

评论数:0

Aerospike迁移--2

emigration_send_start { ... msg_set_uint32(m, MIG_FIELD_OP, OPERATION_START); ... uint64_t start_xmit_ms = 0; //向目标节点发送消息后,等待emig-&g...

2017-11-12 22:15:33

阅读数:189

评论数:0

Aerospike 读写过程中对partition tree的引用计数的处理

as_tsvc_process_transaction: as_partition_reserve_write or as_partition_reserve_read pthread_mutex_lock(&p->lock); ... ...

2017-11-05 14:19:23

阅读数:418

评论数:0

Aerospike SSD模式下,刷写磁盘和写入数据swb的关系

void ssd_flush_current_swb(drv_ssd *ssd, uint64_t *p_prev_n_writes, uint32_t *p_prev_size) { uint64_t n_writes = cf_atomic64_get(ssd->n_wblock_...

2017-11-01 21:02:48

阅读数:688

评论数:0

Aerospike迁移

1、immigration_handle_start_request功能:      构建immigration;      将immigration放到g_immigration_hash表;      发送ACK;2、原emigrate_tree发送迁移消息后,immigration_hand...

2017-10-25 21:12:27

阅读数:529

评论数:0

Aerospike SSD模式下写入swb内的记录格式

2017-09-29 21:12:05

阅读数:563

评论数:0

aerospike 持久化磁盘时,namespace与磁盘的关系

2017-06-28 22:16:52

阅读数:493

评论数:0

aerospike异步处理

1、异步 1、集群在启动时会初始化出异步线程连接队列,其中cluster->async_max_conns_per_node为每个阶段异步最大连接数,可配。 2、 1)先申请as_event_loop_capacity(为)个异步队列空间 2)将最大连接数分配到每个异步队列中。Max=最大连...

2017-03-05 15:11:28

阅读数:1032

评论数:0

Redis的资料汇总--不错的redis资料

https://yq.aliyun.com/articles/4779?spm=5176.100239.blogcont53867.146.5ymjzB

2017-01-21 10:41:52

阅读数:337

评论数:0

提示
确定要删除当前文章?
取消 删除