Mining Frequent Itemsets from Online Data Streams: Comparative Study

Online mining of data streams poses many new challenges more than mining static databases. In addition to the one-scan nature, the unbounded memory requirement, the high data arrival rate of data streams and the combinatorial explosion of itemsets exacerbate the mining task. The high complexity of the frequent itemsets mining problem hinders the application of the stream mining techniques. In this review, we present a comparative study among almost all, as we are acquainted, the algorithms for mining frequent itemsets from online data streams. All those techniques immolate with the accuracy of the results due to the relatively limited storage, leading, at all times, to approximated results.


INTRODUCTION
Recently, the data generation rates in some data sources become faster than ever before.Examples include network traffic analysis, Web click stream mining, network intrusion detection, sensor networks, web logs, and on-line transaction analysis.This rapid generation of continuous streams of information has challenged our storage, computation and communication capabilities in computing systems.Systems, models and techniques have been proposed and developed over the past few years to address those challenges [Gaber M. et al., 2005].
In [Babcock B. et al., 2002] and [Lin C.H. et al., 2005], the Data Stream Model is characterized by that, some or all of the input data that are to be operated on are not available for random access from disk or memory, but rather arrive as one or more continuous data streams.
Data streams differ from the conventional stored relation model in several ways: 1) Continuity: Data continuously arrive at a high rate.2) Expiration: Data can be read only once.3) Infinity: The total amount of data is unbounded.These characteristics lead respectively to the following challenges [Zhu Y. and Shasha D. 2002] in mining data streams: 1) Limited memory space.2) Each item in a stream could be examined only once.3) The mining result should be generated as fast as possible.
The infinite nature of these data sources is a serious obstacle to the use of most of the traditional methods since available computing resources are limited.One of the first effects is the need to process data as they arrive.The amount of previously happened events is usually overwhelming, so they can be either dropped after processing or archived separately in secondary storage.In the first case access to past data is obviously impossible whereas in the second case the cost for data retrieval is likely to be acceptable only for some "ad hoc" queries, especially when several scan of past data are needed to obtain just one single result [Silvestri C., 2006].In the process of mining frequent itemset, traditional methods for static data usually read the database more than once.However due to the consideration of performance and storage constraints, on-line data stream mining algorithms are restricted to make only one pass over the data.Thus, traditional methods cannot be directly applied to data stream mining [Pauray S. and Tsai M., 2009].

II. BACKGROUND
According to [Li H. F. et al, 2006], data streams are further classified into: 1) offline data streams: which characterized by discontinuity or regular bulk arrivals [Manku G. and Motwani R., 2002], such as a bulk addition of new transactions as in a data warehouse system, and 2) online data streams: which characterized by real-time updated data that come one by one in time, such as a continuously generated transaction as in a network monitoring system.
A transaction data stream is a sequence of incoming transactions and an excerpt of the stream is called a window.A window,W, can be (1) either time-based or count-based, and (2) either a landmark window or a sliding window.W is timebased if W consists of a sequence of fixed-length time units, where a variable number of transactions may arrive within each time unit.W is count-based if W is composed of a sequence of batches, where each batch consists of an equal number of transactions.W is a landmark window if W = [T1, T2, . . ., Tτ]; W is a sliding window if W = [Tτ−w+1, . . ., Tτ ], where each Ti is a time unit or a batch, T1 and Tτ are the oldest and the current time unit or batch, and w is the number of time units or batches in the sliding window, depending on whether W is time-based or count-based.Note that a countbased window can also be captured by a time-based window by assuming that a uniform number of transactions arrive within each time unit.
An itemset X is a Frequent Itemset (FI) in W, if sup(X) ≥ σ, where σ (0 ≤ σ ≤ 1) is a user-specified minimum support threshold.In the process of mining data streams, it is necessary to keep not only the FIs, but also the infrequent itemsets that are promising to be frequent later, since an infrequent itemset may become frequent later in the stream.Therefore, many of the existing approximate mining algorithms used a relaxed minimum support threshold (also www.ijacsa.thesai.orgcalled a user-specified error parameter), ϵ, where 0 ≤ ϵ ≤ σ ≤ 1, to obtain an extra set of itemsets that are potential to become frequent later.
There are many algorithms for mining frequent itemsets from data streams; according to [Pauray S. and Tsai M., 2009], all those algorithms are fallen into one of the following data stream mining models: 1) Landmark model, 2) Fading model and 3) Sliding window model.

A. Landmark model
Which considers all the data from a specified point of time (usually the time the system starts), to the current time.All the data considered are treated equally.In this model, knowledge discovery is performed based on the values between a specific timestamp called landmark and the present.See Figure 1.
In [Cormode. G., 2007], an algorithm called Lossy Counting is presented.It produces an approximate set of FIs over the entire history of a stream.The stream is divided into a sequence of buckets and each bucket consists of B = 1/  transactions.It processes a batch of transactions arriving on the stream at a time, where each batch contains β buckets of transactions.The idea of maximum possible error is used to maintain all the possible frequent itemsets.Although the output is approximate, the error is guaranteed not to exceed a user-specified threshold.
According to [Cormode. G., 2007], this method attempts to use the available space as fully as possible.As, for each new transaction, it generates all the subsets, and stores them in a compact trie-based structure.When the space is full, it uses a pruning algorithm based on frequent items algorithms to delete the least frequent itemsets, and track the error in the estimated counts of each item.
In [Yu J. X. et al, 2004], an algorithm called FDPM is derived from the Chernoff bound, to approximate a set of FIs over a landmark window.Suppose that there is a sequence of N observations and consider the first n (n << N) observations as independent coin flips such that Pr(head) = p and Pr(tail) = 1 − p.Let r be the number of heads.Then, the expectation of r is np.The Chernoff bound states, for any > 0 : After applying some substitutions and derivations: The underlying idea of the FDPM algorithm is explained as follows.First, a memory bound, n 0 ≈ (2 + 2 ln(2/δ))/σ , is also derived.Given a probability parameter, δ, and an integer, k.The batch size, B, is given as k • n 0 .Then, for each batch of B transactions, FDPM employs an existing non-streaming FI mining algorithm to compute all itemsets whose support in the current batch is no less than (σ − ϵ B ), where ϵ B = .The set of itemsets computed are then merged with the set of itemsets obtained so far for the stream.If the total number of itemsets kept for the stream is larger than c • n 0 , where c is an empirically determined float number, then all itemsets whose support is less than (σ − ϵ N ) are pruned, where N is the number of transactions received so far in the stream and ϵ N = .Finally, FDPM outputs those itemsets whose frequency is no less than σ N. The landmark model It solves the problem of huge number of sub-FIs problem, by first using a constant lowered minimum support threshold to compute a set of potential FIs and then using a gradually increasing lowered minimum support threshold to control the total number of sub-FIs kept in memory, but with a drawback of producing false negatives.
In [Jin R. and Agrawal.G., 2005], an algorithm called StreamMining is proposed.It is built on the idea of [Karp R.M. et al, 2003] to determine frequent items (or 1-itemsets).In [Karp R.M. et al, 2003] a two pass algorithm was presented for this purpose, which requires only (1/) memory, where  is the desired support level.Their first pass computes a superset of frequent items, and the second pass eliminates any false positives.StreamMining algorithm addressed three major challenges in applying their idea for frequent itemset mining in a streaming environment.First, it developed a method for finding frequent k-itemsets, while still keeping the memory requirements limited.Second, it developed a way to have a bound on the superset computed after the first pass.Third, it developed a data structure and a number of other implementation optimizations to support efficient execution.This data structure called TreeHash, which implements a prefix tree using a hash table.It has the compactness of a prefix tree and allows easy deletions like a hash table.It also uses a relaxed minimum support threshold ϵ, like almost all the mining algorithms for data streams, so the memory requirements increase proportional to 1/ϵ.So, this algorithm should had to compute k-itemsets approximately after the first pass, without requiring any out-of-core or large summary structure, and ensure a provable bound on the accuracy of the results after the first pass on the dataset; because in streaming environments, second pass on the dataset is usually not feasible.Therefore, it is important that the set K computed above does not contain many false positives.It was different with [53] 2002 in the space requirements.As, for finding frequent items, it takes O(1/) space, while [Manku G., and Motwani R., 2002] requires O((1/) log (N)) space.As [Manku G., and Motwani R., 2002] requires an out-of-core data structure, while it used an in-core data structure.It also has deterministic bounds on the accuracy.One exception is W1 W2

System start (Landmark)
Data stream www.ijacsa.thesai.orgdatasets with the average length of an itemset is quite large.In such case, some additional knowledge of maximal frequent itemsets helps efficiency of our algorithms.
In [Liu X. et al, 2005], an algorithm called FP-DS is presented.It uses a Frequent Pattern structure similar to the FP-DS tree in [Han J. et al, 2000].The user can obtain current frequent itemsets online continuously without pattern-delay.Compared with the existing related algorithms, the FP-DS algorithm is especially suitable for the mining of long frequent items.It is unnecessary to enumerate every subset on transactions, nor produce a lot of frequent candidate items.The FP-DS tree stores the potential frequent itemsets.It does not need to store all subsets of itemsets independently.It reduces the storage capacity of itemsets and moreover, the itemsets are put in the order of the descending sequence of support of global 1-itemset.The more frequently the items appear the closer to the root of the tree.Such a compression tree has a higher compression ratio.
In the Landmark model, all FIs are outputted, although they are approximated; in other words, the data stream from system start to the existing point is scanned for mining (considering historical data, not only recent data).The support count is computed from the entire data set between the landmark and the current time.But, it isn't aware of time (time unconscious) and therefore it cannot distinguish between new data and old ones.In other words, it losses the time information the itemsets mined.

B. Fading model
That is called the Fading model in [Chang J. and Lee W., 2004], the Damped model according to [Zhu Y. and Shasha D., 2002] or Time-titled model according to [Chen, Y. et al, 2002] and [Pauray S. and Tsai M., 2009]; which is considered a variation of the landmark model.It also considers data from the start of streams up to the current moment, but the time period is divided into multiple time slots or assigned different weights to transaction such that new ones have higher weights than old ones.In other words time slots in recent time period are assigned at a fine granularity, while those in ancient time period are assigned at a coarse granularity.In this model, recent sliding windows are more important than previous ones.See Figure 2.
In [Chang J.H. and Lee WS., 2003], an algorithm called estDec is proposed.It uses a decay rate, d (0 < d < 1), to diminish the effect of old transactions on the mining result.As a new transaction comes in, the frequency of an old itemset is discounted by a factor of d.Thus, the set of FIs returned is called recent FIs. estDec algorithm adopts the mechanism in [Hidber C., 1999] to estimate the frequency of the itemsets.For example, let the decay rate and the support count of itemset X be d and v, respectively.As a new transaction containing X arrives, the new support count of X is equal to v×d+1.Obviously, when d equals 1, the time-fading model becomes the landmark model.Assume that the stream has received τ transactions, .The decayed total number of transactions, Nτ, and the decayed frequency of an itemset, freqτ (X), are defined as follows: where wi (X) = Frequent patterns are maintained under a tilted-time window framework in order to answer time-sensitive queries.The frequency of an itemset is kept at a finer granularity for more recent time frames and at a coarser granularity for older time frames.For example, we may keep the frequency of an FI in the last hour, the last 2 h, the last 4 h, and so on.
The count of each itemset is asymmetrically distributed into multiple time slots such that the recent time period is assigned more time slots than the past.It is suitable for people to mine the recent data at a fine granularity while mining the long-term data at a coarse granularity.It computes a set of sub-FIs at the relaxed minimum support threshold, ϵ, over each batch of incoming transactions by using the FI mining algorithm, FP-growth [Han J. et al, 2000].Two parameters, the minimum support count σ and the maximum support error ε where σ ≥ ε, are used to classify all the itemsets into three categories: 1) Frequent: Support count is greater than and equal to σ. 2) Sub-frequent: Support count falls in [ε, σ]. 3) Infrequent: Support count is smaller than ε.Next, only frequent and sub-frequent itemsets are stored and organized in the FP-stream.

C. Sliding window model
In [Chang J.H and Lee WS., 2003], an algorithm called estWin is presented.At which the itemsets generated are maintained in a prefix tree structure, D. An itemset, X, in D has the following three fields: freq , err(X) and tid(X), where freq is assigned as the frequency of X in the current window since X is inserted into D, err(X) is assigned as an upper bound for the frequency of X in the current window before X is inserted into D, and tid(X) is the ID of the transaction being processed, for X is inserted into D.For each incoming transaction Y with an ID tid τ , estWin increments the computed frequency of each subset of Y in D. We prune an itemset X and all X's supersets if (1) tid(X) ≤ tid 1 and freq < , or (2) tid(X) > tid 1 and freq < (tid(X) tid1)).For each expiring transaction of the sliding window, those itemsets in D that are subsets of the transaction are traversed.For each itemset, X, being visited, if tid(X) ≤ tid 1 , freq is decreased by 1; otherwise, no change is made since the itemset is inserted by a transaction that comes later than the expiring transaction.Then, pruning is performed on X as described before.Finally, for each itemset, X, in D, estWin outputs X as an FI if (1) tid(X) ≤ tid 1 and freq ≥ σ.N, or (2) tid(X) > tid 1 and (freq + err(X)) ≥ σ N.
In [Chang JH. and Lee WS., 2004], an algorithm called estWin Lossy-counting-based is also presented as a similar method to [Chang J.H and Lee WS., 2003] based on the estimation mechanism of [Manku G. and Motwani R., 2002].
In [Lin C.H. et al, 2005], the first time-sensitive slidingwindow was proposed, which regards a fixed time period as the basic unit for mining.At which the transaction data stream TDS = T 1 ,T 2 , . ..,TN is a continuous sequence of transactions, where N is the transaction identifier of latest incoming transaction T N .
A transaction T = (TU id , T id , itemset), where TU id is the identifier of the time unit, and T id is the identifier of the transaction.A time-sensitive sliding window (TimeSW) in the transaction data stream is a window that slides forward for every time unit (TU).Each time unit TU i consists of a variable number, |TU i |, of transactions, and |TU i | is also called the size of the time unit.Hence, the current time-sensitive sliding window with w time units is TimeSW N_w+1 = [TU N_w+1 , TU N_w+2 , . ..,TUN ], where N N_w+1 is the id of time unit of current TimeSW, and N is the TU id of latest time unit TU N .The window at each slide has a fixed number, w, of time units.The value w = |TU N_w+1 | +|TU N_w+2 | + …… + |TU N | is called the size of the time-sensitive sliding window and denoted as |TimeSW|.
It doesn't use a relaxed minimum support threshold, like almost all data stream mining algorithms; instead it maintained a data structure named the discounting table (DT) to retain the frequent itemsets with their support counts in the individual basic TUs of the current window.Fig. 3.
The sliding window model Moreover, a data structure named the Potentially Frequent-itemset Pool (PFP) is used to keep the frequent itemsets in W i and the frequent ones in TU i .it includes the itemsets that are frequent in TU i but not frequent in W i-1 in PFP because they are possibly frequent in W i .Only the summary information derived from W i-1 is provided for mining frequent itemsets in W i .It provides two alternatives to determine the frequent itemsets for output, having trade-off between accuracy and efficiency: 1) Recall-oriented and 2) Precision-oriented.
In [Li H. F. et al, 2006] and [Li H. F. and Lee S. Y., 2009], an algorithm called MFI-TransSW is presented.It used an effective bit-sequence representation of items to reduce the time and memory needed to slide the windows.For each item X in the current SW, a bit-sequence with w bits, denoted as Bit(X), is constructed.If an item X is in the i-th transaction of current SW, the i-th bit of Bit(X) is set to be 1; otherwise, it is set to be 0. It consists of three phases: 1) window initialization phase: when the number of transactions generated so far in a transaction data stream is less than or equal to a userpredefined sliding window size w, each item in the new incoming transaction is transformed into its bit-sequence representation; 2) window sliding phase: after the sliding window TransSW becomes full, a new incoming transaction is appended to the sliding window, and the oldest transaction is removed from the window.The bitwise left shift operation is used to remove the aged transaction from the set of items in the current sliding window.After sliding the window, an item X in the current transaction-sensitive sliding window is dropped if and only if sup(X)TransSW = 0.; 3) frequent itemsets generation phase: It is performed only when the upto-date set of frequent itemsets is requested.a level-wise method is used to generate the set of candidate itemsets CI k (candidate itemsets with k items) from the pre-known frequent itemsets FI k−1 (frequent itemsets with k-1 items) according to the Apriori property [Agrawal R. and Srikant R., 1994].Then, the bitwise AND operation is used to compute the support (the number of bit 1) of these candidates in order to find the frequent k-itemsets FI k .
In [Cheng J. et

System start
Data stream www.ijacsa.thesai.orgcontrast with other algorithms which uses an error parameter, ϵ , to control the mining accuracy, which leads to a dilemma.It tackles this problem by considering ϵ=r.σ as a relaxed MST , where r (0 ≤ r ≤ 1) is the relaxation rate, to mine the set of FIs over each time unit t in the sliding window, allowing to increase ϵ at the expense of slightly degraded accuracy, but significantly improves the mining efficiency and saves memory usage.When an itemset is retained in the window longer, its minimum support required to approach the minimum support of an FI.Thus, the number of potential FIs to be maintained is greatly reduced.
In [Kun Li.Et al, 2008], an algorithm called BFI Steam is presented.It is a Bounded FIs algorithm, which maintains all accurate frequent itemsets from sliding windows by monitoring the boundary between frequent itemsets and infrequent itemsets; it restricts the update process on a small part of the tree.Mining all frequent itemsets with accurate frequencies is just to traverse the tree.It has no candidate generation and it uses a prefix-tree based structure, called BFItree, to maintain all frequent itemsets in the sliding window.The BFI-tree is a prefix-tree based data structure and is derived from CET structure in the Moment algorithm [Chi Y. et al, 2004].It uses a count-based sliding window with fixed size of N, which always contains recent N transactions.BFItree monitors the boundary movements to efficiently maintain the selected part of infrequent itemsets.If a node status changes, either from infrequent to frequent or vice versa, it must come through the boundary and result in boundary movements.Boundary movements may cause recursive updates, which will be restricted in a small sub-tree.It may also cause creating new nodes, which need an additional scan on all transactions in the sliding window to compute their frequencies.In order to return accurate frequent itemsets, all transactions in the sliding window must be maintained in a highly compact structure.However, the boundary is stable at most time, which means the update cost is very small.BFItree uses the Apriori property [Agrawal R. and Srikant R., 1994] in construction and updates to prune infrequent nodes.So, 1) all the children of an infrequent node should be pruned and consequently all infrequent nodes are leaves in BFI-tree, 2) some children of a frequent node may be infrequent and should be pruned.
In [Ren J. D. and Li K., 2008], an algorithm called MRFI-SW is presented to mine Recent FIs with SW, which uses a transaction-sensitive sliding window.The transactions are denoted with a special representation, which can denote the number and the order of items that are contained in the transactions.Using Apriori property, frequent itemsets can be mined through processing the representation's information.In this representation, for each itemset X which is contained in transactions in current sliding window is constructed as a sequence.The length of the sequence is w, where w is the number of transactions in transaction-sensitive sliding window.Each entry is the form of (bit, order), denoted as R(x).If item X is in the i-th transaction in current sliding window, the i-th entry of R(X)_bit is set to be 1 and the order of items in a transaction can get from R(X)_order, otherwise the R(X) is set to be 0 (R(X)_bit=R(X)_order=0).The process of creating this sequence of items for transaction in current sliding window is called bit-order transform.For example, let <T1, (acd)>, <T2, (bce)>, <T3, (abce)>, and <T4, (be)>, and the size of sliding window be 3, hence, SW1=[T1, T2, T3] and SW2=[T2, T3, T4].In SW1, because item a appears in T1 and T3 and is the first item in both transactions, so, R(a) is <(1, 1), 0, (1, 1)>.Similarly, R(c)=<(1, 2), (1, 2), (1, 3)>, R(d)=<(1, 3), 0, 0>, R(b)=<0, (1, 1), (1, 2)>, and R(e)=<0, (1,3), (1,4)>.
In [Naganth E.R. and Dhanaseelan F. R., 2008] a graph structure is proposed to capture the contents of transactions in a sliding window.The graph structure captures the contents of transactions in each batch of streaming data.Transaction items are arranged according to some canonical order, which can be specified by the user prior to the graph construction or the mining process.Whenever a new batch of transactions flows in, it appends to this list at each node its frequency count in the current batch.In other words, the last entry of the list at node X shows the frequency count of X in the current batch.When the next batch of transactions comes in, the list is shifted forward.The last entry shifts and becomes the second last entry; this leaves room for the newest batch.It uses a pointer to indicate the last update at each node.If the pointer points to the previous entry in the list of frequency counts at a node X, then this indicates that X has just been visited at the update of the last batch.On the other hand, if the pointer points to a much earlier entry in the list at a node Y, then this indicates that Y has not been visited since then and that the frequent counts of Y for the entries in between should be 0s.Since this graph structure is constructed independent of the minimum support threshold, every transaction in the current window is captured.Once such a tree is constructed, we can mine frequent itemsets from it in a fashion similar to FPgrowth [Han J. et al, 2000] using the user supplied .Since items are consistently arranged according to some canonical order, one can guarantee the inclusion of all frequent items using just upward traversals, leading to exact mining results.There is also no worry about possible omission ordoubly counting of items during the mining process.So, mining is delayed until it is needed to avoid lots of unnecessary computation.
In [Pauray S. and Tsai M., 2009], an algorithm called WSW Algorithm is proposed.It is a weighted SW framework is proposed.See preliminaries of time-sensitive sliding window model in the description of [Lin C.H. et al, 2005].In the traditional sliding window model, only one window is considered for mining at each time point.WSW proposed a flexible framework for continuous query processing in data streams.The time interval for periodical queries is defined to be the size of a window.In traditional sliding window model, the size of a window is usually defined to be a given number of transactions, say T.Although only the latest T transactions are considered, the time to cover these T transactions may be long.If we ignore the significance of data at different time intervals, the effectiveness of the mining result may decrease.So the WSW model has the following two new features: (1) window size is defined by time, not the number of transactions, the purpose is to avoid the case where intervals that cover T transactions at different time points may vary dramatically.(2) number of windows considered for mining is specified by the user.Moreover, the user can assign different www.ijacsa.thesai.orgweights to different windows according to the importance of data in each section.For example, the data near to the current moment may be more influential in the mining, and could be given a higher weight.The weights of windows affect the determination of frequent items.Even if the total support count of an item is large, if its support count in the window with a high weight is very low, it may not become a frequent item.Thus the consideration of weights for windows is reasonable and significant.So, the mining result would be closer to user's requirements.
By data characteristics, an improved algorithm, WSW-Imp, is explored to further reduce the time of deciding whether a candidate itemset is frequent or not.Experimental results show that the performance of WSW-Imp significantly outperforms that of WSW over weighted sliding windows.
In [ , is constructed.Similarly, if the item X is in the i-th transaction of TimeSW N_w+1 , the ith bit of , is set to be 1.Otherwise, it is set to be 0. As in certain applications, users can only be interested in the data recently arriving within a fixed time period.Sliding window model ignores the important fact of that Itemsets are changing their frequencies according to certain time intervals.In other words the sliding window model ignores the history of the itemsets' frequencies.
IV. STORAGE, TIME AND ACCURACY TRADEOFF TABLE 1 presents the important comparative parameters to distinguish among the state of the art algorithms which are as the following: 1) The mining model, 2) The accuracy of the results, 3) The processing strategy, 4) The units of processing and 5) The data to be processed.
According to Table 1, the first and last parameters are closely related, at which the landmark and fading models process the whole data stream from the system start.On the other hand, the sliding window model processes only a recent portion of the data stream.
All the algorithms of the landmark and fading models using the count based windows, except the algorithm of [Giannella, J. et al, 2003], which uses the time based window.
In the Sliding window model, all the algorithms using the count base window, except the algorithms of [Lin C.H. et al, 2005], [Cheng J. et al, 2006], [Pauray S. and Tsai M., 2009] and part of [Li H. F. and Lee S. Y., 2009], which considered a fixed time period as the basic unit for processing (i.e time based window).
The count based windows are easy for programmers to deal with and not easy for people to specify.By contrast, in time based windows, it is natural for people to specify a time period as the basic unit, but it is more difficult to deal with windows with variable sizes in terms of bytes.In the performance perspective, no difference between using the time based or the count based windows [Arasu A. and Widom J., 2003].
The algorithms of [Manku G.,   Using batch processing.Processing each transaction against the entire stream in most cases is less efficient than processing a batch of transactions against the entire stream.In general, batch processing is more suitable for high speed data streams [Cheng J. et al, 2008].See Figure 4. ] favors recent itemsets by diminishing exponentially the effect of old transactions; but estimating itemsets' frequencies from their subsets leading to a propagated error.And [Chang J.H. and Lee WS., 2003] partitions the window according to a logarithmic scale with the recent frequency of an itemset recorded at a finer granularity using a tilted-time window, which answers timesensitive queries at the expense of more than one record kept for each itemset leading to a very large structure over time which in turn degrade the mining process.All the variations of the landmark and fading models have the limitation of providing approximate answers for long-term data and adjust their storage requirement based on the available space.
All the algorithms are producing approximate results, except [Kun Li. et al, 2008], [Ren J. D. and Li K., 2008] and [Naganth E.R. and Dhanaseelan F. R., 2008], which produce exact results but for only a recent portion of the data stream (i.e they are under the sliding window model).All the approximate algorithms adopt false-positive approaches, except [Yu J. X. et al, 2004] and an option in [Lin C.H. et al, 2005], which adopts a false-negative approach.The falsepositive approach uses a relaxed minimum support threshold, ϵ, to reduce the number of false-positives, so obtaining a more accurate result.However, to obtain a more accurate result, a smaller value of ϵ is to be set, leading to a larger set of sub-FIs to be maintained, consuming large amount of memory.The false-negative approach also uses a relaxed minimum support threshold, ϵ; however, its' use lowers the probability of discarding an infrequent itemset that may become frequent later.The error bound in the computed support and the possible false mining results of most of the false-positive approaches are implied by the following equation according the derivation of [Cheng J. et al, 2008]: Support error bound = err (X)/N τ , False results = {X | freq(X) < σN ≤ ( freq (X) +err(X))} Almost all the online mining algorithms do the mining process during the entering of the stream, by constructing, filling and extracting FIs in parallel to the data stream entering; except [Li H. F. et al, 2006] and [Li H. F. and Lee S. Y., 2009] and [Naganth E.R. and Dhanaseelan F. R., 2008], which actually extract FIs from the filled data structure (i.e done during the data stream entering) only when it is requested by the user; which is a more effective strategy.
Any data stream mining algorithm aims to enforce correct and accurate results, minimized consumption of memory, fully utilized CPU and minimized time for processing.Correctness here refers to mining only true frequent itemsets (i.e no false positives, nor false negatives), and accuracy refers to mining exact or approximated frequencies for the itemsets (leading to true or nearest to true frequent itemsets).
Exact mining requires keeping track of all itemsets in the window and their actual frequency, because any infrequent itemset may become frequent later in the stream.However, the number of all itemsets is O(2 |I| ) (that is, given a set of items I, the possible number of itemsets can be up to 2 |I| − 1) making exact mining computationally difficult, in terms of both CPU and memory.Also, using a relaxed minimum support threshold, , to control the quality of the approximation of the mining result leads to a dilemma.The smaller the value of , the more accurate is the approximation but the greater is the number of sub-FIs generated, which requires both more memory space and more CPU processing power.However, if approaches σ, more false-positive answers will be included in the result, since all sub-FIs whose computed frequency is at least (σ-)N ≈ 0 are outputted while the computed frequency of the sub-FIs can be less than their actual frequency by as much as σ.N.Almost all the approximation algorithms produce falsepositive results, at which, the set of sub-FIs kept is often too large in order to obtain a highly accurate answer.Thus, throughput is decreased and memory consumption is increased due to the processing of a large number of sub-FIs.But for the approximation algorithms which produce false negative results [Yu J. X. et al, 2004], it infringes the correctness.Accordingly, there is a direct proportion between the accuracy and memory consumption; more accurate results needs more memory usage leading to increased processing time.

V. CONCLUSION
According to the continues high flow of data streams and the relatively limited resources of CPU and storage, the process of mining frequent itemsets is chained to mining approximated frequencies, even it has guarantee on error bounds.The accuracy of the resulting FIs directly proportional with the memory usage; high accuracy needs high memory usage.
Therefore the algorithms of mining FIs from data streams which are using the Landmark model, Fading model (at which all the data stream is mined) or the Sliding Window model (at which only recent data is mined); leading to approximated results certainly.

VI. FUTURE WORK
We can focus in future to get exact mining results with regard to the available storage.Traditional data mining algorithms do not produce any results that show the change of the results over time.Dynamics of data streams using changes in the knowledge structures generated would benefit many temporal-based analysis applications.

Fig. 2 .
Fig.2.a) Fading model, b) Tilted time windowIn[Giannella, J. et al, 2003], an algorithm called FP-Streaming is proposed.It proposed an FP-stream structure[Han J. et al, 2000] based algorithm, to mine frequent itemsets at multiple time granularities by a novel titled-time windows technique of[Chen, Y. et al, 2002].Frequent patterns are maintained under a tilted-time window framework in order to answer time-sensitive queries.The frequency of an itemset is kept at a finer granularity for more recent time frames and at a coarser granularity for older time frames.For example, we may keep the frequency of an FI in the last hour, the last 2 h, the last 4 h, and so on.

[
Cohen E. and Strauss M., 2003] and [Chang J. and Lee W., 2004] have also provided variations of decay functions, like in [56] 2003 , under the time-fading model.The fading model was proposed to overcome the limitation of time unconscious in the landmark model.It diminishes the effect of the old and obsolete information of a data stream on the mining result.In other words, it considers the effect of old a) Weighted windows b) Tilted-time windows W1 W1* 0.
Li H. F. and Lee S. Y., 2009], an algorithm called MFI-Time-SW is proposed.It works in a SW environment with a time-sensitive SW.See preliminaries of time-sensitive sliding window model in the description of [Lin C.H. et al, 2005].The major differences between MFI-TransSW []Li H. F. et al, 2006] and [Li H. F. and Lee S. Y., 2009]and MFI-TimeSW are the following: 1) Unit of data processing: each time unit contains variable number of transactions.2) Bit-sequence transformation of a time unit: For each item X in the current time-sensitive stream sliding window TimeSW N_w+1 , a bitsequence with |TimeSW N_w+1 | bits, denoted as

3 )
Number of sliding transactions: In the window sliding phase of MFI-TimeSW algorithm, after the oldest time unit TU N_w+1 is removed from the current sliding window, a new time unit TU N+1 is appended to the window.If the aged time unit TU N_w+1 contains d transactions, MFI-TimeSW performs d times of bitwise left shift operation on the current sliding window.After that, MFI-TimeSW uses that same pruning method Item-Prune to improve the memory usage in mining process.4) Dynamic frequent threshold of itemsets: the value of frequent threshold is s * |TimeSW| is a dynamic value, where |TimeSW| = |TU N_w+1 | + |TU N_w+2 | + …. + |TU N |.The sliding window model captures recent pattern changes and trends, by utilizing only the latest transactions for mining.

Fig. 4 .
Fig.4.Time, memory and accuracy tradeoff[Chang J.H. and Lee WS., 2003] favors recent itemsets by diminishing exponentially the effect of old transactions; but estimating itemsets' frequencies from their subsets leading to a propagated error.And [Chang J.H. and Lee WS., 2003] partitions the window according to a logarithmic scale with the recent frequency of an itemset recorded at a finer granularity using a tilted-time window, which answers timesensitive queries at the expense of more than one record kept for each itemset leading to a very large structure over time which in turn degrade the mining process.All the variations of the landmark and fading models have the limitation of providing approximate answers for long-term data and adjust their storage requirement based on the available space. www.ijacsa.thesai.org It can assign different weights to transactions such that new ones have higher weights than old ones, these weights are decreasing as time passes by.

TABLE I .
COMPARATIVE SUMMARY AMONG THE SATE-OF-THE-ART ALGORITHMS