妥善处理海量数据
Properly Handling Large Amounts of Data
我冒险进入了一个极其未知的领域,我需要一些建议。我正在为 Twitch 构建一个 IRC 机器人,它可能包含数十万个帐户。以前我使用Dictionary(of String, Integer) 将这些帐户及其余额存储在内存中,并将它们写入文本文件并保存到磁盘。现在我存储了更多的数据,比如他们的在线时间,无论他们是关注者还是订阅者,他们捐赠了多少。所以我开始使用 SQLite 来存储帐户,我相信我需要使用具有虚拟模式的 DataGridView 来显示这些帐户并允许用户编辑任何数据。到目前为止我在正确的轨道上吗?我的目标是在管理大量数据的同时保持简单,希望这不是矛盾。
现在我想 SQLite 数据库中的帐户需要缓存,这样当需要进行更改或用户在datagridview(处于虚拟模式)。到目前为止我说得对吗?
如果我可以使用另一种更简单的方法,请告诉我,否则有人可以帮助理解我如何缓存这些帐户吗?我确实考虑过将它们写入字典(字符串,字符串),然后在需要使用特定值时拆分字符串。无论如何,我等待您的建议或意见。
谢谢。
根据我上面的评论,您需要查看 classes。请参阅下面的小示例...
Public Class Accounts
Public Property AccountID As Integer = 0
Public Property AccountName As String = String.Empty
Public Property IsFollower As Boolean = False
**'Add more properties as needed'**
Public Sub New()
End Sub
End Class
接下来您可以调用您的数据库并从 table 中获取所有 ID;您可以使用它们来查询其余数据以获取特定 ID...
遍历您拥有的 ID 并获取他们的数据...
Dim nAccount As Account = Nothing
For each blah blah blah....
nAccount = query from database... which will return your Account class object...
现在您可以将此对象(您的帐户class)添加到集合中;例如 Dictionary(Of Integer, Account)
或 ListOf()
正如我之前提到的,有几种不同的方法可以解决这个问题,这取决于您需要做什么以及您希望如何处理数据。
我冒险进入了一个极其未知的领域,我需要一些建议。我正在为 Twitch 构建一个 IRC 机器人,它可能包含数十万个帐户。以前我使用Dictionary(of String, Integer) 将这些帐户及其余额存储在内存中,并将它们写入文本文件并保存到磁盘。现在我存储了更多的数据,比如他们的在线时间,无论他们是关注者还是订阅者,他们捐赠了多少。所以我开始使用 SQLite 来存储帐户,我相信我需要使用具有虚拟模式的 DataGridView 来显示这些帐户并允许用户编辑任何数据。到目前为止我在正确的轨道上吗?我的目标是在管理大量数据的同时保持简单,希望这不是矛盾。
现在我想 SQLite 数据库中的帐户需要缓存,这样当需要进行更改或用户在datagridview(处于虚拟模式)。到目前为止我说得对吗?
如果我可以使用另一种更简单的方法,请告诉我,否则有人可以帮助理解我如何缓存这些帐户吗?我确实考虑过将它们写入字典(字符串,字符串),然后在需要使用特定值时拆分字符串。无论如何,我等待您的建议或意见。 谢谢。
根据我上面的评论,您需要查看 classes。请参阅下面的小示例...
Public Class Accounts
Public Property AccountID As Integer = 0
Public Property AccountName As String = String.Empty
Public Property IsFollower As Boolean = False
**'Add more properties as needed'**
Public Sub New()
End Sub
End Class
接下来您可以调用您的数据库并从 table 中获取所有 ID;您可以使用它们来查询其余数据以获取特定 ID...
遍历您拥有的 ID 并获取他们的数据...
Dim nAccount As Account = Nothing
For each blah blah blah....
nAccount = query from database... which will return your Account class object...
现在您可以将此对象(您的帐户class)添加到集合中;例如 Dictionary(Of Integer, Account)
或 ListOf()
正如我之前提到的,有几种不同的方法可以解决这个问题,这取决于您需要做什么以及您希望如何处理数据。