.NET ORM 操作ClickHouse数据库

打印 上一主题 下一主题

主题 882|帖子 882|积分 2646

ClickHouse应用场景

ClickHouse 是俄罗斯的 Yandex 于 2016 年开源的用于在线分析处理查询(OLAP :Online Analytical Processing)MPP架构的列式存储数据库(DBMS:Database Management System),能够使用 SQL 查询实时生成分析数据报告。ClickHouse的全称是Click Stream,Data WareHouse。
clickhouse可以做用户行为分析,流批一体
线性扩展和可靠性保障能够原生支持 shard + replication
clickhouse没有走hadoop生态,采用 Local attached storage 作为存储
 
连接字符串
  1. Database=SqlSugarTest2;Username=default;Password=;Host=localhost;
  2. Port=8123;Compression=False;UseSession=False;Timeout=120;
复制代码
  
Nuget 安装
  1. Database=SqlSugarTest2;Username=default;Password=;Host=localhost;
  2. Port=8123;Compression=False;UseSession=False;Timeout=120;
复制代码
  
缺点

1、大小写要和数据库一样模一样,用的时候需要注意一下
2、不支持事务
3、只支持Linux
 
声名Db对象
  1. SqlSugarClient db = new SqlSugarClient(new ConnectionConfig(){
  2.            ConnectionString = "连接符字串",
  3.            DbType = DbType.ClickHouse
  4.            IsAutoCloseConnection = true});
复制代码
  
  
 
DEMO

可以去GITHUB下载完整DEMO

下载地址 https://github.com/donet5/SqlSugar
 
基础CDRUD
  1. //联表查询
  2. var list = db.Queryable<Order>()
  3.             .LeftJoin<Custom>   ((o, cus ) => o.CustomId == cus.Id)//多个条件用&&
  4.             .LeftJoin<OrderDetail> ((o, cus, oritem) => o.Id == oritem.OrderId)
  5.             .Where(o => o.Id == 1)  
  6.             .Select(o =>o)
  7.             .ToList();
  8. //查询
  9. var list=db.Queryable<Order>().Where(it=>it.Id>0).ToList();           
  10. //插入            
  11. db.Insertable(insertObj).ExecuteCommand();
  12. //更新
  13. db.Updateable(UpdateObj).ExecuteCommand();   
  14. //删除
  15. db.Deleteable(DeleteObj).ExecuteCommand();
复制代码
  

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

美丽的神话

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表