我的职业是 Composer ,虽然我编写了很多我使用的软件,但我的计算机科学技能有限。
将 SQLite 集成为 iOS 应用程序中的文件格式和数据库的最合理方法是什么(它还需要在 Windows 上运行,但这是次要问题)?
我一直在研究 Hiberlite,它看起来棒极了,但它似乎很少被使用,而且显然它在嵌入式系统(iOS?)上运行不佳,并且当有数千个对象在运行时会卡住。在这些条件下运行时,我无法了解这些瓶颈有多严重。
数千个对象的设置(约 50,000 个,尽管这个数字可能会增加)将每 1-10 秒读取一次并定期写入。读取性能更为关键,因为写入操作可能会断断续续,但不会影响应用的核心操作。
鉴于这些条件,我应该如何处理 SQLite?我的理解是,如果没有像 Hiberlite 这样的东西,整个数据库(数百万个条目)必须为每个条目读取和重写,效率较低。如果那是最好的方法,是否有好的资源可以用来实现它?
如有任何建议,我们将不胜感激。我目前依赖的软件存在很多问题,需要重构,但由于我缺乏经验,我很难找到有关合理方法的信息。
最佳答案
我猜你现在可能已经找到了解决方案,但我一直对在 Android 和 IOS 上嵌入 SQLite 很感兴趣,而且我遇到了许多基于 C++ 的 ORM解决方案。
Hiberlite看起来可能不完全成熟(我没有很容易地看到返回数据子集的方法,这是相当标准的)。一个确实引起我注意的框架是 POCO:Data ORM library .它基于 SOCI ORM 中使用的基于流的机制. POCO library是模块化的,并针对嵌入式环境进行了优化(我相信它也具有最小的外部依赖性)。维基百科有一篇文章here ,他们概述了它的一些用户,其中 OpenFrameworks是一个。
WT ORM看起来也很有趣。
我列出了我在这里找到的一些其他 C++ ORM 框架,没有特别的顺序:
http://soci.sourceforge.net
webtoolkit WT DBO ORM
http://debea.net
http://www.qxorm.com
http://sourceforge.net/apps/trac/litesql
http://otl.sourceforge.net
http://cppcms.com/sql/cppdb
http://dtemplatelib.sourceforge.net
http://code.google.com/p/qdjango
关于sql - 我应该选择 Hiberlite 将 SQLite 集成到我的 Win/iOS 应用程序中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9492982/