共计 5 篇文章

django migrate db

本地生成migrate文件 Django里面如果修改了model,需要运行python manage.py makemigrations来生成sql变更文件,然后部署到生产环境时执行python manage.py migrate将改动应用到生产环境的DB。 在makemigrations有几个注意事项: 多个开发人员在同一个开发环境多次migrate修改数据库,导致生成的sql文件冗余 在本地运行python manage.py makemigrations命令需要连接数据库才能操作 这里公司的资深工程师给了一个可行的操作,对django配置一个setting_local.py的配置文件,里面的数据库使用sqlite,以其为db进行migrate操作,代码测试通过后再把sql变更文件提交到版本库中。 版本回退 如果项目上线遇到问题, ...

elasticsearch beginning

摘抄 索引 —— 保存相关数据的地方。 索引实际上是指向一个或者多个物理 分片 的 逻辑命名空间 。 在索引建立的时候就已经确定了主分片数,但是副本分片数可以随时修改。 一个 分片 是一个底层的 工作单元 ,它仅保存了 全部数据中的一部分 在 Elasticsearch 中文档是 不可改变 的,不能修改它们 在内部,Elasticsearch 已将旧文档标记为已删除,并增加一个全新的文档。 尽管你不能再对旧版本的文档进行访问, ...

psql学习

前言 最近在用PostgreSQL,偶尔要到测试环境上手动看看数据库的情况,这就用到的psql这个命令。下面简单记录下常用的psql。 链接 psql -U username -W password -h host [dbname] 如果在PostgreSQL所在机器,psql -U username会默认链接到本机的DB环境。 \command psql链接到数据库后,提供了两套命令,一套是SQL命令,一套是psql命令。psql自己的命令都是用\+command的格式,下面列举笔者经常用到的psql命令。 ...

Cassandra数据库知识点

之前公司的项目中使用过一段时间Cassandra数据库,这里整理下相关知识点。 特点 NoSQL中的列式数据库 P2P的去中心化架构 使用DHT(分布式哈希表)将key分布到不同的节点中 极高的读写性能 部署简单(3台机器就可以部署一个集群) 架构 Gossip 内部P2P通信协议, 定期交换node位置信息、状态信息和数据。 Partitioner,决定数据如何分配到节点。 Replica placement strategy,备份策略。 Snitch,集群的网络拓扑,负责路由client的CRUD等请求。 读写原理 ...