我正在阅读哈希表和数据结构,想到一个问题。哈希表在哪里实现?是在服务器代码还是数据库上?
我阅读的资源似乎是在服务器代码上实现它们的,但是不是存储数据来完成数据库的工作吗? PS:我还没有了解非SQL数据库的知识,也许那是我缺乏知识的地方。
答案 0 :(得分:0)
许多应用程序需要内部存储一些数据,即使它们有时也在使用或更新数据库中的数据。通常,他们甚至会从远程(整个网络)数据库中检索相关数据,并将其放在本地计算机的RAM中,以供应用程序快速访问。
有时,应用程序可能会使用诸如哈希表之类的数据结构来支持某些应用程序行为,这些行为不属于业务数据模型,因此不属于数据库。例如,当鼠标悬停在小部件/按钮/任何位置时,GUI应用程序可能会显示帮助字符串-它们可能存储在键入某些GUI对象标识符,屏幕区域或任何GUI库认为有帮助的哈希表中它会在正确的时间显示工具提示。另一个应用程序可能会保留一张通过刮擦某些网站而生成的用户名和活动统计信息的表-它可能会按需向用户显示它们,或者将它们或某些东西聚合,而无需将其保存到数据库中(历史数据可能没有价值,它可以再次抓取该网站)。
在某些情况下,无论是程序本身还是数据库,也使用数据库的应用程序或在没有任何数据库支持的情况下运行的应用程序,非平凡的程序都倾向于使用哈希表来快速访问所查询或处理的数据。