区块见闻 区块见闻
Ctrl+D收藏区块见闻
首页 > OKB > 正文

SHARD:大家都知道分布式存储,但是你了解过分布式搜索吗?_IND

作者:

时间:

搜索引擎是指根据一定的策略、运用特定的计算机程序从互联网上搜集信息,在对信息进行组织和处理后,为用户提供检索服务,将用户检索相关的信息展示给用户的系统。搜索引擎包括全文索引、目录索引、元搜索引擎、垂直搜索引擎、集合式搜索引擎、门户搜索引擎与免费链接列表等。

搜索引擎是网站建设中针对“用户使用网站的便利性”所提供的必要功能,同时也是“研究网站用户行为的一个有效工具”。高效的站内检索可以让用户快速准确地找到目标信息,从而更有效地促进产品/服务的销售,而且通过对网站访问者搜索行为的深度分析,对于进一步制定更为有效的网络营销策略具有重要价值。

要了解分布式搜索引擎,先了解搜索这个事儿吧,搜索这个技术领域里最入门级别的一个概念就是倒排索引。我们先简单说一下倒排索引是个什么东西。

1、倒排索引是什么

假如说你现在不用搜索引擎,单纯使用数据库来存放和搜索一些数据,比如说放了一些论坛的帖子数据吧,那么这个数据的格式大致如下:

1475 Eason:Filecoin的价值源于大家的共识:金色财经现场报道,8月23日,在成都举办的“全球区块链算力大会暨新基建矿业峰会”上,1475 IPFS Eason做了主题为“浅析BTC与Filecoin的区别”的演讲。Eason表示,IPFS协议应用目前已有上百个,Filecoin主网上线后,基于IPFS协议的应用可以无缝迁移到Filecoin网络上。目前全球参与Filecoin项目的公司超过200家,总的销售额已突破百亿,覆盖人群也已经超过五百万以上,这个量级只有BTC和ETH,Filecoin的价值源于大家的共识。[2020/8/23]

很简单吧,假设有一个id字段标识每个帖子数据,然后title字段是帖子的标题,content字段是帖子的内容。那么这个时候,比如我们要是用数据库来进行搜索包含“汽车”这个关键字的所有帖子,大致SQL如下:

咱们姑且不论这个数据库层面也有支持全文检索的一些特殊索引类型,或者数据库层面是怎么执行的,这个不是本文讨论的重点,你就看看数据库的数据格式以及搜索的方式就好了。但是如果你通过搜索引擎类的技术来存放帖子的内容,他是可以建立倒排索引的。就是说,你把上述的几行数据放到搜索引擎里,这个倒排索引数据大致看起来如下:

声音 | 中国科学院何积丰:区块链的应用范围超乎大家的想象:据中国经济网消息,中国科学院何积丰院士在日前于上海举办的第三届区块链开发大会上表示:“区块链的应用范围超乎大家的想象,在很多行业如支付网络、电子钱包、反欺诈、供应链、智能制造等展开了应用,并创造了很多经典的商业案例。尽管区块链面临很多挑战,但未来值得期待。”[2018/12/21]

所谓的倒排索引,就是把你的数据内容先分词,每句话分成一个一个的关键词,然后记录好每个关键词对应出现在了哪些id标识的数据里。那么你要搜索包含“汽车”关键词的帖子,直接扫描这个倒排索引,在倒排索引里找到“汽车”这个关键词对应的那些数据的id就好了。然后你可以从其他地方根据这几个id找到对应的数据就可以了,这个就是倒排索引的数据格式以及搜索的方式,上面这种利用倒排索引查找数据的方式,也被称之为全文检索。

2、分布式搜索引擎理解

其实还是很简单,假如说你现在要存储1TB的数据,那么放在一台机器还是可以的。但是如果你要存储超过10TB,100TB,甚至1000TB的数据呢?你用一台机器放的下吗?当然是放不下的了,你的机器磁盘空间是不够的。大家看一下下面的图:

BM在电报群中鼓励大家:困境终会被勇气化解:据IMEOS报道,在主网上线的过程中,有人表示出对未知Bug的担心和忧虑。而BM以智者风范说道:困境终会被勇气化解,幸运会眷顾无畏之人。[2018/6/7]

所以这个时候,你就得用分布式搜索引擎了,也就是要使用多台机器来部署搜索引擎集群。比如说,假设你用Elasticsearch(后面简写为:ES)。现在你总共有3TB的数据,那么你搞3台机器,每台机器上部署一个ES进程,管理那台机器上的1TB数据就可以了。这样不就可以把3TB的数据分散在3台机器上来存储了?这不就是索引数据的分布式存储吗?而且,你在搜索数据的时候,不就可以利用3台机器来对分布式存储后的数据进行搜索了?每台机器上的ES进程不都可以对一部分数据搜索?这不就是分布式的搜索?是的,这就是所谓的分布式搜索引擎:把大量的索引数据拆散成多块,每台机器放一部分,然后利用多台机器对分散之后的数据进行搜索,所有操作全部是分布在多台机器上进行,形成了完整的分布式的架构。同样,我们来看下面的图,直观的感受一下。

币安何一:币安除了是一个被大家熟知的交易所外,还在做孵化器:币安联合创始人何一在问答会里表示,很多人都在问,关于币安的价值及未来的规划。其实对于币安是一个交易所这个部分大家是比较熟悉的。那相对比较不熟悉的可能是我们的孵化器。我们孵化器这个部分其实目前主要的投资方向是帮助行业进行基础建设。[2018/5/18]

3、shard的数据分片机制

那么这个时候大家考虑一下,比如有一个index,专门存放论坛的帖子,现在论坛的帖子有1亿,占用了1T的磁盘空间,这个还好说。如果这个帖子有10亿,100亿,占用了10TB、甚至100TB的磁盘空间呢?那这个index还能放到一台机器上存储吗?肯定不行的。这个时候,必须得支持这个index的数据分布式存储在多台机器上,利用多台机器的磁盘空间来承载这么大的数据量。

而且,需要保证每台机器上对这个index存储的数据量不要太大,因为控制单台机器上这个index的数量,可以保证他的搜索性能更高。所以就引入一个新的概念:shard数据分片结构、每个index都可以指定创建多少个shard,每个shard就是一个数据分片,会负责存储这个index的一部分数据。

币安何一:对于红杉的事情是大家过度解读了:币安联合创始人何一在问答会中表示,币安当时比较弱小,的确需要大的投资基金帮助,但后来发现红杉对币安未来的发展帮助比较有限。中国传统文化喜欢给对方面子,不想币安这样怼来怼去。公司能否发展好不是看和谁的关系好,还是得看是否真正对行业做出贡献,是否是一个伟大的公司,是否真正对股东负责。[2018/5/18]

比如说index里有3亿帖子,占据3TB数据。然后这个index你设置了3个shard。那么每个shard就可以包含一个1TB大小的数据分片,每个shard在集群里的一台机器上,这样就形成了利用3台机器来分布式存储一个index的数据的效果了。大家看下面的图:

现在index里的3TB数据分布式存储在了3台机器上,每台机器上有一个shard,每个shard负责管理这个index的其中1TB数据的分片。而且,另外一个好处是,假设我们要对这个index的3TB数据运行一个搜索,是不是可以发送请求到3台机器上去?3台机器上的shard直接可以分布式的并行对一部分数据进行搜索,起到一个分布式搜索的效果,大幅度提升海量数据的搜索性能和吞吐量。

4、Replica多副本数据冗余机制

但是现在有一个问题,假如说3台机器中的其中一台宕机了,此时怎么办呢?是不是这个index的3TB数据的1/3就丢失了?因为上面有1TB的数据分片没了。所以说,还需要为了实现高可用使用Replica多副本数据冗余机制。在Elasticsearch里,就是支持对每个index设置一个replica数量的,也就是每个shard对应的replica副本的数量。比如说你现在一个index有3个shard,你设置对每个shard做1个replica副本,那么此时每个shard都会有一个replicashard。这个初始的shard就是primaryshard,而且primaryshard和replicashard是绝对不会放在一台机器上的,避免一台机器宕机直接一个shard的副本也同时丢失了。我们再来看下面的图,感受一下:

在上述的replica机制下,每个primaryshard都有一个replicashard在别的机器上,任何一台机器宕机,都可以保证数据不会丢失,分布式搜索引擎继续可用。Elasticsearch默认支持每个index是5个primaryshard,每个primaryshard有1个replicashard为副本。

长期以来,集中式系统给我们的生活带来了很多改变。它对我们的日常生活产生了影响,影响了我们如何阅读新闻,我们可以搜索到多少信息,甚至可以影响我们访问的内容。过去几年,区块链技术有了巨大的增长,给一直坚守它的人们带来了希望。但是,垄断使得那些持有他们的公司处于一种强势地位。垄断公司可以随时改变政策,窃取用户数据。更可怕的事情正在发生:丧失数据所有权。

IPSOU(interplanetSearch)是基于IPFS协议的分布式存储和区块链技术的新型搜索引擎,通过关注用户隐私,分散化和搜索效率来构建新的体验。IPSOU允许用户通过加密技术和智能合约控制他们的个人数据.使用IPSOU可以享受无限制和不受审查的浏览,您可以通过该站点发出请求,您可以获取IPFS资源并将其发送回您的计算机和移动设备。

在IPSOU上,用户可以免费搜索IPFS网络文件,并使用IPFS和其他底层协议访问内容,而不需要依赖于集中的服务(和服务器),如谷歌或百度。用户将再次拥有自己的数据,没有广告跟踪,没有针对性的广告,也没有隐私问题。IPSOU使用区块链技术保护隐私。

集中式系统改变我们的生活,但我们对数据的所有权也在逐渐消减,分布式系统带来的应用,会使我们在生活、工作更加隐私、安全、高效、可信。

标签:SHARDSHAHARDINDAlmace ShardsOuro Governance ShareAree ShardsMIND价格

OKB热门资讯
POST:DeFi到底是什么东西?它又能干嘛?_Outpost

在数字货币生态中,其他赛道格局趋于稳定,去中心化借贷仍有留白。从2019年年初起,DeFi成为区块链领域里的长线热点话题。提供DeFi服务的平台和产品也如雨后春笋般破土而出.

EFI:从一键发币到一键发链 也谈公链的量产时代_DAO

比特币的孤独时代 十年前比特币呱呱落地的时候。1万个比特币都换不到1块披萨。公链以比特币为首。当时还没有其他链、也没有其他币。当比特币的价值渐渐被认可的时候.

ORI:EOS持有者投票决定将年通货膨胀率从5%降低到1%_EOS

EOS的区块生产者EOSAuthority维护的投票平台数据显示,EOS持有者投票决定,自6月1日起将年度通胀率从5%下调至1%.

DEX:四川开始打击矿场?_ETH Max Yield Index

今天的封面是《死亡之岛》,阿诺德·勃克林近日四川康定对东片区”三无项目”、生产乱象进行了排查整治,其中不乏大量利用丰水期低电力成本进行挖矿的矿场.

BTC:BTC跌破8000 抄底机会到了吗?_AOL

本文观点仅代表个人,仅限交流学习,所有内容不构成任何投资建议。想及时了解更多行情信息,请添加官方微信进群:jiamibaoluo.

TRX:王峰评“孙宇晨风波”:为什么我依然支持孙宇晨?_AOL币

火星财经APP一线报道,火星财经及共识实验室发起人王峰今日就外界对孙宇晨的诸多争议发表评论,表示自己依然支持孙宇晨.