6.1 SQL 语言的功能有哪些 SQL 是结构化查询语言(Structured Query Language)的缩写。 基本的 SQL 语句有 select、insert、update、delete、create、drop、grant、revoke 等。其具体使用方式见表 6-1。 ======================= end点赞 收藏分享文章举报康冕峰发布了95 篇原创文章 · 获赞 20 · 访问量 6万+私信 关注
1、Redis是什么?都有哪些使用场景?Redis是一个使用C语言开发的高速缓存数据库。Redis使用场景:1)记录帖子点赞数、点击数、评论数;2)缓存近期热帖;3)缓存文章详情信息;4)记录用户会话信息。 2、Redis有哪些功能?1)数据缓存功能;2)分布式锁的功能;3)支持数据持久化;4)支持事务;5)支持消息队列。 3、Redis和memcache有什么区别?1)存储方式不同:memcache把数据全部存在内存之中,断电后会挂掉,数...
1. 什么是 Redis? Redis 本质上是一个 Key-Value 类型的内存数据库,很像 memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据 flush 到硬盘上进行保存。因为是纯内存操作,Redis 的性能非常出色,每秒可以处理超过 10 万次读写操作,是已知性能最快的 Key-Value DB。 Redis 的出色之处不仅仅是性能,Redis 最大的魅力是支持保存多种数据结构,此外单个 value 的最大限制是 1GB,不像 memcached 只能...
知识点汇总 关系数据库 Oracle MySql MariaDB PostgreSQL NoSQL redis mongoDB hbase Cassandra pika NewSQL TiDB OceanBase 事务特性(ACID) 原子性 一致性 隔离性 持久性 事务类型 扁平事务 带保存点的扁平事务 链事务 嵌套事务 分布式事务 分布式事务解决方案: XA规范----2PC、3PC TCC 消息事务 GTS/Fescar 数据库范式 第一范式 第二范式 第三范式 巴斯-科德范式 第四范式 第五范式
基础:基本存储结构:页(大小16KB) 各个数据页组成双向链表,每个数据页的记录组成单向链表索引:数据库中一个或几个列以特定数据结构存储(B-Tree Hash),减少查找时间(将无序的数据变成有序)聚簇索引 & 非聚簇索引:按照数据存放的物理位置为顺序,提高多行检索速度 加快单行检索聚集索引 & 非聚集索引:聚集索引:以主键创建的索引 叶子节点存放表中数据非聚集索引以非主键创建的索引 叶子节点存放主键和索引列 覆盖索引:...
问题:请讲下在JDK6 JDK7 JDK8中java内存区域有什么不同吗 分析:该问题主要考察对JVM运行时区域的了解,首先要了解最基本的内存区域划分,然后再去掌握其中的变化,再延申一点,为什么要这样变化; 回答要点: 主要从以下几点去考虑, 1、内存区域的基本划分是什么? 2、内存区域在不同的版本下是怎么变化的? 3、内存区域为什么会有这样的变化? jvm运行时区域分为堆、方法区、虚拟机栈、本地方法栈、程序计数器; 在不同版本的...
问题:请讲下java内存区域? 分析:该问题比较容易和jvm内存模型相混淆,内存模型说的是java的内存规范,规定的是多线程下访问主内存的规则;而内存区域,说的是java运行时的内存划分,换句话说就是java程序运行时内存分为哪几部分; 回答要点: 主要从以下几点去考虑, 1、内存区域说的是什么? 2、内存区域怎么划分的? 3、内存区域为什么这样划分? 上面说到内存区域,说的就是在java程序运行的时候,分配给java进程的内存是如何...
问题:请讲下java内存模型? 分析:该问题比较容易和jvm内存结构(java内存结构)这样的问题混淆,其实他们是两个概念,jvm内存结构指的是运行时的几块数据区域,包括堆、方法区、虚拟机栈、本地方法栈、程序计数器;而内存模型是另外的一个概念。 回答要点: 主要从以下几点去考虑,使用3W(why how what)法 1、java内存模型的作用,保证共享变量的可见性、有序性、原子性; 2、内存模型定义了什么,内存模型定义了多线程读写共享...
Java 面试集合 JUC volatile 并行:同时做A,B两件事 并发:同时有很多线程访问某个资源 volatile: 是java虚拟机提供的轻量级的同步机制 保证可见性不保证原子性禁止指令冲排序 JMM Java内存模型:Java Memory Model,它描述的是一组规范或者规范定义了内存中各个变量。主内存是共享内存区域,线程对变量操作,会先把数据读取到自己的工作内存中,然后对变量进行操作,然后写回主内存,各个线程的工作内存中存储着主内存的变量副本...
1.linux体系结构3.如何找到特定的文件1)find / -name "target3.java" 全局精确查找2)find ~ -name "target*" 当前目录及子目录模糊查找3)find ~ -iname "target*" 忽略大小写模糊查找4)find ~ | grep "target" 当前目录及子目录文件名包含target的文件 4.如何检索文件内容1)grep "moo" target* 检索当前目录下以target开头的文件中包含moo字符串的文件2)grep -o 正则表达式筛选3)grep -v 过滤掉指定字符串 5.彩蛋
什么是进程一个在内存中运行的应用程序。每个进程都有自己独立的一块空间,一个进程可以有多个线程,比如在windows系统中,一个运行的xx.exe就是一个进程 什么是线程进程中的一个执行任务,负责当前进程中程序的执行。一个进程至少有一个线程,一个进程可以运行多个线程,多个线程可共享数据 线程五种基本状态新建(new)、可运行(runnable)、运行(running)、阻塞(block)、死亡(dead) Thread和Runnable的区别如果一个类继承...
经常有人会有这么一个疑惑,难道 Java 开发就一定要懂得 JVM 的原理吗?我不懂 JVM ,但我照样可以开发。确实,但如果懂得了 JVM ,可以让你在技术的这条路上走的更远一些。JVM 的重要性 首先你应该知道,运行一个 Java 应用程序,我们必须要先安装 JDK 或者 JRE 。这是因为 Java 应用在编译后会变成字节码,然后通过字节码运行在 JVM 中,而 JVM 是 JRE 的核心组成部分。 优点 JVM 不仅承担了 Java 字节码的分析(JIT compiler)和...
内存溢出是指应用系统中存在无法回收的内存或使用的内存过多,最终使得程序运行要用到的内存大于虚拟机能提供的最大内存。 引起内存溢出的原因有很多种,常见的有以下几种: 1.内存中加载的数据量过于庞大,如一次从数据库取出过多数据; 2.集合类中有对对象的引用,使用完后未清空,使得JVM不能回收; 3.代码中存在死循环或循环产生过多重复的对象实体; 4.使用的第三方软件中的BUG; 5.启动参数内存值设定的过小; 内存溢出的解决...