- 博客(32)
- 资源 (8)
- 收藏
- 关注
翻译 Elasticsearch目录结构
安装完es的目录结构如下:类型 描述 默认位置 设置 home es安装主目录 path.home bin 二进制脚本包含启动节点的elasticsearch {path.home}/bin conf 配置文件包含elasticsearch.yml {path.home}/config path.con...
2018-11-24 10:10:53 1152
翻译 Elasticsearch配置
目录配置环境变量系统配置文件描述符虚拟内存内存设置Elasticsearch配置路径集群名称节点名称配置风格索引配置日志elasticsearch可以以下面这种方式启动:bin/elasticsearch在linux系统,这个命令将在前台启动进程。我们也可以在后台运行,以守护进程的方式,加上-d参数bin/elastics...
2018-11-14 09:27:25 2054
翻译 初识elasticsearch(官网翻译)
目录基本概念Near Realtime(NRT)--接近实时Cluster--集群Node--节点index--索引Type--类型Document -- 文档shards & replicas -- 分片与副本注意Elasticsearch安装Exploring Your Cluster(探索你的集群)集群健康列出所有index创建...
2016-05-09 21:38:18 4404
原创 哈希分片之虚拟桶技术(virtual buckets)
上一节讲述的哈希取模法 不利于扩展,物理机和hash函数严重耦合。这一节讲述的虚拟桶技术比round robin更容易扩展,数据分片和物理机分开处理,couchbase就是利用的此技术。记录和物理机之间引入了虚拟桶层,记录通过hash函数映射到虚拟桶,记录和虚拟桶是多对一的关系;第二层是虚拟桶和物理机之间的映射,同样也是多对一的关系,及一个物理机对应多个虚拟桶,这个层关系是通过内存表实现的。
2016-05-08 11:33:36 2854
原创 哈希分片之哈希取模法(round robin)
接着上一章数据路由分片抽象模型,本节介绍一种此抽象模型的实现方案-round robin(哈希取模法)假设有K台物理机 根据以下方法就可以实现数据分片H(key) = hash(key)mod K物理机编号为0到K-1 根据以上哈希方法 可以把数据分配到每台机器上,取数据时也是使用相同的方法。但是如果新增一台物理机,哈希函数就变成以下形式H(key)=hash(key
2016-05-08 10:37:57 15501
原创 数据分片路由抽象模型
目前基于海量的数据,数据需要进行分片可水平扩展的分布在服务器上,上图的抽象模型抽象出来分片和路由的过程,可看做两级映射关系,key-partition的是数据关键字到shard空间的映射(多对一),partition-machine(多对一)是数据分片空间到物理机器的映射
2016-04-27 13:08:45 1670
原创 vim keyboard macros
在上一篇中提到过,命令【.】可以重复执行上一个命令,但是对于更复杂的情况,这个命令就有些力不从心了。对于复杂的情况,正是keyboard macros大显身手的时候。命令【qcharacter】代表宏的记录的开始,character是a到z字母中任意一个即可,然后进行一系列的操作,如果要结束宏的记录,点击命令【q】即可,结束宏的记录后,如果想重复执行上面的一系列复杂的操作,执行命令【@char
2014-04-01 23:26:33 1063
原创 vim常用命令
【i】:在命令行模式下,按下字母【i】键即进入插入模式,就可以进行内容录入了。【Esc】:按下【Esc】键 即可从插入模式返回到命令行模式。在命令行模式下【h】代表光标左移,【j】代表光标下移,【k】代表光标上移,【l】代表光标右移。如果想移动多行或者多列,可以在在这些字母前面加上相应的数字,比如说【2j】代表光标向下移动两行。【x】:在命令行模式下删除光标下的
2014-03-04 23:55:05 882
原创 Linux学习笔记(一)
注:基于centos的学习1.X Window与命令行模式的切换linux默认情况下会提供6个Terminal来让用户登录,切换的方式为使用【ctrl】+【Alt】+【F1】~【F6】的组合按钮。系统会将【F1】~【F6】命名为tty1~tty6 的操作系统环境。【ctrl】+【alt】+【F1】~【F6】:文字界面登录tty1~tty6终端;【Ctrl】+【Alt】+【F
2014-02-22 21:04:49 1234
原创 数据结构之树
树的定义:树(Tree)是n(n>=0)个结点的有限集。n=0时称为空树。在任意一棵非空树中:(1)有且仅有一个特定的称为根(root)的结点;(2)当n>1时,其余结点可分为m(m>0)个互不相交的有限集T1,T2,...,Tm,其中每一个集合本身又是一棵树,并且称为根的子树(SubTree)。 对于树的定义需要强调两点:1. n>0时,根结点是唯一的。2. m>0时,子树的
2014-01-04 21:56:22 745
原创 两个排好序的数组重新排序为一个新数组
题目:已知两个数组list1和list2都为升序排列,例如{1, 3, 34, 100},{2, 23, 45, 67, 200,300}。先要求用一个新数组包含这两个数组,并且按升序排列,时间复杂度尽量低。 解法:用两个指针分别指向数组一和数组二的第一个元素,让两个元素进行比较,把较小元素放进新数组中,并使较小元素的数组的指针加1后移。在让两个数组的元素进行比较,直到其中一个数组遍历完毕
2014-01-04 21:04:13 4423
原创 C语言实现栈数据结构操作
定义:栈是限定仅在表尾进行插入和删除操作的线性表。把允许插入和删除的一端称为栈顶(top),另一端称为栈底(bottom),不含任何数据元素的栈称为空栈。栈又称为后进先出的线性表,简称为LIFO。栈的插入操作,叫做进栈,也称为压栈或者入栈。栈的删除操作,叫做出栈,也称为弹栈。 栈的顺序存储结构因为栈是线性表的一种特殊形式,所以用数组实现栈的顺序存储结构。我们约定,下标为
2013-12-31 21:14:59 1298
原创 C语言实现单链表
定义:n个结点链结成一个链表,即为线性表(a1,a2,...,an)的链式存储结构,因为链表的每个结点中只包含一个指针域,所以叫做单链表。头指针:链表中第一个结点的存储位置叫做头指针。头结点:单链表的第一个结点前附设一个结点,称为头结点。‘ 可用C语言中的结构指针来描述单链表的存储结构,如下:
2013-12-31 20:07:56 893
翻译 PHP魔术常量
以下八个php魔术常量是不区分大小写的。1.__LINE__文件中的当期行号。 2.__FILE__文件的完整路径和文件名。如果用在被包含文件中,则返回被包含的文件名。自PHP4.0.2起,__FILE__总是包含一个绝对路径(如果是符号连接,则是解析后的绝对路径),而在之前的版本有时会包含一个相对路径。 3.__DIR__文件所在的目录。如果用在被包含文件中,则返
2013-12-17 18:18:41 1279
翻译 PHP之SPL函数
注:spl,指SPL - Standard PHP Library 标准PHP类库1.spl_autoload_registerspl_autoload_register-----注册__autoload()函数说明:bool spl_autoload_register([callback $autoload_funciton])将函数注册到SPL __autoload函
2013-12-16 17:38:36 1032
原创 C语言实现线性表之顺序存储结构操作
线性表(List):零个或者多个数据元素的有限序列。线性表的顺序存储结构,指的是用一段地址连续的存储单元依次存储线性表的数据元素。可用C语言的一维数组来实现顺序存储结构。对于线性表的顺序存储结构来说,对每个线性表位置的存入或者读取数据,对于计算机来说都是相等的时间,也就是一个常数,它的存取性能为O(1)。通常把具有这一特点的存储结构称为随机存取结构。 顺序存储结构c语言代码如下
2013-12-15 14:11:48 2262
翻译 php之字符串函数
1.explodeexplode()函数把字符串分隔为数组。array explode(string $delimiter, string $string [, int $limit])参数说明:delimiter------必须。规定在哪里分割字符串。string------必须。要分割的字符串。limit----可选。规定所返回的数组元素的最大数目。说明:本函数返回
2013-12-13 17:34:01 661
翻译 php之mysql函数
1.mysql_real_escape_string转义SQL语句中使用的字符串中的特殊字符。下列字符将受影响:\x00 \n \r \ ' " \x1a如果成功,则该函数返回被转义的字符串。如果失败,则返回false。mysql_real_escape_string(string, connection)参数说明:string-----必须,规定
2013-12-13 16:30:19 611
翻译 php数组函数
1.array_maparray array_map(callable $callback, array $arr1 [, array $...])array_map()返回一个数组,该数组包含了arr1中的所有单元经过callback作用之后的单元。callback接受的参数数目应该和传递给array_map()函数的数组数目一致。
2013-12-11 17:11:50 641
原创 mysql过滤数据(三)用通配符进行过滤
通配符-----用来匹配值的一部分的特殊字符。通配符本身实际是SQL的WHERE子句中有特殊含义的的字符。SQL支持几种通配符:"%"和“_”。为了在搜索
2013-10-12 18:02:33 942
原创 mysql过滤数据(二)
表testFieldTypeNullKeyDefaultExtraidint(11)NOPRINULLauto_incrementnamechar(50)NO NULL citychar(50)YES NULL schoolchar(50)YE
2013-10-12 14:52:41 757
原创 mysql过滤数据(一)
表testFieldTypeNullKeyDefaultExtraidint(11)NOPRINULLauto_incrementnamechar(50)NO NULL citychar(50)YES NULL schoolchar(50)YE
2013-10-11 22:53:36 1228
原创 MySQL排序检索数据----ORDER BY
表testFieldTypeNullKeyDefaultExtraidint(11)NOPRINULLauto_incrementnamechar(50)NO NULL citychar(50)YES NULL schoolchar(50)YE
2013-10-09 10:52:05 922
原创 MySQL检索数据之SELECT
如果没有明确排序查询结果,则返回的数据的顺序没有特殊意义。返回数据的顺序可能是数据被添加到表中的顺序,也可能不是。表testFieldTypeNullKeyDefaultExtraidint(11)NOPRINULLauto_incrementnamechar(50)NO NULL
2013-10-08 23:17:21 725
原创 MySQL插入数据之INSERT
1.插入及系统安全可针对每个表或者每个用户,利用MySQL的安全机制禁止使用INSERT语句。INSERT一般不会产生输出。2.利用INSERT插入完整的行表testFieldTypeNullKeyDefaultExtraidint(11)NOPRINULLauto_incrementnamec
2013-10-05 14:42:01 1995
原创 MySQL创建和操作表
1.利用CREATE TABLE创建表,必须包含下列信息:(1)新表的名字,在关键字CREATE TABLE 之后给出;(2)表列的名字和定义, 用逗号分隔。例子:CREATE TABLE test( id int NOT NULL AUTO_INCREMENT, name char(50) NOT NULL, cit
2013-10-04 21:33:12 1171
原创 mysql命令行实用程序一些实用命令
1.选择数据库最初连接到MySQL时,没有任何数据库打开供你使用,可使用USE关键字进行数据库的选择。例子:USE test(数据库名字) 2.返回可用数据库的列表SHOW DATABASES 3.返回当前数据库内表的列表SHOW TABLES 4.显示表的列的信息(1)SHOW COLUMNS FROM test_table(表名)
2013-10-04 18:08:18 962
疯狂java讲义课后习题答案
2013-10-25
计算机网络第五版
2013-10-23
深入理解计算机系统
2013-10-12
重构改善既有代码的设计
2013-10-12
Node.js开发指南
2013-10-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人