我正在研究AWS OpenSearch,我试图测量的一件事是不同查询和索引命令的运行时间或执行时间。例如,执行诸如查询搜索、创建索引、删除索引等操作需要多长时间?
现在,我正在使用牧羊人 Python库与该库这里的OpenSearch.API进行交互。
请阅读我目前的索引代码:
awswrangler.opensearch.search(client=self.client, index="index_name", search_body=any_dsl_query,size=100)
awswrangler.opensearch.search_by_sql(client=self.client, sql_query="SELECT * from index_name limit 100")删除索引代码:
awswrangler.opensearch.delete_index(client=self.client, index="index_name")创建索引代码(此代码实际上按需要返回经过的时间):
awswrangler.opensearch.index_csv(client=self.client, path=csv_file_path, index="index_name")不幸的是,除了Create之外,所有这些都不返回运行时。
我知道我可以创建我自己的计时器脚本来获得运行时,但我不想做这个客户端,因为那将包括我的网络,在执行时间的延迟。不管怎么说,是否可以用OpenSearch来做这件事?
我在我正在使用的awswrangler python库中找不到任何方法,也没有找到任何其他方法。
发布于 2022-10-21 01:53:32
我能够通过使用python请求库并查看响应中的“采取”值来解决这个问题,这是在ms中运行查询所需的时间。下面是我用来实现这个功能的代码:
sample_sql_query = "SELECT * FROM <index_name> LIMIT 5"
sql_result = requests.post("<opensearch_domain>/_plugins/_sql?format=json", auth=(username, password), data=json.dumps({"query":sample_sql_query}), headers=headers).json()
print (sql_result)https://stackoverflow.com/questions/74128175
复制相似问题