
业务数据,包括用户,订单等数据,要求数据严格准确和一致
规模如果是在千万级,或者不超过10亿级,80%选用MySQL来存储
规模如果再10亿-万亿,目前HBASE为主
以上两种是免费数据库,但对于Oracle,DB2,SQL Server付费数据库(巨贵),主要使用在银行和电信,因为对数据一致性,准确性,容灾备份要求更严格。
因为商业数据库的昂贵,互联网公司一般用不起,感兴趣可以了解下10年前阿里发起的去IOE的故事,即去掉IBM,Oracle,EMC,代替以开源软件再次开放的系统,开创新数据新时代。
日志数据,包括用户所有线上行为数据,浏览,搜索,点击等,存储在HDFS上
这类数据,相比订单和支付数据,规模要成10倍-1000倍增长。比如,我浏览10个店铺宝贝才转化一个订单数据。但该类数据,不会要求太多性能和苛刻的准确性,甚至可以容忍丢小部分日志数据。这部分数据,会放到HDFS上来存储。即一种分部式文件存储系统,存储成本很低,如果查询的话,就可以直接使用hive等工具,写SQL查询。
当然,数据库现在发展很迅猛,比如TiDB,非关系数据库MongoDB,缓存Redis等。
mysql的话,可以用text和longtext, *** 作方法如下:
1、首先点击“开始”菜单,打开Microsoft SQL Server Management Studio工具。
2、输入服务器IP地址、用户名和密码,连接到数据库。
3、找到要存放Base64字段的数据库和表,这里选择“node”表。右键点击“node”表,在菜单中点击“设计”。
4、在表设计界面,添加一个用来存储base64字符串的字段,base64Value,选择字段类型为 varchar(MAX),保存表设计。
5、最后通过编写程序代码,将普通字符串以Base64编码方式存入数据库,就可以了。
可是使用Access,如果比较简单的话使用一个文本文件也可以。使用Access的话就不用设置数据源什么。直接通过下边的方式就可以用了。try{
//Load JDBC driver
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver")
/*这里的数据库的url一定要写正确,这是关键,其中DBQ可以绝对路径,也可以是相对路径,为了体现数据存储路径的/独立性,你可以将数据库copy到不同的位试一下*/
String dbUrl = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)}DBQ=access\\test.mdb"
Connection con = DriverManager.getConnection(dbUrl,"","")
Statement state = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE)
//执行SQL语句
String sql = "select * from address"
ResultSet rs = state.executeQuery(sql)
//打印测试
if( rs != null ){
while( rs.next() ){
System.out.println("\t" + rs.getString("name"))
}
rs.close()
con.close()
}
}
catch(Exception e){
e.printStackTrace()
}
补充~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
上边的几个回答者不知道是不懂还是忽悠,谁说的access必须保证客户的电脑里也安装了access?都是扯淡,自己不知道还忽悠别人。我们公司的项目在用都及数据库的时候都是使用的Access,不过改了下扩展名罢了。
不知道的就不要乱说
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)