数据库修仙筑基篇十一——corosync-cmap使用指南

CMap数据库筛选化学药物 基本模式:利用CMap将差异基因列表与数据库参考数据集比对;根据差异表达基因在参考基因表达谱富集情况得到一个相关性分数(-100~100);正数表示上调和下调的差异表达基因与参考基因表达谱具有相似性;负数表示上调和下调的差异表达基因与参考基因表达谱可能是相反的;最终,根据参考基因表达谱相关性分数排序。一般首先查看是否有相关性大于95%和小于-95%;如果没有,可以适当放宽范围到90%(肿瘤就选择负相关呗)输入在线网站,等待结果。 阅读详情

corosync-cmap使用指南

cmap是corosync的内存key/value存储。cmap提供了如下功能:

  1. 创建key
  2. 修改已经存在的key
  3. 移除key
  4. 根据前缀迭代key
  5. 跟踪key的改变

cmap api

cmap的value支持如下几种类型:

CMAP_VALUETYPE_INT8 - 8-bit signed integer

CMAP_VALUETYPE_UINT8 - 8-bit unsigned integer

CMAP_VALUETYPE_INT16 - 16-bit signed integer

CMAP_VALUETYPE_UINT16 - 16-bit unsigned integer

CMAP_VALUETYPE_INT32 - 32-bit signed integer

CMAP_VALUETYPE_UINT32 - 32-bit unsigned integer

CMAP_VALUETYPE_INT64 - 64-bit signed integer

CMAP_VALUETYPE_UINT64 - 64-bit unsigned integer

CMAP_VALUETYPE_FLOAT - Float value

CMAP_VALUETYPE_DOUBLE - Double value

CMAP_VALUETYPE_STRING - C-style string

CMAP_VALUETYPE_BINARY - Binary data, byte with zero value has no special meaning
  • cmap_initialize

    cs_error_t cmap_initialize (cmap_handle_t *handle );
    

    初始化一个cmap句柄,后面使用该句柄进行key的插入修改删除和跟踪。

  • cmap_set

    cs_error_t cmap_set (cmap_handle_t handle,  // 初始化时生成的句柄
                         const char *key_name,  // 要添加的key名称
                         const void *value,     // key对应的值
                         size_t value_len,      // 值的长度
                         cmap_value_types_t type); // 值的类型
    

    也可以使用指定值类型的接口:

    cs_error_t cmap_set_int8(cmap_handle_t handle, const char *key_name, int8_t value);
    
    cs_error_t cmap_set_uint8(cmap_handle_t handle, const char *key_name, uint8_t value);
    
    cs_error_t cmap_set_int16(cmap_handle_t handle, const char *key_name, int16_t value);
    
    cs_error_t cmap_set_uint16(cmap_handle_t handle, const char *key_name, uint16_t value);
    
    cs_error_t cmap_set_int32(cmap_handle_t handle, const char *key_name, int32_t value);
    
    cs_error_t cmap_set_uint32(cmap_handle_t handle, const char *key_name, uint32_t value);
    
    cs_error_t cmap_set_int64(cmap_handle_t handle, const char *key_name, int64_t value);
    
    cs_error_t cmap_set_uint64(cmap_handle_t handle, const char *key_name, uint64_t value);
    
    cs_error_t cmap_set_float(cmap_handle_t handle, const char *key_name, float value);
    
    cs_error_t cmap_set_double(cmap_handle_t handle, const char *key_name, double value);
    
    cs_error_t cmap_set_string(cmap_handle_t handle, const char *key_name, const char *value);
    
  • cmap_get

    cmap_get用于读取key对应的值,接口与cmap_set相似:

    cs_error_t cmap_get (cmap_handle_t handle,  // cmap句柄
                         const char *key_name, // 要查看的key
                         void *value,          // key对应的值会存到value
                         size_t *value_len,    // value的长度会存到这里
                         cmap_value_types_t *type); // value的类型会存到这里
    

    同样的,若知道value的明确类型,则可以使用指定类型的接口:

    cs_error_t cmap_get_int8 (cmap_handle_t handle, const char *key_name, int8_t *i8);
    
    cs_error_t cmap_get_uint8 (cmap_handle_t handle, const char *key_name, uint8_t *u8);
    
    cs_error_t cmap_get_int16 (cmap_handle_t handle, const char *key_name, int16_t *i16);
    
    cs_error_t cmap_get_uint16 (cmap_handle_t handle, const char *key_name, uint16_t *u16);
    
    cs_error_t cmap_get_int32 (cmap_handle_t handle, const char *key_name, int32_t *i32);
    
    cs_error_t cmap_get_uint32 (cmap_handle_t handle, const char *key_name, uint32_t *u32);
    
    cs_error_t cmap_get_int64 (cmap_handle_t handle, const char *key_name, int64_t *i64);
    
    cs_error_t cmap_get_uint64 (cmap_handle_t handle, const char *key_name, uint64_t *u64);
    
    cs_error_t cmap_get_float (cmap_handle_t handle, const char *key_name, float *flt);
    
    cs_error_t cmap_get_double (cmap_handle_t handle, const char *key_name, double *dbl);
    
    cs_error_t cmap_get_string (cmap_handle_t handle, const char *key_name, char **str);
    
  • cmap_delete

    cs_error_t cmap_delete(cmap_handle_t handle, const char *key_name);
    

    删除某个可以。

  • cmap_track_add

    cs_error_t cmap_track_add (cmap_handle_t handle, // cmap句柄
                               const char *key_name, // key名
                               int32_t track_type,   // track的类型
                               cmap_notify_fn_t notify_fn, // value变更时的回调函数
                               void *user_data,   // 回调时传递的数据
                               cmap_track_handle_t *cmap_track_handle // 用于调度分发的track句柄
                              );
    
    

    添加对某个key的value的变化跟踪,当value改变时会触发notify_fn回调。需在进程中循环调用cmap_dispatch。

  • cmap_finalize

    cs_error_t cmap_finalize (cmap_handle_t handle);
    

    释放cmap句柄。

cmap的大致使用流程如下:

cmap_initialize
cmap_set
cmap_get
cmap_delete
cmap_finalize
CMap数据库学习及结果可视化 CMap是一个生物信息学数据库和工具,旨在通过比较基因表达谱来揭示药物、基因和疾病之间的潜在关联。CMap数据库主要用于寻找药物、化合物和生物过程之间的关系,并用于药物重定位(drug repurposing)和疾病机制研究。 阅读详情

相关推荐

CMap数据库实战:用R语言自动化处理药物重定位数据

本文详细介绍了如何利用R语言构建自动化流程,高效处理CMap数据库的药物重定位数据。通过解析原始数据、智能筛选差异基因、批量计算关联分数并实现结果可视化,帮助研究者从海量数据中快速锁定高潜力候选化合物,提升药物发现效率。

weixin_29284885的博客 144

cmap 用法

在我们的理解中,所谓的最佳算法应当是不论元素单元数目的多少,也不论元素是以什么顺序进行排列,查找过程都无需任何额外的比对操作,而能够仅仅通过简单 的计算方法,就可以直接指向最终的相应元素的快速、高效算法。如果在哈希表中的索引值为i的位置已经容纳了一个CAssoc指针,那么MFC将建立一个单独的CAssoc结构体的链表(List),链表中的第一 个CAssoc结构体的地址被存储到哈希表中,而将第二个CAssoc结构体的地址存储到前一个CAssoc结构体的pNext域,以此类推。

m0_38131096的博客 1487

CMAP数据库简介及操作.ppt

CMAP数据库简介及操作.ppt

CMap的使用(转)

CMap的使用 参数:   KEY对象的类,用作映射的关键码。ARG_KEY参数KEY使用的数据类型,通常为KEY的参考。VALUE存储在映射中对象的类。ARG_VALUE参数VALUE使用的数据类型,通常为VALUE的参考。 说明:   CMap是把唯一关键码映射到值的字典收集类。一旦在映射中插入了一个关键码值对(元素),就可以使用这些关键码,有效地获取或删除对。同样,也可...

weixin_30797027的博客 678

2017全国大学生电子设计大赛B题 | 板球控制系统(四)机械设计相关

转载请注明出处。   转眼2019了诶,可能有些同学又该问了,哇向阳哥,你这个鸽子放的好,转眼大半年了一年都没更新,我也知道啊,说好的源码呢,挖的机械的坑呢?咕咕咕咕我也不想啊,我这不是懒吗!过年有空了,又到了收红包泡妹子玩游戏.......呸,学习准备比赛码代码的时候了,终于有点空闲,于是乎今晚先把机械的大坑填了。     咱话先说在最前面。机械这玩意,靠经验,也考想象力,更要命的还是出了...

王向阳的博客 3万+

电源芯片TPS54560典型应用电路及设计详解

TPS54560 是一款配有集成型高侧 MOSFET 的 60V、5A DC-DC转换器,输入电压范围7-60V,输出电压可通过外部反馈电阻设置成略低于输入电压的任意值。**所以,**R5=31.25KΩ、R6:10KΩ(常用值)时,即可设置输出电压为 3.3V。**所以,**R5=140KΩ、R6:10KΩ(常用值)时,即可设置输出电压为12V。设计 TPS54560 的输出电压时,主要通过外部反馈电阻网络来设置输出电压。因此,输出 3.3V ,输入电压24V时推荐的电感值为 8µH 至 10µH。

weixin_42306872的博客 1万+

cmap用法,很详细(转)

http://hi.baidu.com/wei83523408/blog/item/878ebd3b8898d5e115cecb2b.html一、 Map的基本知识  映射(Map),又称为字典(Dictionary),是由关键字(Key)及其对应的元素值(Value)所组成的元素单元 (Element)的表单式集合。通常,对于Map而言,使用给定的Key,可以迅速地从单元集合

a515088896的专栏 5万+

Springboot信息泄露以及heapdump的利用

努力是为了不平庸~安全有些时候是枯燥的,这一次,让我们先人一步,趣学渗透!

LiBai'S BLOG 3万+

CMap 的使用

参数:  KEY对象的类,用作映射的关键码。ARG_KEY参数KEY使用的数据类型,通常为KEY的参考。VALUE存储在映射中对象的类。ARG_VALUE参数VALUE使用的数据类型,通常为VALUE的参考。 编辑本段说明:  CMap是把唯一关键码映射到值的字典收集类。一旦在映射中插入了一个关键码值对(元素),就可以使用这些关键码,有效地获取或删除对。同样,也可以反复使用映射中的所有元素。

逍遥骏马 1570

手把手教你用Cadence仿真12bit SAR ADC:从电路图到FFT频谱分析(含Simc 18mmrf工艺文件)

本文详细介绍了使用Cadence仿真12bit SAR ADC的全流程,包括电路搭建、仿真环境配置、瞬态仿真优化及FFT频谱分析。基于Simc 18mmrf工艺文件,提供从电路图到性能验证的实战指南,特别分享工程实践中的排错技巧和优化策略,帮助工程师高效完成ADC设计验证。

weixin_30832405的博客 405

h5支付不能打开支付宝 ios_iOS支付宝H5支付无法返回APP解决方案

本文前大段在讲楼主是如何解决这个问题的,以及中间遇到的麻烦。赶时间的同学可以直接看最后的 最终解决方案。在讨论之前,我们先看看官方文档上的一句话:注意:在iOS系统中,唤起支付宝App支付完成后,不会自动回到浏览器或商户APP。用户可手工切回到浏览器或商户APP;支付宝H5收银台会自动跳转回商户return_url指定的页面。what? 官方直接跟我们说GG了?楼主不甘心,还是想尝试一下。借鉴之前...

weixin_39864101的博客 856

【药物数据库】 Cmap数据库

[1]药物研发利器:基因表达谱数据库 cmap

sxl的博客 1925

【技能】OpenClaw Memory 与 MemOS 两种 AI 记忆方案深度解析

摘要:本文对比了两种AI记忆系统方案。OpenClaw Memory是轻量级记忆助手,内置SQLite存储,支持语义搜索,部署简单成本低,适合日常对话记忆需求。MemOS是自学习系统,通过Neo4j和Qdrant实现技能自进化,但需部署4套服务,门槛高成本大。建议普通用户选择OpenClaw Memory,技术玩家可逐步尝试MemOS。两种方案各具优势,需根据实际需求选择。

海兰 199

cmap库python

学习使用 cmap 库的步骤指南 Cmap (Color Map) 是一个用于数据可视化和色彩映射的 Python 库。在这篇文章中,我们将系统性地学习如何使用 cmap 库进行数据可视化。以下是整个过程的概览,包括需要的步骤和相应的代码示例。 整体流程 步骤 描述 1 安装必要的库 2 导入库和模块 ...

weixin_41394480的博客 670

SAP Joule for Consultants 与 Joule for Developers 全面解读

SAP推出面向不同用户群体的Joule AI助手:开发者版(Joule for Developers)专注于编码提效,嵌入开发工具链辅助生成、重构和测试代码;顾问版(Joule for Consultants)聚焦业务场景,集成SAP云应用知识库,为咨询项目提供方案设计、差距分析和实施指引。两者共享AI底座但功能侧重点不同:开发者版优化技术开发流程,顾问版加速项目交付周期。典型应用场景包括制造业云转型方案制定和ABAP代码迁移,分别展示了两版本在业务决策支持和技术实施中的价值。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 547

lammps案例:热导率模拟案例讲解(NEMD方法)

lammps计算热导率大体可以分为三种方法:EMD、NEMD、rNEMD。 本文介绍非平衡模拟(NEMD)热导率的计算方法。 NEMD下热导率计算公式为: k=dQ*dZ/dt k:热导率 dQ:能量通量。 dT/dZ:温度梯度。 非平衡态下计算热导率的原理是在材料的两端或者中间设置热源和冷源。 在热源输入热量,在冷源抽取等量的热量,在这个过程中计算材料内部会有热量的传递,产生温度梯度。 在lammps模拟中得到能量通量和温度梯度,代入公式即可求得热导率。 热量的输入方式有多种,如fix langevin

lammps_jiayou的博客 1万+

CMap如何使用?用法举例

现在,我们来学习MFC中,最常用的数据结构中的最后一个CMap模板。之前,我们已经依次学完了CArray,CList,并且也对它们进行了初步的剖析。 其实,我一直认为CMap是最简单的一个数据类型,如果说,大家对这个数据类型产生不良感觉的话,大多是因为对Hash表的陌生。     显然,CMap就是对Hash表的一种实现。对于Hash表来说,我们需要提供成对的Key与Value进行操作,其实,

月光秦王 3541

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Cmap的使用

1、定义 template <class KEY,class ARG_KEY,class VALUE, class ARG_VALUE> class CMap:public CObject class KEY:键类型 class ARG_KEY:键大小 class VALUE:值类型 class ARG_VALUE:值大小 2、初始化( 以端口号对应套接字为例) type...

weixin_30521649的博客 433

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

CMap用法

一、 Map的基本知识 映射(Map),又称为字典(Dictionary),是由关键字(Key)及其对应的元素值(Value)所组成的元素单元 (Element)的表单式集合。 通常,对于Map而言,使用给定的Key,可以迅速地从单元集合中检索到相应的元素。因此,在需要对大量数据进行查找操作而查找的性能又占据重要地位 的场合,Map无疑是一种较理想的容器。譬如,在MFC中,使用Map来实现Hand...

weixin_43913330的博客 9123

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

CMap使用方法总结

#include <array> #ifdef _DEBUG #include <iostream> #include <fstream> using std::endl; #endif void CMFCApplication1Dlg::OnBnClickedOk() { // TODO: 在此添加控件通知处理程序代码 ...

842

外文网站对CMap用法的精辟解释

  如何声明CMap许多人对Cmap的声明模式CMap感到迷惑,为什么不用CMap呢?实际上,CMap中的的数据最终会是CPair,而CPair内部是(KEY,VALUE)。因此,CMap其实存储的是KEY,而非ARG_KEY。然而,如果你查看MFC的源代码,几乎CMap所有的内部参数传递都是访问ARG_KEY和ARG_VALUE,因此,使用KEY&来代替ARG_KEY似乎是正确的,除

yy2002110的专栏 2347

深挖C++:类和对象(中)

(先进后出)

xys_678的博客 254

C++移动构造函数详解

移动构造函数是C++11引入的一种特殊构造函数,用于从临时对象(右值)"窃取"资源来初始化新对象,而不是进行昂贵的深拷贝。char* data;public:// 移动构造函数:参数是右值引用 &&// 关键:把源对象的资源置空。

拒绝AI文,努力在AI时代写出感动人心的好文章 394
上一篇: 数据库修仙金丹篇十一——vpp调试指北
下一篇: 数据库修仙筑基篇八——corosync-qdevice使用
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我在数据库世界里修仙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值