小编Vis*_*was的帖子

如何停止在火花控制台上显示INFO消息?

我想停止火花壳上的各种消息.

我试图编辑该log4j.properties文件以阻止这些消息.

这是内容 log4j.properties

# Define the root logger with appender file
log4j.rootCategory=WARN, console
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.target=System.err
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{yy/MM/dd HH:mm:ss} %p %c{1}: %m%n

# Settings to quiet third party logs that are too verbose
log4j.logger.org.eclipse.jetty=WARN
log4j.logger.org.eclipse.jetty.util.component.AbstractLifeCycle=ERROR
log4j.logger.org.apache.spark.repl.SparkIMain$exprTyper=INFO
log4j.logger.org.apache.spark.repl.SparkILoop$SparkILoopInterpreter=INFO
Run Code Online (Sandbox Code Playgroud)

但是消息仍在控制台上显示.

以下是一些示例消息

15/01/05 15:11:45 INFO SparkEnv: Registering BlockManagerMaster
15/01/05 15:11:45 INFO DiskBlockManager: Created local directory at /tmp/spark-local-20150105151145-b1ba
15/01/05 15:11:45 INFO MemoryStore: MemoryStore started with capacity 0.0 B.
15/01/05 15:11:45 INFO ConnectionManager: Bound socket to port 44728 with id = ConnectionManagerId(192.168.100.85,44728)
15/01/05 …
Run Code Online (Sandbox Code Playgroud)

log4j apache-spark spark-submit

168
推荐指数
12
解决办法
16万
查看次数

MongoDB查找精确数组匹配,但顺序无关紧要

我正在查询找到精确的数组匹配并成功检索它,但是当我试图找出具有不同顺序的值的确切数组时,它就会失败.

Example

db.coll.insert({"user":"harsh","hobbies":["1","2","3"]})
db.coll.insert({"user":"kaushik","hobbies":["1","2"]})
db.coll.find({"hobbies":["1","2"]})
Run Code Online (Sandbox Code Playgroud)

第二个文件成功检索

db.coll.find({"hobbies":["2","1"]})
Run Code Online (Sandbox Code Playgroud)

什么也没显示

请帮忙

arrays mongodb mongodb-query

12
推荐指数
2
解决办法
8014
查看次数

如何使用spark查询mongo?

我正在使用spark和mongo.我可以使用以下代码连接到mongo:

val sc = new SparkContext("local", "Hello from scala")

val config = new Configuration()
config.set("mongo.input.uri", "mongodb://127.0.0.1:27017/dbName.collectionName")
val mongoRDD = sc.newAPIHadoopRDD(config, classOf[com.mongodb.hadoop.MongoInputFormat], classOf[Object], classOf[BSONObject])
Run Code Online (Sandbox Code Playgroud)

上面的代码给了我收集的所有文件.

现在我想在查询中应用一些条件.

为此我用过

config.set("mongo.input.query","{customerId: 'some mongo id'}")
Run Code Online (Sandbox Code Playgroud)

这一次只涉及一个条件.如果'usage'> 30,我想添加一个条件

1)如何使用spark和mongo为mongo查询添加多个条件(包括大于和小于)?

另外我想用scala迭代查询结果的每个文件?

2)如何使用scala迭代结果?

scala mongodb apache-spark

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

如果 mongodb 中的数据为空或为空,则从 $match 中排除

$matchmongodb.

假设$match在某些情况下我有多个选项,blank或者null在那个阶段我想$match匹配我们文档中的那个字段。

例如

$match:{
   name:'abc',
   age:''  //exclude if blank or null,
   city:'delhi'
}
Run Code Online (Sandbox Code Playgroud)

我只想要匹配namecity字段。如果blanknull可能的话,我希望它从聚合中排除自动。

mongoose mongodb mongodb-query

8
推荐指数
1
解决办法
9771
查看次数

如何使用具有新值的java在mongodb中的现有集合中追加现有数组

我有一个mongo集合,如:

{
    "_id": ObjectId("55cad746aed75601b4822cc9"),
    "entityId": "12",
    "entityType": "a",
    "nameIdentity": [{
        "fName": "abc",
        "lName": "def",
        "dob": "00",
        "address": "xyz"
    },

    ]
}
Run Code Online (Sandbox Code Playgroud)

我正在使用mongodb java 3.0驱动程序并尝试匹配和更新.例如:我试图匹配,entityId如果它找到然后添加新的nameIdentity.

我第二次通过

{
    "fName": "123",
    "lName": "456",
    "dob": "00",
    "address": "789"
}
Run Code Online (Sandbox Code Playgroud)

对于我的entityId: 12匹配,那么我的新系列应该是这样的:

{
    "_id": ObjectId("55cad746aed75601b4822cc9"),
    "entityId": "12",
    "entityType": "a",
    "nameIdentity": [{
    "fName": "abc",
    "lName": "def",
    "dob": "00",
    "address": "xyz"
    }, {
    "fName": "123",
    "lName": "456",
    "dob": "00",
    "address": "789"
    }]
}
Run Code Online (Sandbox Code Playgroud)

我想将它添加到相同的匹配对象或集合中.但它取代了以前的数组,并添加了这样的新:

{
    "_id": ObjectId("55cad746aed75601b4822cc9"),
    "entityId": "12", …
Run Code Online (Sandbox Code Playgroud)

java mongodb mongodb-query

8
推荐指数
1
解决办法
7388
查看次数

如何在Mongo文件中更改嵌套字段的数据类型?

我的Mongo结构如下,

"topProcesses" : [
        {
            "cpuUtilizationPercent" : "0.0",
            "processId" : "1",
            "memoryUtilizationPercent" : "0.1",
            "command" : "init",
            "user" : "root"
        },
        {
            "cpuUtilizationPercent" : "0.0",
            "processId" : "2",
            "memoryUtilizationPercent" : "0.0",
            "command" : "kthreadd",
            "user" : "root"
        },
        {
            "cpuUtilizationPercent" : "0.0",
            "processId" : "3",
            "memoryUtilizationPercent" : "0.0",
            "command" : "ksoftirqd/0",
            "user" : "root"
        },
        {
            "cpuUtilizationPercent" : "0.0",
            "processId" : "5",
            "memoryUtilizationPercent" : "0.0",
            "command" : "kworker/0:+",
            "user" : "root"
        },
        {
            "cpuUtilizationPercent" : "0.0",
            "processId" : "6",
            "memoryUtilizationPercent" …
Run Code Online (Sandbox Code Playgroud)

mongodb mongodb-query

7
推荐指数
1
解决办法
1741
查看次数

pymongo 中的多字段索引

我正在尝试通过 pymongo 为我的 mongodb 集合应用索引。我在用

db[collection_name].ensure_index([("field_name" , "text"),("unique", 1), ("dropDups" , 1)])

它有效。但是现在如何将其应用于多个领域?像这样的东西

db[collection_name].ensure_index([("field_name1" , "text"),("field_name2", "text"),("field_name3", "text"),("unique", 1), ("dropDups" , 1)])

我知道我们可以db.collection.ensureIndex({"$**":"text"},{"name":"TextIndex"}) 在 mongo shell 中使用,但我不想索引所有字段。有人可以帮我吗?

indexing mongodb pymongo

6
推荐指数
1
解决办法
5267
查看次数

Mongodb - 使用addToSet的项目数

我分组organization并用于$addToSet显示与之machineIds相关的明显区别organization.我想得到machineIds每个人的计数organization.但是,下面的代码返回所有machineIds的计数,而不是不同的计数.还有另一种方法可以获得总体独特性machineIds吗?

db.getCollection('newcollections').aggregate([{
    $group: {
    _id: {
        organization: "$user.organization"
    },
    machineId: {
        "$addToSet": "$user.machineId"
    },
    count: {
        $sum: 1
    }
    }
}])
Run Code Online (Sandbox Code Playgroud)

sum count distinct mongodb

6
推荐指数
1
解决办法
4025
查看次数

如何在mongoDB gridfs中覆盖图像?

我正在使用MongoDB 3.2和Java 1.8版本以及mongo-java驱动程序。我已将图像保存在数据库中。我能够保存图像,读取图像并读取所有图像。现在我想更新GridFS中的图像。如果图像名称相同,我想覆盖图像。当我尝试用相同的名称保存图像时,我得到了两个图像。我正在使用以下代码保存图像。

GridFSBucket gridFSBucket = GridFSBuckets.create(database, imageCollection);
        InputStream streamToUploadFrom = new FileInputStream(new File(imageFileName));
        GridFSUploadOptions options = new GridFSUploadOptions()
                .metadata(new Document("type", "brand").append("name", name).append("uuid", UUID.randomUUID().toString()));
        ObjectId fileId = gridFSBucket.uploadFromStream(name, streamToUploadFrom, options)
Run Code Online (Sandbox Code Playgroud)

谁能指导我找到任何特定的文档链接/解决方法,以便我可以覆盖/更新图像。

java mongodb gridfs

6
推荐指数
1
解决办法
1658
查看次数

如何使用scala根据某些元素从元组列表中查找唯一元素?

我有以下清单

val a = List(("name1","add1","city1",10),("name1","add1","city1",10),

("name2","add2","city2",10),("name2","add2","city2",20),("name3","add3","city3",20))
Run Code Online (Sandbox Code Playgroud)

我想要基于元组的前三个值从上面的列表中区分出不同的元素。从列表中查找不同元素时,不应考虑第四个值。

我想要以下输出:

val output = List(("name1","add1","city1",10),("name2","add2","city2",10),

("name3","add3","city3",20))
Run Code Online (Sandbox Code Playgroud)

是否有可能超过输出?

据我所知,distinct如果整个元组/值重复,则可以工作。我尝试了distinct如下所示

val b = List(("name1","add1","city1",10),("name1","add1","city1",10),("name2","add2","city2",10),
("name2","add2","city2",20),("name3","add3","city3",20)).distinct
Run Code Online (Sandbox Code Playgroud)

但它给出的输出为-

List(("name1","add1","city1",10),("name2","add2","city2",10),
("name2","add2","city2",20),("name3","add3","city3",20))
Run Code Online (Sandbox Code Playgroud)

任何替代方法也将不胜感激。

scala

4
推荐指数
2
解决办法
2681
查看次数