Technology and Investing Blog


  • Home

  • About

  • Tags

  • Categories

  • Archives

对分布式数据库的实验和思考

Posted on 2019-02-15 | In 技术 |

分布式 数据库

分布式数据库介绍

过去一段时间有研究分布式数据库,什么是分布式数据库呢?

分布式数据库区别于常见的主从架构数据库集群,首先数据存储是分布式的,分开存储在多台服务器上,但数据访问服务还是跟集中式类似,一般都有统一的访问入口。

一般常见的 MySQL 主从集群,是先有一个主服务实例,写数据操作一般是通过这个主服务实例完成的,然后会有多个从服务实例,是从主服务实例自动同步数据过来,从服务实例可以对外提供数据查询服务,一般不用于写数据操作。

这种主从架构一个比较大的问题是在数据量很大的时候,在存储方面难以满足需要,比如每天写入100G的数据,这么多数据首先要有足够的硬盘空间,还要有足够的网络带宽用于主从服务间同步数据。一般一台服务器能配置的硬盘空间是有限的,不太可能做到无限扩容,只能考虑分布式存储技术,也就是通过增加服务器的方式使存储空间做到水平扩展。这种扩展是存储层面的,可以通过例如 Hadoop 这种大数据技术实现一种分布式文件系统,然后挂载到服务器上当作硬盘空间来使用。

而分布式数据库是从更高层面来解决上面的问题,数据是分开存放在多个服务实例上,这些服务实例可能使用普通的硬盘来存储数据,也可能使用分布式文件系统存储数据。比如有100条数据,有5个服务实例,可能每个服务实例保存了20条。这些服务实例也有机制来相互备份,通过多复本冗余存储的方式来做到数据高可用。

这种多服务实例需要解决协调调度的问题,比如写入数据时应该写到哪个服务实例上,读数据时怎样能读取到所有的数据,或者怎么知道某条数据是存在哪个服务实例上。所以一般分布式数据库系统都有个用于协调和调度资源的服务,它就是用来解决读写数据时的资源调度问题。

TiDB 介绍

我测试了 TiDB 这个分布式数据库系统,它的分布式存储层叫 TiKV,是一个基于 Key-Value 机制的分布式存储系统。它的资源调度服务叫作 PD,就是用于协调数据访问服务的,PD 会告诉你写数据时写到哪个 TiKV 实例上,读数据时要从哪个 TiKV 实例上读。

TiDB 比较牛的一方面是提供了一套兼容 MySQL 协议的关系数据库层,让你可以用 MySQL 的 SQL 语法来访问数据,这就大大提高了实用性,让很多已有的基于 MySQL 的应用系统可以很平滑的迁移过来。

我是用 TiDB 来保存 ESB 平台的 API 调用日志记录,每天经常高达100万条记录以上,以前用 MySQL 保存时因为数据都是保存在一台服务器上,硬盘空间很快就满了,总是扩容硬盘空间又不现实,所以用上 TiDB 就解决了分布式存储的问题,我们用3台服务器,每台分担1/3的存储空间,而且可以追加服务器,来进一步分散,减少单台服务器的存储空间要求。

在使用过程中,随着数据量越来越大,发现性能方面出现问题了,首先是查询数据时,因为单表记录数已经几亿级别了,每次查询都感觉比较慢,而且查询时 CPU 占用很高,导致数据写入方面也变慢,整体日志记录和查询服务的体验不太好。初步分析应该是在数据量到一定程度后,PD 分布式资源调度服务很繁忙,需要不断从各 TiKV 服务读取数据,比较容易导致服务器负荷增大。

轻量数据库解决方案

后来就思考其他解决方案,这种日志保存对数据一致性要求不高,主要是提供汇总数据,用于跟踪 ESB 平台的总体服务情况。我就考虑按每天一张表的方式来保存,查询时也按天,因为看到 TiDB 对 CPU 占用过高,就想用其他小型数据库来代替,存储方面最好能每天一个数据库文件,能压缩起来,方便移动到其他服务器上,解决分布式存储问题。

根据以前的使用经验,我选择了 HSQLDB,这个是兼容标准 SQL 语法的一种小型数据库,可以内嵌到应用系统里,可以以一个文件的方式保存一个数据库。我们就把每天的 API 调用记录保存到一个数据文件,并压缩来节约硬盘空间,随时可以转移到其他服务器上。实际测试这种方案效果很好,用单台服务器就能满足以前几台服务器才能做的工作,而且服务器 CPU 负荷很低,响应很快。

总结

总结一下上面的经历,个人感觉分布式数据库系统也并非是万能的,它们也有自己的弱点,估计需要很大的服务器资源投入才能保证较好的数据服务,比如 Hadoop 大数据平台,动辄需要几十台服务器的环境,资源投入很大。而对于一些非关键型的应用场景,一些简单的解决方案可能更适合,所以要根据实际需要选择恰当的解决方案。

可靠而且低成本的贷款渠道

Posted on 2019-01-15 | In 融资 |

贷款 融资 信用卡

很多人都会有紧急需要资金的需求,比如突然的大额消费,一时你手上可能没有足够的资金,这时就需要贷款渠道了。可能有人想到找亲戚朋友借钱,其实这种借钱可能成本更高,因为会消耗亲情或友情分。

因此我比较鼓励你去找合适的贷款途径,这里推荐几种低成本的贷款渠道。

信用卡

首先是尽量用信用卡去消费,信用卡普遍都有免息期,经常长达50天,免息期内相当于银行免费借钱给你用。这里并不是鼓励你多消费,只是建议在你有必要消费时尽量先用信用卡,而且优先使用免息期最长的那张信用卡 (这里是假设你有多张信用卡)。跟信用卡类似还有阿里的花呗和京东的白条等,建议不要轻易分期,除非能免手续费。

教你一个选择最长免息期的简单办法,从账单日第二天开始一个星期内刷信用卡能享受最长免息期。还有个简单方法是安装一个叫 “51信用卡管家” 的 APP,能自动帮你计算免息期。

银行渠道

然后是银行贷款渠道,工商银行的消费贷款利息比较低,那个业务叫融e贷,可以优先考虑。工行还有一个自动分期的信用卡,利率也很低,但建议设置默认分期期数不要超过24期,也就是两年。工行的工作人员会建议你默认5年分期,这样你付出的利息会比较高,但还是远低于其他银行,可以称得上是业界良心。

互联网贷款

最后就是支付宝的借呗和微信的微粒贷,他们的借款利率通常是每天万分之5左右,不同人的利率会有差异,而且经常有优惠活动可以参加,优惠活动的利率经常可以到万分之3。

借呗和微粒贷也是分期还款的,综合计算下来年化实际利率经常能到10%,建议分期期数不要太多,一般12期左右就可以了。

再有就是一些互联网小贷了,我建议你轻易不要去用,他们的利率普遍是非常高的,可能会超出很多人的想象。优先考虑上面推荐的几个渠道吧。

推荐一种有趣的投资方式,轻松获取被动收入

Posted on 2019-01-14 | In 投资 |

invest fund

估计有很多人不知道有一种比较新的基金品种,叫作定期支付基金,有点类似于以前银行的整存整取,但是以基金的方式运作的。最大的好处在于既能享受股票市场长期的较高收益,也能稳定获得现金流进账,很适合需要被动收入的人,以及有养老需求的老人。

这种基金具体是怎样运作的呢?

购买方式跟普通基金是差不多的,可以在很多平台上直接买,差别在于赎回方式,一般是按照固定比例定期自动赎回一小部分。比如按每年投入资金6%的比例(计算到每个月是0.5%)每月赎回一小部分。

这种基金的投资组合一般是混合式的,就是说同时持有股票和债券,这样能有效控制风险,而且根据资产配置理论,在收益方面也不错,经常比市场平均收益还高。

通过这种定期支付基金可以帮助我们实现被动收入,举例说明,比如你投入了10万块,按每月0.5%自动赎回一小部分,那每月可以拿到500块。而且随着投资增值,可能每月拿到的赎回金额也逐步增大。假设几年后资金增值到15万,现在每月可以拿到750了。

这种投资方式很适合在熊市阶段进入,后面只要抓到一波牛市,可能资金就能翻几倍,相应的每月现金流入也能翻几倍。

有没有感觉这种投资方式类似于买房地产出租赚租金? 是的,运作方式上很类似,差别在于买房出租需要花时间和精力去打理,而这种定期支付基金不需要做什么打理。还有很重要的一点是,基金很容易变现,而房地产就不那么容易了,所以我个人更倾向于投资基金。

下面推荐几个我在关注的定期支付基金:

519732  交银定期支付双息平衡混合

000367 国泰安康定期支付混合A

这几个基金都可以在支付宝上买到,祝您能获得越来越多的被动收入。

基于区块链技术的产品追溯体系

Posted on 2018-12-29 | In 技术 |

区块链 产品溯源

产品追溯目前大多以防伪查询的形式出现,其实这两方面是不一样的,严格来说产品追溯是包含了防伪查询的。防伪查询一般只是显示一下你买的商品是不是真的,而产品追溯却可能从商品真伪开始,往后到产品物流环节,再到质检环节,再到生产环节,然后再到原料采购环节,基本包括了供应链的主要环节。

区块链技术怎样能帮助我们做产品溯源呢?

区块链的主要特点之一是防伪造、防篡改,很适合做防伪和溯源方面的应用。

我们可以从产品的整个生命周期来看,从原料采购开始,到原料检验、入库,再到生产环节,然后是产品检验、入库,然后到发货出库,到物流环节,到经销商仓库,再到门店,最后到消费者手中,我们可以看到整个过程有大量的数据。

那用区块链怎样做呢?

可以根据区块链的特点,上链后的数据无法篡改,把产品生命周期每个环节的数据都一步一步保存到区块链上。例如在原料采购环节就把原料采购数据上链,到原料检验环节就把检验数据上链,等等,直到消费者购买环节。消费者可以通过查询入口看到整个产品生命周期的全部数据,这样能有效提高消费者对产品的信心。

再进一步,可以考虑中间一些环节上加入市场宣传的元素,例如在原料采购环节,假设原料来自某知名供应商,可以放一些他们的展示信息,为我们增加背书宣传效果。还有在检验环节,如果是按照国际标准检验的,可以放上检验标准的介绍,进一步提高消费者的信心。

进一步应用

区块链还可以帮我们增加互动效果,例如消费者查询到某环节的信息后,可以发表评论,甚至上传图片或小视频等,来做分享,这些分享保存到区块链上,可以被其他消费者看到,可以起到很好的口碑传播效果。

我们现在已经了解了区块链技术在产品追溯方面可以发挥的作用,区块链是比较新的技术,它的设计理念颠覆了传统信息技术的很多领域,未来的发展潜力很大,除了在产品追溯方面的应用以外,会推动很多创新业务模式的出现。

怎样熬过折磨人的熊市?

Posted on 2018-12-28 | In 投资 |

股市 熊市

现在的中国股市处于熊市阶段,已经挺长时间了,本来以为美股能够避开熊市的困扰,结果过去几个月美股及其他发达国家股市也争相进入了熊市,标准普尔和纳斯达克指数从今年最高点下跌20%左右,符合进入熊市的定义了。

能感受到周围炒股的朋友的焦虑,他们的子弹应该都打光了,现在的策略是卧倒死扛,言谈间时不时流露出痛苦的表情。

那该怎样熬过让人痛苦的熊市阶段呢?

其实很多自认为在投资股票的人是在炒股,说句不好听的是在做投机,希望能很快速地通过买卖股票赚点钱。股市汇集了方方面面的人,集合了无数的情绪,共同形成了市场走势,实际上很难预测短期波动方向的,这其实就是大部分想短炒赚钱面临的最大问题。

而股市的真正吸引力在于让普通人可以很容易成为优质企业的股东,并且分享到企业发展带来的收益。但从股价角度看,可能这个公司的经营业绩并没有什么变化,但股价却可能在短期内暴涨暴跌,这说明股市的很多参与者是在投机价格波动,并非是真正投资股票对应的企业。

建议你能以长期投资优质企业的心态去投资股票,这样在熊市阶段其实是很好的买进时机,因为价格便宜了,而在牛市阶段反而建议适当卖出,因为价格太贵了。

如果坚持想做短期炒股,建议在熊市阶段先收手,休息一阵,等待牛市来的时候再考虑进场,牛市阶段做价格投机更容易赚钱,就像前几年流行的一句话:只要站在风口上,猪也能飞起来。牛市阶段往往不管背后企业资质如何,股票价格都一起涨。

那怎样判断是不是已经进入牛市呢?

告诉你两个简单的指标,200日均线和50日均线,一般来说当50日均线到200日均线上方时,可以看作是牛市阶段,这个判断标准简单易懂,可以做参考。

怎样下注才能稳赢? 投资致胜的秘密

Posted on 2018-12-27 | In 投资 |

投资稳赢

怎样下注?

可能很多人不能理解为什么怎样下注会这么重要,不是说能预测未来行情的走势才是最重要的吗?

很多人都希望能通过投资赚钱,但使用的策略却不一定正确。举个例子,假设有个投资机会,成功的概率是50%,如果成功那就能获得一倍的收益,如果失败就亏掉本钱的一半,那你会怎么选择?

你敢投资这个机会吗?你会怎样投资?

再具体一点,假设你的投资本钱是1万块,是你省吃俭用一年才省下来的。投资成功就变成2万,投资失败就变成5000。

估计不同的人会有不同选择,我的建议是先评估你能接受多大亏损,然后以这个能接受的最大亏损作为你投入多少的主要依据,比如刚才的例子,1万块钱本钱,假设你最多接受1000块钱的亏损,那就投入2000块钱到这个投资机会,如果成功了,你的本金就增加到12000,如果亏损了,本金就变为9000。

其实绝大多数投资机会都有类似的成功概率的,当然无风险的银行定期存款或国债除外。只要有成功概率问题,你就需要考虑该下注多少这个问题。

下注这个词可能感觉像赌博,其实投资从纯概率角度看跟赌博差不多的,主要差别在于投资可能是在你充分评估投资风险回报比后做的决定,但有很多人觉得自己是在投资股票,而他们的做法实际上是在赌博,因为他们没有充分考虑风险收益比,没有考虑如果市场没有按他们的预期走的时候该怎么办。

索罗斯曾经说过这样的话:你们在赌博,我在投资。其实别人看索罗斯的操作可能感觉也是在赌博,但本质差别在于索罗斯看错时肯定不会伤筋动骨,因为他已经考虑了可以承担的最大风险。

你现在能理解下注的重要性了吗? 如果有兴趣进一步研究可以上网搜索一下“凯利公式”,这个是把投资风险回报比和成功概率总结成一个公式,帮你计算最佳下注额。

投资稳赢

怎样稳赢?

下面继续聊怎样稳赢,估计这个是大部分人感兴趣的。稳赢的前提是上面的如何下注,然后就是多去寻找合适的下注机会了。这怎么理解? 我们可以继续拿上面例子来看,假设每次投资成功就翻倍,失败就亏一半,相当于风险收益比是 1:2。如果投资成功的概率是 50%,那我们计算一下每次投资的预期收益是多少:

假设投资100次,每次投资本金是100块,50次成功,能赚 50 x 100 = 5000,50 次失败,亏损 50 x 50 = 2500,那 100次下来净利润是 5000 - 2500 = 2500,相当于每次赚 2500 / 100 = 250,这就是每次投资的预期收益,无论这次投资成功还是失败。

看起来很不错,那为什么不把全部本钱都投入呢?这样能赚更多钱吧?这个就涉及到概率的一个问题了,50%的成功概率也可能出现连续多次失败的情况,这种情况下你投入全部本钱意味着连续亏损,可能还没等到投资成功的时候就把本钱都亏光了。

现在你理解投资稳赢策略了吗?核心是 成功概率 和 风险回报比,能控制住这两方面就掌握了投资致胜的秘密了。祝投资稳赚!

怎样通过支付宝投资国外股票?

Posted on 2018-11-29 | In 投资 |

invest foreign stocks

估计有很多人不了解怎样投资国外股票,因为第一个反应是开国外证券账户,还要购买外汇后汇款到国外证券账户,过程是挺复杂的,但还有个更麻烦的问题是外汇管制方面,首先是每年的购汇额度有限制,还有就是个人汇款外币到国外的公司账户是有限制的,个人汇款外币岛国外的个人账户基本没什么限制。

也就是说你如果想汇款到国外的证券账户,要先开一个国外的个人银行账户,然后从国内银行汇款到国外的个人银行账户,然后再从国外个人银行账户汇款到国外的证券账户(这一步一般都可以用网银操作)。过程是不是挺复杂,仅仅汇款这一步已经阻挡住大部分人了。

那有没有更简单的方法呢?

这里介绍一种海外证券投资基金的方式,可能你听说过 QDII 这个词,摘取一段百度百科上的介绍:

QDII基金是指在一国境内设立,经该国有关部门批准从事境外证券市场的股票、债券等有价证券业务的证券投资基金。和QFII一样,它也是在货币没有实现完全可自由兑换、资本项目尚未开放的情况下,有限度地允许境内投资者投资境外证券市场的一项过渡性的制度安排。

从上面介绍我们知道我们可以通过 QDII 投资国外股票。

在支付宝里就可以购买这类基金,你可以在支付宝的基金板块里搜 QDII,会出来很多这类基金,有投资美股的,有投资港股的,还有面向全球市场的。可以根据自己的需要进行选择。

我推荐关注跟指数挂钩的基金,例如跟美国纳斯达克指数挂钩的 040046 华安纳斯达克100指数,以及跟香港恒生指数挂钩的 160924 大成恒生指数等。

通过 QDII 方式投资国外股票,你不用操心开户和资金汇款问题,在支付宝里就可以完成购买和赎回操作,不过有一点是这类基金的购买和赎回手续费偏高,因为他们要完成外币兑换及汇款过程,这都需要成本的。

债券基金是什么? 值得投吗?

Posted on 2018-11-26 | In 投资 |

bond investing

债券基金的投资品种主要是国债和企业债券等,风险比较低,收益率比货币基金高一点。假设货币基金的年化收益率是4%左右的时候,债券的年化收益率一般可以达到5.5%以上,长期积累下来多出来的投资收益还是挺可观的。

债券基金是值得投资的,可以作为整个投资组合的一部分。我以前写过一篇用股指基金加货币基金的投资组合策略,也可以把货币基金替换成债券基金,形成股票加债券的投资组合。这个组合形式是比较常见的,国外一般谈到资产配置都会涉及到股票和债券组合。

债券基金还有个好处是购买和赎回的手续费一般比股票基金低很多,但跟货币基金比较还是需要付点手续费的。

推荐几个我一直在跟踪的债券基金,从支付宝里能买到,它们是:

  233005 大摩强收益债券

  000286 银华信用季季红债券

  217022 招商产业债A

  000943 新华增盈回报债券

  121012 国投瑞银优化增强债券A/B

这几个债券基金在晨星那边评级都是五星级的,回报率方面差异不大,可以根据自己喜好选择一下。

债券基金的收益稳定,波动很小,而且一般跟股市走势是相反的,一般股市行情不好的时候,资金会进入债市,就会推动债券价格上涨。而在股市行情好的时候,资金会从债市转入股市,这时债券价格会下跌,但波动幅度比股市要小得多。

推荐一个能替代余额宝的高收益货币基金投资渠道

Posted on 2018-11-23 | In 投资 |

money fund
应该没有人不知道余额宝吧,但大家不一定都知道余额宝的背后是货币基金,也就是说我们放在余额宝里的钱其实是投给了货币基金。

货币基金是投资什么获得收益呢?他们是投资银行的定期存单或7日通知存款这样的银行理财产品,风险很低,但收益不错。那问题来了,为什么我们自己投银行的定期存款需要到期才能取呢?而余额宝随时可以取呢?这就是一种创新理财模式了,首先,余额宝的体量可以跟银行谈到更好的利率,其次呢,余额宝的用户群太大,有人存进去,有人取出来,一天的周转量是相当可观的,所以基本不用动到定期存单,周转中的资金都足以满足提现需求了。

但余额宝背后的货币基金因为体量太大,想持续获得可观的收益是挺困难的,所以现在余额宝的收益率在持续走低,不得不推出多家背后的货币基金让用户自主选择。

那有没有可能我们自己能总是选择收益率排在前面的货币基金呢?而且在收益率降低时可以转换成更好的?

这就是我要介绍的且慢的货币三佳组合,且慢是一家专业投资机构推出的APP,上面提供了很多不错的投资组合可以让投资者去投资。背后这家专业投资机构是很牛的,他们后面对接国内的众多公募基金,对外提供金融服务接口,你能在市场上发现的智能投资顾问类的服务一般背后都是这个投资机构。安全性是绝对没问题的,你的资金是通过他们投到后面的公募基金,这些公募基金的安全性就不需要再讲了。

货币三佳的思路是选择货币基金市场上三个收益率最理想的货币基金,把资金平均分三份,分别投给三家货币基金,并且定期评估,发现更好的货币基金时会自动调仓,始终保持市场上三个最理想的货币基金组合。

这个策略带来的收益也挺理想的,大部分时候都要比余额宝高上一截子,而且不需要你自己动手,他们会自动选择自动调仓。

但有一点货币三佳是 T+1 交易,也就是你今天提现,要下个工作日才到账,这跟余额宝相比稍有不便,但余额宝即时到账已经有一万的限制了,再多也是要下个工作日到账,所以提现方面差距不大了。

结合我以前分享的用 股指ETF基金 + 货币基金 的投资组合策略,其中的货币基金完全可以用 货币三佳 来代替,能给你带来更好的收益。

技术领域未来几个重要的发展趋势

Posted on 2018-11-22 | In 技术 |

trend,direction

几年前移动互联网兴起的时候,开发APP一时成为潮流,大大小小的公司都争先恐后地做自己的APP,iOS和安卓开发人员大受欢迎。几年过去了,形势发生了很大的变化,现在做小程序的成了热门了,做APP的不容易找工作了。

根据目前的发展趋势,从大的方面讲,云计算是主流,大多数公司都将不再自建IDC机房,转去租用云服务商的服务。首先是从单纯云服务器租赁,后面会转为 PaaS 服务,也就是云服务商提供类似数据库、中间件、缓存等基础软件系统。再往后会转为提供 SaaS 服务,就是直接租用应用服务。

从具体技术角度看,传统的信息管理系统将不再被企业重视,会逐渐成为标准化应用,所以这个领域的发展潜力有限,大多是基于标准应用额外做点定制开发,而且定制开发量也会逐渐减少。

而现在比较热门的像人工智能、区块链和物联网领域,会出现两极分化。一极是上游平台级供应商,像百度就是往这个方向发展,他们急需高端技术人才帮他们不断提升平台能力。另一极是普通企业,他们是应用这些技术,结合实际应用场景开发具体应用,其实那些高端技术你大致了解就可以,主要还是使用那些平台的API服务。像图片识别、语音识别、区块链平台等,未来从应用端看其实很简单的,因为别人已经做了很多后端的研究工作,我们用就行了。

其实平台级公司数量有限,能吸纳的技术人员是有限的。未来的技术人员大量还是会在普通企业里,基于那些平台服务商的服务为企业开发有价值的新应用。所以对于技术人员来说,熟悉并且能够整合主流平台供应商的服务的能力很重要。

1234…6

Ken Deng

53 posts
5 categories
29 tags
© 2020 Ken Deng
Powered by Hexo
|
Theme — NexT.Muse v5.1.4