# A Survey on Big IoT Data Indexing: Potential Solutions, Recent Advancements, and Open Issues
## 5 Existing Indexing Techniques
### Multidimensional Indexing Techniques
#### 5.1.3 Bitmap-Based Technique  
Bitmap index (also known as BitArray or vector-based index) is an efficient indexing structure for search and retrieval of large databases and data warehouses (DW) with less complexity and is very efficient when attributes have a low number of distinct values. This technique is used by several popular commercial systems such as Oracle [192, 193] and SybaseIQ [194, 195]. Bitmap index technique is based on the representation of the existence or absence of a specific property by a sequence of bits where each bit (0/1) represents the value of an attribute for a given tuple such that the bit sequence has a 1 in position \(i\) if the \(i^{th}\) data element meets the property, and 0 otherwise [196, 197]. Bitmap index uses logical operations, such as AND, OR, NOT and XOR to respond and accelerate responses to complex queries [198]. \begin{table}
\begin{tabular}{l l l l} \hline \hline
**Proposition** & **Refs** & **Advantages** & **Disadvantages** \\ \hline \multirow{3}{*}{Kd-tree} & \multirow{3}{*}{[158]} & \(\bullet\) Balanced hierarchical split & \(\bullet\) Costly and arbitrary \\  & & \(\bullet\) Simple implementation & \(\bullet\) Low use of allocated space \\ \cline{3-4}  & & \(\bullet\) Performance limited by data dimension \\ \hline \multirow{3}{*}{Adaptive Kd-tree} & \multirow{3}{*}{[167]} & \(\bullet\) Lower-cost k-nn research \\  & & \(\bullet\) Storage at leaf nodes & \(\bullet\) Not appropriate for frequent insertion and deletion \\ \hline \multirow{2}{*}{KdB-tree} & \multirow{3}{*}{[168]} & \(\bullet\) Height-balanced structure & \(\bullet\) Supports only point data \\  & & \(\bullet\) Efficient search for point queries & \(\bullet\) Cannot guarantee minimum storage utilization \\  & & \(\bullet\) Insufficient research performance \\ \hline \multirow{2}{*}{S Kd-tree} & \multirow{3}{*}{[169]} & \(\bullet\) Suitable for non-zero size spatial objects \\  & & \(\bullet\) Ensures good storage \\ \hline \multirow{3}{*}{Quad-tree} & \multirow{3}{*}{[159, 160]} & \(\bullet\) Efficient storage and retrieval \\  & & & \(\bullet\) Not balanced structure \\  & & & \(\bullet\) Does not consider the spatial distribution of the data during the partitioning phase \\  & & & \(\bullet\) Not suitable for higher-dimensional data \\ \hline \multirow{2}{*}{PH-tree} & \multirow{2}{*}{[176]} & \(\bullet\) Faster and more efficient in terms of space \\  & & & \(\bullet\) Supports point and range query only \\  & & & \(\bullet\) High memory consumption \\ \hline \multirow{2}{*}{ND-tree} & \multirow{2}{*}{[183]} & \(\bullet\) Support high-dimensional data \\  & & & \(\bullet\) Loss of information on the original data \\  & & & \(\bullet\) Search performance limited by data dimensions \\ \hline \multirow{2}{*}{QQMBR-tree} & \multirow{2}{*}{[184, 185]} & \(\bullet\) Reduce the false positives in spatial query \\  & & & \(\bullet\) Reduces the storage space \\  & & \(\bullet\) Reduce query execution times \\ \hline \multirow{2}{*}{VA-file} & \multirow{2}{*}{[162]} & \(\bullet\) Simple implementation \\  & & \(\bullet\) Sequential search improved \\ \hline Octree & \multirow{2}{*}{[186]} & \(\bullet\) Better spatial management and k-nn search \\ \hline \multirow{2}{*}{Pyramid} & \multirow{2}{*}{[161]} & \(\bullet\) Degradation on large scale \\ \cline{3-4}  & & & \(\bullet\) Poor request processing k-nn \\ \cline{3-4}  & & & \(\bullet\) Degradation on large scale \\ \hline \hline \end{tabular}
\end{table} 
Table 10: Summary of advantage and disadvantage of multidimensional indexing techniques based on space partitioning.