中间件 | 数据库 | 缓存
文章平均质量分 56
中间件 | 数据库 | 缓存
IT Panda
这个作者很懒,什么都没留下…
展开
-
通过图数据库 Neo4J 建立疫情行动轨迹及接触关系图
最近疫情反复,我被为拜托建一张“某某行动轨迹及接触关系图”。这类行动轨迹或接触关系,可以抽象成网或者图,从这类图结构立刻就会联想到图数据库Neo4J,正好并没有在公司电脑上安装和使用过Neo4J,于是在这里简单记录下,整个过程还是非常简单的,10min之内即可搞定。Neo4J 安装 & 启动选择通过docker镜像进行安装,首先打开 DockerHub,搜索Neo4J。这里选择最新版本即可,拉取镜像 docker pull neo4j$ docker image ls neo4jREP原创 2021-08-09 07:32:49 · 1131 阅读 · 2 评论 -
SSO: Basic-Auth & OAuth2 & SAML & OpeanID
SSO = Single Sign On为什么要有SSO?我们可以从有SSO和没有SSO比较开始:如果没有SSO的话,那所有的APP都需要维护一套完整的认证+授权(authentication and authorization)App team 不开心,因为他们不得不维护所有用户信息,还要维护模块去做验证和授权User 不开心,因为用户得不得在每个App内管理一对儿用户名和密码,还总...原创 2019-09-22 05:59:09 · 918 阅读 · 0 评论 -
Mybatis Plugin
很多在service上的逻辑,可以由Mybatis在DAO层实现,比如说:分页,比较有名气的PageHelper对数据加密/解密而想要在Mybatis上实现此类功能,则需要有Mybatis PLugin的帮助。其主要思想是,在已映射了的statement上,进行拦截,替换/增强新的逻辑。Mybatis允许对如下的方法进行拦截:Executor (update, query, fl...原创 2019-10-28 06:48:17 · 477 阅读 · 0 评论 -
Logstash timezone UTC issue
问题现象Logstash向ES输入的数据,总是滞后8小时… 导致0~8点的数据,都会写入前一天的logstash index…既然总是落后8小时,自然就联想到了时区的问题,查了下果然线上使用的是UTC时间默认的@timestamp默认的时间是UTC time解决问题在logstash中,将@timestamp转换filter{.......... ruby { ...原创 2019-08-31 15:34:36 · 1652 阅读 · 0 评论 -
Elasticsearch ILM (index lifecycle management): logstash vs fluentd
ILMElasticsearch在升级到7.x之后,推出了一项新功能ILM,用于管理被大家诟病已久的index lifecycle management问题,只需要在kibana内简单配置,就可以管理以前我们不得不设置cronjob去删除index的工作.但是有个小不便,ILM只能apply到index template上,而不同component向ES feed数据时,有的会创建index ...原创 2019-08-31 15:33:07 · 2792 阅读 · 2 评论 -
Elastic Search Too Many Open Files Error
线上ES突然报错too many open files首先使用如下命令查看es cluster当前file descriptor statuscurl -XGET '127.0.0.1:9200/_cat/nodes?v&h=ip,fdc,fdm'ip fdc fdm100.85.71.6 103828 128000100.85.71.7 10...原创 2019-12-16 05:21:58 · 1162 阅读 · 0 评论 -
Elastic search OOM out-of-memory issue, caused by Lucene off-heap memory
背景介绍首先介绍下项目ES集群环境:5台server组成的ES集群,每台server物理内存64G还有几个G的SWAP,其中给ES分配40G的堆内存;除ES之外,server上还跑着一些其他service.项目内使用ES,主要存储fluentD泵过来的k8s集群内所有app的系统log,之外还维护GEO app的业务数据.事件还原期初ES只是偶尔单个节点报OOM,并没有引起足够的重视,特别...原创 2020-04-03 06:48:57 · 728 阅读 · 0 评论 -
Argo 101 - 3 : Download & Upload with 「script」 template
上一篇中成功连通Argo与Storage - Minio,那么现在就可以使用 script 这种 template 来 upload 和 download 数据;对于Data Engineering或者Machine Learning来说,这一步都是必须的;download既然是download,那首先需要了解download的 from 和 to 都是哪儿from,肯定是Minio了,但是连接Minio需要mc(Minio client)的帮助,所以需要使用minio/mc这个imageto,肯原创 2020-07-14 17:57:23 · 2822 阅读 · 0 评论 -
Argo 101 - 2 : S3/Minio Storage
继续Argo之旅;Argo基本概念再熟悉下 Argo 的核心概念:WorkflowTemplate,可以看作是function,Argo中的Template有两类:定义Templatecontainer,最常见的,也是Argo的优势script,基于container,你可以写点什么resouce,直接操作k8s的任何resourcesuspend,暂停一段时间,等同于 Thread.wait(int time)调用Templatesteps,直接调用其他Template原创 2020-07-12 17:23:19 · 1126 阅读 · 0 评论 -
Argo 101 - 1 : Hello Argo
首先,啥是workflow?Wiki:a workflow consists of an orchestrated and repeatable pattern of activity是一些被精心编排过的,重复性的活动;对于Data Engineering或者Machine Learning来说,workflow 就是 DAG (有向无环图),而DAG中的每一步都是一个task,这些task协同工作来完成具体的任务;比如说,ETL,Machine Learning,deployument…而开原创 2020-07-12 00:07:54 · 676 阅读 · 0 评论