sql >> データベース >  >> NoSQL >> Redis

配列をredisに保存するにはどうすればよいですか?

    オブジェクトが浅い場合は、各アイテムにハッシュを使用し、配列にリストを使用できます

    アイテムキーの名前にリストキーを使用するitemlist item:1などのキーに実際のデータを保存するためにハッシュを使用する

    const data = [
        {
            id: 1,
            nombre: 'cualquier',
            descripcion: 'descripción muy especifica',
            monto: '100000',
            fecha: '2019-10-16',
            estado: true
        },
        {
            id: 2,
            nombre: 'conjunto autosustentable',
            descripcion:
                'es un proyecto creado para favorecer al medio ambiente y reducir costos de estilo de vida',
            monto: '15000',
            fecha: '2019-12-16',
            estado: true
        },
        {
            id: 3,
            nombre: 'cultivo autosustentable',
            descripcion:
                'el objetivo es reducir el costo de producción de alimento y favorecer el medio ambiente',
            monto: '190000000',
            fecha: '2019-12-16',
            estado: true
        }
    ]
    
    // using ioredis lib in this example
    // saving it to redis
    
    for (let i = 0; i < data.length; i++) {
        const item = data[i]
        await redis.hmset('item:${item.id}', item)
        await redis.lpush('itemlist', `item:${item.id}`)
    }
    
    // getting it back from redis: first geet the keys ; then get all the data
    const keys = await redis.lrange('itemlist', 0, -1) // 0, -1 => all items
    
    const p = redis.pipeline()
    for (let i = 0; i < keys.length; i++) {
        const key = keys[i];
        p.hgetall(key)
    }
    const resp = await p.exec()
    



    1. マングースモデルが新しくなったときにObjectIdを自動生成する方法はありますか?

    2. デフォルトでmongodbの特定のデータベースに接続します

    3. EVAL、SCAN、およびDELを使用したRedisワイルドカード削除スクリプトは、非決定論的コマンドの後に許可されていない書き込みコマンドを返します

    4. MongoDBでの長時間実行操作の管理