分布式数据库技术

星环分布式数据库
星环分布式数据库(Transwarp ArgoDB)是星环科技自主研发的分布式数据库,可以替代Hadoop+MPP混合架构。支持标准SQL语法,提供实时数据处理、存算解耦、混合负载、数据联邦、异构服务器混合部署等领先技术能力。通过一个ArgoDB数据库,就可以满足数据仓库、实时数据仓库、数据集市、OLAP、AETP、联邦计算等各种需求。降低平台复杂性和IT总拥有成本的同时,提升业务响应速度。

分布式数据库技术 更多内容

分布式数据库相对于集中式数据库仍处于发展阶段,具有以下优点:可存储数据模型类别多,易于拓展、叠加存储介质;可处理高并发任务,计算速度快;本质上是提高了数据备份的安全。从发展来看,数据库技术的演变历史为从集中式到分布式,从关系型到非关系型。星环科技作为大数据企业,分布式数据库产品技术领先。在分布式领域,公司专利众多且技术领先。截至2022年6月30日,公司已获授权境内专利77项(其中发明专利74项)及境外专利8项。公司基于分布式架构的大数据基础平台、分析型数据库产品已达到业界先进水平,相关产品已通过国际知名组织TPC的TPC-DS基准测试并通过了官方审计,公司也是该基准测试自2006年标准发布平台厂商,是Gartner发布该魔力象限以来首个进入该魔力象限的中国公司。2022年6月,公司多个产品或子产品入选Gartner发布的《中国数据库管理系统供应商识别指南》,在识别的8类数据库管理系统产品中,公司入选产品覆盖其中7类,是覆盖超过7类或以上产品的四家厂商之一,以及覆盖多模数据库的厂商之一。
分布式系统和分布式数据库都是现代信息技术中的重要概念,它们在架构、目标和实现方式上有一些相似之处,但也存在显著的区别。以下是对它们的详细对比:分布式系统定义:分布式系统是由多个独立的计算机节点组成的等。分布式数据库定义:分布式数据库是一种将数据数据库操作分散到多个节点上的数据库管理系统。这些节点可以位于不同的地理位置或不同的硬件设备上,通过网络连接在一起,共同提供数据的存储、查询和更新服务能够保持一致性和完整性。应用场景:适用于需要处理大规模数据、高并发访问和跨地域分布式部署的场景,如大型互联网应用、金融服务、物联网应用等。联系与区别联系:分布式数据库分布式系统的一种特例,专注于数据的存储和管理。它们都采用了分布式架构,通过多个节点的协同工作来提高系统的性能和可用性。区别:分布式系统是一个更广泛的概念,可以包括分布式计算、分布式存储、分布式网络等多个领域,而分布式数据库仅专注于数据库管理和数据存储。分布式数据库需要解决数据一致性、分布式事务等特有的问题,而分布式系统则更关注整体的架构设计、节点通信和任务调度等。分布式系统的应用场景更加广泛,而分布式数据库主要应用于需要高效数据管理和访问的场景。
分布式数据库是一种将数据存储在多个物理位置的数据库系统。它通过将数据分散存储在不同的服务器节点上,实现了数据分布式管理和处理。以下是分布式数据库的一些关键特点和概念:数据分布数据不是集中存储在在不同的节点上;也可以是垂直分区,即将数据表的不同列存储在不同的节点上。透明性:事务透明性:用户在使用分布式数据库时,通常不需要关心数据存储的具体位置,可以像使用单机数据库一样进行事务操作,分布式数据库会自动处理跨多个节点的事务一致性问题。位置透明性:用户可以像访问本地数据一样访问远程数据,不需要显指定数据存储的位置,分布式数据库会根据数据分布情况和访问策略自动选择合适的数据节点。故障透明性:当某个节点发生故障时,分布式数据库会自动进行故障检测和恢复,用户通常不会感知到故障的存在,从而保证了系统的连续性和可用性。高可用性和容错性:通过数据冗余存储和节点冗余配置,分布式数据库能够在节点故障的资源利用,提高系统的吞吐量和响应速度。支持多种数据模型:分布式数据库可以支持多种数据模型,如关系型、键值存储、文档存储、列存储等,满足不同业务场景和数据类型的需求。一致性模型:分布式数据库需要在一致性
国产分布式数据库星环分布式向量数据库-TranswarpHippoTranswarpHippo是一款企业级云原生分布式向量数据库,支持存储,索引以及管理海量的向量数据集,能够高效的解决向量相似度支持数据高速读写,每秒处理数十万条记录和数百次查询。TimeLyre帮助用户快速开发各类业务与设备的实时监控、实时预警、实时故障诊断等应用。星环分布式数据库数据的高实时性检索等场景。星环分布式数据库-TranswarpStellarDBTranswarpStellarDB是星环科技自主研发的企业级分布式数据库,提供高性能的图存储、计算、分析、查询和海量数据3D图展示能力。StellarDB帮助用户快速开发欺诈检测、推荐引擎、社交网络分析、知识图谱等应用。星环分布式时空数据库-TranswarpSpactureTranswarpSpacture是星环科技推出的一款分布式时空数据库,支持空间地理、时空轨迹、遥感影像等海量数据的存储、查询、分析和挖掘服务。Spacture具备高性能数据读写和分析能力。支持OGC标准图形类型和空间关系,兼容常见的
行业资讯
分布式数据库
分布式数据库数据管理的新变革分布式数据库是什么分布式数据库,从名字上可以拆解为:分布式+数据库,用一句话总结,就是由多个独立实体组成,并且彼此通过网络进行互联的数据库。在分布式数据库系统里,数据分散存储在多个物理位置不同的节点上,这些节点通过网络协同工作,共同提供数据库服务。与传统的集中式数据库相比,分布式数据库在架构和运行方式上有显著差异。集中式数据库就像是一个大型的中央仓库,所有的数据都。分布式数据库则像是多个小型仓库组成的联盟,每个仓库都存储一部分数据,并且这些仓库之间通过网络紧密联系。当需要处理数据时,各个节点可以并行工作,共同完成任务。分布式数据库的优势强大的可扩展性分布式数据库的可扩展性是其关键优势之一。随着业务的发展,数据量和业务需求会不断增长,分布式数据库能够轻松应对这一挑战。它通过增加节点的方式来扩展系统的存储容量和处理能力,实现线性扩展。以互联网公司为例,在创业初期,用户数量和数据量相对较少,使用小型的分布式数据库系统就可以满足需求。但随着业务的迅速扩张,用户数量呈指数级增长,数据量也随之剧增。此时,只需在分布式数据库系统中添加更多的节点,就能为系统提供额外的存储和
分布式数据库事务是指在分布式系统中,多个服务或节点之间协同完成的事务操作。由于这些操作涉及多个独立的系统或数据库分布式事务需要解决数据一致性和协调复杂性等问题。以下是分布式事务的一些关键概念和解步骤失败,则执行补偿操作。本地消息表:在数据库中新增一个消息表,用于存放消息,通过异步发送消息来实现分布式事务。Seata框架:提供多种事务模式(如AT、TCC、SAGA和XA),帮助解决分布式事务的一致性问题。完整性约束。隔离性(Isolation):事务的执行不会被其他事务干扰,尽管在分布式系统中实现完全的隔离性较为困难。持久性(Durability):一旦事务提交,其结果将永久保存,即使系统发生故障可靠性。TCC(Try-Confirm-Cancel):通过预留资源、尝试执行、确认执行和回滚执行四个阶段来实现分布式事务的一致性。SAGA模式:将长事务拆分为多个本地短事务,由事务协调器协调,如果某个决方案:核心概念ACID特性:原子性(Atomicity):事务中的所有操作要么全部成功,要么全部失败。一致性(Consistency):事务完成后,系统中的数据应保持一致,满足所有的业务规则和数据
分布式存储和分布式数据库都是现代数据管理的重要技术,它们在架构、功能和应用场景上有所不同,但也有一定的联系和交集。分布式存储定义:分布式存储是一种将数据分散存储在多个物理或逻辑节点上的存储系统。这些存储和高可用性的场景,如大数据分析、视频监控、云存储服务等。分布式数据库定义:分布式数据库是一种将数据数据库操作分散到多个节点上的数据库管理系统。这些节点可以位于不同的地理位置或不同的硬件设备上,通过服务、物联网应用等。联系与区别联系:分布式数据库通常会利用分布式存储来存储数据分布式存储为分布式数据库提供了底层的数据存储和管理能力。它们都可以通过分布式架构提高系统的可扩展性和高可用性,满足大规模数据管理和访问的需求。区别:分布式存储主要关注数据的存储和访问,而分布式数据库则更关注数据的组织、管理和查询。分布式数据库提供了更丰富的数据操作功能,如事务管理、索引、查询优化等,而分布式存储主要提供数据的存储和读写操作。分布式数据库通常需要解决数据一致性、分布式事务等复杂问题,而分布式存储则更注重数据的持久化和可用性。
数据库分布式数据库在概念、架构、特点和适用场景等方面有显著的区别。以下是它们的主要对比:数据库定义:数据库是一个组织良好的数据集合,通常存储在计算机系统中,可以被多个用户访问和共享。它通过数据库小型企业的内部管理系统、简单的在线事务处理(OLTP)系统等。分布式数据库定义:分布式数据库是一个物理上分散但逻辑上集中的数据集,数据分布在不同的站点(或节点)上,并由分布式数据库管理系统进行统一控制。架构:分布式架构:数据和处理分布在多个节点上,这些节点可以位于不同的地理位置。每个节点可以独立处理一部分数据和请求。无单点故障:通过数据冗余和节点间的协调,分布式数据库可以避免单点故障,提高系统的,如大型互联网应用、大数据分析、分布式事务处理等。总结选择依据:数据规模和并发需求:如果数据量较小且并发请求不高,传统数据库可能更合适;如果需要处理大规模数据和高并发请求,分布式数据库是更好的选择。一致性要求:如果业务对数据一致性要求非常高,传统数据库可能更合适;如果可以接受一定的数据延迟和不一致性,分布式数据库可以提供更高的性能和可扩展性。系统复杂性和管理成本:分布式数据库的管理和维护相对复杂,需要考虑系统的复杂性和管理成本。
分布式数据库引擎是分布式数据库系统的核心组件,负责管理和协调数据的存储、查询和事务处理等操作。以下是分布式数据库引擎的一些关键功能和性能优化策略:功能数据存储与管理分布式存储:将数据分散存储在多个节点上,每个节点负责一部分数据的存储和管理。数据复制与冗余:通过在多个节点上复制数据,确保数据的高可用性和容错能力。事务管理分布式事务:支持跨多个节点的事务管理,确保事务的原子性、一致性、隔离性和持久性(ACID特性)。事务一致性协议:使用如一致性协议来保证事务的一致性。查询优化查询路由:根据数据分布情况,将查询请求路由到相应的节点,提高查询效率。执行计划生成:生成最优的分布式执行计划,以减少数据使用合适的索引类型和策略,提高查询效率,减少数据扫描范围。负载均衡将读写请求均匀分配到多个节点上,避免单个节点过载。缓存机制使用缓存技术减少对数据库的直接访问次数,提高查询速度。数据倾斜处理通过调整数据分布分布键,解决数据倾斜问题,确保负载均衡。并行处理利用多个节点的并行计算能力,加速复杂查询和数据处理任务。应用场景电商平台:处理海量订单和用户数据,通过分片和复制提升性能和可靠性。金融行业:在支付、风控等场景中,提供一致性保障与故障恢复能力。物联网:管理大量设备产生的数据,提供高可用性和可扩展性。
本章节的示例语句均可在示例图my_graph中执行,执行前请先创建示例图my_graph,建图语句如下:creategraphmy_graphwithschema(:Boy{namestring,salarydouble,ageint,singleboolean,birthdaylocaldatetime,reservelong,ratedecimal(38,10),hobbysarray<string>,geoPointgeo<double>})(:Girl{namestring,salarydouble,ageint,singleboolean,birthdaylocaldatetime,reservelong,ratedecimal(38,10),hobbysarray<string>,geoPointgeo<double>})[:Friend{sinceint}][:Likes{sinceint}]graphproperties:{`graph.shard.number`:3,`graph.replication.number`:...
产品文档
3 安装 StellarDB
3.1在TDH平台安装StellarDB3.2StellarDB安装校验3.3StellarDB低版本升级至StellarDB5.0.1
产品文档
5.10 表达式
类型表达式类型例子十进制型整数10,-213十进制小数1.25,3.604E-14,-2.31十进制型长整数199345843592l,-12381543923L任意精度的有符号十进制数123bd,123.31BD八进制整数(0开头)084,-096字符串"星环",'信息科技'布尔类型true,false,TRUE,FALSE数组类型[1,2,3],["星环","信息科技"],[decimal(10.2,3,1),decimal(100.2,3,2)],[localdatetime("2021-01-18T09:50:12.627"),localdatetime("2021-11-18T03:50:12.113")]时间类型localdatetime("2021-01-18T09:50:12.627")Decimal类型decimal(10.2,3,1)地理空间类型point(20.5,30.5),point(-20.5,-30.5)时序类型{localdatetime("2023-01-01T15:16:17")::"nice"},{localdatetime("1997-01-01...
产品文档
4 快速入门
快速上手本章节将引导您快速熟悉StellarDB,并为您初步介绍如何通过KGExplorer和beeline客户端操作StellarDB。其中,"StellarDB初探"一节通过构建一张人物关系图,从零介绍如何在StellarDB进行基本操作;"StellarDB进阶"一节为您提供了内置于StellarDB的《哈利·波特》人物关系图,帮助您进一步探索StellarDB。StellarDB初探使用KGExplorer构建图从Manager页面进入KGExplorer页面。若KGExplorer开启了单点登录,会自动跳转Federation登录页面,按如图方式登录:KGExplorer用戶开启方法以及详细使用说明请查看章节《KGExplorer使用文档》。点击登录后进入KGExplorer主页面。我们首先需要构建图名为"hello_world"的图。在主页面右上角点击创建图按钮开始图谱schema的构建。按照引导填写图基本信息后点击确定进入构建页面。在画布中,我们为"hello_world"图创建Boy和Girl两种类型的点,两种类型的点均包含name、salary、age、single四...
通过beeline或JDBC时,设置参数configquery.langcypher;将查询语言切换为TEoC模式。根据使用场景选择查询模式(默认为immediate模式)immediate模式通常用于并发及短查询场景,查询结果和中间结果通常不超过百万。通过configcrux.execution.modeimmediate;切换。analysis模式通常用于分析场景,创建图、插入数据以及图算法相关的语句必须在该模式下进行。通过configcrux.execution.modeanalysis;切换。
为什么引入动态图模型?在实际应用过程中很容易可以发现,图数据在很多图数据的应用场景中并不是静态不变的,而是动态演进的,这些场景中包括例如金融反欺诈场景中金融交易网络随着时间的推进而发生的交易变化、交易社群变化等;又比如社交网络中新增用户、用户关注或者取消关注、更改账户信息等。将图数据变化的历史记录下来,不仅可以用于历史数据规律的总结,还可以利用动态图数据进行动态图神经网络相关技术的研究,从而进一步挖掘数据中潜在的数据价值和更加灵活高效的业务场景,譬如预测某一个时刻某一事件是否会发生。动态图模型的动态变化图数据的动态变化主要分为两类,一类是节点或边的属性的值的变化;另一类变化是子图(结构)的变化,如新增/删除点边。这两种图数据的动态变化可以单独发生,也可以同时发生。从图数据的属性变化角度来看,StellarDB5.0.1动态图模型可以记录图中节点或者边属性的所有历史版本(而非新数据覆盖旧数据)。在实际数据开发使用中,还可以结合诸如柱状图、趋势图等对历史数据进行可视化,更加直观、更加适合业务使用。从图数据的子图(结构)的角度来看,StellarDB5.0.1动态图模型还可以返回不同时间子图...
产品文档
5.12 变量声明
声明简介声明是指为特定数据类型的变量分配一定的存储空间,并命名该变量以便引用它;必须先声明变量,然后才能引用它;对声明的变量可以进行赋值操作来改变它的值;声明的变量其作用域是Session级别的。变量声明使用decl关键字声明一个变量必须为变量指定名称和类型,且名称不能与已有的变量名相同。声明但未赋值的变量的默认值为null。变量名声明对大小写敏感。变量声明的语句遵循如下格式:DECL[<variable_name>:<variable_type>];使用方法示例如下表所示:语句说明declx:int;声明一个类型为int的变量xdecls:string;声明一个类型为string的变量sdecll:long;声明一个类型为long的变量ldeclb:boolean;声明一个类型为boolean的变量bdecld:double;声明一个类型为double的变量ddecltime:localdatetime;声明一个类型为localdatetime的变量timedecld1:decimal;声明一个类型为decimal的变量d1decllist1:list[int...
索引是数据库中某些数据的冗余副本,目的是使查询性能更优。作为代价,数据库需要额外存储空间和较慢写入速度,因此决定哪些字段需要索引是一项重要且不易的任务。(新)StellarDB5.0.1版本不再对旧版本使用的manipulatecreate_index和manipulatedelete_index语法进行支持,在新版本中统一使用createindex和dropindex进行索引的创建和删除新增索引CREATEINDEX[IFNOTEXISTS]FOR(LabelName)ON[f1,f2,...];CREATEINDEX[IFNOTEXISTS]FOR[LabelName]ON[f1,f2,...];不支持对TIME_SERIES类型的属性创建索引默认情况下,对同一个Label的某个属性多次创建索引会报错;但如果带有IFNOTEXISTS,则不会抛出任何错误包裹点边LabelName的括号不同,注意区分示例1.在点labelperson的属性name和age上建立索引CREATEINDEXIFNOTEXISTSFOR(person)ON[name,age];示例2.在边labelask...
产品文档
7.1 自定义函数
StellarDB支持用户添加自定义函数,添加后可在cypher语句中使用。自定义函数实现自定义函数通过java/scala语言开发,可继承实现两种基类,编译成jar包,通过指定命令加载到StellarDB。需要实现的基类为如下两种,可自行选择继承合适的基类:继承UDF基类继承GenericUDF基类。继承UDF基类该类实现简单,功能较为单一。支持Quark的基本类型、数组和Map。适合实现简单的逻辑。继承org.apache.hadoop.hive.ql.exec.UDF类继承UDF类必须实现evaluate方法且返回值类型不能为void,支持定义多个evaluate方法不同参数列表用于处理不同类型数据。@Description(name="my_plus",value="my_plus()-ifstring,doconcat;ifinteger,doplus",extended="Example:\n>selectmy_plus('a','b');\n>ab\n>selectmy_plus(3,5);\n>8")/***实现UDF函数,若字符串执行拼接,in...
产品文档
6.1 图计算
StellarDB5.0.1版本对图算法场景进行了大规模改进和提升,内置算法性能得到较大提升。在语法方面,StellarDB5.0.1的内置图算法对于返回的节点,会直接以节点类型返回。因此可以直接使用uid(vertex)访问节点的uid,而不再需要node_rk_to_uid函数进行uid的转换。可以参考PageRank等函数。另外,对于图算法返回的节点,我们也可以灵活的访问其其他属性作为返回值。图计算简介StellarDB的图计算使用TEoC语句调用相应图算法。算法的输入数据为图的点、边数据。当前版本中图计算支持结果返回、结果导出和结果写回。在使用图算法时,使用configcrux.execution.modeanalysis;语句切换到分析模式下使用图算法语句。图数据视图StellarDB支持创建一个可被持久化的视图,用于加速图算法执行过程。创建视图创建视图的语法如下所示:createquerytemporarygraphviewGRAPH_VIEW_NAMEas(v)[e]withGRAPH_ALGO(@GRAPH_VIEW_NAME,VIEW_STORE_PATH,CONFI...