博客
如何在EsgynDB中使用机器学习库
机器学习(ML)库正变得越来越流行,现在有各种各样的这类库 - 维基百科中提及了49个。 这些机器学习库需要庞大的数据,通常此类数据是存储在关系型数据库中的业务数据,比如存放在EsgynDB或以其他形式存储在Hadoop数据湖中。 简单的集成 - JDBC和HDFS 有多种方法连接机器学习库和EsgynDB。 其中一种方法是使用JDBC,这是大多数软件包支持的方法。 用户在他们选择的系统上运行机器学习代码并通过JDBC读取数据。 如果要传输大量数据,可以通过多个并行连接读取。 某些系统可以通过将SQL查询拆分为多个实例来解决此问题。 例如,Spark jdbcRDD允许查询的参数化,再结合salted EsgynDB表能更高效的工作: Apache Spark将使用non-overlapping值范围启动此查询的多个实例。 相反地从机器学习库到EsgynDB的结果集数据,通常可将数据 [阅读更多]
使用UPSERT语句,将Apache™Kafka数据导入Trafodion表
Apache™Kafka简介 Kafka是一个流处理服务平台。其中,生产者(Producers)向主题(Topic)中发布消息,消费者(Consumers)读取并处理发布到主题中的消息。Kafka的主题是已发布消息的日志副本集合,这些日志都具有时间戳。可以对主题进行分区,以增加存储容量并提高并行度。 如图1所示,向同一个主题发布消息的不同生产者进程可以: a) 将消息写入特定的分区(蓝色箭头);或 b) 允许Kafka在可用的分区间均衡地分发/加载消息(橙色箭头)。 此外,Kafka的各个副本作为一个已发布的消息,仅出现在一个分区中。 从消费者的角度看,消费者可以属于一个消费者组(consumer group),也可以不属于任何消费者组。如果不属于任何消费者组,则所有订阅了主题的消费者都能够读取发布在主题中的某一条消息(如图1中的黑色箭头c所示)。 如果属于消费者组,则该组中的各消费者将 [阅读更多]
EsgynDB支持与ORC的紧密集成
Apache Hadoop™生态系统的优势之一就是能够整合不同的技术,解决各种大数据问题。要实现良好的整合,就要注意易用性以及数据交换的速度和效率。 EsgynDB™是Esgyn公司的web-scale企业级SQL-on- Apache Hadoop™解决方案,现已支持与Apache ORC™文件的紧密集成。在本文中,我将介绍结合EsgynDB和ORC文件所带来的好处,然后探讨该集成解决的两个重要用例。 EsgynDB™是基于Apache TrafodionTM(正在孵化)的高可扩展SQL引擎。Apache TrafodionTM是高可扩展的企业级数据库引擎,HP在2014年将其开源。Apache TrafodionTM承载了联机事务处理和数据仓库20多年的研发成果,具有非常成熟的查询优化和运行时技术。 所有的数据库引擎都依赖于存储表的存储引擎层。自2015年诞生以来,EsgynDB就使 [阅读更多]
针对MPP数据库数据倾斜问题的技术——Skew Buster
Skew Buster是一种针对MPP数据库运行时数据倾斜引起的性能问题的技术,可以保证在复杂查询的任意阶段,中间数据都可以平均分布,充分利用MPP系统的多节点的并发处理能力。 Skew Buster简介 当今随着信息技术,人工智能,和网络技术的不断发展,企业在生产经营过程中产生的历史数据非常容易就达到上百T,甚至P级别,因此依赖单机的scale up能力已经无法满足。MPP数据库能够线性地横向扩展,因而可以随着数据量的增加而不断扩容(scale out),相对于单机,SMP或者Share Disk方案,MPP是最适用于大数据时代的数据仓库解决构架。大多数的数据库软件厂商都提供基于MPP构架的数据仓库产品,用于为用户建立企业级数据仓库EDW(Enterprise Data Warehouse)。但在实践中, MPP构架的share nothing设计也存在一些其构架自身所带来的独特挑战。 [阅读更多]
简述Trafodion DCS工作流程及原理
DCS是Data Connectivity Service即数据连接服务的简称,是Trafodion非常重要的组成部分,它接收连接请求,并合理分配连接请求,借助Zookeeper完成HA的功能。 简介 最近越来越多的人在Trafodion社区问到关于DCS的一些问题,我在这里给大家统一介绍一下这个Trafodion的重要组成部分。DCS是Data Connectivity Service即数据连接服务的简称。Trafodion数据连接服务层提供了数据连接的分配和管理,主要涉及DCSMaster、DCSServer、 MXOSRVR、以及Zookeeper四大部分。本文将从对这几个组件的基本工作流程原理进行简单介绍。 如下图所示,数据连接服务层是连接数据库驱动和SQ引擎层的桥梁,是数据库引擎对外提供服务的唯一方式。从图中我们看到数据连接服务层支持了三种驱动的连接,JDBC、ODBC、及AD [阅读更多]
EsgynDB是唯一运行整个TPC-DS基准测试的SQL-on-Hadoop解决方案
评估数据库BI/分析工作负载的最佳基准是TPC-DS。EsgynDB已与Apache ORC深度集成并优化了性能,虽然处理TPC-DS型工作负载的结果还有待提高,但目前的结果还是较为可观。 在处理运营型工作负载领域,目前EsgynDB还未棋逢对手。在进行TPC-DC测试时,EsgynDB使用Hive(利用Tez引擎)与ORC进行性能对比。 TPC-DS基准测试的数据量是10TB。EsgynDB能够执行全部的99个TPC-DS查询,而Hive只能执行65个查询。 b EsgynDB的速度是Hive的5倍。EsgynDB完成99个查询的时间甚至短于Hive完成65个查询的时间。 值得注意的是,这些测试是在8节点和12节点的系统上运行的。如果后者性能是前者性能的1.5倍,那么EsgynDB能达到线性扩展的要求。EsgynDB的结果是1.4倍,已非常接近线性扩展的要求。这表明随着集 [阅读更多]
Apache Zeppelin在Apache Trafodion上的可视化——已更新
介绍 Apache Trafodion(正在孵化)和EsgynDB(Esgyn的商业版)支持数据可视化工具(例如,Apache Zeppelin和Tableau),具有标准JDBC/ODBC连接。本文重点介绍如何实现Apache Zeppelin在Trafodion上的可视化。 Apache Zeppelin基于web,数据专家可以通过该工具进行大规模数据挖掘和可视化的协作。大规模数据分析的工作流包括多个步骤,例如数据获取、预处理、可视化……。通过Zeppelin,用户可以在不同的执行块/段中创建这些步骤。这一套步骤/工作流称为Notebook。各段由解释器进行处理。Zeppelin具有几个默认的解释器。我们可以使用shell解释器、PostgreSQL解释器或JDBC解释器实现Trafodion或EsgynDB与Zepplin的集成。 架构 Zeppelin UI(客户端)连接到Zep [阅读更多]
不断成熟的Hadoop生态系统依然存在不足之处
不断成熟的Hadoop生态系统依然存在不足之处 最近,随着Hortonworks宣布推出由Apache HAWQ支持的Hortonworks HDB,Hortonworks和Hadoop周围的生态系统也不断发展。Hadoop已有10年的历史,虽然其相关性常常遭受质疑,但依然是很多全球性企业Big Data项目的关键基础。 随着基础技术的不断发展,自主创新起着至关重要的作用,客户和开发人员不得不自行解决各种问题。但这样的尝试需要进行昂贵的实验,可能会使客户受挫。Hortonworks提供受支持的互补开源软件,帮助客户和开发人员。但是客户在决定使用这些产品之前,必须先考虑一些关键的问题:不管使用何种技术,都要大量投资于培训、技能获取、围绕技术构建工具基础设施,以及设计、调优和运营工作。这些投资不仅限于初步的部署阶段,在未来跨项目、跨工作负载的部署中也要进行此类投资。只有这样,技术才能产生回报。 [阅读更多]
选择合适的SQL引擎替代MapReduce作业
众望所归的新趋势 目前的趋势是摆脱MapReduce,降低构建和维护MapReduce作业的复杂度并提高性能,同时利用现有的IT资源。至于如何摆脱MapReduce、如何替代MapReduce作业、使用怎样的工作负载,这些问题都是战略性的决策。同时,要考虑Hadoop可以发挥怎样的战略性作用,使企业通过数据获得利润。 由于要访问存储在HDFS的数据,就要使用MapReduce中的键,因此MapReduce是Big Data项目至关重要的组件。这意味着,只有数据专家和编写MapReduce作业的数据工程师才有权访问数据。同时,由于不断在摄取新的数据,因此需要一直修改MapReduce作业。这是一项较大的维护费用。 MapReduce阻碍了Hadoop数据以及使用数据的用户和应用程序,从而影响了Hadoop的ROI。 观看网络研讨会 选择MapReduce的替代方案不只是技术决策 使用Big [阅读更多]
使用Docker容器安装Apache Trafodion
使用Docker容器安装Apache Trafodion 我们很高兴地推出Apache Trafodion 2.0(正在孵化)Docker。现在,全球的开发人员都可以快捷地在Linux上安装单节点的Apache Trafodion。 通过Apache Trafodion和EsgynDB(Esgyn的商业版),您可以使用SQL-on-Hadoop,减少或消除MapReduce对数据的访问和处理。与其他的SQL引擎相比,Apache Trafodion的成熟性较高,可以运行运营型、分析型、事务型混合工作负载。您无需进行数据的迁移或复制,就可从Hadoop获取更多价值。您可以提供各种用例,包括企业数据湖、运营型数据存储、卸载RDBMS、卸载ETL、企业文档管理。 我们很高兴发布了Apache Trafodion Docker镜像,满足了Apache Trafodion社区的需求。 下载Apach [阅读更多]
管理日志、IoT和事件数据的设计模式
管理日志、IoT和事件数据的设计模式 Trafodion在IoT(物联网)空间、电信和网络安全中的一个常见应用场景是用一个非常大的单表,记录实时事件。用户希望快速摄取新数据,查询数据,并清理过时的数据。 对于这种情况,我们一般建议客户使用一种设计模式。该模式包含三个要素:Salting、分块和Stripe合并。 Salting 第一个要素是salting,在集群中平均分布数据。通过salting 不仅平均分布全部数据,而且在集群中的所有节点均匀分布热(最新)数据。Salting基于哈希散列,运用哈希散列函数计算每一行的 region 号。一般情况下,这是基于运营型查询中使用的一列或多列,比如客户id或设备id。 Trafodion自动管理salt。计算哈希散列函数,并自动对Salt列执行条件判断。SQL的Insert、Select和Delete语句不需要任何特殊的操作。 数据均匀分布之后, [阅读更多]
EsgynDB Manager
EsgynDB Manager 简介 EsgynDB Manager 是一款适用于EsgynDB的基于Web的企业管理工具,它允许数据库管理员: 监控Esgyn节点和Esgyn服务的运行状态。 监控集群或节点的关键系统、HBase和EsgynDB的各项运行时指标。 监控并管理(取消)EsgynDB查询。 查看详细的编译时和运行时查询统计信息,包括可视和文本解释计划。 生成系统资源使用情况的电子邮件或HTTP警报。 查看数据库对象及其属性(包括权限和对象关系)。 监控活跃的EsgynDB会话和用户。 通过查询工作台(Query Workbench)执行临时查询,生成解释计划,以便调整查询。 EsgynDB Manager体系架构 EsgynDB Manager部署在EsgynDB集群的主节点或管理节点上。 DB Manager作为嵌入式jetty webserver。无需安装额外的包。 [阅读更多]
其他RDBMS到Trafodion的数据迁移
本文介绍了如何将数据从现有的RDBMS迁移到Trafodion数据库。从其它的RDBMS或外部数据源向Trafodion集群中导入大量的重要数据,可以通过下面两步完美实现: 在Trafodion集群中,将数据从源头导入Hive表。使用下列方法之一: 在Trafodion系统中,使用一个类似Apache SqoopTM的工具,将数据从远程的RDBMS(例如,MySQL或Oracle)迁移到Hive表。更多信息,请参阅使用Sqoop将数据导入Hive。 在Trafodion集群中,将需要导入Trafodion的数据复制到HDFS。使用Hive外部表,使这些数据能从Hive中看到。更多信息,请参阅创建Hive外部表。 使用Trafodion的LOAD语句,将数据从Hive导入Trafodion表。更多信息,请参阅使用Bulk Load将数据加载到Trafodion表。 使用Sqoop将数据导入H [阅读更多]
跨集群事务管理器
提供真正的Hadoop分布式跨集群事务管理器 目前,Hadoop广泛应用于BI和分析工作负载。HBase在Hadoop上提供低延迟的NoSQL Big Table解决方案,托管运营型工作负载。但是,HBase内建的原子操作不适用于具有复合操作的工作负载。随着事务型SQL-on-HBase解决方案的出现,Hadoop生态系统使企业能够在Hadoop上全面运行各种事务型工作负载。这种转变将带来以下好处: 在软件和专有硬件方面,降低成本。 为需要处理动态变化的应用程序提供schema灵活性。 增强Hadoop的弹性扩展,满足Big Data的高容量和速度。 集成Hadoop平台上的半结构化和非结构化数据,获得更多的业务价值。 对于从运营型系统迁移到Hadoop用于分析的数据,消除数据的延迟、重复和同步。 将工作负载转移到可扩展的架构,减少对重要的运营型系统(托管运营型、历史、外部Big Dat [阅读更多]
Trafodion + Kafka = Trafka
Apache Kafka的Apache Trafodion消费者 本文介绍了如何实现Apache Trafodion与Apache Kafka的无缝结合。我们展示了Trafodion如何轻松地获取数据,如何结合不同的开源组件,从而使用 Apache Kafka、 Trafodion、 HBase 和Hadoop创建近实时的流式处理工作流。 如何实现各组件的结合? 什么是Kafka?Kafka是一个分布式、分区、多复本的日志提交服务。Kafka维护按类区分的消息,称为主题(topic)。生产者(producer)向Kafka的主题发布消息。消费者(consumer)订阅主题,接收发布到这些主题的消息。一个主题就是一个类别或者一个可订阅的条目名称。对每个主题来说,Kafka维护的是一个分区日志(partitioned log)。客户端控制将消息发布到哪个分区。 Kafka集群包含一个或多个服务 [阅读更多]
Apache Trafodion 1.3 发布
Apache Trafodion(正在孵化)宣布完成了Apache孵化器项目的第一个版本。Trafodion 1.3 修复了多种bug,增加了新功能、改进了Apache Trafodion页面。点击此处或查看版本说明。 这3个月内,有很多新的贡献者和代码提交者参与了Trafodion项目。该项目的社区正在日益壮大,致力于构建开源的、分布式、全量ACID的Hadoop生态系统数据库。Trafodion欢迎更多贡献者的加入。关于详细信息,请参阅http://trafodion.incubator.apache.org。 祝贺Apache Trafodion的项目团队实现了本次的重大成果! [阅读更多]
Hibernate的Trafodion方言
对象-关系映射(ORM)提供了一个框架,应用程序可以使用一个对象范例,查询并操作数据库中的数据。该框架以多种语言实现,封装了数据操作所需的代码。这样,您无需了解SQL,即可使用一个对象访问数据,该对象隐藏了每个数据库查询语言的变化。 假设有以下的Employees表: Id Name Address Department Salary 1 John Milpitas, CA Engineer $ 100,000 2 Tom Cupertino, CA Support $ 80,000 3 James Sunnyvale, CA Pubs $ 70,000 4 Mike San Jose, CA Marketing $ 95,000 5 Maya Fremont, CA Sales Rep $ 80,000 以下示例在Employees表中检索可获得的ID、Name和Salary列: S [阅读更多]
双活的运营型SQL-on-Hadoop工作负载
周二,Esgyn发布了EsgynDB企业版2.0,新增了多种功能的支持。本文介绍了跨数据中心的全面双活事务支持。对于跨多行、表和/或服务器的事务,Hadoop生态系统支持在异地、各集群或表中复制关键的运营型业务数据。该功能支持异地的高可用集群,因此对关键数据是非常重要的。如果由于自然灾害、同城状况、人为错误导致集群offline,则可以立即启用另一个peer集群,并实现零事务丢失。 通过双活配置,集群不会在无灾难时闲置,而是和其他的EsgynDB集群一样处理运营型工作负载。也就是说,不存在“热备”的概念,节省了无谓的空间、时间、电力和人力,用户可用同时从两个数据中心获取价值。EsgynDB企业版2.0的跨数据中心双活扩展了读/写工作负载,提供了灾难恢复零事务丢失机制。 EsgynDB企业版2.0支持以下两种跨数据中心的配置: 单Master (图 1): 应用程序只在一个集群上进行更新 [阅读更多]
如何造就一流的数据库?
相比于其他的SQL-on-Hadoop解决方案,Trafodion具有怎样的优势?“在Hadoop上运行运营型工作负载”一文中,我指出了Trafodion专注于运营型工作负载(OLTP、ODS)。本文介绍了Trafodion和其他SQL-on-Hadoop解决方案在技术上的差异。 本文中,我探讨了造就一流数据库的四个关键要素,介绍了Trafodion是如何实现这些要素的。您可以将Trafodion与其他数据库做一个对比。 时间、金钱、人才 Oracle、SQL Server、DB2、Teradata等各种优秀的RDBMS付出了数十年的努力、投入了数百万美元、拥有众多数据库的人才,致力于构建数据库引擎。而Trafodion的鼻祖是Tandem的NonStop SQL/MX,并直接继承了NonStop SQL/MX的分支Neoview(超过3亿美元的投资以及超过20年的研发投入)。 我们的数 [阅读更多]
在Hadoop上运行运营型工作负载
相比于Oracle、IBM DB2、Microsoft SQL Server、Informix、MySQL、PostgreSQL、Teradata等关系型数据库以及Impala、Tez、Hive、Drill、Presto等SQL-on-Hadoop解决方案,Apache TrafodionTM(正在孵化)具有怎样的优势? Apache Trafodion是一流的数据库,与上述的关系型数据库并驾齐驱。每个数据库的功能和性能都不相同。如果您要从一个数据库技术转移到另一个数据库技术,会遇到很多挑战(除非您只使用ANSI SQL功能)。但是,如果您在Trafodion上开发新的应用程序,就会发现Trafodion支持数据库通常需要的所有功能。 而与其他的SQL-on-Hadoop技术相比,Trafodion具有更强大的数据库引擎,支持更多功能。只是Trafodion在目前优化的工作负载类型方面有所 [阅读更多]
我们的渊源
Esgyn公司是高科技行业的新星,我们的使命是创建并培育Apache® Hadoop生态系统中的企业级事务型和运营型SQL。但是有很多公司都在解决SQL-on-Hadoop的问题,我们的优势是什么?本文中,我就这个话题展开了讨论。 Esgyn和普通的初创公司有所不同,我们已经创建了一个产品并将其开源(正在孵化的Apache Trafodion数据库管理系统)。另外,我们已经拥有一支具有凝聚力的30人团队,有些员工在关系型数据库领域已共事27年。 我们在数据库领域的渊源可以追溯到天腾电脑公司(Tandem Computer)的天腾数据库团队(Tandem Database Group)。这个团队的成员包括Jim Gray、Don Slutz、Franco Putzolu等杰出的数据库先驱,他们共同开发了行业内第一个高性能、线性扩展、可容错的SQL引擎——NonStop™ SQL。Esgyn经 [阅读更多]