小编aru*_*run的帖子

在将Jedis与Spring Data一起使用时,为什么在Redis中使用奇怪的密钥存储数据?

我正在使用Spring Data Redis和Jedis.我试图用密钥存储哈希vc:${list_id}.我能够成功插入redis.但是,当我使用redis-cli检查按键时,我看不到按键vc:501381.相反,我明白了\xac\xed\x00\x05t\x00\tvc:501381.

为什么会发生这种情况?如何更改?

redis jedis spring-data

42
推荐指数
4
解决办法
3万
查看次数

如何在Solr中查询?

如何从Solr结果集中排除一组文档ID?基本上是这样的

/select?q=tag_id:367 AND NOT id:(306670,302209)

我尝试了它并没有排除那些id的文件.

solr

20
推荐指数
2
解决办法
3万
查看次数

StringBuilder由多个线程修改

我问的问题与StringBuilder和StringBuffer之间的差异有关, 但不一样.我想看看如果同时由两个线程修改StringBuilder会发生什么.

我写了以下课程:

public class ThreadTester
{
    public static void main(String[] args) throws InterruptedException
    {
        Runnable threadJob = new MyRunnable();
        Thread myThread = new Thread(threadJob);
        myThread.start();

        for (int i = 0; i < 100; i++)
        {
            Thread.sleep(10);
            StringContainer.addToSb("a");
        }

        System.out.println("1: " + StringContainer.getSb());
        System.out.println("1 length: " + StringContainer.getSb().length());
    }
}

public class MyRunnable implements Runnable
{
    @Override
    public void run()
    {
        for (int i = 0; i < 100; i++)
        {
            try
            {
                Thread.sleep(10);
            }
            catch (InterruptedException e) …
Run Code Online (Sandbox Code Playgroud)

java stringbuilder multithreading synchronization stringbuffer

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

使用data-config.xml中solrcore.properties的属性(Solr 4.2.1)

我们正在尝试从Solr 3.6.2升级到Solr 4.2.1,并且在data-config.xml中使用solrcore.properties中的属性时遇到问题.

使用Solr 3.6.2,我们能够在data-config.xml中的solrcore.properties中直接使用属性,如:

<dataSource driver="${jdbc.driver}" 
            url="jdbc:mysql://${jdbc.host}:${jdbc.port}/${db.name}" 
            user="${jdbc.username}" 
            password="${jdbc.password}" 
            batchSize="-1" />
Run Code Online (Sandbox Code Playgroud)

现在找不到这些属性,所以当我调用dataimport时会抛出此异常:

Apr 26, 2013 11:10:58 AM org.apache.solr.common.SolrException log
SEVERE: Full Import failed:java.lang.RuntimeException: java.lang.RuntimeException: org.apache.solr.handler.dataimport.DataImportHandlerException: Could not load driver:  Processing Document # 1
    at org.apache.solr.handler.dataimport.DocBuilder.execute(DocBuilder.java:266)
    at org.apache.solr.handler.dataimport.DataImporter.doFullImport(DataImporter.java:422)
    at org.apache.solr.handler.dataimport.DataImporter.runCmd(DataImporter.java:487)
    at org.apache.solr.handler.dataimport.DataImporter$1.run(DataImporter.java:468)
Caused by: java.lang.RuntimeException: org.apache.solr.handler.dataimport.DataImportHandlerException: Could not load driver:  Processing Document # 1
    at org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:406)
    at org.apache.solr.handler.dataimport.DocBuilder.doFullDump(DocBuilder.java:319)
    at org.apache.solr.handler.dataimport.DocBuilder.execute(DocBuilder.java:227)
    ... 3 more
Caused by: org.apache.solr.handler.dataimport.DataImportHandlerException: Could not load driver:  Processing Document # 1
    at org.apache.solr.handler.dataimport.DataImportHandlerException.wrapAndThrow(DataImportHandlerException.java:71)
    at org.apache.solr.handler.dataimport.JdbcDataSource.createConnectionFactory(JdbcDataSource.java:114)
    at org.apache.solr.handler.dataimport.JdbcDataSource.init(JdbcDataSource.java:62) …
Run Code Online (Sandbox Code Playgroud)

solr jdbc dataimporthandler

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

用于排序整数值的正确Solr fieldType是什么?

我正在使用Solr 3.6.1.用于包含整数值的Solr排序字段的正确字段类型是什么?我只需要将此字段用于排序,并且永远不会对其进行范围查询.我应该使用integersint

我在schema.xml中看到,sint类型声明为:

 <!-- Numeric field types that manipulate the value into
         a string value that isn't human-readable in its internal form,
         but with a lexicographic ordering the same as the numeric ordering,
         so that range queries work correctly. -->
    <fieldType name="sint" class="solr.SortableIntField" sortMissingLast="true" omitNorms="true"/>
Run Code Online (Sandbox Code Playgroud)

integer说如下:

 <!-- numeric field types that store and index the text
         value verbatim (and hence don't support range queries, since the
         lexicographic ordering isn't equal to the …
Run Code Online (Sandbox Code Playgroud)

sorting lucene solr

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

Solr/Lucene fieldCache OutOfMemory在动态字段上排序错误

我们有一个Solr核心,大约250 TrieIntField秒(声明为dynamicField).我们的Solr索引中有大约14M文档,许多文档在许多这些领域都有一些价值.我们需要在一段时间内对所有这250个字段进行排序.

我们面临的问题是潜在的lucene fieldCache很快就会被填满.我们有一个4 GB的盒子,索引大小为18 GB.对40或45个这些动态字段进行排序后,内存消耗约为90%,我们开始出现OutOfMemory错误.

现在,如果消耗的总内存超过80%,我们每分钟都会运行一个cron作业重启tomcat.

根据我的阅读,我理解限制可排序Solr字段上的不同值的数量将减少fieldCache空间.这些可排序字段中的值可以是0到33000之间的任何整数,并且分布相当广泛.我们考虑了一些扩展解决方案,但处理整个问题的最佳方法是什么?

更新:我们认为不是排序,如果我们做了提升,它将不会转到fieldCache.所以不要发出类似的查询

select?q=name:alba&sort=relevance_11 desc

我们尝试了

select?q={!boost relevance_11}name:alba

但不幸的是,提升也填充了字段缓存:(

lucene solr out-of-memory

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

如何模拟对pyspark SQL函数的内部调用

得到了以下一段pyspark代码:

import pyspark.sql.functions as F

null_or_unknown_count = df.sample(0.01).filter(
    F.col('env').isNull() | (F.col('env') == 'Unknown')
).count()
Run Code Online (Sandbox Code Playgroud)

在测试代​​码中,数据帧是模拟的,因此我正在尝试为此调用设置return_value,如下所示:

from unittest import mock
from unittest.mock import ANY

@mock.patch('pyspark.sql.DataFrame', spec=pyspark.sql.DataFrame)
def test_null_or_unknown_validation(self, mock_df):
    mock_df.sample(0.01).filter(ANY).count.return_value = 250
Run Code Online (Sandbox Code Playgroud)

但这失败了:

File "/usr/local/lib/python3.7/site-packages/pyspark/sql/functions.py", line 44, in _
  jc = getattr(sc._jvm.functions, name)(col._jc if isinstance(col, Column) else col)
AttributeError: 'NoneType' object has no attribute '_jvm'
Run Code Online (Sandbox Code Playgroud)

还尝试过mock_df.sample().filter().count.return_value = 250,它给出了相同的错误。

如何F.col('env').isNull() | (F.col('env') == 'Unknown')正确模拟过滤器?

python mocking python-unittest apache-spark pyspark

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

使用哪种 Gunicorn Worker 类型进行机器学习推理?

    \n
  • Gunicorn版本:19.9.0
  • \n
  • 蟒蛇版本:3.7.0
  • \n
\n\n

获得了一个使用 Flask+gunicorn(无 nginx)构建的命名实体识别(NER)机器学习推理应用程序。

\n\n

该应用程序收到一个请求,其中包含存储在云中的文档的详细信息。它从云端获取文档,对其进行 NER,将结果存储在云端(如果成功),并向客户端发送成功/失败响应。SLA 是客户端在发送请求后一分钟内收到响应。NER 任务使用 python 多处理并行运行多个模型,并且非常消耗 CPU 资源。

\n\n

我们目前使用的是带有 7 个线程的单个 Gunicorn“同步”工作线程。我们只使用一名工作人员,因为模型占用大量内存。这个设置大部分工作正常,除了一些线程在从云端获取文档后处理请求的过程中消失(日志中没有错误),这需要我们每隔几个小时重新启动一次gunicorn。

\n\n

根据gunicorn文档

\n\n
\n

默认同步工作线程假定您的应用程序在 CPU 和网络带宽方面受到资源限制。一般来说,这意味着您的应用程序不应该执行任何需要未定义时间的操作。需要一段不确定的时间的示例是对互联网的请求。

\n
\n\n

我们的应用程序确实会向互联网(云存储)发出请求,并且也是 CPU 密集型的。

\n\n

在这种情况下最适合使用什么工人阶级?另外,有没有更好的工人+线程组合?

\n

python-3.x gunicorn

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

Solr DataImportHandler - JOIN与单独的实体

在Solr DIH data-config.xml中,最好使用JOIN主实体中的查询获取尽可能多的字段,如:

<entity name="Lists" 
        pk="l.list_id" 
        query="SELECT l.list_id AS id, l.user_id, lo.is_votable FROM lists l
                 INNER JOIN list_options lo ON lo.list_id = l.list_id">
Run Code Online (Sandbox Code Playgroud)

或使用单独的子实体,如:

<entity name="Lists" 
        pk="l.list_id" 
        query="SELECT l.list_id AS id, l.user_id FROM lists l">

  <entity name="ListOptions" 
          query="SELECT lo.is_votable FROM list_options lo 
                   WHERE lo.list_id=${Lists.id}" />

</entity>
Run Code Online (Sandbox Code Playgroud)

solr dataimporthandler

5
推荐指数
1
解决办法
2371
查看次数

将Python REST API调用转换为Power Query

我正在使用OAuth REST API公开的基于云的服务.

我有一个有效的Python脚本,通过它我可以先发布用户名,密码和api令牌来获取身份验证令牌.然后我使用api和身份验证令牌来获取数据.这是我的Python脚本:

import requests

base_url = 'https://example.com'
user_name = 'john_doe'
password = 'pssw0rd'
api_token = '4r-eueyta-dh7cuq-26'
timeout_min = 1

headers = {'Accept': 'application/json'}

# get authentication token
auth_url = base_url + '/api/authenticate'
data = {'Username': user_name, 
        'Password': password, 
        'ApiToken': api_token, 
        'AuthorizationTokenTimeoutMinutes': timeout_min}
r = requests.post(auth_url, headers=headers, data=data)
# the entire string response is the auth token
auth_token = r.text

# get data
proj_url = base_url + '/api/project/active?' + \
             'api-token={0}&authentication-token={1}'.format(api_token, auth_token)
r = requests.get(proj_url, headers=headers)
print(r.text)
Run Code Online (Sandbox Code Playgroud)

这工作正常.


接下来,我想在Microsoft …

python authentication rest powerquery powerbi

5
推荐指数
1
解决办法
1081
查看次数