Java 如何为内存处理建模数据
我有很多静态数据(即只读数据,它不是事务性的),几天只更新一次 我必须支持对该数据的搜索(api调用,而不是sql)。所以我想我将把它加载到内存中,并每隔一段时间刷新内存中的数据。RAM不应该是一个问题,因为我们是64位的。。。数据可以在2 GB到50 GB的范围内 我希望我能够比查询数据库(也包括索引表)更快地处理内存中数据的搜索 是否有某种“方法”可以用来设计内存中的数据 更新: 我的问题不是使用什么RDBMS/noSQLDB。我想知道当我不再受存储机制的约束时,如何在内存中构造数据。我以前使用过Redis(),它是一种非常快速的内存存储。作为一种方法,为数据创建键有助于优化任何搜索,redis支持这一点 如果您还需要任何类型的数据处理,您可以看看Hadoop/HBase。我以前使用过Redis(),它是一种非常快速的内存存储。作为一种方法,为数据创建键有助于优化任何搜索,redis支持这一点 如果您还需要任何类型的数据处理,您可以看看Hadoop/HBase。几年前,我曾用于非数据库web应用程序。这是难以置信的快!它使用POJO。易于理解和实施 数据结构非常简单。将其视为具有默认节点的树。Prewayler知道树的根,您可以将数据添加到此树中。您可以将树的快照作为备份机制。您甚至可以使用XML快照 普雷维勒是第一个这样的人。我肯定还有其他图书馆。在决定用哪一种之前,先做一点调查 干杯。几年前,我使用了一个非数据库web应用程序。这是难以置信的快!它使用POJO。易于理解和实施 数据结构非常简单。将其视为具有默认节点的树。Prewayler知道树的根,您可以将数据添加到此树中。您可以将树的快照作为备份机制。您甚至可以使用XML快照 普雷维勒是第一个这样的人。我肯定还有其他图书馆。在决定用哪一种之前,先做一点调查Java 如何为内存处理建模数据,java,performance,architecture,data-modeling,Java,Performance,Architecture,Data Modeling,我有很多静态数据(即只读数据,它不是事务性的),几天只更新一次 我必须支持对该数据的搜索(api调用,而不是sql)。所以我想我将把它加载到内存中,并每隔一段时间刷新内存中的数据。RAM不应该是一个问题,因为我们是64位的。。。数据可以在2 GB到50 GB的范围内 我希望我能够比查询数据库(也包括索引表)更快地处理内存中数据的搜索 是否有某种“方法”可以用来设计内存中的数据 更新: 我的问题不是使用什么RDBMS/noSQLDB。我想知道当我不再受存储机制的约束时,如何在内存中构造数据。我以前
干杯。您是否正在尝试学习如何构建哈希表 读一读,读几本关于算法设计的书。。可能读过 或者使用特定语言使用的任何哈希表实现
许多人推荐数据库仅仅是因为,除非您的模型适合于一个简单的哈希表模型,否则您最终将需要一个数据库(做您自己的索引和连接算法是愚蠢的)。下面是一个列表,可以帮助您选择路径。你的选择很大程度上取决于你的平台,如果你想花钱的话。你想学习如何构建哈希表吗 读一读,读几本关于算法设计的书。。可能读过 或者使用特定语言使用的任何哈希表实现
许多人推荐数据库仅仅是因为,除非您的模型适合于一个简单的哈希表模型,否则您最终将需要一个数据库(做您自己的索引和连接算法是愚蠢的)。下面是一个列表,可以帮助您选择路径。您的选择很大程度上取决于您的平台,以及您是否希望花钱。这主要取决于您的访问模式以及您希望如何处理数据 例如,如果您希望快速搜索并对部分数据进行排序,则红黑树数据结构是一种很好的方法。 或者,如果需要简单的键值,可以使用哈希表 但是,实现这些数据结构可能是棘手和困难的,许多人以前已经多次解决了这个问题 强烈建议使用redis或其他内存数据库等解决方案。
只需干燥即可。这主要取决于您的访问模式以及您希望如何处理数据 例如,如果您希望快速搜索并对部分数据进行排序,则红黑树数据结构是一种很好的方法。 或者,如果需要简单的键值,可以使用哈希表 但是,实现这些数据结构可能是棘手和困难的,许多人以前已经多次解决了这个问题 强烈建议使用redis或其他内存数据库等解决方案。
只需干燥即可。这完全取决于您处理的数据类型以及您希望对其执行的搜索类型 例如,对于基于哈希的结构,您不能支持部分单词搜索 如果数据真的是关系型的(有很多列和关系),那么可以使用内存中的关系数据库。您可以为所有可搜索列编制索引。但是,如果您的数据只是一组键值对或一组段落,那么RDBMS是没有用的 在不了解您的需求的情况下,无法在此建议特定的DS
我建议您探索数据结构(如搜索树、尝试、哈希表)、数据库(如redis)、搜索引擎(如solr、lucene),以找出最适合您的需要。这完全取决于您使用的数据类型以及您希望对其执行的搜索类型 例如,对于基于哈希的结构,您不能支持部分单词搜索 如果数据真的是关系型的(有很多列和关系),那么可以使用内存中的关系数据库。您可以为所有可搜索列编制索引。但是,如果您的数据只是一组键值对或一组段落,那么RDBMS是没有用的 在没有相关知识的情况下,无法在此建议特定DS