霄云科技:敢捅窗户纸 不惧浪淘沙
“感觉捅破了窗户纸。”
李小勇看了一眼实验室中搭建的原型系统,又仔细核对一遍各项实测性能数据。他感觉捅破了窗户纸,感觉时机已经成熟,“是时候,将‘PB级海量存储技术’进行产业化推广了。”
2015年,李小勇作为创始人兼CEO,正式创办上海霄云信息科技有限公司,笃定完全自研、不基于开源的高性能分布式存储。
“系统架构”成为突破口
李小勇的内心一直有个IT人的梦想,“我们使用的核心IT系统和各类基础软件,几乎都是国外的。我们的研究不能只停留在论文上,我们不但要能说能写更要能做,才能迎头赶上与国外IT技术的差距。”教书育人十余载,李小勇无数次向学生讲授分布式存储技术原理,但他深知“将原理转化为产品,需要解决诸多技术挑战。例如,可扩展架构、连接与请求的超时处理、I/O的并发性、读写过程中进行扩容而I/O不能中断等,诸多原理、架构、关键技术问题堆积在一起时,就感觉无从下手。”
“系统架构”成为了霄云科技的第一突破口。
时间回到2003年,Google发布Google File System论文,正式为分布式软件定义存储奠定了理论基石。当时还在读博士的李小勇敏锐感觉到是次机会,“为存储产业打开了一扇新的窗口。”
但也仅是一扇窗口。
因为在诸多分布式存储实现方式中,“集中式元数据管理”最早被提出应用,GFS和Hadoop HDFS等经典系统,均是依据此模式设计。其优点是系统架构简单,元数据操作性高,但缺点也很明显,元数据服务器就是系统瓶颈,它所能管理的文件数量上限很难突破10亿。
到了2010年,分布式存储又迎来一场巨大的技术进步。随着OpenStack技术的发展,“去中心化”的Ceph成为分布式存储的明星。不夸张的说,国内的大多数分布式存储企业,都在基于Ceph开源软件设计产品。但Ceph起步之初就缺乏工程经验,差强人意的代码质量也确实会影响系统稳定性。
霄云科技学习了开源技术,但又忘掉开源技术,没有选择Ceph,当然也没有选择此前的“集中式元数据管理”。“以复杂的方法去解决复杂的问题,正确性和效率都难以保证,用简单方式解决复杂问题才是正确的方法。”李小勇说:“借鉴NoSQL数据库理念,霄云科技完全自研系统架构,以“集中决策、分布执行”模式,将文件的内容以对象的方式存储到每个节点上。这样既兼顾了集中式架构和去中心化架构的优点,也保证了系统可分布式拓展,且没有单点并发瓶颈。”
运气还是偏执
一切因此迎刃而解。
以2015年为起点,创业后的4年间,霄云科技的技术线从块存储,延伸至文件存储、对象存储,并推出碧海分布式存储系统(BOSS)。同时,霄云科技攻克了“海量小文件聚合优化”和“文件和对象可互通访问”、“自适应流控”等技术难题,还在实践中自研应用了“海量数据快速迁移工具”。
“每一次关键技术的突破,至少要经历三次以上的失败。”李小勇说:“创业始于创新,但成功的技术创新,必然是小概率事件,需要一点点运气,需要一点点偏执,也需要一点点时间。”
他所说的“一点点”运气,就是技术创新的不确定性。如果有人有钱就能保证创新成功,就不可能有创业企业的生存空间。因为从来没有所谓“条条大路通罗马”,在技术创新过程中,只有部分道路才会通向罗马。
当然,李小勇所说“一点点”偏执和“一点点”时间,是霄云科技已经在分布式存储领域坚持了10多年。人海战术,远远不能抵消“偏执狂”在纵向领域10年+的探索积累。
在应用场景中打开市场
这就使霄云科技,有资格去捅破第二层窗户纸。
中国企业的数字化转型始于2015年,至2020年前后进入深水区。此时产业格局发生着微妙的变化,科技企业在以“应用场景”重新划分市场格局。道理很简单,业务痛点藏在应用场景中,而数字化转型的价值就是解决业务痛点。
“存储产品并没有行业属性,但聚焦行业应用场景,更容易打开市场。”霄云科技找到了, “碧海分布式存储系统(BOSS),特别匹配医院中的PACS场景,这可是医疗行业3大核心生产系统之一”。这并不是霄云科技摸索的第一个应用场景,而是历经数年摸索了大概5-6个行业10几种应用场景后找到的。
10年前,患者CT检查产生的图像大约只有几百张,医生调阅患者PACS图像只需要10秒左右。但在10年后,256排高端CT设备已经广泛应用。目前,患者一次检查产生的图像数量达到3000~10000幅,调图时间普遍在2分钟以上。
别看就是这两分钟,初审医生还可以喝杯水忍耐一下,但复审医生每天要调用200组以上图片,调图卡顿等待时间可能超过4个小时,周末加班成为常态。“我们的时间不能浪费在鼠标“转圈圈”上。中国人都要在月球建基地了,传张图片有那么困难吗?”复审医生经常如此吐槽。
还真有这么难。
信息部门先后对系统硬盘和内存进行升级,PACS软件服务商也尝试了6种优化方案,网络系统甚至已升级至“万兆骨干、千兆桌面”,但效果都不明显。“性能瓶颈只能是存储系统,”在逐一排除了可能存在的性能瓶颈之后,医院也不得不面对和解决存储的性能瓶颈。
在此之前,医疗PACS影像在线业务几乎都是国外高端SAN存储,并没有三甲级医院将分布式存储用于在线业务的先例。但先例正是从此开始,经实际业务测试,霄云科技碧海分布式存储系统(BOSS),可实现百亿级文件性能不衰减(100TB的PACS数据量约为2亿个文件),将PACS系统的调图速度从业内普遍的每秒20~50幅,提高到每秒300幅以上,彻底解决了PACS影像调图卡顿的痛点。
“每秒300幅就此成为行业门槛。”李小勇说。虽然友商也喊出了“每秒300幅”的目标,但那是下一代产品,霄云科技显然不用让用户等那么久,其成熟产品已经在实际项目中落地验证。
这确是个技术问题。1995年,Sun公司发表文章,标题为《为什么线程池设计是个很糟糕的想法》;2003年,伯克利大学也发表一篇文章,标题为《事件驱动是行不通的》。两篇文章的观点截然相反,代表决定分布式存储性能的两种技术流派之争:线程池模式与事件驱动模式。
而且两种技术流派争论了20年。“霄云科技也走过弯路,每一种流派都有过尝试,”李小勇说:“最终霄云科技是将两种方法结合,采用‘进程池+事件驱动’模式,每颗CPU启动一个进程,每个进程内部使用事件驱动模式。”
以“海量小文件聚合优化”为例,霄云科技管理文件数可达百亿,是传统NAS存储的100倍,是开源软件Ceph的10倍。最终性能测试数据表明:霄云科技通过海量小文件聚合优化技术,能够实现百亿级文件性能衰减小于5%,性能超过了传统及Ceph开源存储。
同行之间才有赤裸裸的信任
正因如此。霄云科技的碧海分布式存储系统(BOSS),成为目前为数不多能用于医疗PACS影像在线业务的分布式存储产品。这可并不是一个小市场,中国三级甲等综合医院已经超过1600家,二级医院数量更为庞大。
仅此应用场景,年市场容量就在20亿~50亿元,而且在如此专业的应用场景中,只有同行之间才有赤裸裸的信任。因为客户信任同行的背书,客户关注同行的实践。这正是霄云科技捅破的第二层窗户纸。
目前,霄云科技推出的新一代医疗PACS影像存储解决方案,已经服务近30%上海大三甲医院,辐射北上广深及全国范围三甲医院,包括上海市胸科医院、上海市五官科医院、复旦大学附属肿瘤医院、上海儿童医学中心、上海市华东医院、上海市龙华医院以及北京、深圳、江苏、山东、山西、安徽等多家三级甲等医院。
“此后,医疗大数据、医疗影像云、医疗云平台、金融电子票据、大数据分析等应用场景,数据量巨大、性能要求高的应用场景,都将成为霄云科技的目标市场。”李小勇提出了后续业务目标。
当然,有一点永远不会改变。
“市场就是大浪淘沙。缺乏核心技术竞争力,产品同质化,就容易徘徊在低端市场,难以盈利,很难有好的发展前景。而碧海分布式存储系统(BOSS)在系统架构、性能、稳定性方面的优势,将使霄云科技有能力在中高端分布式存储市场,占据一席之地。”李小勇最后说。