dolt 基于git协议的数据管理工具
dolt 基于git 协议提供了多版本,分支特性的数据管理工具,使用简单,同时也提供了类似github 的一个云服务
安装
- 下载地址
https://github.com/liquidata-inc/dolt/releases - 配置环境变量
对于mac 以及linux 添加path 变量
使用
- init
dolt init
参考提示添加配置
Could not determine user.name. Use the init parameter --name "FIRST LAST" to set it for this repo, or dolt config --global --add user.name "FIRST LAST"
usage: dolt init [<options>] [<path>]
Specific dolt init options
--name=<name>
The name used in commits to this repo. If not provided will be taken
from "user.name" in the global config.
--email=<email>
The email address used. If not provided will be taken from
"user.email" in the global config.
dolt config --global --add user.name "dalong"
dolt config --global --add user.email "1141591465@qq.com"
重新运行效果
dolt init
Successfully initialized dolt data repository.
目录结构
tree .dolt
.dolt
├── config.json
├── noms
│ ├── 4bujnjuatdli0klda7ucot0tl836jujt
│ ├── LOCK
│ ├── imfkg6k82o3lajgqh297rf1keldounr7
│ ├── manifest
│ ├── obi3h4k8ci1l3rdqq746ncs893dgptfl
│ └── u1jpqa68sgephuj7q2r0bdie06ctdm20
└── repo_state.json
1 directory, 8 files
- 添加sql支持
dolt sql -q "create table state_populations ( state varchar, population int, primary key (state) )"
dolt sql -q "show tables"
效果
+-------------------+
| tables |
+-------------------+
| state_populations |
+-------------------+
- 插入数据
dolt sql -q 'insert into state_populations (state, population) values
("Delaware", 59096),
("Maryland", 319728),
("Tennessee", 35691),
("Virginia", 691937),
("Connecticut", 237946),
("Massachusetts", 378787),
("South Carolina", 249073),
("New Hampshire", 141885),
("Vermont", 85425),
("Georgia", 82548),
("Pennsylvania", 434373),
("Kentucky", 73677),
("New York", 340120),
("New Jersey", 184139),
("North Carolina", 393751),
("Maine", 96540),
("Rhode Island", 68825)'
- 查询
dolt sql -q "select * from state_populations where state = 'New York'"
效果
+----------+------------+
| state | population |
+----------+------------+
| New York | 340120 |
+----------+------------+
- git 方式 提交操作
➜ first dolt add .
➜ first dolt commit -m "init demo"
commit 1j1o30pvevn6ldbpg2jeu43i7uu6b3pj
Author: dalong <1141591465@qq.com>
Date: Sun Oct 27 11:06:57 +0800 2019
init demo
➜ first dolt status
On branch master
nothing to commit, working tree clean
说明
以上是一个简单的操作,实际上dolt 支持了方便的数据导入,数据更新功能,功能操作和git 一直,源码基于golang 编写,可以学习下源码
参考资料
https://github.com/liquidata-inc/dolt
dolt 基于git协议的数据管理工具的更多相关文章
- 一款基于 Web 的通用数据管理工具(转载)
一款基于 WEB 的通用数据管控工具 - CloudQuery 前言 前段时间,公司因为业务发展,数据量攀升,老板迫切需要一个工具对数据进行精细化管理,一是确实需要精细化管理:二是因为我们公司小,数据 ...
- 基于git 客户端使用shell工具
1 定义全局启动 命令别名 C:\Program Files\Git\etc\profile.d\aliases.sh alias ls='ls -F --color=auto --show-cont ...
- C++开发的基于UDP协议的聊天工具
项目相关地址 源码:https://github.com/easonjim/UDPChat bug提交:https://github.com/easonjim/UDPChat/issues
- 基于UDP协议的控制台聊天
这几天学了java的网络编程弄出一个基于UDP协议的聊天工具 功能 添加并且备注好友(输入对方的ip) 删除好友 查看好友列表 用java写的控制台程序导出可执行程序后不能双击打开 还需要些一个脚本文 ...
- 基于奇林软件kylinTOP工具的HTTP2协议的压力测试
1.HTTP协议概述 说到http,那就应该先了解一下http协议的发展历史.关于http协议的历史,可以参考阮一峰老师的这篇博客文章HTTP 协议入门,里面介绍的比较详细了.简单来说http先后存在 ...
- Kcptun 是一个非常简单和快速的,基于KCP 协议的UDP 隧道,它可以将TCP 流转换为KCP+UDP 流
本博客曾经发布了通过 Finalspeed 加速 Shadowsocks 的教程,大家普遍反映能达到一个非常不错的速度.Finalspeed 虽好,就是内存占用稍高,不适合服务器内存本来就小的用户:而 ...
- 基于git diff进行的eslint代码检测
缘起 在项目中, 通常都会使用代码检测工具来规范团队的代码风格, 比如eslint.随着代码的不断增加, eslint进行代码检测的时间也越来越久.每次检测的时候, 需要检测的文件和实际检测的文件极度 ...
- 性能测试总结工作总结-基于WebService协议脚本 内置函数手动编写
LoadRunner基于WebService协议脚本 WebService协议脚本有三种生成方式,一种是直接通过LoadRunner导入URL自动解析生成:一种是使用LoadRunner内置函数手动编 ...
- 实战录 | 基于openflow协议的抓包分析
<实战录>导语 云端卫士<实战录>栏目定期会向粉丝朋友们分享一些在开发运维中的经验和技巧,希望对于关注我们的朋友有所裨益.本期分享人为云端卫士安全SDN工程师宋飞虎,将带来基于 ...
随机推荐
- 【spring boot】【redis】spring boot基于redis的LUA脚本 实现分布式锁
spring boot基于redis的LUA脚本 实现分布式锁[都是基于redis单点下] 一.spring boot 1.5.X 基于redis 的 lua脚本实现分布式锁 1.pom.xml &l ...
- Tomcat 路由请求的实现 Mapper
在分析 Tomcat 实现之前,首先看一下 Servlet 规范是如何规定容器怎么把请求映射到一个 servlet.本文首发于(微信公众号:顿悟源码) 1. 使用 URL 路径 收到客户端请求后,容器 ...
- SQLServer作业调用链接服务器失败解决办法
新建一个SQL作业,语句手动执行OK,但是作业计划执行总是报错. 消息已以用户 NT SERVICE\SQLSERVERAGENT 的身份执行. 链接服务器 "172.16.10.23&qu ...
- 指针 vs 引用 (2)
这波要针对上篇分析里 标红的问题(成员变量用 T,T&啥情况)继续思考, 要学习以下材料: 1. 知乎上:用指针还是引用 2. StackOverflow上的相关问题 https://stac ...
- js之预解析
一.所谓的预解析就是:在当前作用域中,JavaScript代码执行之前,浏览器首先会默认的把所有带var和function声明的变量进行提前的声明或者定义. 1)var声明的变量在预解析的时候只是提前 ...
- JavaScript 之 navigator 对象
navigator 对象可以查看用户所使用的浏览器类型和系统平台类型. 1.userAgent 通过 userAgent 可以判断用户浏览器的类型. Chrome 浏览器效果: 2.platform ...
- CSS之盒子居中的方法
一.盒子垂直居中的方法 1.先让盒子的上下边缘和父盒子的水平中心线重叠,,然后再让子盒子往回移动自身一半的距离 <div class="father"> // 结构 & ...
- 链接标签(a 标签)
一.链接标签 单词缩写: anchor 的缩写. 在HTML中创建超链接非常简单,只需用标签环绕需要被链接的对象即可. 语法格式: <a href="跳转目标" target ...
- pycharm 里运行 django 工程 You must either define the environment variable DJANGO_SETTINGS_MODULE 错误
pycharm 里运行 django 工程出现错误(在命令行直接运行ok): django.core.exceptions.ImproperlyConfigured: Requested settin ...
- pandas 之 数据清洗-缺失值
Abstract During the course fo doing data analysis and modeling, a significant amount of time is spen ...