启动Dremio从隐形 启动基于内存的BI查询引擎
2017年大数据将如何改变你的生活
当开源ApacheArrow项目在去年年初启动时,我对它非常感兴趣。该项目的积极贡献者来自其他13个开源项目,如Cassandra、Impala、Pandas、Spark和Hadoop本身。所有这些项目都有机会将数据放在面向列的内存中,而且它们都有自己的方法。箭头项目只是为了创建一个标准,其他项目可以共享,这样他们也可以在它们之间共享数据,而不需要它的内存中表示。
除了像Hortonworks、Cisco和Linked In这样的许多公司为这个项目提供人员外,一家名为Dremio的新创业公司是其背后的主要力量。虽然该公司一直隐身到今天,但它对Arrow的支持和支持是明确的。德雷米奥的两位创始人,Tomer Shiran(德雷米奥的首席执行官)和Jaques Nadou(德雷米奥的CTO和Arrow项目委员会),都来自MapR(Shiran是产品副总裁),而且很重要的是,也来自Apache Drill项目。
另读:SQL和Hadoop:很复杂
作为一个单一的引擎进行演练,然后从其他几个系统中查询和连接数据。演练当然可以使用内存中的柱状数据标准。但是当德雷米奥仍然处于隐身状态时,并不能立即看出Drill和Arrow之间的强烈交集。这让人很难猜出德雷米奥在做什么。
随着Dremio今天从隐身中脱颖而出,这个关联更加清晰,因为今天该公司正在推出一个同名产品,它也充当一个SQL引擎,可以从其他几个系统中查询和连接数据,并且它使用Arrow加速了这些查询。
让我们回过头来看看与Drill的比较,并且理解Dremio本身。这一切都源于德雷米奥的信条,即BI今天涉及太多层。源系统通过ETL过程输入数据仓库,然后输入OLAP立方体。BI工具本身可以添加另一层,构建自己的内存模型,以加速查询性能。德雷米奥认为这是一个巨大的混乱。
通过在BI工具和他们正在查询的源系统之间提供一个直接的桥梁,Dremio进行了中介。对Dremio的BI工具就像它是一个主要的数据源,并通过SQL查询它。然后,dremio通过其发布的向下推查询将查询工作委托给真正的后端系统。德拉米奥可以连接到关系数据库(包括开源数据库)、NoS QL存储、Hadoop、云Blob存储和Elastic Search等。
数据来源
上周,Shiran和Nadeau告诉我,Dremio没有在BI工具和物理后端数据库之间实现自己的数据存储,但它对后端数据进行查询-即使它是真正的大数据-也像BI工具在其本地模型中可能具有的对“小数据”的查询一样。它使用一个通用的关系,它使用优化器和缓存片段。
它是如何工作的:所有从后端数据源提取的数据,比如Shiran和Nadeau,都是用Arrow表示在内存中的。德雷米奥的创始人告诉我,结合矢量化(CPU内处理)查询,这可以使性能比传统系统提高5倍。
但是,也许更重要的优化是Dremio使用它所称的“”,这些实体化的数据结构优化了Dremio的行和聚合操作。反射被排序、分区和索引,存储为磁盘上的Parquet文件,并在内存中作为Arrow格式化的柱状数据处理。它们可以由Dremio自动构建,基于它观察到的查询使用模式;它们也可以由具有管理权限的人直接创建。
Dremio可能本身不能构建OLAP多维数据集,但是反射听起来类似于关系OLAP(ROLAP)系统(包括AtScale等)构建的聚合表,这些表也不能实现多维数据集。尽管如此,Dremio作为一个代理人,将BI工具,如Tableau、Qlik和微软的PowerBI,与各种后端数据库进行接口,并自行处理所有查询任务。
Dremio数据谱系UI
因为Dremio扮演着这个查询经纪人的角色,它也可以血统信息来帮助分析师理解从后端系统到前端分析的全部数据。(部分血统体验见上图截图)更一般地说,希兰和纳多告诉我,德雷米奥也处理数据摄取和固化。
德雷米奥在一个开放源码社区版以及商业企业版。社区版不受规模限制;相反,企业版提供了更大的安全、治理和数据能力。当然,它还包括支持。
企业订阅是根据部署到的节点数来定价的。德雷米奥可以在云或现场运行,它可以在Hadoop集群上运行,作为YARN应用程序,但不必这样做。此外,对Mesos和Kubernetes的支持也在路线图上。
除了纳多和希兰的MapR谱系外,德雷米奥领导层的其他成员来自MongoDB、MarkLogic、IBM和中间层。有了一个来自Hadoop、NoS QL和Enterprise计算世界的团队,来自开源和商业软件世界,Dremio的团队显然是尊重数据存储库技术的多样性,同时也突破了这些多样化技术所创造的筒仓。
虽然德莱米奥的这一点是新颖的,并可能打破一个迄今为止还没有得到很好解决的性能障碍,但该公司仍然进入了一个非常拥挤的空间。该产品将需要在一个相当即插即用的基础上工作,并履行其性能承诺,更不用说建立一个真正的社区和生态系统。这些领域的Apache Drill只是有限的。德雷米奥必须有一个更大的锤子,而不仅仅是箭。