资讯详情

BAT等大厂已开源的70个实用工具盘点(附下载地址)

前一篇文章《亚马逊,微软,谷歌,Facebook硅谷大厂91个开源软件盘点(附下载地址)列出了8家外国互联网公司(包括微软)Google、亚马逊、IBM、Facebook、Twitter、eBay、VMware)对于开源软件项目,今天我们来型互联网厂商(腾讯、百度、阿里、美团点评、华为)的开源软件。Mark起床转发给有需要的人。

ECharts基于百度前端技术部的开发Javascript提供直观、生动、交互、个性化定制的数据可视化图表库。

基于底层,提供大量常用的数据可视化图表ZRender(全新的轻量级canvas类库)创建了坐标系、图例、提示、工具箱等基本组件,并构建了折线图(区域图)、柱状图(条状图)、散点图(气泡图)、饼状图(环形图)。K线图、地图、力导图和和弦图,支持任何维度的积累和多图表的混合显示。

详情:https://www.oschina.net/p/echarts

GitHub地址:

https://github.com/baidu/echarts

2、

Apollo (阿波罗)是一个开放、完整、安全的平台,将帮助汽车行业和自动驾驶领域的合作伙伴结合车辆和硬件系统快速建立自己的自动驾驶系统。

Apollo 是百度打造的 AI 开放平台之一,主要包括 4 技术模块:定位/感知模块、车辆规划和运营(AI 大数据,精确控制车辆,适合不同路况),软件操作框架(支持英特尔、英伟达等芯片)。

详情:https://www.oschina.net/p/apolloauto

百度核心数据库Tera在分布式文件系统性能、可用性和扩展性对整个上层搜索业务的稳定性和效果有着至关重要的影响。现有的分布式文件系统(如HDFS等)不能满足低延迟、高可用性、跨区域扩展等方面的需求,所以我们从百度搜索的业务特点开发了自己的分布式文件系统BFS。

系统主要由NameServer、MetaServer、ChunkServer、SDK、bfs_mount和bfs_client由几个模块组成。

其中NameServer是集群部署的中央控制模块,负责目录树的管理;ChunkServer负责提供文件块读写服务的数据节点;SDK用户以静态库的形式使用API;bfs_mount通过libfuse,将bfs作为本地文件系统访问,挂载到本地;bfs_client是二进制管理工具。

详情:https://www.oschina.net/p/baidu-file-system

KityMinder 是百度FEX团队的f-cube小组(原UEditor小组)的另一部杰作。作为在线脑图编辑工具,它有很多Native交互体验编辑工具。KM与UE同样的目的是关注最终用户体验。同时,它充分发挥了作用Web云存储的优点可以直接将编辑中的大脑图同步到云中。此外,通过原始的 云磁盘共享功能,用户可以直接生成在线链接与其他用户共享,实现无缝沟通。

详情:https://www.oschina.net/p/kityminder

通用组件/通用平台,专注于各种 分布式系统的配置和管理,提供统一的配置和管理服务。著名的互联网公司,包括 百度、滴滴出租车、银联、网易、拉钩 等!

详情:https://www.oschina.net/p/disconf

Tera 是一个高性能、可伸缩的数据库系统,设计用于管理搜索引擎数万亿的超链和网络信息。为了实现数据的实时分析和高效访问,我们使用三维数据模型组织数据,按行键、列名和时间戳进行全局排序,并使用多级数据Cache系统充分利用新一代服务器硬件的大内存,SSD磁盘和万兆网卡的性能优势实现了高吞吐量和水平扩展,同时实现了灵活的模型。

详情:https://www.oschina.net/p/tera

Gitbub地址:

https://github.com/baidu/tera

Cafe 测试框架来自百度QA具有开创性意义的部门Android覆盖平台自动化测试框架的框架Android自动化测试的各种要求。框架致力于实现跨过程测试、快速测试和深度测试,解决了问题Android自动化测试中的许多问题,如行业尚未解决的跨过程测试问题。

详情:https://www.oschina.net/p/cafe

UEditor是由百度web前端研发部开发见所得web编辑器,重量轻,可定制,注重用户体验。

详情:https://www.oschina.net/p/ueditor

Gitbub地址:

https://github.com/baidu/ueditor

Mapv 是一个基于百度地图的大数据可视化开源库,可以用来显示大量的点、线、面数据。每个数据也有不同的显示类型,如直接点、热图、网格、聚合等。

详情:https://www.oschina.net/p/mapv

Gitbub地址:

https://github.com/baidu/mapv

ECharts-X是 ECharts 团队推出的新 3D 可视化库是基于 ECharts 的扩展和底层深度集成WebGL 库QTEK和 Canvas2D 库ZRender。

详情:https://www.oschina.net/p/echarts-x

MuPlayer 是百度的跨平台、轻量级音频播放解决方案@基于音乐前端团队开发和维护的浏览器音频播放核心HTML5 Audio及Flash音频技术已应用于百度音乐的多个在线产品线,具有很强的灵活性和稳定性。

详情:https://www.oschina.net/p/muplayer

WebUploader 是由Baidu WebFE(FEX)团队开发的一个简单的以HTML5为主,FLASH辅以现代文件上传组件。在现代浏览器中充分发挥作用HTML5的优势,不放弃主流IE延用原来的浏览器FLASH操作时,兼容IE6 ,Andorid 4 ,IOS 6 。两套运行时,用户可以随意选择相同的调用方式。

详情:https://www.oschina.net/p/webuploader

百度更多可查看开源项目细节:https://www.oschina.net/project/baidu

 

开源的移动端高性能动态化,跨平台UI框架。 Weex的出现解决了困扰移动开发领域长期以来的一份设计,多次重复开发的问题,使得开发者能够通过一次代码编写即可为Androdi,IOS,H5生成美观高性能的界面。

由于Weex已经捐赠到了Apache基金会孵化,所以代码主仓库已经迁移到了Apache组织下。

Github主仓库:

https://github.com/apache/incubator-weex

Github原仓库:

https://github.com/alibaba/weex

 

阿里在React技术栈基础上开源的全功能通用组件库,沉淀了大量交互设计最佳实践。 如果你以React的方式开发你的前端应用Ant Design不容错过。Ant Design最近还提供了移动版Ant Design Mobile ,同样风格的组件库现在可平顺的过度到移动Web环境。

Github主仓库: 

https://github.com/ant-design/ant-design

 

FastJSON是一个超高性能的JSON解析和生成器,在对外零依赖的情况下实现了对多种常用数据结构到JSON的解析和生成。评测数据长期以来一直在同类工具间遥遥领先。对JSON的处理是众多服务端程序最频繁执行的任务,启用FastJSON或许能让你的后端应用获得不小的性能提升。

Github主仓库:

https://github.com/alibaba/fastjson

 

高性能服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入,可以和 Spring框架无缝集成。 是阿里大规模分布式系统的秘密武器。

Github主仓库:

https://github.com/alibaba/dubbo

 

随着移动应用规模的增长,大型移动应用,特别是平台级应用往往由团队协同开发。如何实现不同功能模块的组件化、解耦化,同时还具备动态性是Android应用开发的一个核心挑战。Atlas在遵循安卓系统设计规范的情况下,通过反射和轻量的hook方案来实现了这一目标,并将大量的工作放到了编译期,提高了稳定性。

Github主仓库: 

https://github.com/alibaba/atlas

 

企业级互联网架构的核心产品,基于高可用分布式集群技术,搭建了包括发布订阅、消息轨迹、资源统计、定时(延时)、监控报警等一套完整的消息队列服务。

Github主仓库: 

https://github.com/apache/incubator-rocketmq

Github原仓库: 

https://github.com/alibaba/RocketMQ

 

Freeline是一个Android平台上的构建工具,构建速度是其最大特点。它可以充分利用缓存文件,在几秒钟内迅速地对代码的改动进行编译并部署到设备上,有效地减少了日常开发中的大量重新编译与安装的耗时。

Github主仓库: 

https://github.com/alibaba/freeline

 

AliSQL 是基于广泛使用的数据库产品 MySQL 的一个开源分支,在 MySQL 社区版的基础上做了大量的性能与功能的优化改进。尤其适合电商、云计算以及金融等行业环境。最新的 AliSQL 版本不仅从其他开源分支比如:Percona,MariaDB,WebScaleSQL 等社区汲取精华,也沉淀了阿里巴巴多年在 MySQL 领域的经验和解决方案。

Github主仓库: 

https://github.com/alibaba/AliSQL

期望的目标是强大而好用,把程序员从构建的繁琐中解放出来。Blade 主要定位于 Linux 下的大型 C++ 项目,密切配合研发流程,比如单元测试,持续集成,覆盖率统计等。

在腾讯公司“台风”云计算平台开发过程中,为了解决 GNU Make,Autotools 的难用和繁琐的问题,开发了这个全新的构建系统,整个系统基于多个声明式的构建脚本,在构建脚本里,只需要声明要构建什么目标,目标的源代码,以及其直接依赖的其它目标,不需要说明如何构建。大大降低了使用难度,提高了开发效率。

Gitbub地址:

https://github.com/chen3feng/typhoon-blade

 

一款用于 iOS 系列系统的自动化测试框架。

Gitbub地址:

https://github.com/TencentOpen/Appecker

 

QcloudMna 移动加速是腾讯云针对移动端应用(APP、游戏)推出的加速产品,其主要功能包括:动态数据加速、网络流量优化、智能分析统计,具有接入简单、多平台支持、客服支持等特点。

详情:https://www.oschina.net/p/mna

 

云排序用于提供海量数据排序服务, 采用可扩展的分布式存储方案。腾讯云排序服务主要面向腾讯开放平台上的第三方应用,应用的用户量跨越从0到千万级甚至上亿的广阔区间, 在进行海量数据的排序时,经常会面临处理方式、处理性能等方面的问题。

详情:https://www.oschina.net/p/ctaxis

 

安卓性能测试工具,安卓平台高效性能测试套件,用于安卓平台的基准测试、竞品测试。

APT是一个eclipse插件,可以实时监控Android手机上多个应用的CPU、内存数据曲线,并保存数据;另外还支持自动获取内存快照、PMAP文件分析等,方便开发人员自测或者测试人员完成性能测试,快速发现产品问题。

GitHub地址:

https://github.com/shawwinbin/APT

 

跨平台图形编译工具,用于快速生成前端 CSS 和 JS。

详情:https://www.oschina.net/p/openkoala

 

腾讯分布式数据仓库,用于帮助企业低成本构建大数据分析系统或数据仓库。

详情:https://code.csdn.net/Tencent/tdw/tree/master

 

静态代码扫描工具,针对 C/C++ 代码的静态代码扫描解决方案。

TscanCode旨在助力开发与测试人员从代码层面挖掘问题,将那些长期困扰项目的诸如空指针宕机等问题,扼杀于萌芽阶段。支持用户根据不同需求自定义配置检查项,有极强的扩展性和可维护性。平均扫描速度10W行/分钟。

详情:https://www.oschina.net/p/tscancode

 

一个 C++ 的高性能 JSON 解析器及生成器,同时支持 SAX/DOM 风格的 API。

GitHub地址:

https://github.com/TencentOpen/rapidjson

 

KNV 是一个模式自由的高性能树型协议处理引擎,是对 Key-Value 的一个通用结构化扩展。

 

WeTest助手是由WeTest(质量开放平台http://wetest.qq.com)自主研发的基于手机端的辅助测试工具,目前包括性能测试和远程调试两大功能, 能够为手游等项目发现CPU、内存、FPS等性能问题,并提供云端真机用于问题在线调试,共计为公司内外部项目服务5.4万次;

手游客户端性能测试常用性能维度,CPU,内存,FPS,流量一次性全部收集,图表化展示,数据可按场景化分类,并且支持离线和在线两种模式, 地铁上都可以做测试,Web上看报告。远程调试配合自研的云真机技术,支持多点触控、类手柄遥控,真实还原手游测试场景,极速流畅、极低延迟, 本地只需要一台手机即可操控云端任何一台手机。

支持ROOT和非ROOT安卓手机,支持越狱iOS系统。

GitHub地址:

https://github.com/Tencent/WeTest-Assistant

 

iOS 开发自动化测试工具,全面兼容 iOS 真机和模拟器,基于分布式技术,高效并发执行测试。QT4i需要和QTAF一起使用。

GitHub地址:

https://github.com/tencent/QT4i

 

基于 QTA 提供面向 Android 应用的 UI 测试自动化测试解决方案。

需要和QTAF一起使用。

详情:

https://www.oschina.net/p/QT4A

 

SWF 转 HTML5 Canvas 动画。Fanvas 可以把 SWF(包括矢量和位图)完美地转化为 Canvas 动画,让美术妹子一次制作,到处运行。

GitHub地址:

https://github.com/TencentOpen/Fanvas

 

HaboMalHunter是哈勃分析系统 (https://habo.qq.com) 的开源子项目,用于Linux平台下进行自动化分析、文件安全性检测的开源工具。使用该工具能够帮助安全分析人员简洁高效的获取恶意样本的静态和动态行为特征。分析报告中提供了进程、文件、网络和系统调用等关键信息。

GitHub地址:

https://github.com/Tencent/HaboMalHunter

 

QTAF 是一个跨平台的测试自动化工具,适用于后台、原生或混合型客户端应用的测试。

GitHub地址:

https://github.com/Tencent/QTAF

 

微信团队开源的项目,用于微信开发者进行微信登录、分享功能开发时的参考 Demo。

GitHub地址:

https://github.com/Tencent/WeDemo

 

GAutomator是一个针对Unity手游的UI自动化测试框架。设计理念与使用方式,类似于Android的UIAutomator。GAutomator以Unity中的GameObject为操作对象,通过操作GameObject实现UI自动化测试。基于GameObject的方式,不存在手机分辨率适配的问题,一份脚本能够运行在不同手机之上,基于GameObject的另外一个优点为鲁棒性较强,游戏的UI界面经常发生变化,GameObject变化频率相对较低。

GitHub地址:

https://github.com/tencent/GAutomator

 

毫秒服务引擎是腾讯的一个开源框架,适用于在廉价机器组成的集群上开发和运营分布式后台服务。

GitHub地址:

https://github.com/Tencent/MSEC

 

行为树(Behavior Tree)解决方案。该方案包括编辑器(Designer)和运行时库(Runtime)。

GitHub地址:

https://github.com/Tencent/behaviac

 

一款面向应用的 CMDB,在 ITIL 体系里,CMDB 是构建其它流程的基石,而在蓝鲸智云体系里,配置平台就扮演着基石的角色,为应用提供了各种运维场景的配置数据服务。

GitHub地址:

https://github.com/tencent/bk-cmdb

 

GT(随身调)是APP的随身调试平台,它是直接运行在手机上的“集成调试环境”(IDTE, Integrated Debug Environment)。

利用GT,仅凭一部手机,无需连接电脑,即可对APP进行快速的性能测试(CPU、内存、流量、电量、帧率/流畅度等等)、开发日志的查看、Crash日志查看、网络数据包的抓取、APP内部参数的调试、真机代码耗时统计等。

GitHub地址:

https://github.com/Tencent/GT

 

安卓/iOS 手机端调测组件,用于安卓平台的性能测试、竞品测试及仅凭一台手机进行 App 测试的场景。

GitHub地址:

https://github.com/weui/weui-wxss

 

WeUI 是由微信官方设计团队专为微信移动 Web 应用设计的 UI 库。weui.js是 WeUI 的轻量级 js 封装。

GitHub地址:

https://github.com/weui/weui.js/

 

Tencent Easy ACE Framework,基于ACE的高性能轻量级服务框架,单进程多线程模型,支持select/epoll等多种网络IO模型,同时支持tcp和udp协议,支持二进制(pb等)和文本格式(json等,易于理解),相对多进程模型的框架来说更易维护,更轻量。业务侧只需要开发自己的逻辑处理即可实现高性能的业务后台服务器。已经在腾讯互娱(IEG)大部分平台类产品中成熟应用,比如idip,游戏人生,心悦,帮帮,新终端游戏中心aj,cross等,公司其他BG也有很多产品在使用。

GitHub地址:

https://github.com/Tencent/Teaf

 

SQLCipher 提供了对 SQLite 数据库的传输层进行全面加密的工具,而通过使用 SQLCipher ,整个加密过程对客户端是透明的,无需改动应用程序。(该项目是腾讯 fork Zetetic 公司的开源项目)

GitHub地址:

https://github.com/Tencent/sqlcipher

 

基于名字服务使用 Tars 协议的高性能 RPC 开发框架,同时配套一体化的服务治理平台,帮助个人或者企业快速的以微服务的方式构建自己稳定可靠的分布式应用。

Tars是腾讯从2008年到今天一直在使用的后台逻辑层的统一应用框架TAF(Total Application Framework),目前支持C++和Java两种语言。该框架为用户提供了涉及到开发、运维、以及测试的一整套解决方案,帮助一个产品或者服务快速开发、部署、测试、上线。 它集可扩展协议编解码、高性能RPC通信框架、名字路由与发现、发布监控、日志统计、配置管理等于一体,通过它可以快速用微服务的方式构建自己的稳定可靠的分布式应用,并实现完整有效的服务治理。

目前该框架在腾讯内部,各大核心业务都在使用,颇受欢迎,基于该框架部署运行的服务节点规模达到上万个。

GitHub地址:

https://github.com/Tencent/Tars

 

一个高效、强大、跨平台(macOS & Win)的前端开发工作流工具,核心基于 tmt-workflow 工作流,代码开源可定制。

GitHub地址:

https://github.com/Tencent/WeFlow

 

基于该框架,可以让开发者只需专注于业务逻辑的实现,而不需要关注基础功能的开发,如网络通信,数据存储,集群管理等。

GitHub地址:

https://github.com/TencentOpen/Pebble

 

基于 Gulp(v4.0)、高效、跨平台(macOS & Win)、可定制的前端工作流程。

GitHub地址:

https://github.com/Tencent/tmt-workflow

 

一套同微信原生视觉体验一致的基础样式库,为微信 Web 开发量身设计,可以令用户的使用感知更加统一。包含button、cell、dialog、toast、article、icon等各式元素。

GitHub地址:

https://github.com/weui

 

腾讯开源的一个高效、完整、易用的移动数据库框架,基于 SQLCipher,支持 iOS、macOS 和 Android。

GitHub地址:

https://github.com/Tencent/wcdb

 

xLua 为 Unity3D 增加 Lua 脚本编程的能力,进而提供代码逻辑增量更新的可能。

GitHub地址:

https://github.com/Tencent/xLua

 

Libco是微信后台大规模使用的C/C++协程库,2013年至今稳定运行在微信后台的数万台机器上。Libco提供了完善的协程编程接口、常用的Socket族函数Hook等,使得业务可用同步编程模型快速迭代开发。

早期微信后台因为业务需求复杂多变、产品要求快速迭代等需求,大部分模块都采用了半同步半异步模型。接入层为异步模型,业务逻辑层则是同步的多进程或多线程模型,业务逻辑的并发能力只有几十到几百。随着微信业务的增长,系统规模变得越来越庞大,每个模块很容易受到后端服务/网络抖动的影响。基于这样的背景,微信开发了Libco,实现了对业务逻辑非侵入的异步化改造。

GitHub地址:

https://github.com/tencent/libco

 

PhxPaxos是微信后台团队自主研发的一套基于Paxos协议的多机状态拷贝类库。它以库函数的方式嵌入到开发者的代码当中,使得一些单机状态服务可以扩展到多机器,从而获得强一致性的多副本以及自动容灾的特性。PhxPaxos在微信服务里面经过一系列的工程验证和大量的恶劣环境下的测试,在一致性的保证上极为健壮。

PhxPaxos的特性包括使用基于消息传递机制的纯异步工程架构、每次写盘使用fsync严格保证正确性、支持Checkpoint以及对PaxosLog的自动清理、使用点对点流式协议进行快速学习、支持跨机器的Checkpoint自动拉取、内置Master选举功能、自适应的过载保护等。

GitHub地址:

https://github.com/tencent-wechat/phxpaxos

 

PhxSQL是一个兼容MySQL、服务高可用、数据强一致的关系型数据库集群。PhxSQL以单Master多Slave方式部署,在集群内超过一半机器存活的情况下、即可提供服务,并且自身实现自动Master切换、保证数据一致性。PhxSQL不依赖于ZooKeeper等任何第三方做存活检测及选主。PhxSQL基于MySQL的一个分支Percona 5.6开发,功能和实现与MySQL基本一致。

MySQL主备在主机上支持完整SQL、全局事务、以repeatable read和serializable级别的事务隔离,在金融、帐号等关键业务中有巨大的价值。但是MySQL传统主备方案也有其缺点。最明显的就是主机故障后的自动换主和新旧主数据一致性,即所谓的一致性和可用性。为了解决这个问题,并同时完全兼容MySQL,微信在MySQL的基础上应用Paxos,设计和开发了PhxSQL。

GitHub地址:

https://github.com/tencent-wechat/phxsql

 

PhxRPC是微信后台团队推出的一个简洁小巧的RPC框架,编译生成的库只有450K(编译只依赖第三方库Protobuf)。PhxRPC的特性如下:

使用Protobuf作为IDL用于描述RPC接口以及通信数据结构。

基于Protobuf文件自动生成Client以及Server接口,用于Client的构建,以及Server的实现。

半同步半异步模式,采用独立多IO线程,通过Epoll管理请求的接入以及读写,工作线程采用固定线程池。IO线程与工作线程通过内存队列进行交互。

提供完善的过载保护,无需配置阈值,支持动态自适应拒绝请求。

提供简易的Client/Server配置读入方式。

基于lambda函数实现并发访问Server,可以非常方便地实现Google提出的 Backup Requests 模式。

GitHub地址:

https://github.com/tencent-wechat/phxrpc

 

Mars是微信官方的终端基础组件,是一个结合移动应用所设计的基于Socket层的解决方案,在网络调优方面有更好的可控性,采用C++开发。目前已接入微信 Android、iOS、Mac、Windows、WP 等客户端。

在微信中,任何网络实现的bug都可能导致重大事故。例如微信的容灾实现,如果因为版本的实现差异,导致某些版本上无法进行容灾恢复,将会严重的影响用户体验。微信研发了统一的跨平台的网络基础库Mars来满足发展的需要,一方面,基础组件可以提高研发效率,另外一方面,也可以提高系统的稳健性。

在设计上,Mars以跨平台、跨业务为前提,遵从高可用,高性能,负载均衡的设计原则。以网络的可用性为例,移动互联网有着丢包率高、带宽受限、延迟波动、第三方影响等特点,使得网络的可用性,尤其是弱网络下的可用性变得尤为关键。Mars 的STN组件作为基于 socket 层的网络解决方案,在很多细节设计上会充分考虑弱网络下的可用性。

GitHub地址:

https://github.com/Tencent/mars

 

Tinker是微信官方的Android热补丁解决方案,它支持动态下发代码、So库以及资源,让应用能够在不需要重新安装的情况下实现更新。

当前市面的热补丁方案有很多,其中比较出名的有阿里的AndFix、美团的Robust以及QZone的超级补丁方案,但它们都存在无法解决的问题,所以微信研发了自己的解决方案。总的来说,AndFix作为native解决方案,首先面临的是稳定性与兼容性问题,更重要的是它无法实现类替换,它是需要大量额外的开发成本的。而Robust兼容性与成功率较高,但是它与AndFix一样,无法新增变量与类只能用做的bugFix方案。Qzone方案可以做到发布产品功能,但是它主要问题是插桩带来Dalvik的性能问题,以及为了解决Art下内存地址问题而导致补丁包急速增大的。

Tinker的具体设计目标如下:

开发透明:开发者无需关心是否在补丁版本,他可以随意修改,不由框架限制。

性能无影响:补丁框架不能对应用带来性能损耗。

完整支持:支持代码,So 库以及资源的修复,可以发布功能。

补丁大小较小: 补丁大小应该尽量的小,提高升级率。

稳定,兼容性好:保证微信的数亿用户的使用,尽量减少反射。

GitHub地址:

https://github.com/Tencent/tinker

 

 

DBProxy是由美团点评公司技术工程部DBA团队(北京)开发维护的一个基于MySQL协议的数据中间层。它在奇虎360公司开源的Atlas基础上,修改了部分bug,并且添加了很多特性。

通过数据库中间件,可以对数据库进行水平扩展,由原来单台数据库扩展到多台数据库,数据库中间件通过路由规则将数据的访问请求路由到其中一台数据库上,从而大大降低了数据访问的瓶颈和单台数据库的压力。通过数据库中间件还可以将DBA和研发进行解耦,提升DBA运维效率。

Github地址:

https://github.com/Meituan-Dianping/DBProxy

 

SQLAdvisor 是由美团点评公司北京DBA团队开发维护的 SQL 优化工具:输入SQL,输出索引优化建议。 它基于 MySQL 原生词法解析,再结合 SQL 中的 where 条件以及字段选择度、聚合条件、多表 Join 关系等最终输出最优的索引优化建议。目前 SQLAdvisor 在公司内部大量使用,较为成熟、稳定。

GitHub地址:https://github.com/Meituan-Dianping/SQLAdvisor 

 

Spark SQL on HBase package 项目又名 Astro,端到端整合了 Spark,Spark SQL和HBase的能力,有助于推动帮助Spark进入NoSQL的广泛客户群,并提供强大的在线查询和分析以及在垂直企业大规模数据处理能力。

Apache HBase 是数据在 HDFS 上的 Key-Value 存储。它用来给 Google 的 Big Table 建模,并提供了 API 用于查询数据。这些数据通过它的“row keys”来组织、区分和发布。在每个分区上,数据被指定的“列”数据集合“列族”物理分区。这些数据模型是宽且零散的,在这些表中列是动态的,零散的。

详情:https://www.oschina.net/p/huawei-astro

 

Huawei LiteOS 是华为面向IoT领域,构建的"统一物联网操作系统和中间件软件平台",以轻量级(内核小于10k)、低功耗(1节5号电池最多可以工作5年),快速启动,互联互通,安全等关键能力,为开发者提供 "一站式" 完整软件平台,有效降低开发门槛、缩短开发周期。 

Huawei LiteOS 目前主要应用于智能家居、穿戴式、车联网、智能抄表、工业互联网等 IoT 领域的智能硬件上。

详情:https://www.oschina.net/p/liteos

GitHub地址:

https://github.com/Huawei/Huawei_LiteOS_Kernel

 

CarbonData 是一个为了更快的交互查询而生的新的Hadoop原生文件格式,用于大数据的快速分析和多维度查询hadoop本地数据存储设计。

在客户基准上,CarbonData已经展示出管理运行在非常低成本的硬件上的PB级别的数据,并且比目前的开源解决方案快了近10倍。

详情:https://www.oschina.net/p/carbondata

 

ServiceComb 是华为开源的一套包含代码框架生成,服务注册发现,负载均衡,服务可靠性(容错熔断,限流降级,调用链追踪)等功能的微服务框架。

ServiceComb 是华为 FusionCloud 解决方案中 PaaS 平台的重要组成部分,内置了高可靠性运行、动态治理等运维阶段的高级能力。ServiceComb 目前已应用于华为自身 IT 的多个核心业务,帮助华为极大地提升了云原生应用的开发效率。

ServiceComb 包括应用框架代码生成,服务注册发现、服务配置管理、服务监控、服务调用追踪、多通信协议支持等功能,具有服务化契约增强、响应式编程范式及多语言 SDK 支持等优势特性。ServiceComb 基于开放的架构,不仅可以支持开发者根据自身业务需求定制业务插件,而且还兼容多种业界流行的微服务框架。

详情:https://www.oschina.net/p/servicecomb

 

hindex 是华为公司开发的纯 Java 编写的 HBase 二级索引,兼容 Apache HBase 0.94.8。

当前的特性如下:

多个表索引

多个列索引

基于部分列值的索引

使用索引扫描等于和范围条件

批量加载数据来索引表(索引完成批量加载)

详情:https://www.oschina.net/p/hindex

GitHub地址:

https://github.com/Huawei-Hadoop/hindex

 

oct 是用于开放容器的测试用例和框架,用 Go 语言开发。

ocp-testing 项目的目标是,通过提供全局测试框架给所有的容器项目,来提高开放容器项目。测试包括,ocp 规范,容器功能和容器性能。

详情:https://www.oschina.net/p/oct

GitHub地址:

https://github.com/huawei-openlab/oct

 

streamDM,是由华为诺亚方舟实验室开源的使用 Spark Streaming 挖掘大数据的开源软件。

大数据流学习(Big Data stream learning)比批量或离线学习更富有挑战性,因为数据在流动的过程中不太可能保持同一种分布。而且,数据流中的每一个样本只能被处理一次,否则它们就需要占用内存进行总结,同时该学习算法也必须非常高效。

Spark Streaming是核心Spark API 的一个扩展,它能让多个源的数据流处理成为可能。Spark 是一个可扩展可编程的框架,用于大规模分布式数据集(也称为弹性分布式数据集(RDD))处理。Spark Streaming 接收输入的数据流后将数据分批,再由 Spark 引擎处理,生成结果。

Spark Streaming 数据被编成一个 DStreams 序列,内在地表示成一个 RDD 序列。

详情:https://www.oschina.net/p/stream-dm

GitHub地址:

https://github.com/huawei-noah/streamDM/

 

StreamCQL作为华为FusionInsight产品的重要组件,提供了在分布式流处理平台上的类SQL查询能力,包括窗口计算等高级特性,在开源之前已经在电信、金融等多个行业成功应用,简化开发工作量数倍。      

StreamCQL是一个类SQL的声明式语言,它用于在流(streams)和可更新关系(updatable relation)上的可持续查询,目的是在流处理平台分布式计算能力之上,通过使用简易通用的类SQL语言,使得业务逻辑的开发变得统一和简易。在架构上,除了支持主流的流处理平台Storm,它支持扩展到多种流处理引擎之上,如Flink。在功能上,StreamCQL弥补了传统流处理平台上一些基本业务功能的缺失,除了过滤、转换等基本SQL能力之外, 还引入基于内存窗口的计算、统计、关联等能力,以及流数据的拆分、合并等功能。后期StreamCQL的发展方向包括:模式匹配、CQLServer(CQL远程提交,多语言接口,JDBC接口)、可靠性增强等。

详情:https://www.oschina.net/p/streamcql

GitHub地址:

https://github.com/HuaweiBigData/StreamCQL

 

96Boards 是 ARM 开放平台规范,是第一个定义 Cortex-A 开发板的开放规范,Cortex-A 是 ARM SoC 供应商提供的低耗能,小脚本 32 位和 64 位开发板。标准化扩展 Peripheral I/O 总线,显示和相机,允许硬件生态系统开发一系列兼容组件的产品,在其生命周期可以在任意兼容 96Boards 的平台上使用。

详情:https://www.oschina.net/p/96boards

 

越来越多的公司正走向开源,编程语言、操作系统、框架、平台、数据库等方方面面开源软件也越来越多,这些开源项目为我们的工作带来很多方便,可以直接“拿来”解决技术问题,不用重复造轮子,提高效率的同时也极大地降低了研发成本。

除了软件可以开源之外,研发实践也可以开源共享,

 

更多TOP100案例信息及日程请前往[官网]查阅。4天时间集中分享2017年最值得学习的100个研发案例实践。本平台共送出10张开幕式单天免费体验票,登录TOP100summit官网即可申请,数量有限,先到先得。

标签: 智能压力变送器apt

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台