摘要:行业媒体InfoWorld推出的2018年度技术奖旨在表彰软件开发、云计算、数据分析和机器学习的最佳工具。 |
2017年,每一件产品都是以认知、机器学习或人工智能的方式推向市场的?是的。在很多情况下,机器学习实际上确实改善了产品的功能,有时候却是以令人惊讶的方式。
虽然没有将人工智能纳入其中,但是承认人工智能是建立和培训模型的最重要的工具。其中包括深度学习框架Tensor Flow和PyTorch,自动模型构建软件包H2O.ai Driverless AI以及机器学习工具箱Scikit-learn。
Apache Spark的MLlib部分同样适用于这个组,25年前的(!)R编程语言也是如此,业界人士说,“不管机器学习问题如何,CPAN中可能都有解决方案,R代码的全面存储库,很可能它是由该领域的专家编写的。”
2017年也是企业能够在不做出巨大妥协的情况下选择数据库的一年。企业需要SQL、地理分布、水平可伸缩性和强一致性吗?Google Cloud Spanner和Cockroach DB都具备这一切。企业是否需要一个分布式NoSQL数据库以及API和一致性模型?那将是微软的Azure Cosmos DB。
企业是否提供来自多个端点的数据?是否可能需要使用GraphQL来查询它们,如果企业的客户端是Node.js应用程序,则可以使用ApolloServer作为驱动程序。采用更多面向图的数据视图,GraphQL查询看起来像是一个JSON结构,数据被遗漏了。
至于图形数据库服务器,考虑Neo4j,它提供高度可用的集群,ACID事务和因果一致性。企业是否在寻找一种基于内存的基于GPU的SQL数据库,可以以毫秒为单位更新几十亿个地理位置的地理空间显示?MapD是其所需要的。
两种崭露头角的编程语言为完全不同的领域提供了切入点。Kotlin看起来像面向对象Java的简化版本,但它也是一种成熟的函数式编程语言,最重要的是消除了空指针引用的危险,并简化了对空值的处理。另一方面,Rust可以替代C和C++提供内存安全性,这是为裸机和系统级编程设计的。
说到安全性,人们也需要向两种安全产品致敬,一种是为了让开发人员更容易构建安全应用程序,另一种则将安全防护扩展到现代应用程序环境。GitHub安全警报会在GitHub检测到企业某个GitHub项目依赖项中存在漏洞时通知工作人员,并向GitHub社区建议已知的修复程序。Signal Sciences可以防止对基于云计算或基于容器的Web应用程序和API的威胁。
如果企业已经开始部署Docker容器,迟早会想要编排和管理它们的集群。为此,企业最有可能需要Kubernetes,无论是它本身,还是AWS,Azure或Google云平台中的服务。Honeycomb超越了监控和记录的范围,使企业的分布式系统具有可观察性。
最近,重量级的Angular和React框架主导了Java Script Web应用程序的讨论。然而,有一个更简单的框架正在获得关注:Vue.js.Vue.js仍然构建了一个虚拟DOM,但它不会让企业学习非标准语法或仅安装专门的工具链来部署网站。
至少可以说,微软与Linux的关系多年来一直困扰着人们。例如,2001年,史蒂夫鲍尔默称Linux为“癌症”。而微信Azure云中对Linux的需求改变了这一切,Windows的Windows子系统允许用户在Windows10中运行一个真实的Ubuntu或Suse Bashshell,允许用户可以从标准存储库(包括Azure Bash命令行)安装并运行合法的Linux二进制应用程序。
编辑:Harris