Associative array
ಕಂಪ್ಯೂಟರ್ ವಿಜ್ಞಾನದಲ್ಲಿ, ಅಸೋಸಿಯೇಟಿವ್ ಅರೇ, ಮ್ಯಾಪ್, ಸಿಂಬಲ್ ಟೇಬಲ್ ಅಥವಾ ಡಿಕ್ಷನರಿ ಎಂಬುದು ಅಮೂರ್ತ ದತ್ತಾಂಶ ಪ್ರಕಾರವಾಗಿದ್ದು, ಇದು (ಕೀಲಿ, ಮೌಲ್ಯ) ಜೋಡಿಗಳ ಸಂಗ್ರಹವನ್ನು ಸಂಗ್ರಹಿಸುತ್ತದೆ, ಅಂದರೆ ಪ್ರತಿ ಸಂಭವನೀಯ ಕೀಲಿ ಸಂಗ್ರಹದಲ್ಲಿ ಒಮ್ಮೆಯಾದರೂ ಕಾಣಿಸಿಕೊಳ್ಳುತ್ತದೆ. ಗಣಿತದ ಪರಿಭಾಷೆಯಲ್ಲಿ, ಸಹಾಯಕ ಶ್ರೇಣಿಯು ಸೀಮಿತ ಡೊಮೇನ್ನೊಂದಿಗೆ ಒಂದು ಕಾರ್ಯವಾಗಿದೆ. ಇದು 'ಲುಕ್ಅಪ್', 'ರಿಮೂವ್' ಮತ್ತು 'ಇನ್ಸರ್ಟ್' ಕಾರ್ಯಾಚರಣೆಗಳನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ. ನಿಘಂಟಿನ ಸಮಸ್ಯೆಯು ಸಹಾಯಕ ಸರಣಿಗಳನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುವ ಸಮರ್ಥ ದತ್ತಾಂಶ ರಚನೆಗಳನ್ನು ವಿನ್ಯಾಸಗೊಳಿಸುವ ಶ್ರೇಷ್ಠ ಸಮಸ್ಯೆಯಾಗಿದೆ. ಶಬ್ದಕೋಶದ ಸಮಸ್ಯೆಗೆ ಎರಡು ಪ್ರಮುಖ ಪರಿಹಾರಗಳೆಂದರೆ ಹ್ಯಾಶ್ ಕೋಷ್ಟಕಗಳು ಮತ್ತು ಸರ್ಚ್ ಟ್ರೀಗಳು. ನೇರವಾಗಿ ಉದ್ದೇಶಿಸಲಾದ ಸರಣಿಗಳು, ಬೈನರಿ ಸರ್ಚ್ ಟ್ರೀಗಳು ಅಥವಾ ಇತರ ಹೆಚ್ಚು ವಿಶೇಷವಾದ ರಚನೆಗಳನ್ನು ಬಳಸಿಕೊಂಡು ಸಮಸ್ಯೆಯನ್ನು ಪರಿಹರಿಸಲು ಕೆಲವೊಮ್ಮೆ ಸಾಧ್ಯವಿದೆ. ಅನೇಕ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಗಳು ಅಸೋಸಿಯೇಟಿವ್ ಸರಣಿಗಳನ್ನು ಪ್ರಾಚೀನ ದತ್ತಾಂಶ ಪ್ರಕಾರಗಳಾಗಿ ಒಳಗೊಂಡಿವೆ, ಆದರೆ ಇತರ ಅನೇಕ ಭಾಷೆಗಳು ಅಸೋಸಿಯೇಟಿವ್ ಸರಣಿಗಳನ್ನು ಬೆಂಬಲಿಸುವ ಸಾಫ್ಟ್ವೇರ್ ಗ್ರಂಥಾಲಯಗಳನ್ನು ಒದಗಿಸುತ್ತವೆ. ವಿಷಯ-ವಿಳಾಸ ಮಾಡಬಹುದಾದ ಮೆಮೊರಿಯು ಸಹಾಯಕ ಸರಣಿಗಳಿಗೆ ನೇರ ಯಂತ್ರಾಂಶ-ಮಟ್ಟದ ಬೆಂಬಲದ ಒಂದು ರೂಪವಾಗಿದೆ. ಅಸೋಸಿಯೇಟಿವ್ ಸರಣಿಗಳು ಜ್ಞಾಪಕ ಮತ್ತು ಡೆಕರೇಟರ್ ಮಾದರಿಯಂತಹ ಮೂಲಭೂತ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಮಾದರಿಗಳನ್ನು ಒಳಗೊಂಡಂತೆ ಅನೇಕ ಅನ್ವಯಿಕೆಗಳನ್ನು ಹೊಂದಿವೆ. ಈ ಹೆಸರು ಗಣಿತಶಾಸ್ತ್ರದಲ್ಲಿ ತಿಳಿದಿರುವ ಸಹಾಯಕ ಗುಣಲಕ್ಷಣದಿಂದ ಬಂದಿಲ್ಲ. ಬದಲಿಗೆ, ಇದು ಕೀಲಿಗಳೊಂದಿಗಿನ ಮೌಲ್ಯಗಳ ಸಂಬಂಧದಿಂದ ಉದ್ಭವಿಸುತ್ತದೆ. ಇದನ್ನು ಅಸೋಸಿಯೇಟಿವ್ ಪ್ರೊಸೆಸರ್ಗಳೊಂದಿಗೆ ಗೊಂದಲಕ್ಕೀಡಾಗಬಾರದು. ಸಹಾಯಕ ಶ್ರೇಣಿಯಲ್ಲಿ, ಕೀಲಿ ಮತ್ತು ಮೌಲ್ಯದ ನಡುವಿನ ಸಂಬಂಧವನ್ನು ಸಾಮಾನ್ಯವಾಗಿ "ಮ್ಯಾಪಿಂಗ್" ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ; ಅದೇ ಪದವನ್ನು ಹೊಸ ಸಂಬಂಧವನ್ನು ರಚಿಸುವ ಪ್ರಕ್ರಿಯೆಯನ್ನು ಉಲ್ಲೇಖಿಸಲು ಸಹ ಬಳಸಬಹುದು. ಸಾಮಾನ್ಯವಾಗಿ ಸಹಾಯಕ ವ್ಯೂಹಕ್ಕೆ ವ್ಯಾಖ್ಯಾನಿಸಲಾದ ಕಾರ್ಯಾಚರಣೆಗಳೆಂದರೆಃ ಸೇರಿಸು ಅಥವಾ ಇರಿಸಿಃ ಸಂಗ್ರಹಕ್ಕೆ ಹೊಸ ಜೋಡಿಯನ್ನು ಸೇರಿಸಿ, ಅದರ ಹೊಸ ಮೌಲ್ಯಕ್ಕೆ ಕೀಲಿಯನ್ನು ಮ್ಯಾಪ್ ಮಾಡಿ. ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಯಾವುದೇ ನಕ್ಷೆಯನ್ನು ತಿದ್ದಿ ಬರೆಯಲಾಗುತ್ತದೆ. ಈ ಕಾರ್ಯಾಚರಣೆಯ ವಾದಗಳು ಪ್ರಮುಖ ಮತ್ತು ಮೌಲ್ಯಗಳಾಗಿವೆ. ತೆಗೆದುಹಾಕಿರಿ ಅಥವಾ ಅಳಿಸಿಃ ಸಂಗ್ರಹದಿಂದ ಜೋಡಿಯನ್ನು ತೆಗೆದುಹಾಕಿ, ಕೊಟ್ಟಿರುವ ಕೀಲಿಯನ್ನು ಅದರ ಮೌಲ್ಯದಿಂದ ಅನ್ಮ್ಯಾಪ್ ಮಾಡಿ. ಈ ಕಾರ್ಯಾಚರಣೆಯ ವಾದವು ಮುಖ್ಯವಾಗಿದೆ. ಹುಡುಕಿ, ಹುಡುಕಿ ಅಥವಾ ಪಡೆಯಿರಿಃ ನಿರ್ದಿಷ್ಟ ಕೀಲಿಗೆ ಬದ್ಧವಾಗಿರುವ ಮೌಲ್ಯವನ್ನು (ಯಾವುದಾದರೂ ಇದ್ದರೆ) ಹುಡುಕಿ. ಈ ಕಾರ್ಯಾಚರಣೆಯ ವಾದವು ಪ್ರಮುಖವಾಗಿದೆ, ಮತ್ತು ಮೌಲ್ಯವನ್ನು ಕಾರ್ಯಾಚರಣೆಯಿಂದ ಹಿಂತಿರುಗಿಸಲಾಗುತ್ತದೆ. ಯಾವುದೇ ಮೌಲ್ಯವು ಕಂಡುಬರದಿದ್ದರೆ, ಕೆಲವು ಹುಡುಕಾಟ ಕಾರ್ಯಗಳು ವಿನಾಯಿತಿಯನ್ನು ಹೆಚ್ಚಿಸುತ್ತವೆ, ಆದರೆ ಇತರರು ಪೂರ್ವನಿಯೋಜಿತ ಮೌಲ್ಯವನ್ನು ಹಿಂದಿರುಗಿಸುತ್ತಾರೆ (ಉದಾಹರಣೆಗೆ ಶೂನ್ಯ, ಶೂನ್ಯ, ಅಥವಾ ಕನ್ಸ್ಟ್ರಕ್ಟರ್ಗೆ ರವಾನಿಸಲಾದ ನಿರ್ದಿಷ್ಟ ಮೌಲ್ಯ). ಸಂಯೋಜಿತ ಸರಣಿಗಳು ನಕ್ಷೆಗಳ ಸಂಖ್ಯೆಯನ್ನು ನಿರ್ಧರಿಸುವುದು ಅಥವಾ ಎಲ್ಲಾ ನಕ್ಷೆಗಳ ಮೇಲೆ ಲೂಪ್ ಮಾಡಲು ಇಟರೇಟರ್ ಅನ್ನು ನಿರ್ಮಿಸುವಂತಹ ಇತರ ಕಾರ್ಯಾಚರಣೆಗಳನ್ನು ಸಹ ಒಳಗೊಂಡಿರಬಹುದು. ಅಂತಹ ಕಾರ್ಯಾಚರಣೆಗಳಿಗೆ, ನಕ್ಷೆಗಳನ್ನು ಹಿಂದಿರುಗಿಸುವ ಕ್ರಮವನ್ನು ಸಾಮಾನ್ಯವಾಗಿ ಅನುಷ್ಠಾನ-ವ್ಯಾಖ್ಯಾನಿಸಲಾಗುತ್ತದೆ. ಬಹು ನಕ್ಷೆಯು ಒಂದೇ ಕೀಲಿಯೊಂದಿಗೆ ಅನೇಕ ಮೌಲ್ಯಗಳನ್ನು ಸಂಯೋಜಿಸಲು ಅನುಮತಿಸುವ ಮೂಲಕ ಸಹಾಯಕ ಶ್ರೇಣಿಯನ್ನು ಸಾಮಾನ್ಯಗೊಳಿಸುತ್ತದೆ. ಎರಡು ದಿಕ್ಕಿನ ನಕ್ಷೆಯು ಸಂಬಂಧಿತ ಅಮೂರ್ತ ದತ್ತಾಂಶ ಪ್ರಕಾರವಾಗಿದ್ದು, ಇದರಲ್ಲಿ ನಕ್ಷೆಗಳು ಎರಡೂ ದಿಕ್ಕುಗಳಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತವೆಃ ಪ್ರತಿ ಮೌಲ್ಯವು ವಿಶಿಷ್ಟವಾದ ಕೀಲಿಯೊಂದಿಗೆ ಸಂಬಂಧ ಹೊಂದಿರಬೇಕು, ಮತ್ತು ಎರಡನೇ ಹುಡುಕಾಟ ಕಾರ್ಯಾಚರಣೆಯು ಒಂದು ಮೌಲ್ಯವನ್ನು ವಾದವಾಗಿ ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ ಮತ್ತು ಆ ಮೌಲ್ಯಕ್ಕೆ ಸಂಬಂಧಿಸಿದ ಕೀಲಿಯನ್ನು ನೋಡುತ್ತದೆ. ಗುಣಲಕ್ಷಣಗಳು ಸಹಾಯಕ ಶ್ರೇಣಿಯ ಕಾರ್ಯಾಚರಣೆಗಳು ವಿವಿಧ ಗುಣಲಕ್ಷಣಗಳನ್ನು ತೃಪ್ತಿಪಡಿಸಬೇಕುಃ ಲುಕ್ಅಪ್ (ಕೆ, ಇನ್ಸರ್ಟ್ (ಜೆ, ವಿ, ಡಿ)) = ಕೆ = = ಜೆ ಆಗಿದ್ದರೆ ಬೇರೆ ಲುಕ್ಅಪ್ (ಕೆ, ಡಿ) ಲುಕ್ಅಪ್ (ಕೆ, ಹೊಸ ()) = ವಿಫಲವಾದರೆ, ಅಲ್ಲಿ ವೈಫಲ್ಯವು ಎಕ್ಸೆಪ್ಶನ್ ಅಥವಾ ಡೀಫಾಲ್ಟ್ ಮೌಲ್ಯ ರಿಮೂವ್ (ಕೆ, ಇನ್ಸರ್ಟ್ (ಜೆ, ವಿ, ಡಿ)) = ಕೆ = = ಜೆ ಆಗಿದ್ದರೆ ತೆಗೆದುಹಾಕಿ (ಕೆ, ಡಿ) ಇಲ್ಲದಿದ್ದರೆ ಇನ್ಸರ್ಟ್ (ಜೆ, ವಿ, ರಿಮೂವ್ (ಕೆ, ಡಿ)) ತೆಗೆದುಹಾಕಿ (ಕೆ, ಹೊಸ ()) = ಹೊಸ () ಅಲ್ಲಿ ಕೆ ಮತ್ತು ಜೆ ಕೀಲಿಗಳಾಗಿವೆ, ವಿ ಒಂದು ಮೌಲ್ಯವಾಗಿದೆ, ಡಿ ಒಂದು ಸಹಾಯಕ ಶ್ರೇಣಿಯಾಗಿದೆ, ಮತ್ತು ಹೊಸ () ಹೊಸ, ಖಾಲಿ ಸಹಾಯಕ ಶ್ರೇಣಿಯನ್ನು ರಚಿಸುತ್ತದೆ. ಉದಾಹರಣೆ ಗ್ರಂಥಾಲಯವು ನೀಡಿದ ಸಾಲಗಳ ಗುಂಪನ್ನು ದತ್ತಾಂಶ ರಚನೆಯಲ್ಲಿ ಪ್ರತಿನಿಧಿಸಲಾಗಿದೆ ಎಂದು ಭಾವಿಸೋಣ. ಗ್ರಂಥಾಲಯದಲ್ಲಿರುವ ಪ್ರತಿಯೊಂದು ಪುಸ್ತಕವನ್ನು ಒಂದು ಸಮಯದಲ್ಲಿ ಒಬ್ಬ ಗ್ರಂಥಾಲಯ ಪೋಷಕ ಮಾತ್ರ ಪರಿಶೀಲಿಸಬಹುದು. ಆದಾಗ್ಯೂ, ಒಬ್ಬ ಪೋಷಕನಿಗೆ ಅನೇಕ ಪುಸ್ತಕಗಳನ್ನು ಪರಿಶೀಲಿಸಲು ಸಾಧ್ಯವಾಗಬಹುದು. ಆದ್ದರಿಂದ, ಯಾವ ಪುಸ್ತಕಗಳನ್ನು ಪರಿಶೀಲಿಸಲಾಗುತ್ತದೆ ಎಂಬುದರ ಬಗ್ಗೆ ಮಾಹಿತಿಯನ್ನು ಯಾವ ಪೋಷಕರಿಗೆ ಸಹಾಯಕ ಶ್ರೇಣಿಯಿಂದ ಪ್ರತಿನಿಧಿಸಬಹುದು, ಇದರಲ್ಲಿ ಪುಸ್ತಕಗಳು ಕೀಲಿಗಳಾಗಿವೆ ಮತ್ತು ಪೋಷಕರು ಮೌಲ್ಯಗಳಾಗಿವೆ. ಪೈಥಾನ್ ಅಥವಾ ಜೆ. ಎಸ್. ಓ. ಎನ್. ನಿಂದ ಸಂಕೇತವನ್ನು ಬಳಸಿಕೊಂಡು, ದತ್ತಾಂಶ ರಚನೆಯು ಹೀಗಿರುತ್ತದೆಃ {"ಪ್ರೈಡ್ ಅಂಡ್ ಪ್ರಿಜುಡೀಸ್": "ಆಲಿಸ್", "ವುಥರಿಂಗ್ ಹೈಟ್ಸ್": "ಆಲಿಸ್", "ಗ್ರೇಟ್ ಎಕ್ಸ್ಪೆಕ್ಟೇಷನ್ಸ್": "ಜಾನ್"} "ಗ್ರೇಟ್ ಎಕ್ಸ್ಪೆಕ್ಟೇಷನ್ಸ್" ಕೀಲಿಯ ಮೇಲೆ ಒಂದು ಶೋಧ ಕಾರ್ಯಾಚರಣೆಯು "ಜಾನ್" ಅನ್ನು ಹಿಂದಿರುಗಿಸುತ್ತದೆ. ಜಾನ್ ತನ್ನ ಪುಸ್ತಕವನ್ನು ಹಿಂದಿರುಗಿಸಿದರೆ, ಅದು ಅಳಿಸುವ ಕಾರ್ಯಾಚರಣೆಗೆ ಕಾರಣವಾಗುತ್ತದೆ, ಮತ್ತು ಪ್ಯಾಟ್ ಒಂದು ಪುಸ್ತಕವನ್ನು ಪರಿಶೀಲಿಸಿದರೆ, ಅದು ಒಳಸೇರಿಸುವ ಕಾರ್ಯಾಚರಣೆಗೆ ಕಾರಣವಾಗುತ್ತದೆ, ಇದು ಬೇರೆ ಸ್ಥಿತಿಗೆ ಕಾರಣವಾಗುತ್ತದೆಃ {"ಪ್ರೈಡ್ ಅಂಡ್ ಪ್ರಿಜುಡೀಸ್": "ಆಲಿಸ್", "ದಿ ಬ್ರದರ್ಸ್ ಕರಮಜೋವ್": "ಪ್ಯಾಟ್", "ವುಥರಿಂಗ್ ಹೈಟ್ಸ್": "ಆಲಿಸ್"] ಅನುಷ್ಠಾನ ಬಹಳ ಕಡಿಮೆ ಮ್ಯಾಪಿಂಗ್ಗಳನ್ನು ಹೊಂದಿರುವ ನಿಘಂಟುಗಳಿಗೆ, ಅಸೋಸಿಯೇಷನ್ ಪಟ್ಟಿಯನ್ನು, ಮ್ಯಾಪಿಂಗ್ಗಳ ಲಿಂಕ್ ಪಟ್ಟಿಯನ್ನು ಬಳಸಿಕೊಂಡು ನಿಘಂಟನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುವುದು ಅರ್ಥಪೂರ್ಣವಾಗಬಹುದು. ಈ ಅನುಷ್ಠಾನದೊಂದಿಗೆ, ಮೂಲ ನಿಘಂಟಿನ ಕಾರ್ಯಾಚರಣೆಗಳನ್ನು ನಿರ್ವಹಿಸುವ ಸಮಯವು ಒಟ್ಟು ನಕ್ಷೆಗಳ ಸಂಖ್ಯೆಯಲ್ಲಿ ರೇಖೀಯವಾಗಿರುತ್ತದೆ; ಆದಾಗ್ಯೂ, ಇದನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುವುದು ಸುಲಭ ಮತ್ತು ಅದರ ಚಾಲನೆಯಲ್ಲಿರುವ ಸಮಯದಲ್ಲಿ ಸ್ಥಿರವಾದ ಅಂಶಗಳು ಚಿಕ್ಕದಾಗಿರುತ್ತವೆ. ಕೀಲಿಗಳನ್ನು ಕಿರಿದಾದ ವ್ಯಾಪ್ತಿಗೆ ಸೀಮಿತಗೊಳಿಸಿದಾಗ ಬಳಸಬಹುದಾದ ಮತ್ತೊಂದು ಸರಳವಾದ ಅನುಷ್ಠಾನ ತಂತ್ರವೆಂದರೆ ಒಂದು ಶ್ರೇಣಿಯನ್ನು ನೇರವಾಗಿ ಉದ್ದೇಶಿಸುವುದುಃ ನಿರ್ದಿಷ್ಟ ಕೀಲಿ k ಯ ಮೌಲ್ಯವನ್ನು ವ್ಯೂಹ ಕೋಶ A [k] ನಲ್ಲಿ ಸಂಗ್ರಹಿಸಲಾಗುತ್ತದೆ, ಅಥವಾ k ಗೆ ಯಾವುದೇ ಮ್ಯಾಪಿಂಗ್ ಇಲ್ಲದಿದ್ದರೆ ಕೋಶವು ಮ್ಯಾಪಿಂಗ್ನ ಕೊರತೆಯನ್ನು ಸೂಚಿಸುವ ವಿಶೇಷ ಕಾವಲು ಮೌಲ್ಯವನ್ನು ಸಂಗ್ರಹಿಸುತ್ತದೆ. ಈ ತಂತ್ರವು ಸರಳ ಮತ್ತು ವೇಗವಾಗಿದೆ, ಪ್ರತಿ ನಿಘಂಟಿನ ಕಾರ್ಯಾಚರಣೆಯು ಸ್ಥಿರವಾದ ಸಮಯವನ್ನು ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ. ಆದಾಗ್ಯೂ, ಈ ರಚನೆಗೆ ಸ್ಥಳಾವಕಾಶದ ಅಗತ್ಯವು ಇಡೀ ಕೀಸ್ಪೇಸ್ನ ಗಾತ್ರವಾಗಿದ್ದು, ಕೀಸ್ಪೇಸ್ ಚಿಕ್ಕದಾಗಿರದ ಹೊರತು ಅದನ್ನು ಅಪ್ರಾಯೋಗಿಕವಾಗಿಸುತ್ತದೆ. ನಿಘಂಟುಗಳನ್ನು ಅನುಷ್ಠಾನಗೊಳಿಸುವ ಎರಡು ಪ್ರಮುಖ ವಿಧಾನಗಳೆಂದರೆ ಹ್ಯಾಶ್ ಟೇಬಲ್ ಅಥವಾ ಸರ್ಚ್ ಟ್ರೀ. ಹ್ಯಾಶ್ ಟೇಬಲ್ ಅನುಷ್ಠಾನಗಳು ಅಸೋಸಿಯೇಟಿವ್ ರಚನೆಯ ಸಾಮಾನ್ಯ-ಉದ್ದೇಶದ ಅನುಷ್ಠಾನವು ಹ್ಯಾಶ್ ಟೇಬಲ್ನೊಂದಿಗೆ ಆಗಾಗ್ಗೆ ಬಳಸಲ್ಪಡುತ್ತದೆಃ ಪ್ರತಿ ಕೀಲಿಯನ್ನು ರಚನೆಯ ಪ್ರತ್ಯೇಕ "ಬಕೆಟ್" ಆಗಿ ಬೇರ್ಪಡಿಸುವ ಹ್ಯಾಶ್ ಕಾರ್ಯದೊಂದಿಗೆ ಸಂಯೋಜಿಸಲ್ಪಟ್ಟ ಒಂದು ಶ್ರೇಣಿಯು. ಹ್ಯಾಶ್ ಟೇಬಲ್ನ ಹಿಂದಿನ ಮೂಲ ಕಲ್ಪನೆಯೆಂದರೆ, ಅದರ ಸೂಚ್ಯಂಕದ ಮೂಲಕ ರಚನೆಯ ಒಂದು ಅಂಶವನ್ನು ಪ್ರವೇಶಿಸುವುದು ಸರಳ, ಸ್ಥಿರ-ಸಮಯದ ಕಾರ್ಯಾಚರಣೆಯಾಗಿದೆ. ಆದ್ದರಿಂದ, ಹ್ಯಾಶ್ ಟೇಬಲ್ಗಾಗಿ ಕಾರ್ಯಾಚರಣೆಯ ಸರಾಸರಿ ಓವರ್ಹೆಡ್ ಕೀಲಿಯ ಹ್ಯಾಶ್ನ ಗಣನೆಯಾಗಿದ್ದು, ರಚನೆಯೊಳಗೆ ಅನುಗುಣವಾದ ಬಕೆಟ್ ಅನ್ನು ಪ್ರವೇಶಿಸುವುದರೊಂದಿಗೆ ಸಂಯೋಜಿಸಲ್ಪಡುತ್ತದೆ. ಹೀಗಾಗಿ, ಹ್ಯಾಶ್ ಕೋಷ್ಟಕಗಳು ಸಾಮಾನ್ಯವಾಗಿ ಒ (1) ಸಮಯದಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತವೆ ಮತ್ತು ಸಾಮಾನ್ಯವಾಗಿ ಪರ್ಯಾಯ ಅನುಷ್ಠಾನಗಳನ್ನು ಮೀರಿಸುತ್ತವೆ. ಹ್ಯಾಶ್ ಟೇಬಲ್ಗಳು ಘರ್ಷಣೆಗಳನ್ನು ನಿಭಾಯಿಸಲು ಸಮರ್ಥವಾಗಿರಬೇಕುಃ ರಚನೆಯ ಒಂದೇ ಬಕೆಟ್ಗೆ ಎರಡು ವಿಭಿನ್ನ ಕೀಲಿಗಳ ಹ್ಯಾಶ್ ಕಾರ್ಯದಿಂದ ಮ್ಯಾಪಿಂಗ್. ಈ ಸಮಸ್ಯೆಗೆ ಎರಡು ಅತ್ಯಂತ ವ್ಯಾಪಕವಾದ ವಿಧಾನಗಳೆಂದರೆ ಪ್ರತ್ಯೇಕ ಚೈನಿಂಗ್ ಮತ್ತು ಓಪನ್ ಅಡ್ರಸಿಂಗ್. ಪ್ರತ್ಯೇಕ ಚೈನಿಂಗ್ನಲ್ಲಿ, ಶ್ರೇಣಿಯು ಮೌಲ್ಯವನ್ನು ಸ್ವತಃ ಸಂಗ್ರಹಿಸುವುದಿಲ್ಲ ಆದರೆ ಪಾಯಿಂಟರ್ ಅನ್ನು ಮತ್ತೊಂದು ಧಾರಕಕ್ಕೆ ಸಂಗ್ರಹಿಸುತ್ತದೆ, ಸಾಮಾನ್ಯವಾಗಿ ಅಸೋಸಿಯೇಷನ್ ಪಟ್ಟಿ, ಇದು ಹ್ಯಾಶ್ಗೆ ಹೊಂದಿಕೆಯಾಗುವ ಎಲ್ಲಾ ಮೌಲ್ಯಗಳನ್ನು ಸಂಗ್ರಹಿಸುತ್ತದೆ. ಇದಕ್ಕೆ ತದ್ವಿರುದ್ಧವಾಗಿ, ತೆರೆದ ವಿಳಾಸದಲ್ಲಿ, ಹ್ಯಾಶ್ ಘರ್ಷಣೆ ಕಂಡುಬಂದರೆ, ಟೇಬಲ್ ಮೌಲ್ಯವನ್ನು ನಿರ್ಣಾಯಕ ರೀತಿಯಲ್ಲಿ ಸಂಗ್ರಹಿಸಲು ಶ್ರೇಣಿಯಲ್ಲಿ ಖಾಲಿ ಸ್ಥಳವನ್ನು ಹುಡುಕುತ್ತದೆ, ಸಾಮಾನ್ಯವಾಗಿ ಶ್ರೇಣಿಯಲ್ಲಿ ಮುಂದಿನ ತಕ್ಷಣದ ಸ್ಥಾನವನ್ನು ನೋಡುವ ಮೂಲಕ. ತೆರೆದ ವಿಳಾಸವು ಟೇಬಲ್ ಹೆಚ್ಚಾಗಿ ಖಾಲಿಯಾಗಿರುವಾಗ ಪ್ರತ್ಯೇಕ ಚೈನಿಂಗ್ಗಿಂತ ಕಡಿಮೆ ಕ್ಯಾಶ್ ಮಿಸ್ ಅನುಪಾತವನ್ನು ಹೊಂದಿರುತ್ತದೆ. ಆದಾಗ್ಯೂ, ಟೇಬಲ್ ಹೆಚ್ಚಿನ ಅಂಶಗಳಿಂದ ತುಂಬಿದಂತೆ, ತೆರೆದ ವಿಳಾಸದ ಕಾರ್ಯಕ್ಷಮತೆಯು ಘಾತೀಯವಾಗಿ ಕುಸಿಯುತ್ತದೆ. ಹೆಚ್ಚುವರಿಯಾಗಿ, ನಮೂದುಗಳು ತುಂಬಾ ಚಿಕ್ಕದಾಗಿರದಿದ್ದರೆ (ಪಾಯಿಂಟರ್ ಗಾತ್ರಕ್ಕಿಂತ ನಾಲ್ಕು ಪಟ್ಟು ಕಡಿಮೆ) ಪ್ರತ್ಯೇಕ ಚೈನಿಂಗ್ ಹೆಚ್ಚಿನ ಸಂದರ್ಭಗಳಲ್ಲಿ ಕಡಿಮೆ ಮೆಮೊರಿಯನ್ನು ಬಳಸುತ್ತದೆ. ಟ್ರೀ ಇಂಪ್ಲಿಮೆಂಟೇಶನ್ಸ್ ಸೆಲ್ಫ್-ಬ್ಯಾಲೆನ್ಸಿಂಗ್ ಬೈನರಿ ಸರ್ಚ್ ಟ್ರೀಸ್ ಮತ್ತೊಂದು ಸಾಮಾನ್ಯ ವಿಧಾನವೆಂದರೆ ಎವಿಎಲ್ ಟ್ರೀ ಅಥವಾ ಕೆಂಪು-ಕಪ್ಪು ಮರದಂತಹ ಸೆಲ್ಫ್-ಬ್ಯಾಲೆನ್ಸಿಂಗ್ ಬೈನರಿ ಸರ್ಚ್ ಟ್ರೀನೊಂದಿಗೆ ಸಹಾಯಕ ಶ್ರೇಣಿಯನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುವುದು. ಹ್ಯಾಶ್ ಟೇಬಲ್ಗಳಿಗೆ ಹೋಲಿಸಿದರೆ, ಈ ರಚನೆಗಳು ಸಾಮರ್ಥ್ಯ ಮತ್ತು ದೌರ್ಬಲ್ಯಗಳೆರಡನ್ನೂ ಹೊಂದಿವೆ. ಸ್ವಯಂ-ಸಮತೋಲನದ ಬೈನರಿ ಸರ್ಚ್ ಟ್ರೀಗಳ ಅತ್ಯಂತ ಕೆಟ್ಟ ಕಾರ್ಯಕ್ಷಮತೆಯು ಹ್ಯಾಶ್ ಟೇಬಲ್ಗಿಂತ ಗಮನಾರ್ಹವಾಗಿ ಉತ್ತಮವಾಗಿದೆ, O (ಲಾಗ್ n) ನ ದೊಡ್ಡ O ಸಂಕೇತದಲ್ಲಿ ಸಮಯದ ಸಂಕೀರ್ಣತೆಯೊಂದಿಗೆ. ಇದು ಹ್ಯಾಶ್ ಟೇಬಲ್ಗಳಿಗೆ ವ್ಯತಿರಿಕ್ತವಾಗಿದೆ, ಇದರ ಅತ್ಯಂತ ಕೆಟ್ಟ ಕಾರ್ಯಕ್ಷಮತೆಯು ಒಂದೇ ಬಕೆಟ್ ಅನ್ನು ಹಂಚಿಕೊಳ್ಳುವ ಎಲ್ಲಾ ಅಂಶಗಳನ್ನು ಒಳಗೊಂಡಿರುತ್ತದೆ, ಇದರ ಪರಿಣಾಮವಾಗಿ ಒ (ಎನ್) ಸಮಯದ ಸಂಕೀರ್ಣತೆ ಉಂಟಾಗುತ್ತದೆ. ಇದರ ಜೊತೆಗೆ, ಮತ್ತು ಎಲ್ಲಾ ಬೈನರಿ ಸರ್ಚ್ ಟ್ರೀಗಳಂತೆಯೇ, ಸ್ವಯಂ-ಸಮತೋಲನದ ಬೈನರಿ ಸರ್ಚ್ ಟ್ರೀಗಳು ತಮ್ಮ ಅಂಶಗಳನ್ನು ಕ್ರಮವಾಗಿ ಇಡುತ್ತವೆ. ಹೀಗಾಗಿ, ಅದರ ಅಂಶಗಳನ್ನು ಹಾದುಹೋಗುವುದು ಕನಿಷ್ಠ-ರಿಂದ-ದೊಡ್ಡ ಮಾದರಿಯನ್ನು ಅನುಸರಿಸುತ್ತದೆ, ಆದರೆ ಹ್ಯಾಶ್ ಟೇಬಲ್ ಅನ್ನು ಹಾದುಹೋಗುವುದರಿಂದ ಅಂಶಗಳು ಯಾದೃಚ್ಛಿಕ ಕ್ರಮದಲ್ಲಿರಬಹುದು. ಅವು ಕ್ರಮದಲ್ಲಿರುವುದರಿಂದ, ಮರ-ಆಧಾರಿತ ನಕ್ಷೆಗಳು ವ್ಯಾಪ್ತಿಯ ಪ್ರಶ್ನೆಗಳನ್ನು ಸಹ ತೃಪ್ತಿಪಡಿಸಬಹುದು (ಎರಡು ಗಡಿಗಳ ನಡುವಿನ ಎಲ್ಲಾ ಮೌಲ್ಯಗಳನ್ನು ಕಂಡುಕೊಳ್ಳಬಹುದು) ಆದರೆ ಹ್ಯಾಶ್ಮ್ಯಾಪ್ ನಿಖರವಾದ ಮೌಲ್ಯಗಳನ್ನು ಮಾತ್ರ ಕಂಡುಹಿಡಿಯಬಹುದು. ಆದಾಗ್ಯೂ, ಹ್ಯಾಶ್ ಕೋಷ್ಟಕಗಳು O (1) ನ ಸ್ವಯಂ-ಸಮತೋಲನದ ಬೈನರಿ ಸರ್ಚ್ ಟ್ರೀಗಳಿಗಿಂತ ಉತ್ತಮ ಸರಾಸರಿ-ಕೇಸ್ ಸಮಯದ ಸಂಕೀರ್ಣತೆಯನ್ನು ಹೊಂದಿವೆ, ಮತ್ತು ಉತ್ತಮ ಹ್ಯಾಶ್ ಕಾರ್ಯವನ್ನು ಬಳಸಿದಾಗ ಅವುಗಳ ಕೆಟ್ಟ-ಕೇಸ್ ಕಾರ್ಯಕ್ಷಮತೆಯು ಹೆಚ್ಚು ಅಸಂಭವವಾಗಿದೆ. ಪ್ರತ್ಯೇಕ ಚೈನಿಂಗ್ ಅನ್ನು ಬಳಸುವ ಹ್ಯಾಶ್ ಟೇಬಲ್ಗಾಗಿ ಬಕೆಟ್ಗಳನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಲು ಸ್ವಯಂ-ಸಮತೋಲನದ ಬೈನರಿ ಸರ್ಚ್ ಟ್ರೀ ಅನ್ನು ಬಳಸಬಹುದು ಎಂಬುದು ಗಮನಿಸಬೇಕಾದ ಸಂಗತಿ. ಇದು ಸರಾಸರಿ-ಕೇಸ್ ಸ್ಥಿರವಾದ ವೀಕ್ಷಣೆಗೆ ಅವಕಾಶ ನೀಡುತ್ತದೆ, ಆದರೆ O (ಲಾಗ್ n) ನ ಕೆಟ್ಟ-ಕೇಸ್ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಖಾತ್ರಿಪಡಿಸುತ್ತದೆ. ಆದಾಗ್ಯೂ, ಇದು ಅನುಷ್ಠಾನದಲ್ಲಿ ಹೆಚ್ಚುವರಿ ಸಂಕೀರ್ಣತೆಯನ್ನು ಪರಿಚಯಿಸುತ್ತದೆ ಮತ್ತು ಸಣ್ಣ ಹ್ಯಾಶ್ ಕೋಷ್ಟಕಗಳಿಗೆ ಇನ್ನೂ ಕೆಟ್ಟ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಉಂಟುಮಾಡಬಹುದು, ಅಲ್ಲಿ ಮರದೊಳಗೆ ಸೇರಿಸಲು ಮತ್ತು ಸಮತೋಲನಗೊಳಿಸಲು ಕಳೆದ ಸಮಯವು ಲಿಂಕ್ ಮಾಡಲಾದ ಪಟ್ಟಿಯ ಎಲ್ಲಾ ಅಂಶಗಳ ಮೇಲೆ ರೇಖೀಯ ಹುಡುಕಾಟವನ್ನು ನಿರ್ವಹಿಸಲು ಬೇಕಾದ ಸಮಯಕ್ಕಿಂತ ಹೆಚ್ಚಾಗಿರುತ್ತದೆ ಅಥವಾ ಅಂತಹುದೇ ದತ್ತಾಂಶ ರಚನೆ. ಇತರ ಮರಗಳ ಅಸೋಸಿಯೇಟಿವ್ ಸರಣಿಗಳನ್ನು ಅಸಮತೋಲಿತ ಬೈನರಿ ಸರ್ಚ್ ಟ್ರೀಗಳಲ್ಲಿ ಅಥವಾ ಮೂಲಂಗಿ ಮರಗಳು, ಟ್ರೈಗಳು, ಜೂಡಿ ಸರಣಿಗಳು ಅಥವಾ ವ್ಯಾನ್ ಎಮ್ಡೆ ಬೋಸ್ ಮರಗಳಂತಹ ನಿರ್ದಿಷ್ಟ ರೀತಿಯ ಕೀಲಿಗಳಿಗೆ ವಿಶೇಷವಾದ ದತ್ತಾಂಶ ರಚನೆಗಳಲ್ಲಿ ಸಂಗ್ರಹಿಸಬಹುದು, ಆದರೂ ಈ ಅನುಷ್ಠಾನಗಳ ಸಾಪೇಕ್ಷ ಕಾರ್ಯಕ್ಷಮತೆಯು ಬದಲಾಗುತ್ತದೆ. ಉದಾಹರಣೆಗೆ, ಜೂಡಿ ಮರಗಳು ಹ್ಯಾಶ್ ಕೋಷ್ಟಕಗಳಿಗಿಂತ ಕಡಿಮೆ ಪರಿಣಾಮಕಾರಿಯಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತವೆ ಎಂದು ಸೂಚಿಸಲಾಗುತ್ತದೆ, ಆದರೆ ಎಚ್ಚರಿಕೆಯಿಂದ ಆಯ್ಕೆ ಮಾಡಲಾದ ಹ್ಯಾಶ್ ಕೋಷ್ಟಕಗಳು ಸಾಮಾನ್ಯವಾಗಿ ಹೊಂದಾಣಿಕೆಯ ಮೂಲಂಗಿ ಮರಗಳಿಗಿಂತ ಹೆಚ್ಚು ಪರಿಣಾಮಕಾರಿಯಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತವೆ, ಅವು ನಿಭಾಯಿಸಬಹುದಾದ ದತ್ತಾಂಶ ಪ್ರಕಾರಗಳ ಮೇಲೆ ಹೆಚ್ಚಿನ ನಿರ್ಬಂಧಗಳನ್ನು ಹೊಂದಿರುತ್ತವೆ. ಈ ಪರ್ಯಾಯ ರಚನೆಗಳ ಅನುಕೂಲಗಳು ಹೆಚ್ಚುವರಿ ಸಹಾಯಕ ರಚನೆಯ ಕಾರ್ಯಾಚರಣೆಗಳನ್ನು ನಿರ್ವಹಿಸುವ ಅವುಗಳ ಸಾಮರ್ಥ್ಯದಿಂದ ಬರುತ್ತವೆ, ಉದಾಹರಣೆಗೆ ಮ್ಯಾಪಿಂಗ್ಗಳ ಗುಂಪಿನಲ್ಲಿ ಪ್ರಶ್ನೆಯು ಇಲ್ಲದಿದ್ದಾಗ ಪ್ರಶ್ನಿಸುವ ಕೀಯನ್ನು ಹತ್ತಿರವಿರುವ ಮ್ಯಾಪಿಂಗ್ ಅನ್ನು ಕಂಡುಹಿಡಿಯುವುದು. ತುಲನಾತ್ಮಕ ಕ್ರಮಬದ್ಧ ನಿಘಂಟು ನಿಘಂಟಿನ ಮೂಲ ವ್ಯಾಖ್ಯಾನವು ಕ್ರಮವನ್ನು ಕಡ್ಡಾಯಗೊಳಿಸುವುದಿಲ್ಲ. ಎಣಿಕೆಯ ಸ್ಥಿರ ಕ್ರಮವನ್ನು ಖಾತರಿಪಡಿಸಿಕೊಳ್ಳಲು, ಸಂಯೋಜಿತ ಶ್ರೇಣಿಯ ಕ್ರಮಬದ್ಧ ಆವೃತ್ತಿಗಳನ್ನು ಹೆಚ್ಚಾಗಿ ಬಳಸಲಾಗುತ್ತದೆ. ಕ್ರಮಬದ್ಧವಾದ ನಿಘಂಟಿನಲ್ಲಿ ಎರಡು ಇಂದ್ರಿಯಗಳಿವೆಃ ಒಂದು ನಿರ್ದಿಷ್ಟ ಗುಂಪಿನ ಕೀಲಿಗಳನ್ನು ವಿಂಗಡಿಸುವ ಮೂಲಕ ಎಣಿಕೆಯ ಕ್ರಮವು ಯಾವಾಗಲೂ ನಿರ್ಣಾಯಕವಾಗಿರುತ್ತದೆ. ಮರ-ಆಧಾರಿತ ಅನುಷ್ಠಾನಗಳಿಗೆ ಇದು ಅನ್ವಯಿಸುತ್ತದೆ, ಒಂದು ಪ್ರತಿನಿಧಿಯು ಸಿ + + ನ ಧಾರಕವಾಗಿದೆ. ಎಣಿಕೆಯ ಕ್ರಮವು ಪ್ರಮುಖ-ಸ್ವತಂತ್ರವಾಗಿದೆ ಮತ್ತು ಬದಲಿಗೆ ಅಳವಡಿಕೆಯ ಕ್ರಮವನ್ನು ಆಧರಿಸಿದೆ. ಜಾವಾ ಮತ್ತು ಪೈಥಾನ್ನ ಲಿಂಕ್ಡ್ ಹ್ಯಾಶ್ಮ್ಯಾಪ್ ಆಗಿರುವ. NET ಫ್ರೇಮ್ವರ್ಕ್ನಲ್ಲಿರುವ "ಆರ್ಡರ್ಡ್ ಡಿಕ್ಷನರಿ" ಗೆ ಇದು ಅನ್ವಯಿಸುತ್ತದೆ. ಎರಡನೆಯದು ಹೆಚ್ಚು ಸಾಮಾನ್ಯವಾಗಿದೆ. ಅಂತಹ ಕ್ರಮಬದ್ಧ ನಿಘಂಟುಗಳನ್ನು ಸಂಯೋಜನೆಯ ಪಟ್ಟಿಯನ್ನು ಬಳಸಿಕೊಂಡು, ಸಾಮಾನ್ಯ ನಿಘಂಟಿನ ಮೇಲೆ ದ್ವಿಗುಣವಾಗಿ ಜೋಡಿಸಲಾದ ಪಟ್ಟಿಯನ್ನು ಮೇಲ್ಪದರಿಸುವ ಮೂಲಕ ಅಥವಾ ವಿರಳವಾದ (ಕ್ರಮಬದ್ಧವಲ್ಲದ) ಶ್ರೇಣಿಯಿಂದ ನಿಜವಾದ ದತ್ತಾಂಶವನ್ನು ಸ್ಥಳಾಂತರಿಸುವ ಮೂಲಕ ಮತ್ತು ದಟ್ಟವಾದ ಅಳವಡಿಕೆ-ಆದೇಶದ ಪದವಾಗಿ ಕಾರ್ಯಗತಗೊಳಿಸಬಹುದು. ಭಾಷಾ ಬೆಂಬಲ ಅಸೋಸಿಯೇಟಿವ್ ಸರಣಿಗಳನ್ನು ಯಾವುದೇ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯಲ್ಲಿ ಪ್ಯಾಕೇಜ್ ಆಗಿ ಕಾರ್ಯಗತಗೊಳಿಸಬಹುದು ಮತ್ತು ಅನೇಕ ಭಾಷಾ ವ್ಯವಸ್ಥೆಗಳು ಅವುಗಳನ್ನು ತಮ್ಮ ಪ್ರಮಾಣಿತ ಗ್ರಂಥಾಲಯದ ಭಾಗವಾಗಿ ಒದಗಿಸುತ್ತವೆ. ಕೆಲವು ಭಾಷೆಗಳಲ್ಲಿ, ಅವುಗಳನ್ನು ಪ್ರಮಾಣಿತ ವ್ಯವಸ್ಥೆಯಲ್ಲಿ ಮಾತ್ರ ನಿರ್ಮಿಸಲಾಗಿಲ್ಲ, ಆದರೆ ವಿಶೇಷ ವಾಕ್ಯರಚನೆಯನ್ನು ಹೊಂದಿರುತ್ತವೆ, ಆಗಾಗ್ಗೆ ರಚನೆಯಂತಹ ಚಂದಾದಾರಿಕೆಯನ್ನು ಬಳಸುತ್ತವೆ. ಸಂಯೋಜಕ ವ್ಯೂಹಗಳಿಗೆ ಅಂತರ್ನಿರ್ಮಿತ ವಾಕ್ಯರಚನೆಯ ಬೆಂಬಲವನ್ನು 1969ರಲ್ಲಿ "ಟೇಬಲ್" ಎಂಬ ಹೆಸರಿನಲ್ಲಿ SNOBOL4 ಪರಿಚಯಿಸಿತು. ಟಿಎಂಜಿ ಸ್ಟ್ರಿಂಗ್ ಕೀಲಿಗಳು ಮತ್ತು ಪೂರ್ಣಾಂಕ ಮೌಲ್ಯಗಳೊಂದಿಗೆ ಕೋಷ್ಟಕಗಳನ್ನು ನೀಡಿತು. ಎಂ. ಯು. ಎಂ. ಪಿ. ಎಸ್. ಬಹು-ಆಯಾಮದ ಸಹಾಯಕ ವ್ಯೂಹಗಳನ್ನು, ಐಚ್ಛಿಕವಾಗಿ ಸ್ಥಿರವಾದ, ಅದರ ಪ್ರಮುಖ ದತ್ತಾಂಶ ರಚನೆಯನ್ನು ಮಾಡಿತು. ಸೆಟ್ಗಳು ಮತ್ತು ನಕ್ಷೆಗಳ ಒಂದು ಸಂಭಾವ್ಯ ಅನುಷ್ಠಾನವಾಗಿ SETL ಅವುಗಳನ್ನು ಬೆಂಬಲಿಸಿತು. ರೆಕ್ಸ್, ಪರ್ಲ್, ಪಿಎಚ್ಪಿ, ಟಿ. ಸಿ. ಎಲ್, ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್, ಮ್ಯಾಪಲ್, ಪೈಥಾನ್, ರೂಬಿ, ವೋಲ್ಫ್ರಾಮ್ ಲ್ಯಾಂಗ್ವೇಜ್, ಗೋ ಮತ್ತು ಲುವಾ ಸೇರಿದಂತೆ ಎ. ಡಬ್ಲ್ಯೂ. ಕೆ. ಯಿಂದ ಪ್ರಾರಂಭವಾಗುವ ಹೆಚ್ಚಿನ ಆಧುನಿಕ ಸ್ಕ್ರಿಪ್ಟಿಂಗ್ ಭಾಷೆಗಳು ಪ್ರಾಥಮಿಕ ಧಾರಕ ಪ್ರಕಾರವಾಗಿ ಸಹಾಯಕ ವ್ಯೂಹಗಳನ್ನು ಬೆಂಬಲಿಸುತ್ತವೆ. ಇನ್ನೂ ಅನೇಕ ಭಾಷೆಗಳಲ್ಲಿ, ಅವು ವಿಶೇಷ ವಾಕ್ಯರಚನೆಯಿಲ್ಲದೆ ಗ್ರಂಥಾಲಯದ ಕಾರ್ಯಗಳಾಗಿ ಲಭ್ಯವಿವೆ. ಸ್ಮಾಲ್ಟಾಕ್, ಆಬ್ಜೆಕ್ಟಿವ್-ಸಿ,. ನೆಟ್, ಪೈಥಾನ್, ರಿಯಲ್ ಬೇಸಿಕ್, ಸ್ವಿಫ್ಟ್, ವಿಬಿಎ ಮತ್ತು ಡೆಲ್ಫಿಯಲ್ಲಿ ಅವುಗಳನ್ನು ನಿಘಂಟುಗಳು ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ; ಪರ್ಲ್, ರೂಬಿ ಮತ್ತು ಸೀಡ್ 7ರಲ್ಲಿ ಅವುಗಳನ್ನು ಹ್ಯಾಶ್ಗಳು ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ; ಸಿ + +, ಜಾವಾ, ಗೋ, ಕ್ಲೋಜೂರ್, ಸ್ಕಾಲಾ, ಒಕಾಂಲ್, ಹ್ಯಾಸ್ಕೆಲ್ನಲ್ಲಿ ಅವುಗಳನ್ನು ನಕ್ಷೆಗಳು ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ (ಮ್ಯಾಪ್ (ಸಿ + +), ಅನ್ಆರ್ಡರ್ಡ್ _ ಮ್ಯಾಪ್ (ಸಿ + +), ಮತ್ತು ನೋಡಿ); ಕಾಮನ್ ಲಿಸ್ಪ್ ಮತ್ತು ವಿಂಡೋಸ್ ಪವರ್ಶೆಲ್ನಲ್ಲಿ, ಅವುಗಳನ್ನು ಹ್ಯಾಶ್ ಕೋಷ್ಟಕಗಳು ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ (ಎರಡೂ ಸಾಮಾನ್ಯವಾಗಿ ಈ ಅನುಷ್ಠಾನವನ್ನು ಬಳಸುವುದರಿಂದ); ಮ್ಯಾಪಲ್ ಮತ್ತು ಲುವಾದಲ್ಲಿ, ಅವುಗಳನ್ನು ಕೋಷ್ಟಕಗಳು ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ. ಪಿಎಚ್ಪಿಯಲ್ಲಿ, ಕೀಲಿಗಳು ಪೂರ್ಣಾಂಕಗಳು ಮತ್ತು ತಂತಿಗಳಿಗೆ ಸೀಮಿತವಾಗಿರುವುದನ್ನು ಹೊರತುಪಡಿಸಿ, ಎಲ್ಲಾ ವ್ಯೂಹಗಳು ಸಹವರ್ತಿಗಳಾಗಿರಬಹುದು. ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ನಲ್ಲಿ (ಜೆಎಸ್ಒಎನ್ ಅನ್ನು ಸಹ ನೋಡಿ), ಎಲ್ಲಾ ವಸ್ತುಗಳು ಸ್ಟ್ರಿಂಗ್-ಮೌಲ್ಯದ ಕೀಲಿಗಳೊಂದಿಗೆ ಸಹಾಯಕ ವ್ಯೂಹಗಳಾಗಿ ವರ್ತಿಸುತ್ತವೆ, ಆದರೆ ಮ್ಯಾಪ್ ಮತ್ತು ವೀಕ್ಮ್ಯಾಪ್ ಪ್ರಕಾರಗಳು ಅನಿಯಂತ್ರಿತ ವಸ್ತುಗಳನ್ನು ಕೀಲಿಗಳಾಗಿ ತೆಗೆದುಕೊಳ್ಳುತ್ತವೆ. ಲುವಾದಲ್ಲಿ, ಅವುಗಳನ್ನು ಎಲ್ಲಾ ದತ್ತಾಂಶ ರಚನೆಗಳಿಗೆ ಪ್ರಾಚೀನ ಬಿಲ್ಡಿಂಗ್ ಬ್ಲಾಕ್ ಆಗಿ ಬಳಸಲಾಗುತ್ತದೆ. ವಿಷುಯಲ್ ಫಾಕ್ಸ್ಪ್ರೊದಲ್ಲಿ, ಅವುಗಳನ್ನು ಕಲೆಕ್ಷನ್ಸ್ ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ. ಡಿ ಭಾಷೆಯು ಸಹವರ್ತಿ ಸರಣಿಗಳನ್ನು ಸಹ ಬೆಂಬಲಿಸುತ್ತದೆ. ಸಹಾಯಕ ವ್ಯೂಹಗಳನ್ನು ಬಳಸುವ ಅನೇಕ ಪ್ರೋಗ್ರಾಂಗಳು ಆ ಡೇಟಾವನ್ನು ಕಂಪ್ಯೂಟರ್ ಫೈಲ್ನಂತಹ ಹೆಚ್ಚು ಶಾಶ್ವತ ರೂಪದಲ್ಲಿ ಸಂಗ್ರಹಿಸಬೇಕಾಗುತ್ತದೆ. ಈ ಸಮಸ್ಯೆಗೆ ಸಾಮಾನ್ಯ ಪರಿಹಾರವೆಂದರೆ ಆರ್ಕೈವಿಂಗ್ ಅಥವಾ ಸೀರಿಯಲೈಸೇಶನ್ ಎಂದು ಕರೆಯಲ್ಪಡುವ ಸಾಮಾನ್ಯೀಕೃತ ಪರಿಕಲ್ಪನೆಯಾಗಿದ್ದು, ಇದು ಫೈಲ್ಗೆ ನೇರವಾಗಿ ಬರೆಯಬಹುದಾದ ಮೂಲ ವಸ್ತುಗಳ ಪಠ್ಯ ಅಥವಾ ಬೈನರಿ ಪ್ರಾತಿನಿಧ್ಯವನ್ನು ಉತ್ಪಾದಿಸುತ್ತದೆ. ಆಂತರಿಕ ದತ್ತಾಂಶವನ್ನು ಪಠ್ಯವಾಗಿ ಪರಿವರ್ತಿಸುವ ಪ್ರಮಾಣಿತ ಕಾರ್ಯಗಳನ್ನು ಒಳಗೊಂಡಿರುವ. ನೆಟ್ ಅಥವಾ ಕೊಕೊದಂತಹ ಆಧಾರವಾಗಿರುವ ಆಬ್ಜೆಕ್ಟ್ ಮಾದರಿಯಲ್ಲಿ ಇದನ್ನು ಸಾಮಾನ್ಯವಾಗಿ ಅಳವಡಿಸಲಾಗುತ್ತದೆ. ಪ್ರೋಗ್ರಾಂ ಈ ವಿಧಾನಗಳನ್ನು ಕರೆಯುವ ಮೂಲಕ ಯಾವುದೇ ವಸ್ತುಗಳ ಗುಂಪಿನ ಸಂಪೂರ್ಣ ಪಠ್ಯ ಪ್ರಾತಿನಿಧ್ಯವನ್ನು ರಚಿಸಬಹುದು, ಇವುಗಳನ್ನು ಬಹುತೇಕ ಯಾವಾಗಲೂ ಬೇಸ್ ಅಸೋಸಿಯೇಟಿವ್ ಅರೇ ವರ್ಗದಲ್ಲಿ ಈಗಾಗಲೇ ಕಾರ್ಯಗತಗೊಳಿಸಲಾಗಿದೆ. ಬಹಳ ದೊಡ್ಡ ಡೇಟಾ ಸೆಟ್ಗಳನ್ನು ಬಳಸುವ ಪ್ರೋಗ್ರಾಂಗಳಿಗೆ, ಈ ರೀತಿಯ ವೈಯಕ್ತಿಕ ಫೈಲ್ ಸಂಗ್ರಹವು ಸೂಕ್ತವಲ್ಲ, ಮತ್ತು ಡೇಟಾಬೇಸ್ ನಿರ್ವಹಣಾ ವ್ಯವಸ್ಥೆಯ (ಡಿಬಿ) ಅಗತ್ಯವಿದೆ. ಕೆಲವು ಡಿಬಿ ವ್ಯವಸ್ಥೆಗಳು ದತ್ತಾಂಶವನ್ನು ಕ್ರಮಬದ್ಧಗೊಳಿಸುವ ಮೂಲಕ ಮತ್ತು ನಂತರ ಆ ಕ್ರಮಬದ್ಧ ದತ್ತಾಂಶ ಮತ್ತು ಕೀಲಿಯನ್ನು ಸಂಗ್ರಹಿಸುವ ಮೂಲಕ ಸ್ಥಳೀಯವಾಗಿ ಸಹಾಯಕ ವ್ಯೂಹಗಳನ್ನು ಸಂಗ್ರಹಿಸುತ್ತವೆ. ಪ್ರತ್ಯೇಕ ಸರಣಿಗಳನ್ನು ನಂತರ ಅವುಗಳನ್ನು ಉಲ್ಲೇಖಿಸಲು ಕೀಲಿಯನ್ನು ಬಳಸಿಕೊಂಡು ಡೇಟಾಬೇಸ್ನಿಂದ ಲೋಡ್ ಮಾಡಬಹುದು ಅಥವಾ ಉಳಿಸಬಹುದು. ಈ ಪ್ರಮುಖ-ಮೌಲ್ಯದ ಮಳಿಗೆಗಳನ್ನು ಅನೇಕ ವರ್ಷಗಳಿಂದ ಬಳಸಲಾಗುತ್ತಿದೆ ಮತ್ತು ಹೆಚ್ಚು ಸಾಮಾನ್ಯವಾದ ರಿಲೇಷನಲ್ ಡೇಟಾಬೇಸ್ (ಆರ್. ಡಿ. ಬಿ. ಗಳು) ಇರುವಷ್ಟು ಇತಿಹಾಸವನ್ನು ಹೊಂದಿವೆ, ಆದರೆ ಪ್ರಮಾಣೀಕರಣದ ಕೊರತೆಯು, ಇತರ ಕಾರಣಗಳ ಜೊತೆಗೆ, ಅವುಗಳ ಬಳಕೆಯನ್ನು ಕೆಲವು ಪ್ರಮುಖ ಪಾತ್ರಗಳಿಗೆ ಸೀಮಿತಗೊಳಿಸಿದೆ. ಹೆಚ್ಚಿನ ಸಂದರ್ಭಗಳಲ್ಲಿ ಈ ಪಾತ್ರಗಳಿಗೆ ಆರ್. ಡಿ. ಬಿ. ಗಳನ್ನು ಬಳಸಲಾಗುತ್ತಿತ್ತು, ಆದಾಗ್ಯೂ ಆರ್. ಡಿ. ಬಿ. ಗೆ ವಸ್ತುಗಳನ್ನು ಉಳಿಸುವುದು ಸಂಕೀರ್ಣವಾಗಬಹುದು, ಈ ಸಮಸ್ಯೆಯನ್ನು ವಸ್ತು-ಸಂಬಂಧದ ಪ್ರತಿರೋಧ ಹೊಂದಾಣಿಕೆ ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ. ನಂತರ, ಕ್ಲೌಡ್ ಕಂಪ್ಯೂಟಿಂಗ್ಗೆ ಸೂಕ್ತವಾದ ಉನ್ನತ-ಕಾರ್ಯಕ್ಷಮತೆಯ ದತ್ತಸಂಚಯಗಳ ಅಗತ್ಯತೆ ಮತ್ತು ಅವುಗಳನ್ನು ಬಳಸುವ ಕಾರ್ಯಕ್ರಮಗಳ ಆಂತರಿಕ ರಚನೆಗೆ ಹೆಚ್ಚು ನಿಕಟವಾಗಿ ಹೊಂದಿಕೆಯಾಗುವುದು ಪ್ರಮುಖ-ಮೌಲ್ಯದ ಅಂಗಡಿ ಮಾರುಕಟ್ಟೆಯಲ್ಲಿ ಪುನರುಜ್ಜೀವನಕ್ಕೆ ಕಾರಣವಾಯಿತು. ಈ ವ್ಯವಸ್ಥೆಗಳು ಸ್ಥಳೀಯ ಶೈಲಿಯಲ್ಲಿ ಸಹಾಯಕ ಸರಣಿಗಳನ್ನು ಸಂಗ್ರಹಿಸಬಹುದು ಮತ್ತು ಹಿಂಪಡೆಯಬಹುದು, ಇದು ಸಾಮಾನ್ಯ ವೆಬ್-ಸಂಬಂಧಿತ ಕೆಲಸದ ಹರಿವುಗಳಲ್ಲಿ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಹೆಚ್ಚು ಸುಧಾರಿಸುತ್ತದೆ. ಕೀ-ವ್ಯಾಲ್ಯೂ ಡೇಟಾಬೇಸ್ ಟುಪಲ್ ಫಂಕ್ಷನ್ (ಗಣಿತ) ಜೆಎಸ್ಒಎನ್ ಉಲ್ಲೇಖಗಳು ಬಾಹ್ಯ ಕೊಂಡಿಗಳು ಎನ್ಐಎಸ್ಟಿಯ ಡಿಕ್ಷನರಿ ಆಫ್ ಅಲ್ಗಾರಿದಮ್ಸ್ ಅಂಡ್ ಡೇಟಾ ಸ್ಟ್ರಕ್ಚರ್ಸ್ಃ ಅಸೋಸಿಯೇಟಿವ್ ಅರೇ ಅಬ್ಸ್ಟ್ರಾಕ್ಟ್ ಡೇಟಾ ಪ್ರಕಾರಗಳು ಸಂಯೋಜಿತ ಡೇಟಾ ಪ್ರಕಾರಗಳು ಡೇಟಾ ಪ್ರಕಾರಗಳು