使用Python将NOSQL LMDB读写代码转换为Redis读写

时间:2019-01-24 07:42:18

标签: python parsing redis lmdb

我曾经在一个项目中使用Redis而不是LMDB,结果速度是如此之快,以至于现在Employer想要改变所有旧项目。

每次手动更改可能需要数年!因此,我想编写一个程序,该程序可以自动检测LMDB读写代码并替换相应的Redis代码,因为两者都是键值存储。

但是挑战是

  • 如何查找lmdb调用所在的函数?既然有可能
    直接导入,嵌套导入或变量。我应该运行IO探查器吗 并使用lmdb寻找堆栈跟踪?
  • 功能识别后如何 考虑不同的代码编写方式来识别相关代码 (循环,变量等)。

我看过Tokenizer和Python 2to3,它们可以派上用场,但只有在经过识别之后才能使用。从LMDB和Redis读取/写入的示例代码

def get_lmdb_data(self,app_key, dealid):
    env = lmdb.open(table_path)
    with env.begin() as txn:
        data = txn.get(app_key)            
    return data

def get_redis_data(self,app_key, dealid):
    redis_db = self.__get_connection_redis()
        data = redis_db.get(app_key)
    return data

0 个答案:

没有答案