首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到18条相似文献,搜索用时 293 毫秒
1.
数据流与存贮表的连接查询经常出现在主动式数据仓库的维护中,与传统的关系数据库的连接计算不同,数据流快速处理的要求不允许将数据流先存入磁盘再计算,而计算机内存无法存储无界增长的数据流,因此数据流查询采用先处理再存储结果的计算方式。数据流与存贮表的连接计算算法重点要解决内存开销和处理速率二个问题。MESHJOIN算法最早提出将存贮表划分为若干个数据块,将数据块交替放入内存与数据流窗口完成连接计算。在MESHJOIN算法思想的基础上将存贮表的内存数据块也划分为若干逻辑分区,每次连接计算仅替换其中的一个逻辑分区,有效地降低了数据流滑动窗口所需的I/O代价,从而提高滑动窗口的计算速率。最后通过实验对二种算法在内存开销和计算速率进行了比较。  相似文献   

2.
当前,数据流上的实时处理系统大多关心平均元组延时最小化要求,而很少考虑每个元组的截止期要求.提出一种实时的自适应批任务调度策略--ATS(adaptive batch task scheduling),以支持时变突发的数据流上关键任务的严格截止期需求.ATS调度策略可以降低调度开销和过期处理开销,从而实现截止期错失率最小化和有效任务完成率最大化.提出了最优调度单位概念--批粒度,设计了闭环反馈控制机制,以在不可预测的数据流环境中自适应地动态选择最优批大小.理论分析和实验表明了ATS批调度策略的有效性和高效性.  相似文献   

3.
在实际应用中,人们往往比较关心最近一段时间内数据流的分布状况.在传统的基于界标模型的聚类算法CluStream中,没有淘汰过期元组,不能准确反映当前数据流的数据分布状况.滑动窗口是数据流中一种关注近期数据的近似方法.为了提高对流数据聚类分析的质量及效率,对算法clustream进行了改进,采用滑动窗口来支持数据处理.为了减少聚类操作中每次迭代的计算次数,算法采用改进的k-means来执行聚类操作.优化后的算法能及时淘汰过期元组,同时对新到达的元组不断进行实时处理,可以获得更准确的分析结果.与聚类算法CluStream相比,优化算法可获得较小的内存开销和快速的数据处理能力,聚类结果更合理清晰.  相似文献   

4.
针对Top-k dominating查询算法需要较高的时空消耗来构建属性组合索引,并且在相同属性值较多情况下的查询结果准确率低等问题,提出一种通过B+-trees和概率分布模型相结合的子空间支配查询算法--Ranking-k算法.首先,采用B+-trees为待查找数据各属性构建有序列表;然后,采取轮询调度算法读取skyline准则涉及到的有序列表,生成候选元组并获得k组终结元组;其次,根据生成的候选元组和终结元组,采用概率分布模型计算终结元组支配分数.迭代上述过程优化查询结果,直到满足条件为止.实验结果表明:Ranking-k与基本扫描算法(BSA)相比,查询效率提高了94.43%;与差分算法(DA)相比,查询效率提高了7.63%;与早剪枝Top-k支配(TDEP)算法、BSA和DA相比,查询结果更接近理论值.  相似文献   

5.
随着融合型网络的发展,服务质量(包括可用带宽、端到端的时延、抖动和丢包率)对一些实时数据流应用(语音流、视频流等)越来越重要。由于传统的WRR算法只能满足各个应用队列的公平性要求,而不能保证多类别实时数据的低时延和低抖动性要求,所以本文在WRR算法的基础上提出了BSTL-RR调度算法,此算法运用了二层循环和借用时隙的两个思想。BSTLRR调度算法不仅在调度低时延和低抖动的多类别实时数据流帧方面要优于WRR调度算法,而且在一定程度上也保证了各优先级队列调度上的公平性。  相似文献   

6.
陈刚  顾进广  李思川 《计算机科学》2010,37(12):143-144
数据流上的关系查询处理技术是数据库研究领域的一大热点。优化无阻塞连接算法的关键在于提高内存连接阶段的效率。当内存空间满时,需要将内存数据刷新到外存相应分区,良好的刷新策略对于改进算法的性能至关重要。利用数据分布的特征,对关系连接的输出流,使用基于统计的方法,查找使用频率最低的元组,将使用频率较低的元组刷新到外存,以提高内存数据的效率。基于统计分析策略提高了刷新策略的准确性和效率及算法的适用范围。  相似文献   

7.
王春凯  孟小峰 《软件学报》2018,29(3):869-882
并行环境下的分布式连接处理要求制定划分策略以减少状态迁移和通信开销。相对于数据库管理系统而言,分布式数据流管理系统中的在线θ连接操作需要更高的计算成本和内存资源。基于完全二部图的连接模型可支持分布式数据流的连接操作。因为连接操作的每个关系仅存放于二部图模型的一侧处理单元,无需复制数据,且处理单元相互独立,因此该模型具有内存高效、易伸缩和可扩展等特性。然而,由于数据流速的不稳定性和属性值分布的不均衡性,导致倾斜数据流的连接操作易出现集群负载不均衡的现象。针对倾斜数据流的连接操作,模型无法动态分配查询节点,并需要人工干预数据分组的参数设置。尤其是应对全部历史数据的连接查询,模型效率更低。基于上述问题,提出了管理倾斜数据流连接的框架,使用基于键值和元组混合的划分样式有效应对二部图模型的各侧倾斜数据。并设计了重新动态分配查询节点的策略和状态迁移算法,以支持全历史数据的连接查询和自适应的资源管理。针对合成数据和真实数据的实验表明,该方案可有效应对倾斜数据的连接操作并进一步提升分布式数据流管理系统的吞吐率,特别是降低云环境中的计算成本。  相似文献   

8.
为实现数据仓库中数据的高效集成,针对数据偏斜分布现象,提出一种改进的数据流更新算法EH-JOIN。该算法对传统散列连接方法进行改进,利用索引将部分频繁使用的主数据存储在内存中,解决了高速数据流下的磁盘频繁访问问题。实验结果表明,与MESHJOIN算法和R-MESHJOIN算法相比,EH-JOIN算法的服务速率在磁盘存储关系集保持适当大小时分别提高了96%和81%,在内存大小不同时提高了57%和48%。  相似文献   

9.
如何在资源有限的情况下,快速执行查询处理并最大限度地减少查询精度的损失是数据流查询处理的主要任务之一.从操作符的优化调度和负载脱落两个方面研究了这一问题.分析了影响操作符调度的主要因素,结合操作符对不同元组的不同处理特性以及系统运行状态,设计并实现了一个基于优先级的调度模型.其中采用人工神经元网络中的算法对影响操作符优先级的权重系数进行训练,实现了基于动态优先级的调度.使用负载脱落技术可以使系统在大量突发数据流元组进入系统而系统无法处理时及时脱落其中的部分数据,维持系统的正常运转,提高系统查询处理的可用性.针对存在两个数据流连接操作符的查询请求,研究了负载脱落和反脱落的时机、数量、位置、谓词等问题,设计并实现了一个基于语义的负载脱落模型.算法和模型的运行结果表明该模型在过载时系统能够及时降载,在欠载时能及时进行反脱落操作,减少了性能的损失.  相似文献   

10.
分析二部图的二元组和概念聚类问题之间的关系,在此基础上结合数据流的特点,提出一种适用于对象属性为布尔型的数据流概念聚类算法。将数据流分段,对每一批到来的数据流,生成局部的近似极大ε二元组集合,对全局的近似极大ε二元组集合进行更新,从而有效地对整个数据流进行聚类。实验结果表明,该算法具有良好的时间效率和空间效率。  相似文献   

11.
Meshing Streaming Updates with Persistent Data in an Active Data Warehouse   总被引:1,自引:0,他引:1  
Active data warehousing has emerged as an alternative to conventional warehousing practices in order to meet the high demand of applications for up-to-date information. In a nutshell, an active warehouse is refreshed online and thus achieves a higher consistency between the stored information and the latest data updates. The need for online warehouse refreshment introduces several challenges in the implementation of data warehouse transformations, with respect to their execution time and their overhead to the warehouse processes. In this paper, we focus on a frequently encountered operation in this context, namely, the join of a fast stream 5" of source updates with a disk-based relation R, under the constraint of limited memory. This operation lies at the core of several common transformations such as surrogate key assignment, duplicate detection, or identification of newly inserted tuples. We propose a specialized join algorithm, termed mesh join (MESHJOIN), which compensates for the difference in the access cost of the two join inputs by 1) relying entirely on fast sequential scans of R and 2) sharing the I/O cost of accessing R across multiple tuples of 5". We detail the MESHJOIN algorithm and develop a systematic cost model that enables the tuning of MESHJOIN for two objectives: maximizing throughput under a specific memory budget or minimizing memory consumption for a specific throughput. We present an experimental study that validates the performance of MESHJOIN on synthetic and real-life data. Our results verify the scalability of MESHJOIN to fast streams and large relations and demonstrate its numerous advantages over existing join algorithms.  相似文献   

12.
This paper addresses the distributed stream processing of window-based multi-way join queries considering the semijoin as a key join operator. In distributed stream processing, data streams arriving at remote sites need to be shipped to the processing site for query execution. This typically introduces high communication overhead. Our observation is that semijoin, effective in reducing communication overhead in distributed database query processing, can be also effective in distributed stream query processing. The challenge, however, lies in the streaming nature of the tuples, as it requires continuous and incremental processing of an unbounded sequence of tuples instead of one-time processing of a set of stored tuples. This paper describes our comprehensive work done to address the challenge. Specifically, we first propose a distributed stream join processing model that handles the issue of network delays introduced from the shipment of data streams, and allows for efficient batch processing. Then, based on the model, we propose join algorithms in a multi-way join case: first, one-way join algorithms for different combinations of join placement and join method and, then, multi-way join algorithms assuming linear join ordering. Regarding the join method, two distributed join methods are introduced: (1) simple join, in which full tuples are forwarded to the query processing site and (2) semijoin-based join, in which partial tuples are forwarded. A semijoin-based join can be executed with different possible semijoin strategies which incur different communication overheads. We present a complete set of join algorithms considering all possible semijoin strategies, and propose an optimization algorithm. The join algorithms are executed continuously in an incremental manner as tuples arrive, and never ship tuples redundantly. The optimization algorithm constructs an efficient multi-way join plan by using a greedy heuristic which adds to the plan one stream with the minimum join execution cost in each step. Through extensive experiments, we conduct comparative studies of the performance among the proposed one-way join algorithms and the efficiency of the generated plan between the optimization algorithm based on the greedy heuristic and the exhaustive search, respectively.  相似文献   

13.
We address the problem of load shedding for continuous multi-way join queries over multiple data streams. When the arrival rates of tuples from data streams exceed the system capacity, a load shedding algorithm drops some subset of input tuples to avoid system overloads. To decide which tuples to drop among the input tuples, most existing load shedding algorithms determine the priority of each input tuple based on the frequency or some historical statistics of its join attribute value, and then drop tuples with the lowest priority. However, those value-based algorithms cannot determine the priorities of tuples properly in environments where join attribute values are unique and each join attribute value occurs at most once in each data stream. In this paper, we propose a load shedding algorithm specifically designed for such environments. The proposed load shedding algorithm determines the priority of each tuple based on the order of streams in which its join attribute value appears, rather than its join attribute value itself. Consequently, the priorities of tuples can be determined effectively in environments where join attribute values are unique and do not repeat. The experimental results show that the proposed algorithm outperforms the existing algorithms in such environments in terms of effectiveness and efficiency.  相似文献   

14.
提出一种新的传感器网络内的路径连接实现算法,在连接路径中,通过将有效元组的选择与实际连接一定程度分离,在信息产生节点附近实现元组选择,在查询节点附近实现元组的真正连接,减少了元组的重复传输,有效降低了能量损耗,特别在针对事件监测系统中,针对突发性的连接选择系数变化或较大的情况,有效避免大量连接结果过早产生和传输的大量能量损耗.  相似文献   

15.
分析了面向先进硬件平台上的数据库优化技术,提出了基于内存存储模型的多表连接查询处理优化技术,采用内存存储模型存储维表并对维表主键进行顺序化,从而使维表的主键与内存维表记录的内存偏移地址相一致,实现对维表记录的内存直接访问。通过列存储技术减少维表记录的访问宽度,进一步优化维表访问的cache性能。与基于SQL Server 2005的查询执行计划的连接算法、join index连接算法以及基于列存储模型的优化连接算法进行了实验比较和性能分析,结果表明:基于内存存储模型的多表连接算法在处理星型结构数据仓库多谓词、多连接的复杂查询时具有很好的性能,与join index相比不需要额外的空间开销,与列存储数据模型相比具有更好的兼容性和性能。  相似文献   

16.
由于数据仓库中存储着不同粒度、容量巨大的数据记录,所以如何有效地执行联机分析处理(OLAP)查询操作,特别是连接和聚集操作,便成为数据仓库领域的核心问题之一.为此,提出了一种降低连接和聚集操作的新算法(join and aggregation based on the complex multi-dimensional hierarchies,JACMDH).算法充分考虑了复杂多维层次的特点,在原有的位图连接索引(bitmap join index)的基础上,采用层次联合代理(hierarchy combined surrogate)和预先分组排序的方法,使得复杂的多维层次上的连接和聚集操作转化成事实表上的区域查询,从而在处理多维层次聚集的同时,提高了连接和聚集的效率.算法性能分析和实验数据表明,JACMDH算法和目前流行的算法相比,其性能有显著的提高.  相似文献   

17.
Skyline查询能够有效地实现多目标最优化,而数据仓库中的OLAP也是针对多维数据进行分析,因此,针对Skyline查询在数据仓库中的应用,提出了数据仓库中雪花模式的Skyline-Join查询算法.该算法首先将子维表M-Join父维表,然后渐进选择式地对事实表和父维表进行连接.每次连接之前都对事实表进行分组和组内Skyline计算,删除组内非Skyline元组,这样可以减少许多不必要的连接操作,使得查询效率大大提高.通过实验证明,在事实表元组数量逐渐变大和维表个数逐渐增多的情况下,提出的算法比先Join后Skyline计算的naive算法效率上有明显改善.  相似文献   

18.
We propose a new algorithm, called Stripe-join, for performing a join given a join index. Stripe-join is inspired by an algorithm called ‘Jive-join’ developed by Li and Ross. Stripe-join makes a single sequential pass through each input relation, in addition to one pass through the join index and two passes through a set of temporary files that contain tuple identifiers but no input tuples. Stripe-join performs this efficiently even when the input relations are much larger than main memory, as long as the number of blocks in main memory is of the order of the square root of the number of blocks in the participating relations. Stripe-join is particularly efficient for self-joins. To our knowledge, Stripe-join is the first algorithm that, given a join index and a relation significantly larger than main memory, can perform a self-join with just a single pass over the input relation and without storing input tuples in intermediate files. Almost all the I/O is sequential, thus minimizing the impact of seek and rotational latency. The algorithm is resistant to data skew. It can also join multiple relations while still making only a single pass over each input relation. Using a detailed cost model, Stripe-join is analyzed and compared with competing algorithms. For large input relations, Stripe-join performs significantly better than Valduriez's algorithm and hash join algorithms. We demonstrate circumstances under which Stripe-join performs significantly better than Jive-join. Unlike Jive-join, Stripe-join makes no assumptions about the order of the join index.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号