惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

S
Securelist
C
Cybersecurity and Infrastructure Security Agency CISA
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
S
Security Affairs
Hacker News: Ask HN
Hacker News: Ask HN
L
Lohrmann on Cybersecurity
PCI Perspectives
PCI Perspectives
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
C
Cyber Attacks, Cyber Crime and Cyber Security
Recent Commits to openclaw:main
Recent Commits to openclaw:main
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
MyScale Blog
MyScale Blog
月光博客
月光博客
W
WeLiveSecurity
T
Threat Research - Cisco Blogs
Martin Fowler
Martin Fowler
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Recorded Future
Recorded Future
The GitHub Blog
The GitHub Blog
Webroot Blog
Webroot Blog
Security Archives - TechRepublic
Security Archives - TechRepublic
TaoSecurity Blog
TaoSecurity Blog
P
Proofpoint News Feed
Google DeepMind News
Google DeepMind News
F
Full Disclosure
U
Unit 42
Jina AI
Jina AI
博客园 - 司徒正美
阮一峰的网络日志
阮一峰的网络日志
L
LINUX DO - 最新话题
宝玉的分享
宝玉的分享
大猫的无限游戏
大猫的无限游戏
The Hacker News
The Hacker News
The Last Watchdog
The Last Watchdog
T
Troy Hunt's Blog
腾讯CDC
T
Threatpost
H
Hacker News: Front Page
P
Palo Alto Networks Blog
博客园 - 聂微东
Last Week in AI
Last Week in AI
有赞技术团队
有赞技术团队
Help Net Security
Help Net Security
L
LINUX DO - 热门话题
N
News and Events Feed by Topic
人人都是产品经理
人人都是产品经理
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Spread Privacy
Spread Privacy

博客园 - 陈希章

请大家支持博客园,购买VIP会员,https://cnblogs.vip PowerAutomate 流程中如何使用环境变量 在PowerShell进行输入预测,提高工作效率 可能是最简单的本地GPT3 对话机器人,支持OpenAI 和 Azure OpenAI Install Docker in WSL 2 (ubuntu) 设置必应搜索默认使用国际版 大数据分析新玩法之Kusto宝典 - 新书发布,免费发行 Kusto 2023 快速入门 开篇 —— 启发式和探索式的大数据分析工具 低代码和人工智能助力疫情期间抗原自测信息自动化收集和处理 批量执行失败的Power Automate 流程 一文讲透为Power Automate for Desktop (PAD) 实现自定义模块 - 附完整代码 是时候使用 YAML 来做配置或数据文件了 在博客文章中使用mermaid 定义流程图,序列图,甘特图 使用本地自签名证书为 React 项目启用 https 支持 博客园最新的在线编辑器,快捷键一览 为 ASP.NET Core (6.0)服务应用添加ApiKey验证支持 用浏览器快速开启Docker的体验之旅 云原生开启.NET 跨平台之路 Azure Service Fabric 踩坑日志
在本地运行Kusto服务器
陈希章 · 2023-08-31 · via 博客园 - 陈希章

我喜欢Kusto (或商用版本 Azure Data Explorer,简称 ADX) 是大家可以有目共睹的,之前还专门写过这方面的书籍,请参考 大数据分析新玩法之Kusto宝典, 很可能在今年还会推出第二季,正在酝酿题材和场景中。

为了使用Kusto,你既可以购买正式的服务(Azure Data Explorer)用于生产环境,也可以注册免费版https://aka.ms/kustofree来做研究和试验。而今天我要给大家介绍的是,你还可以在本地运行自己的Kusto服务器(官方叫法是模拟器)呢。

请注意,模拟器是没有技术支持的,建议不要用于生产环境啊。

你可以通过 https://learn.microsoft.com/en-us/azure/data-explorer/kusto-emulator-overview 这个文档了解详细信息,但我这里给大家一个实操的步骤,避免大家走弯路。

我推荐使用linux 的容器来做,而不是Windows,而且我当然推荐大家在启动容器的时候,把本地的磁盘mount上去,这样你自己创建的数据库,就可以在下次启动容器时还原回来。下面着重讲解几个关键步骤。

1. 启动容器

docker run -v /mnt/c/kustodata:/kustodata -e ACCEPT_EULA=Y -m 4G -d -p 8080:8080 -t mcr.microsoft.com/azuredataexplorer/kustainer-linux:latest

我用的是ubuntu服务器,通过WSL来启动的,所以你可以看到/mnt/c/kustodata 这个目录,其实是我的宿主机Windows上面C 盘下面的一个目录,然后我们映射到容器里的 /kustodata这个目录。

2. 使用Kusto Explorer 来连接

这里的关键是,本地服务器只支持 http 协议,而且不需要身份验证(请用自己的方式来保证安全性),所以你在连接时的连接字符串应该是下面这样的。

3. 创建数据库

这个没有特别的,你可以用下面的语法来创建数据库。

.create database test persist (
  @"/kustodata/test/md",
  @"/kustodata/test/data"
  )

这个查询是在容器里面执行的,所以这里的路径也应该是容器里面的路径,这也就是为什么我们此前要映射目录的原因了。

一旦创建数据库,你就可以正常地进行数据方面的操作了,例如创建表格,导入数据等。

# 创建表格
.create table test(id:int,name:string)

# 导入数据,按行导入
.ingest inline into table test <| 
1,'ares'

# 导入数据,从文件导入
.ingest into table test(@'/kustodata/data.csv') with(format ='csv', ignoreFirstRecord =true)

4. 关闭服务器

既然是本地服务器,你就可以完全控制它,按照你的需求可以随时关闭它。因为它是容器启动的,所以要关闭它也很简单,通常用一句命令即可。

# xxxx 是容器编号,一般取前4位即可。通过 docker ps 可以看到当前正在运行的容器,以及他们的编号
docker stop xxxx

5. 重启后还原数据库

最后一个关键步骤是,如何重启后还原数据库。因为容器如果关闭的话,数据会全部丢失,为了确保你的数据在下次启动时还在,你必须把它映射到外部宿主环境的一个目录来。

此处你可以用到一个未公开的命令。

.attach database test from @'/kustodata/test/md'

希望对大家有所帮助,欢迎反馈和交流。