1月15日,全球著名的大数据搜索与实时处理公司Elastic公司CEO Shay Banon突然发文宣布,Elasticsearch和Kibana的其中一项开源许可协议将发生变更。
据悉,此次许可协议变更对大部分免费使用默认发行版的社区用户没有影响,主要限制的是云服务提供商。
当然这并不是Elastic第一次更改开源许可协议。专家介绍,Elastic曾在2018年就更改过一次开源许可协议。
同样,在开源领域,数据库软件MongDB、Redis Lab、图数据库Neo4j等在2018年就修改过相关的开源许可协议,以改变其在数据库商业化方面面临的“吸血”困境。
此次Elastic修改开源软件许可协议,必然会对使用Elasticsearch和Kibana的大量用户生产重大影响,尤其会对公有云上的用户造成冲击。如何规避影响,保证应用稳定持续运营是大量的中国用户面临的一个主要问题。
另外,在开源软件得到大量应用的情况中,用户不得不面对开源软件协议修改带来的巨大风险。
中国也有自己的大数据综合搜索引擎Transwarp New Search
作为目前世界上非常流行的数据搜索与实时分析引擎,Elasticsearch大名鼎鼎,单单2018年其下载量就超过了2.25亿人次,全球众多公司以某一种形式使用它。
Elasticsearch首个版本发布于2012年。经过7年多的更新迭代,Elastic Stack生态已经日渐成熟,在国内拥有越来越多的用户,应用Elasticsearch的开发人群也不断扩大。
开发者利用Elastic Stack开发出灵活的软件,在搜索、日志记录、安全防护、运维指标监控、数据库加速等应用场景,以及在互联网与软件业、金融业等行业得到广泛应用。
近些年来,云服务提供商一直在使用开源产品,修改其代码,开发托管(收费)服务解决方案版本。然而,修改后的代码将无法作为开源代码加以访问。
同时云服务商的商业行为也妨碍了开源软件公司商业化。在开源许可下,如何实现盈利,实现更健康的发展,则成为开源软件公司面临的最大挑战。
因此,Elasticsearch和Kibana在许可证方面进行了重大的更改,由开源Apache 2.0许可证,改为采用SSPL(服务器端公共许可证)。
早在2018年,MongoDB就改变了许可协议,采用了SSPL(服务器端公共许可证),以保护开源代码,避免被云服务提供商用来开发自己的SaaS/DBaaS产品。
毫无疑问,Elastic更改许可协议对用户尤其是云上托管的应用必然造成巨大的冲击。不少国家都把开源软件修改许可协议,列为软件产业发展的一大风险,引发全球相关用户的恐慌。
幸运的是,在国家政策的大力支持下,我国信创产业不断发展壮大。在大数据综合搜索的国产化自主可控方面,国内已经推出了自己的产品。
中国大数据与AI基础软件的领导企业星环科技已经推出了完全可以替换Elasticsearch的大数据综合搜索引擎——Transwarp New Search这一国际领先的大规模统计和搜索融合引擎,不但可以完成用户对全文搜索、关系的精确查询及分析需求,而且还在半结构化数据检索、时空数据检索、语义检索、模糊检索等方面更胜一筹。
受国家自主可控政策的支持,以及星环科技技术的不断突破,星环科技已经完成了大数据基础软件的完全自主研发,未来将不会存在开源软件Hadoop身影,其大数据基础软件产品在不同领域开始替换甲骨文、IBM等国外软件。
超过2000多家不同行业的用户,选择使用星环科技自主研发的平台构建大数据底层的基础设施,为各个行业赋予相关的业务能力,涉及金融、政府、能源、制造、交通、教育等。
New Search青出于蓝而胜于蓝
星环科技自研的Transwarp New Search用于在企业内部构建大数据搜索引擎。New Search支持Word/Excel/PDF/CSV/互联网数据/图片/音影等非结构化数据格式的存储和检索,在PB级数据量上进行检索时,能够秒级返回。
在开发接口方面,New Search提供了完整的SQL语法,支持并提供搜索语法SQL扩展,通过和星环科技的分析型数据库Inceptor优化器有效结合,使开发者无需了解底层架构,就可以开发出高效的搜索引擎。
与开源的大数据搜索引擎Elasticsearch(ES)相比,星环科技自研New Search具有更多的优势:
New Search提供分布式计算引擎,能满足多表关联和复杂聚合分析等场景需求,改变了开源的Elasticsearch聚合结果不准确的问题,提供精确聚合。
New Search支持标准SQL、SQL扩展搜索语义,以及Oracle、DB2L方言,配套星环自己的安全管控平台Guardian 和大数据管理平台Manager,方便安全管理和运维管理。
在全文检索方面,New Search支持pdf/word/excel等常用格式文档的存储和搜索,提供中、维、藏、英、法、日、韩、德、西、葡等多种语言分词器,支持文章相似度匹配、关键字提取、摘要提取等自然语言处理功能。
New Search时空数据库模块支持包括点、线、多边形、集合类型在内的OGC定义的标准图形类型,支持基于WMTS协议的瓦片服务,支持伴随分析、轨迹相似度匹配等时空数据库算法。
另外,New Search在大数据量、大集群环境下的性能表现优异,相对于开源的Elasticsearch(ES)有了明显的改善:
在硬件投入成本有限时,用户希望要尽可能提高资源利用率,因此集群单节点支持实例量就显得至关关重要。New Search单节点支持单实例 50TB,远超过开源ES单节点单实例10TB。
当用户的数据总量达到百TB-PB量级时,采用开源ES软件当实例超过100个节点时,会出现连环失联等稳定性问题。而星环科技的New Search产品为大集群专门调优参数,能大幅缓解节点失联等问题,而采用最新一代的New Search,支持节点或实例达到200个以上节点时,依然能有更好的稳定性。
大数据搜索对高可用要求高,应能保证99%以上的SLA服务水平协议,在有节点异常情况下可自动快速恢复,当需要人工运维介入时能提供工具快速诊断和修复集群。开源ES软件TB数量级节点重启一般需要数小时,而星环科技的New Search,TB数量级节点重启只需几分钟。 下图所示为NS在不同存量数据规模情况下的重启耗时,其中cold和hot的区别在于是否排除操作系统pageCache影响。
对于数据维度高,需要做多表关联分的业务,星环科技的New Search一改开源ES不直接支持多表关联操作的做法,满足一个查询结果需要从两个或两个以上表中提取字段数据的多表关联查询的需求。
对于短平快查询,开源ES支持最大并发量一般在700-800,且受GC影响,查询性能有毛刺。而星环科技的New Search一代产品查询流程优化,减少一次rpc,响应时间减少30%,而且通过offheap、automerge、cooling等技术减少heap占用,受GC影响变小。
最新一代New Search,进行了线程池优化和lucene优化,内存占用继续减小1/3,受GC波动更小,既满足短平快查询秒级需求,又能满足查询高峰期高并发量。如下图所示,单机存量数据为4.5T的情况下,New Search通过对堆外内存的高效使用,大幅度减少了堆内存的占用,明显降低了GC压力。
用户的查询主要针对最近N天内的数据,对再老的数据查询频度相对不高。面对这一需求,开源ES没有对冷热数据做特别处理,而星环科技的New Search对冷热数据做了优化,提升了查询性能。
当集群规模很大,表格分片较多的情况下,开源ES由于其自身PP架构和平衡策略的局限,会造成DDL操作延迟非常高,造成明显的使用卡顿和集群高负载。而New Search的中心式架构能够明显优化这方面的性能, 测试对比如下图。
当每天的增量数据增加时,用户对入库性能就会提出特别的要求。如何保证入库数据的性能呢?开源ES的数据入库性能随着数据量增大会逐渐变小。星环科技的New Search一代产品优化存储格式,性能提升10%-20%;而二代产品加入bloomfilter索引,将入库性能随着数据量增大的影响尽可能减小,入库性能继续提高30%-70%。另外,支持bulkload功能,通过BulkLoad的方式快速导入海量数据 。
如下图所示,是New Search在使用 TPC-DS标准数据进行批量写入测试中的性能表现和ES的对比,单位为单节点/MB/秒。
除了综合搜索产品的技术、性能之外,星环科技在大数据基础软件方面,可圈可点的地方还可多,如星环科技被认为是大数据领域产品线最丰富的企业,产品涉及大数据领域众多应用需求和场景,在国内有更多成功的案例,也能为中国用户提供更好的本地化服务与支持等。
随着开源软件在全球范围内不断发展壮大,开源软件的影响日益扩大,并成为软件产业发展不可忽视的重要力量。开源软件在全球的发展证明了这种模式不仅是商业模式,而且也是研发模式、推广模式、产业化的模式。
伴随着众多开源软件的商业化,以及众多开源软件成功IPO,在巨大的利益诱惑下,开源软件企业频频修改开源协议,造成的风险不得不防。同样开源软件也可能受到贸易摩擦、贸易制裁的影响。因此,在国家自主可控政策的支持下,发展自主研发、自主可控的大数据基础软件大势所趋,以满足中国企业大数据应用的需求。