摘要:
SpringBoot 应用启动速度往往很快, 但在某些Linux 服务器上可能会很慢, 可能超过1分钟, 有时候甚至启动不起来. 下面过程耗时太长:IdGeneratorBase: Creation of SecureRandom instance for session ID generation
阅读全文
posted @ 2018-06-16 22:20
harrychinese
阅读(2580)
推荐(0)
摘要:
向java 程序传参的几种形式: 1. 使用 OS 环境变量. 这个不推荐. 2. 使用JVM变量, 最常用的是 -D 参数. -XX 和-X 参数是用来设定内存和GC参数, 不同JVM的参数设置可能不同. -D 和 -X 参数紧跟在 java 后面. java -Dfile.encoding=UT
阅读全文
posted @ 2018-06-11 22:55
harrychinese
阅读(3341)
推荐(0)
摘要:
SpringBoot 标准项目创建步骤 使用 Spring IDE(Eclipse), 可以新建一个 Spring starter project项目, 是一个项目向导, 在向导提示下可以按需添加 SpringBoot的常用依赖项目, 该向导生成一个非常规范的 pom.xml, 非常规范的目录结构,
阅读全文
posted @ 2018-06-09 16:21
harrychinese
阅读(1092)
推荐(0)
摘要:
本文转自微信公众号 波波微课 的文章 微服务架构~携程Apollo配置中心架构剖析 一、介绍 Apollo(阿波罗)[参考附录1]是携程框架部研发并开源的一款生产级的配置中心产品,它能够集中管理应用在不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于
阅读全文
posted @ 2018-06-07 21:32
harrychinese
阅读(2536)
推荐(1)
摘要:
本文转载自微信公众号-架构师小秘圈 负载分析及问题排查极简教程 Hollis 平常的工作中,在衡量服务器的性能时,经常会涉及到几个指标,load、cpu、mem、qps、rt等。每个指标都有其独特的意义,很多时候在线上出现问题时,往往会伴随着某些指标的异常。大部分情况下,在问题发生之前,某些指标就会
阅读全文
posted @ 2018-06-07 21:16
harrychinese
阅读(852)
推荐(0)
摘要:
这个链接比我写得更全面, http://tengj.top/2018/01/01/maven/ 20190115补充: maven 的一些插件 maven-checkstyle-plugin 检查代码规范的插件jacoco-maven-plugin 测试覆盖率maven-surefire-repor
阅读全文
posted @ 2018-05-29 22:43
harrychinese
阅读(801)
推荐(0)
摘要:
Vertica 8和 Hadoop 集群的互操作性已经很不错的, 但这块肯定是Vertica研发的重点, 将来可能还有较大的变动. Vertica 集群 和 Hadoop 集群的两种布局方式 |集群布局 | 描述 | 许可证 |支持Vertica for SQL on Hadoop特性 | | |
阅读全文
posted @ 2018-05-23 21:58
harrychinese
阅读(3699)
推荐(0)
摘要:
参考 在 vertica 中有三种定义 identity 字段的方法, 分别是使用 或 或 . 简单对比: AUTO_INCREMENT 同 SQL Server 的概念一样, sequence 和 Oracle 的概念是一样. AUTO_INCREMENT 或 IDENTITY 字段都是直接在表定
阅读全文
posted @ 2018-05-23 21:47
harrychinese
阅读(1169)
推荐(0)
摘要:
背景 谈到负载均衡, 对于数据库集群需要区分几个概念: 1. 运算的负载均衡, Vertica 本身是 MPP 数据库, SQL 操作自动会利用多台机器来加快处理速度. 2. 数据库连接的负载均衡, Vertica 和 Teradata 一样都是无主节点的架构, 这种架构允许客户端连接任意一个节点,
阅读全文
posted @ 2018-05-23 21:31
harrychinese
阅读(1639)
推荐(0)
摘要:
本文仅涉及 Vertica 导入导出本地文件, 以及两个 Vertica 集群相互导出, 不涉及 Vertica 和 hdfs/Hive 导入导出和互操作. copy 数据导入工具 copy 命令无疑是最常用的导入工具了, 它是Vertica的bulk copy工具, 性能非常好. 可以直接从文本文
阅读全文
posted @ 2018-05-23 21:26
harrychinese
阅读(4626)
推荐(0)
摘要:
三、数据库索引的原理 在整个过程中,最容易称为瓶颈点的是数据的读写,往往意味着要顺序或者随机读写磁盘,而读写磁盘的速度往往是比较慢的。 如果加快这个过程呢?相信大家都猜到了就是建立索引。 为什么索引能够加快这个过程呢? 相信大家都逛过美食城,里面众多家餐馆琳琅满目,如果你不着急呢,肚子不饿,对搜索的
阅读全文
posted @ 2018-05-23 12:38
harrychinese
阅读(1014)
推荐(0)
摘要:
本文转自下面两个文章: 洋码头技术公众号的<<洋码头数据仓库实践>> 随身云技术团队的 <<大数据环境数据仓库&维度建模>> 在转载之前, 先说明我认为比较合理的数仓分层: 有关ODS 层: ODS层存在的意义已经被大量证明, 加上一个ODS层, 在技术层面可以保障业务系统稳定, 同时ODS也是数据
阅读全文
posted @ 2018-05-22 23:03
harrychinese
阅读(2224)
推荐(0)
摘要:
三字经开头就讲, 教之道,贵以专, 我很早就意识到我最大的问题, 那就是没有做到专, 贪念太重, 自身才智不足以支撑太广的涉猎, 知道问题归知道, 犹如抽烟上瘾的人, 明知道吸烟有害, 但仍找抽不误. 从系统研发/数据平台/研发体系都是一把抓, Delphi/C#/Java/Python都花过不少时
阅读全文
posted @ 2018-05-18 22:25
harrychinese
阅读(389)
推荐(0)
摘要:
Vertica 表发生死锁后, 通过下面3个查询即可解锁. --步骤1: 找到被锁表的 transaction_idselect transaction_id, t.* from v_monitor.locks t; --步骤2:根据 transaction_id 获得 session_id, 这一
阅读全文
posted @ 2018-05-18 12:43
harrychinese
阅读(1998)
推荐(1)
摘要:
我们在作业开发中为了处理效率, 经常需要并行执行一些trans, 等它们执行完毕后, 需要执行另外一些trans, 从流程上也就是分支+汇合. 粗看起来很简单, Kettle中对接一下这些组件就搞定了, 效果如下: 这是一个错误的设计, 如果这么简单没有必要写在博客备忘了. 它的执行效果是: 只要有
阅读全文
posted @ 2018-05-18 12:32
harrychinese
阅读(1519)
推荐(0)
摘要:
主控trans + sub trans 模式 针对一个具体的处理任务(比如增量加载一个表), 我认为应该最好是使用两个trans来完成这个任务,分别是主控trans 和sub trans, 其中主控trans负责流程控制(包括依赖检查+增量区间设定+异常报警), sub trans仅负责数据转换,
阅读全文
posted @ 2018-05-12 22:23
harrychinese
阅读(1352)
推荐(0)
摘要:
Vertica 有两个数据分布的概念, segmentation 和 partition, 至少有下面几个区别: 1.目的方面:segmentation 解决各节点数据倾斜问题, 适用于木桶原理, 数据量大的那个节点将会拖慢整个查询. partition 主要解决的是数据删除和空间回收问题. 列式数
阅读全文
posted @ 2018-05-10 19:01
harrychinese
阅读(2237)
推荐(0)
摘要:
Impala 相关 Impala的常用端口: jdbc/ODBC 端口: 21050 impala-shell 访问端口21000 web UI地址: impalad节点(一个集群多个该类节点) http://impalad_node:25000/ impala-state节点(一个集群一个该类节点
阅读全文
posted @ 2018-04-30 12:43
harrychinese
阅读(825)
推荐(0)
摘要:
本文详细介绍了在Kettle中使用 Kudu API将数据写入Kudu中, 从本文可以学习到:1. 如何编写一个简单的 Kettle 的 Used defined Java class.2. 如何读取Kettle 每个记录的字段. 需要注意的是 getInteger() 返回的是Long 对象; 而
阅读全文
posted @ 2018-04-30 11:11
harrychinese
阅读(2092)
推荐(0)
摘要:
总结一下我使用到的一些比较优秀的Python package 通用包 Werkzeug itsdangerous Jinja2 Flask SQLAlchemy , 这个ORM 用的少一些 docopt, 命令行接口 python-dateutil Babel, 国际化 http://babel.p
阅读全文
posted @ 2018-04-27 19:16
harrychinese
阅读(762)
推荐(0)
摘要:
在众多语言中, Java 生态系统发展得最好, 比如异常logging报警, 比如性能监控工具. Python其实生态也不错, 这里列出一些出色的工具. LogBook, 并结合 raven-python handler 与 sentry 集成. http://logbook.readthedocs
阅读全文
posted @ 2018-04-27 12:54
harrychinese
阅读(305)
推荐(0)
摘要:
扩展Kettle功能, 经常使用 user defined java class 组件, 或者自己开发Java插件. 两种方式都有各自的痛点: 1. 在user defined java class 组件中写java代码, 该环境没有代码自动提示, 没有语法检查, 基本上需不断试错才能完成开发, 效
阅读全文
posted @ 2018-04-23 08:49
harrychinese
阅读(1893)
推荐(0)
摘要:
理解 mem_limit 参数 set mem_limit=-1b #取消内存限制set mem_limit=1gb #设置单机内存上限为1GB, 注意是单机set mem_limit=1mb #设置单机内存上限为1MB, 注意是单机如果设置了 mem_limit, impala 将跳过Query内
阅读全文
posted @ 2018-04-18 12:57
harrychinese
阅读(4461)
推荐(0)
摘要:
每个Kudu 表必须设置Pimary Key(unique), 另外Kudu表不能设置secondary index, 经过实际性能测试, 本文给出了选择Kudu主键的几个策略, 测试结果纠正了我之前的习惯认知. 简单介绍测试场景: 表中有一个unqiue字段Id, 另外还有一个日期维度字段hist
阅读全文
posted @ 2018-04-18 12:54
harrychinese
阅读(3391)
推荐(2)
摘要:
Kettle 8 已经发布, 下载地址还不太好找, 这里记录一下: 注: 所有大型软件升级都需要谨慎, 尤其是大版本的第一个小版本都不推荐在生产环境使用. github 总是有最新版 https://github.com/pentaho/pentaho-kettle/releases PDI-CE
阅读全文
posted @ 2018-04-10 20:59
harrychinese
阅读(5029)
推荐(2)
摘要:
Kudu+Impala很适合数据分析, 但直接使用Insert values语句往Kudu表插入数据, 效率实在不好, 测试下来insert的速度仅为80笔/秒. 原因也是显然的, Kudu本身写入效率很高, 但是Impala并没有做这方面优化, 观察下来每次Impala语句执行的overhead都
阅读全文
posted @ 2018-04-04 22:12
harrychinese
阅读(6071)
推荐(0)
摘要:
转载 git 提交解决冲突 http://www.cnblogs.com/qinbb/p/5972308.html 一:git命令在提交代码前,没有pull拉最新的代码,因此再次提交出现了冲突。 error: You have not concluded your merge (MERGE_HEAD
阅读全文
posted @ 2018-03-23 12:38
harrychinese
阅读(894)
推荐(0)
摘要:
时间函数 --当前时间戳now()current_timestamp() --当前时间戳相对于 linux epoch 的秒数unix_timestamp() , 不带参数, 则返回 '1970-01-01 00:00:00' UTC 到现在的秒数 -- 转换到相对于 linux epoch 的秒数
阅读全文
posted @ 2018-03-21 09:01
harrychinese
阅读(50840)
推荐(0)
摘要:
常用字符串函数 base64decode(string str) : base64 解码.base64encode(string str) : base64 编码. fnv_hash(type v) : 对参数值做hash, 注意结果有正有负 trim(string a): 去除 leading 和
阅读全文
posted @ 2018-03-21 08:59
harrychinese
阅读(23169)
推荐(0)
摘要:
查看内置的函数 hive 不需要进入什么内置数据库, 即可使用 show functions 命令列出所有内置的函数. show functions; -- hive仅显示函数的名称, 没有参数和返回值信息. desc function function_name ; -- 该命令能显示函数的具体用
阅读全文
posted @ 2018-03-21 08:58
harrychinese
阅读(10347)
推荐(0)
摘要:
Impala 特有的操作符 ILIKE 操作符, 忽略大小写的 like 操作符.REGEXP 操作符, 正则匹配操作符.RLIKE 操作符, 同 REGEXP 操作符.IREGEXP 操作符, 忽略大小写的正则匹配符.IS DISTINCT FROM 操作符, 判断前后两个表达式是否不相等, 和<
阅读全文
posted @ 2018-03-21 08:54
harrychinese
阅读(3371)
推荐(0)
摘要:
Impala 获取hive 的 metadata Impala 通常和Hive共用同一个metadata 数据库(通常是MySQL/PostgreSQL), 所以Impala 能够读取到Hive的元数据信息. 如果Impala需要访问Hive表, 需要将Hive metadata 刷新到impala
阅读全文
posted @ 2018-03-19 09:02
harrychinese
阅读(6871)
推荐(1)
摘要:
使用git管理Kettle 作业的一个注意 之前 ETL 作业是用 svn 管理的, 迁移到 git 管理也算是大势所趋吧. 这里重点讲一个git管理kettle作业的注意事项: kettle 既支持基于数据库的repository也支持基于文件repository, 但我更推荐基于文件的repos
阅读全文
posted @ 2018-03-15 09:14
harrychinese
阅读(910)
推荐(0)
摘要:
<<Pentaho Kettle解决方案:使用PDI构建开源ETL解决方案>>, Matt Casters等著,初建军翻译<<Hadoop应用架构>> Mark Grover编著, OREILLY出版<<Hadoop权威指南>> Tom White编著, OREILLY出版<<数据仓库工具箱 --维
阅读全文
posted @ 2018-03-05 18:27
harrychinese
阅读(1810)
推荐(0)
摘要:
Apache Kudu 支持Insert/Update/Delete 等写操作(Kudu 随机写效率也很高, 实测对一个窄表做全字段update, 其速度达到了Insert速度的88%, 而vertica的update效率比insert差很多), Kudu 表文件是列式数据格式(和Parquet格式
阅读全文
posted @ 2018-03-05 18:24
harrychinese
阅读(5356)
推荐(1)
摘要:
最近在整理很多SQL代码, 需要分析出每个SQL的目标表和源表各有哪些, 网上没有找到工作具, 打算写个工具. Java调研结果:1. 商业组件包 sqlparser 有试用版组件, 限制SQL少于10000字符,99天后过期2. 使用 presto 的 parser 或 druid 的 parse
阅读全文
posted @ 2018-02-22 21:45
harrychinese
阅读(2930)
推荐(0)
摘要:
Kibana 搜索语法 Kibana 支持三种搜索语法, 分别是 Lucene query 语法, 基于 json 的 ES query语法, 以及 Kuery 语法. 前两种语法可以直接使用, Kuery语法需要先启用. Lucene query 语法学习简单快速, ES query 语法相对复杂
阅读全文
posted @ 2017-12-23 20:13
harrychinese
阅读(14851)
推荐(0)
摘要:
======================= 使用impala shell 登录 ======================= impala shell auth_creds_ok_in_clear l i ip_address u user_name =====================
阅读全文
posted @ 2017-12-08 22:21
harrychinese
阅读(14484)
推荐(2)
摘要:
Kafka 简要使用说明 参考文章 Kafka背景及架构介绍 Apache kafka 工作原理介绍 Kafka集群操作指南 kafka操作 概念: Partition, consumer group, rebalance 在使用中, 如果要保证消费 Kafka 的数据和生产数据的次序严格一致,一个
阅读全文
posted @ 2017-11-24 22:32
harrychinese
阅读(877)
推荐(0)
摘要:
视频课程: 1. 初建军的 【慕课大巴分享】炼数成金——深入BI - Kettle 篇 基础书:1. Kettle 3.0 用户手册, 文件名为: ETL工具Kettle用户手册(上).pdf, 出品方: 深圳市神盾信息技术有限公司, 20082. Kettle 3.2 使用说明书, 文件名为: K
阅读全文
posted @ 2017-11-10 21:29
harrychinese
阅读(1281)
推荐(0)