dolt 基于git 协议提供了多版本,分支特性的数据管理工具,使用简单,同时也提供了类似github 的一个云服务

安装

使用

  • 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协议的数据管理工具的更多相关文章

  1. 一款基于 Web 的通用数据管理工具(转载)

    一款基于 WEB 的通用数据管控工具 - CloudQuery 前言 前段时间,公司因为业务发展,数据量攀升,老板迫切需要一个工具对数据进行精细化管理,一是确实需要精细化管理:二是因为我们公司小,数据 ...

  2. 基于git 客户端使用shell工具

    1 定义全局启动 命令别名 C:\Program Files\Git\etc\profile.d\aliases.sh alias ls='ls -F --color=auto --show-cont ...

  3. C++开发的基于UDP协议的聊天工具

    项目相关地址 源码:https://github.com/easonjim/UDPChat bug提交:https://github.com/easonjim/UDPChat/issues

  4. 基于UDP协议的控制台聊天

    这几天学了java的网络编程弄出一个基于UDP协议的聊天工具 功能 添加并且备注好友(输入对方的ip) 删除好友 查看好友列表 用java写的控制台程序导出可执行程序后不能双击打开 还需要些一个脚本文 ...

  5. 基于奇林软件kylinTOP工具的HTTP2协议的压力测试

    1.HTTP协议概述 说到http,那就应该先了解一下http协议的发展历史.关于http协议的历史,可以参考阮一峰老师的这篇博客文章HTTP 协议入门,里面介绍的比较详细了.简单来说http先后存在 ...

  6. Kcptun 是一个非常简单和快速的,基于KCP 协议的UDP 隧道,它可以将TCP 流转换为KCP+UDP 流

    本博客曾经发布了通过 Finalspeed 加速 Shadowsocks 的教程,大家普遍反映能达到一个非常不错的速度.Finalspeed 虽好,就是内存占用稍高,不适合服务器内存本来就小的用户:而 ...

  7. 基于git diff进行的eslint代码检测

    缘起 在项目中, 通常都会使用代码检测工具来规范团队的代码风格, 比如eslint.随着代码的不断增加, eslint进行代码检测的时间也越来越久.每次检测的时候, 需要检测的文件和实际检测的文件极度 ...

  8. 性能测试总结工作总结-基于WebService协议脚本 内置函数手动编写

    LoadRunner基于WebService协议脚本 WebService协议脚本有三种生成方式,一种是直接通过LoadRunner导入URL自动解析生成:一种是使用LoadRunner内置函数手动编 ...

  9. 实战录 | 基于openflow协议的抓包分析

    <实战录>导语 云端卫士<实战录>栏目定期会向粉丝朋友们分享一些在开发运维中的经验和技巧,希望对于关注我们的朋友有所裨益.本期分享人为云端卫士安全SDN工程师宋飞虎,将带来基于 ...

随机推荐

  1. mysql替换字段中部分字符串

    解决:使用replace(obj, search, replace_str)函数; sql语法: UPDATE 表名 SET 字段名=replace(字段名, ‘被替换字符串’, '用来替换的字符串' ...

  2. 【题解】Luogu P5327 [ZJOI2019]语言

    原题传送门 看到这种树上统计点对个数的题一般是线段树合并,这题也不出意外 先对这棵树进行树剖,对于每次普及语言,在\(x,y\)两点的线段树上的\(x,y\)两位置打\(+1\)标记,在点\(fa[l ...

  3. - 反编译 AndroidKiller 逆向 实践案例 MD

    目录 目录 反编译 AndroidKiller 逆向 实践案例 MD AndroidKiller 简介 插件升级 基本使用 实践案例 修改清单文件 打印 debug 级别的日志 方式一:直接代理 Lo ...

  4. 可落地的DDD(3)-如何利用DDD进行微服务的划分

    摘要 前面两篇介绍了DDD的目标管理.DDD的工程结构调整.这篇讨论微服务的划分.微服务是目前后端比较流行的架构体系了,那么如何做好一个微服务的划分?一个微服务的粒度应该是多大呢?这篇主要介绍如何结合 ...

  5. 接口例_龟车赛跑_Java

    此例演示java中接口的一般用法. 屋子里有一群程序员,每个人在写着自己的类,共同构建一个世界. 项目经理突然出现:“打扰大家一下,公司决定举办一个竞速比赛,你们写的类都可以参加.为了比赛的顺利进行, ...

  6. webpack等bundler是如何工作的-简化版本

    webpack- why and how 首先不要被webpack做的复杂花哨的工作所迷惑,到底webpack是个啥?一句话,webpack是一个module bundler(模块打包器).多一句话, ...

  7. Java之路---Day12(多态)

    2019-10-26-22:40:09 目录: 1.多态的概念 2.多态的分类 3.实现多态的三个必要条件 4.多态的格式 5.多态成员变量的使用特点 6.多态成员方法的使用特点 7.多态的好处 8. ...

  8. FineReport连接ApacheKylin

    1.前言 Apache Kylin™是一个开源的分布式分析引擎,提供Hadoop之上的SQL查询接口及多维分析(OLAP)能力以支持超大规模数据,最初由eBay Inc. 开发并贡献至开源社区.它能在 ...

  9. ajax分页和搜索

    //控制器function show(Request $request){ $page=$request->page?$request->page:1; $size=4; $pian=($ ...

  10. 上传文件至Github仓库

    Github的使用 创建一个本地的版本库(也就是一个文件夹) 新建文件夹,或使用Git bash命令行窗口创建 $ mkdir test $ cd test 在命令行中输入 git init把这个文件 ...