首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

1万属性,100亿数据,每秒10万吞吐,架构如何设计?

; (3)每个属性上都有查询需求,各组合属性上都可能有组合查询需求,招聘要查职位/经验/薪酬范围,二手手机要查颜色/价格/型号,二手要查冰箱/洗衣机/空调; (4)吞吐量很大,每秒几10万吞吐; 如何解决...能否具备自描述性; (3)随时可以增加属性,保证扩展性; 解决完海量异构数据的存储问题,接下来,要解决的是类目的扩展性问题。...对于这个搜索引擎架构,简单说明一下: 为应对100亿级别数据量、几十万级别的吞吐量,业务线各种复杂的复杂检索查询,扩展性是设计重点: (1)统一的代理层,作为入口,其无状态性能够保证增加机器就能扩充系统性能...; (2)统一的结果聚合层,其无状态性也能够保证增加机器就能扩充系统性能; (3)搜索内核检索层,服务和索引数据部署在同一台机器上,服务启动时可以加载索引数据到内存,请求访问时从内存中load数据,访问速度很快...: 为了满足数据容量的扩展性,索引数据进行了水平切分,增加切分份数,就能够无限扩展性能 为了满足一份数据的性能扩展性,同一份数据进行了冗余,理论上做到增加机器就无限扩展性能 系统时延,100亿级别帖子检索

84320
您找到你想要的搜索结果了吗?
是的
没有找到

1万属性,100亿数据,每秒10万吞吐,架构如何设计?

3)每个属性上都有查询需求,各组合属性上都可能有组合查询需求,招聘要查职位/经验/薪酬范围,二手手机要查颜色/价格/型号,二手要查冰箱/洗衣机/空调; (4)吞吐量很大,每秒几10万吞吐; 如何解决100...能否具备自描述性; (3)随时可以增加属性,保证扩展性; 解决完海量异构数据的存储问题,接下来,要解决的是类目的扩展性问题。...* 对于这个内核自研服务的搜索引擎架构,简单说明一下: 为应对100亿级别数据量、几十万级别的吞吐量,业务线各种复杂的复杂检索查询,扩展性是设计重点: (1)统一的代理层,作为入口,其无状态性能够保证增加机器就能扩充系统性能...: 为了满足数据容量的扩展性,索引数据进行了水平切分,增加切分份数,就能够无限扩展性能 为了满足一份数据的性能扩展性,同一份数据进行了冗余,理论上做到增加机器就无限扩展性能 系统时延,100亿级别帖子检索...ps:入口层是Java研发的,聚合层与检索层都是C语言研发的。 帖子业务,一致性不是主要矛盾,E-search会定期全量重建索引,以保证即使数据不一致,也不会持续很长的时间。

1.8K20

Java入门(1)-- 初识Java

1.1 Java简介 1.1.1 什么是Java语言 Java是1995年由Sun公司推出的一门面向对象的程序设计语言,由有“Java之父”之称的Sun研究院院士詹姆斯•戈士林博士设计而成。...Java最初的名字是OAK,在1995年被重命名为Java,并正式发布。 使用Java语言编写的程序是跨平台的,从PC机到手持电话,到处都运行着Java开发的程序和游戏。...Java SE Java SE是Java的标准版,主要用于桌面应用程序的开发,同时也是Java的基础,它包含Java语言基础、JDBC(Java数据库连接性)操作、I/O(输入/输出)、网络通信、多线程等技术...1)语法规则和C++类似; 2)Java语言对C++进行了简化和提高; 3)Java提供了丰富的类库、API文档以及第三方开发包,另外还有大量基于Java的开源项目。...1.2.10 动态 Java可以动态调整库中的方法和增加变量,而客户端却不需要任何更改。

38420

java概念1

static void main(String[] args) {//其中[]也可以写在args后面,args也可以随便写成其他字母,例如asdfjkl,这里args只是一个形式参数,所以可以随便改变 Java...注:case语句后一般要加break语句;多个case可以合并在一起;default可以省略,但不推荐这样做;Java中swith语句只能探测int类型值。     ...1Java 多态的实现 答案:继承、重载、覆盖 2、String 类是否能被继承 答案:不能,是个final 修饰的类。...15、说出ArrayList,Vector,  LinkedList 的存储性能和特性 答案:ArrayList 和Vector 都是使用数组方式存储数据,此数组元素数大于 实际存储的数据以便增加和插入元素...254 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法;这种动态获取的以及动态调用对象的方法的功能称为java语言的反射机制

968110

Java漫谈1

对于接触编程的人来说,Java更多地代表了一门编程语言。 Java是一门通用的计算机编程语言,它是并行的,基于类的,面向对象的,可以一次编写到处运行的一门语言。 以上这句话摘自维基百科。...今天有朋友问我什么是Java的话,我通常会这么表达,如下: 你可以把软件产业想象成是一个江湖,在这个江湖中,C语言是易筋经,C++是少林七十二绝技。而Java就相当于是独孤求败用过的那柄玄铁重剑。...这种表述没有直接回答Java的本质,而是先从其在体系中的关系入手,来描述它。...不过在现实的考试中你要是没有模版也能写出一些话出来,但在Java中,要是没有类,那可就什么程序都run不起来了。...小结一下,这篇文章主要分享了我对Java概念的理解,其中最重要的是它基于类,并且面向对象的特征。Java概念的话题就聊到这儿,我们下回见。

614140
领券