首页
时事
民生
政务
教育
文化
科技
财富
体娱
健康
情感
更多
旅行
百科
职场
楼市
企业
乐活
学术
汽车
时尚
创业
美食
幽默
美体
文摘
PostgreSQL确实有过人之处,MySQL这个事情很难办到!
体娱
2024-08-09 20:00
山东
公司的TeamCenter系统,需要跟U8对接,就写了传输接口。
世界上没有完美无缺的程序,都会出bug。有时候是U8那边的BOM件没有正确建立,有时候是零件树结构不正确。
为了查找原因,就需要看看哪一个环节出了问题?
我就去看Log文件。
但是Log文件的分布比较零散,
一种是tc.log,这个是TeamCenter本身的日志文件,采取“每日滚动”机制,每天先把昨天的内容重命名为一个带日期的文件,这个日期就是昨天的日期,然后新建一个新的tc.log,很多人都知道这种形式就是所谓的“Rolling”日志形式。
这种tc.log存在一个固定的目录下面,叫logs。
另外一种是中间转化程序的log,他包含零件建立、传输情况等动作的log。它存放在另外一个目录下面。
上面两种日志,都可以查找到零件的编码,基本从附近行就可以看到操作的结果,非常方便分析。
但是,唯一的缺点就是他们分布在不同的目录下面。如果查找问题,我需要从这么多日志文件里面去找,需要打开多个文件,一个一个去排查。
这个时候,我就想了一个办法。
我写了一个Go程序,每天定时把日志文件写入到PG数据库里面,这样查找直接用like就可以找到了。
是的,真的方便了很多。
另外,还写一个WPF界面,可以从窗口直接发送指令到Go端,让它去服务器爬数据,完成日志入库,方便查找;也可以从这里直接查找!
不得不说,情况大有好转。
但是,性能问题开始凸显。因为一个日志文件可能就3M大小,我放在一个text字段里面,即使是数据库查询,速度也有点慢!
每次查询,我都明显感觉等待好久!
那我怎么办呢?
给数据库上索引吧!
结果发现,text字段类型只能上hash索引,对于查找基本没意义。
另外,我发现PG的text还支持所谓“全文索引”,但是很可惜,它有一个限制条件,字段值最大为1024,超过这个数值就没有办法了,只有全文索引这前024个!
至此,情况仿佛陷入了僵局!
但是,秉着“永不放弃”的精神,和“来都来了,都这样了”的不要脸情怀,我觉得继续寻找。
后来,我发现了一个PG的插件pgroonga插件。
这个插件的自我介绍是“fulltext search engine”-全文搜索引擎。
既然如此,那就安装一个pg的这个extension,试试水!
安装还是挺简单的。
安装完成,create extension来加载插件!
随后,用pgroonga来建立索引,这个时间确实比较长,文件也有点多的缘故。
在建立完成之后,我测试了一下,大概1-2秒就可以搜索到结果了!
至此,算是比较圆满的完成了构想!
从这个事情,我体会到了PostgresSQL强大的插件机制。虽然用过这么久的MySQL,但是我从来没有见过这样功能强大的插件。所以,我觉得如果联合使用软件,把Mysql的数据同步到ElasticSearch里面,再进行查询或许也能达到这样的效果吧!
但PG在自己的体系之内就能完成,可见其先进性!
我是明月,
PostgresSQL还挺好用的!
http://mp.weixin.qq.com/s?__biz=MjM5NzQwOTM2Mg==&mid=2257488765&idx=1&sn=6a6e7f51d063929d0780d3f06c3f7ea2
明月三千
将进酒,杯莫停。与君歌一曲,请君为我倾耳听。荔枝成为linux大师!
最新文章
为什么不用魔改windows,反而一直和linux死磕?
如何才能在中国禁掉违反人性的Linux系统?
孩子沉迷游戏严重,还是沉迷Linux严重?
互联网已经抹除绝大部分信息差,为什么大部分人依然进步甚微?
Linux内核移除俄罗斯开发者,Linus居然同意了
学习Linux有什么用?
从技术层面,谈谈HarmonyOS Next开发初体验!
杨笠和京东的事件,一个臭搞技术的人是怎么看的?
为什么今天还有人觉得Win10不如Win7?
Linux里面的那些“黑话”
为什么很多程序员讨厌微软?
为什么2024年了,学校还在用CentOS,不用目前流行的Linux发行版系统?
《黑神话·悟空》的热度是因为游戏出彩还是宣传到位?
写过的最愚蠢的代码是什么?
Java为什么要分Service层、DAO层和Controller层?
什么时候你认识到“技术永无出路”?
Rust语言的难点在哪里?
Win10是不是不如Win7?
暴雪是不是让人感觉它没落?
学习Linux,是看文档学,还是看视频学?
为什么很多人对Linux很抵触!
Java学习能不能跳过Servlet?
为什么有SpringBoot还需要Java?
为什么很多人喜欢重装系统?
从C#转到Java,他哭泣的像个孩子
中国人是不是很少用Linux?
Visual Studio适合初学者编程吗?
逆向思维,提高能力的好助手
怎样把Windows替换成Linux一个系统?
周末了,不写技术,来点游戏!
写作用Mac还是Windows笔记本?
Linux Shell编程难还是SQL编程难?
Ubuntu打造成办公系统
如何美化Linux系统?
为什么《黑神话 悟空》不用Java开发?
Java很稳定,是不是一句谎言?
替换Java,Kotlin、C#、Go谁是最佳选择?
Go是否适合桌面系统?
停留在Java8的人,如果Java8停止支持了,怎么办?
如何看待鸿蒙内核超越Linux内核?
想买一台ThinkPad装Linux,需要注意的有哪些?
PostgreSQL确实有过人之处,MySQL这个事情很难办到!
主要写论文和代码,用Mac还是Linux?
怎样卸载干净Java?
Docker是如何神奇的解决了我的SSL版本问题?
有了ChatGPT,是不是人人都会编程?
为什么计算机语言不能更简单一些?
为什么现在的武侠没有以前的好看了?
ArchLinux安装算难吗?
为什么在你心中,Java就是No.1.其它语言靠边站?
分类
时事
民生
政务
教育
文化
科技
财富
体娱
健康
情感
旅行
百科
职场
楼市
企业
乐活
学术
汽车
时尚
创业
美食
幽默
美体
文摘
原创标签
时事
社会
财经
军事
教育
体育
科技
汽车
科学
房产
搞笑
综艺
明星
音乐
动漫
游戏
时尚
健康
旅游
美食
生活
摄影
宠物
职场
育儿
情感
小说
曲艺
文化
历史
三农
文学
娱乐
电影
视频
图片
新闻
宗教
电视剧
纪录片
广告创意
壁纸头像
心灵鸡汤
星座命理
教育培训
艺术文化
金融财经
健康医疗
美妆时尚
餐饮美食
母婴育儿
社会新闻
工业农业
时事政治
星座占卜
幽默笑话
独立短篇
连载作品
文化历史
科技互联网
发布位置
广东
北京
山东
江苏
河南
浙江
山西
福建
河北
上海
四川
陕西
湖南
安徽
湖北
内蒙古
江西
云南
广西
甘肃
辽宁
黑龙江
贵州
新疆
重庆
吉林
天津
海南
青海
宁夏
西藏
香港
澳门
台湾
美国
加拿大
澳大利亚
日本
新加坡
英国
西班牙
新西兰
韩国
泰国
法国
德国
意大利
缅甸
菲律宾
马来西亚
越南
荷兰
柬埔寨
俄罗斯
巴西
智利
卢森堡
芬兰
瑞典
比利时
瑞士
土耳其
斐济
挪威
朝鲜
尼日利亚
阿根廷
匈牙利
爱尔兰
印度
老挝
葡萄牙
乌克兰
印度尼西亚
哈萨克斯坦
塔吉克斯坦
希腊
南非
蒙古
奥地利
肯尼亚
加纳
丹麦
津巴布韦
埃及
坦桑尼亚
捷克
阿联酋
安哥拉