我想创建一个巨大的表
这个表有百亿条记录,mdf文件大小会有几个G。如何用c#语言创建并操作这个表呢?
------解决方案--------------------好KB...百亿条记录...这不只几个G能搞定了...
------解决方案--------------------用for循环,循环内用sqlcommand 插入到表中数据,不过C#的话,效率比较低了。直接在数据库中使用for循环效率会比较高。
不过不清楚你插入数据时什么样的,如果每次只插入一条数据的话,百亿条数据估计要几天了。
------解决方案--------------------新建表——命名为“巨大的表”——完事
开个玩笑别介意
兄弟啊,你问这个问题的时候,有想过怎么操作这个表么?
你确定你会操作?
反正我他么的没见过几百亿数据的表,不知道创建一个主键会不会直接卡死……
------解决方案--------------------
几百亿...MSSQL不擅长搞这个,至少不能用一张表,并且需要多台多实例组件分布式DB
如果用C#+MSQL开发,可以考虑构建数据代理层,数据的读写有代理层缓存控制,多线程、事务、分布式事务由代理层控制。但不管怎么做,都挺麻烦的。
可以参考淘宝的OceanBase,顶住双十一的系统。
或者考虑Hadoop的HBase,单表顶住百亿条很轻松,我有个张HBASE表,已经快破千亿了。
OceanBase要用C++,HBase建议用JAVA。
------解决方案--------------------建议你写存储过程来完成创建和批量插入的操作,c#中再调用该存储过程