标签: persistent

subset()删除向量上的属性; 如何维持/坚持他们?

假设我有一个向量,我设置了一些属性:

vec <- sample(50:100,1000, replace=TRUE)
attr(vec, "someattr") <- "Hello World"
Run Code Online (Sandbox Code Playgroud)

当我对向量进行子集化时,属性将被删除.例如:

tmp.vec <- vec[which(vec > 80)]
attributes(tmp.vec) # Now NULL
Run Code Online (Sandbox Code Playgroud)

有没有办法,子集和持久化属性,而不必将它们保存到另一个临时对象?

额外奖励:哪里可以找到这种行为的文件?

attributes r vector subset persistent

13
推荐指数
1
解决办法
1307
查看次数

zeromq持久性模式

谁必须管理ZeroMQ中的持久性?

当我们在Python语言中使用ZeroMQ客户端时,有哪些插件/模块可用于管理持久性?

我想知道使用ZeroMQ的模式.

python persistent zeromq

12
推荐指数
1
解决办法
6970
查看次数

Yesod/Persistent的MongoDB示例

Haskell和Yesod新手在这里.我一直在尝试从Yesod书中的Persistent章节(http://www.yesodweb.com/book/persistent)中跟踪与Yesod示例的集成.似乎Sqlite编译并运行良好.但是,我正在尝试使用MongDB,并且很难让事情发挥作用.特别:

  1. 在sqlite的示例中:

    share [mkPersist sqlSettings, mkMigrate "migrateAll"] [persist|

    Yesod书中说"Mongo代码将mongoSettings改为使用".但我无法在任何模块中找到它,并且代码无法编译.所以相反,我不得不使用它而不是mongoSettings:

    MkPersistSettings { mpsBackend = ConT ''Action }

    我必须导入Language.Haskell.TH.Syntax才能让它进行编译,我假设它应该对用户隐藏,所以我当然不是正确的.

    另外,我发现在Mongo的Persistent测试中没有"share"和"migrate"部分.我实际上不确定为什么,我猜它是因为MongoDB是Schema-less而不需要迁移?

  2. SqlPersist

    我认为MongoPersist是SqlPersist的对应物,我猜它几乎是 - 我MongoPersist在Persistent的测试目录中的init.hs中找到了一个实例.但它被评论出来了,所以我觉得它已经过时了?否则,就我所知,它无论如何都没有定义.所以我不知道如何转换以下行(Yesod书的第115页,或接近http://www.yesodweb.com/book/persistent的末尾)来为MongoDB工作:

    instance YesodPersist PersistTest where
        type YesodPersistBackend PersistTest = SqlPersist
        runDB action = do
            PersistTest pool <- getYesod
            runSqlPool action pool
    
    Run Code Online (Sandbox Code Playgroud)
  3. 使用withMongoDBConn

    所以对于sqlite,代码是(上面网页的第一个例子):

    main :: IO ()
    main = withSqliteConn ":memory:" $ runSqlConn $ do
        runMigration migrateAll
        johnId <- insert $ Person "John Doe" $ Just 35
        ... and …
    Run Code Online (Sandbox Code Playgroud)

haskell persistent mongodb yesod

12
推荐指数
1
解决办法
3068
查看次数

为什么泡菜吃内存?

我试图处理通过小块将大量的腌制数据写入磁盘.这是示例代码:

from cPickle import *
from gc import collect

PATH = r'd:\test.dat'
@profile
def func(item):
    for e in item:
        f = open(PATH, 'a', 0)
        f.write(dumps(e))
        f.flush()
        f.close()
        del f
        collect()

if __name__ == '__main__':
    k = [x for x in xrange(9999)]
    func(k)
Run Code Online (Sandbox Code Playgroud)

内置循环中的open()和close()可以排除内存中数据累积的可能原因.

为了说明问题,我附上了使用Python 3d party模块memory_profiler获得的内存分析结果:

   Line #    Mem usage  Increment   Line Contents
==============================================
    14                           @profile
    15      9.02 MB    0.00 MB   def func(item):
    16      9.02 MB    0.00 MB       path= r'd:\test.dat'
    17
    18     10.88 MB    1.86 MB       for e …
Run Code Online (Sandbox Code Playgroud)

python performance file-io pickle persistent

12
推荐指数
1
解决办法
4799
查看次数

Magento主题中/ persistent /目录的含义是什么?

我知道它与CE 1.6中引入的Magento的持久特性有关

但深层含义是什么?为什么Magento模板加倍?

themes magento persistent

11
推荐指数
1
解决办法
5283
查看次数

在Conduit中使用持久性

首先,我要完成的任务的简化版本:我有几个大文件(相当于30GB),我想修剪重复的条目.为此,我建立了一个数据散列数据库,逐个打开文件,散列每个项目,并将其记录在数据库和输出文件中,如果它的散列不在数据库中.

我知道如何使用迭代器,枚举器,我想尝试管道.我也知道如何用管道来做,但现在我想使用管道和持久性.我遇到了类型问题,可能还有整个概念ResourceT.

这里有一些伪代码来说明问题:

withSqlConn "foo.db" $ runSqlConn $ runResourceT $ 
     sourceFile "in" $= parseBytes $= dbAction $= serialize $$ sinkFile "out"
Run Code Online (Sandbox Code Playgroud)

问题在于dbAction功能.我想自然地在这里访问数据库.由于它所做的动作基本上只是一个过滤器,我首先想到这样写:

dbAction = CL.mapMaybeM p
     where p :: (MonadIO m, MonadBaseControl IO (SqlPersist m)) => DataType -> m (Maybe DataType)
           p = lift $ putStrLn "foo" -- fine
           insert $ undefined -- type error!
           return undefined
Run Code Online (Sandbox Code Playgroud)

我得到的具体错误是:

Could not deduce (m ~ b0 m0)
from the context (MonadIO m, MonadBaseControl IO (SqlPersist m))
  bound by …
Run Code Online (Sandbox Code Playgroud)

haskell persistent yesod conduit

11
推荐指数
1
解决办法
875
查看次数

尝试使用持久性时,没有Control.Monad.Logger.MonadLogger的实例

我正在构建一个使用scottypersistent编译的麻烦的Web应用程序.这是我的代码:

runDb :: SqlPersist (ResourceT IO) a -> IO a
runDb query = runResourceT . withSqliteConn "dev.app.sqlite3" . runSqlConn $ query

readMessage :: KeyBackend (PersistEntityBackend Post) Post -> IO (Maybe Post)
readMessage postID = runDb $ get postID
Run Code Online (Sandbox Code Playgroud)

我收到此错误消息:

Message.hs:30:30:
No instance for (Control.Monad.Logger.MonadLogger IO)
  arising from a use of `get'
Possible fix:
  add an instance declaration for
  (Control.Monad.Logger.MonadLogger IO)
In the second argument of `($)', namely `get postID'
In the expression: runDb $ get postID …
Run Code Online (Sandbox Code Playgroud)

database logging haskell web-applications persistent

11
推荐指数
1
解决办法
1040
查看次数

saveRDS()和readRDS()关于对象属性的行为

不要saveRDSreadRDS,相应地,保存和恢复所有对象的属性,包括应用程序创建者(通过attr)?我试图使用这种方法而不是saveload,试图找到我的问题的解决方法链接在下面.但是,似乎并非如此,除非我做错了什么:我可以访问R数据对象的属性而无需从文件中完全加载对象吗?.

environment persistence r persistent rdata

11
推荐指数
1
解决办法
1万
查看次数

jQuery Mobile中的持久标头

无法找到一种方法来为我的旧问题提供赏金,所以我重新发布它,因为它可能是一个错误.

简短版本:我希望PhoneGap + JQM应用程序中的持久标头在页面转换之间保持原位(从不移动),就像页脚可以设计的那样.

长版:首先,我是jQuery和JQM的新手,所以请指出我所犯的任何新错误.

我正在尝试在应用程序中的不同页面之间保留一个标题.当用户在页面之间转换时,它必须像持久的页脚一样保持在原位.使用data-role ="footer"data-id ="(某些一致的id)"data-position ="fixed"来实现持久页脚.它运作得相当好(随机故障,因为它错位,然后在几秒后自动修复).有关我正在寻找的内容的更多信息,请参阅此处的"持久页脚":http: //jquerymobile.com/test/docs/#/test/docs/toolbars/docs-footers.html

并在下面的链接中查看持久页脚的示例.了解如何选择页脚中的项目转换为全新页面,但页脚不会移动:http: //jquerymobile.com/test/docs/#/test/docs/toolbars/footer-persist-a.html

现在我正在尝试做同样的事情,但我希望它在应用程序的顶部而不是底部.我尝试过以下的事情:

  • 将页脚移动到页面顶部(不知道jQuery中要捕获的标记.尝试使用几个jQuery类的div.(jQuery类),但没有一个工作.我使用FireBug来确定它是"顶级"CSS属性需要改变.

每页上的HTML:

<div data-role="footer" data-position="fixed" data-id="header">
<img src="images/bgheader.png" />
</div>
Run Code Online (Sandbox Code Playgroud)

JavaScript:

$('div.ui-footer').css('top', '0px');
$('div.ui-footer-fixed').css('top', '0px');
$('div.fade').css('top', '0px');
$('div.ui-fixed-overlay').css('top', '0px');
$('div.ui-bar-a').css('top', '0px');
Run Code Online (Sandbox Code Playgroud)
  • 使用data-role ="header"(不像页脚那样持久).这个方法将创建我想要的标题(因为我覆盖了一些CSS),但是当我在页面之间转换时,它不会将标题保持在顶部.JQM文档也没有声明它们支持持久标头,而它确实声明它支持持久页脚:

每页上的HTML:

<div data-role="header" data-position="fixed" data-id="header" id="header" data-backbtn="false">
<img src="images/bgheader.png" />
</div>
Run Code Online (Sandbox Code Playgroud)

mobile jquery header persistent

10
推荐指数
1
解决办法
2万
查看次数

持久性:如何让我进入ACID

假设我在事务中执行以下步骤:

  • 从数据库中读取一些数据A.
  • 根据它做一些计算
  • 将一些数据B写入数据库

如果A在平均时间内发生变化,是否有可能使此交易失败?

简而言之:如何在持久化包中实现隔离?

haskell persistent yesod

10
推荐指数
1
解决办法
718
查看次数