데이터 베이스 MySQL 튜토리얼 翻译文档:TokuMX的分形索引是什么?

翻译文档:TokuMX的分形索引是什么?

Jun 07, 2016 pm 04:36 PM
t 문서 무엇인가요 색인 번역하다

本文翻译自?TokuMX Fractal Tree(R) indexes, what are they? TokuMX的一大创新在于,它打破了一条长久存在的关于数据库的规则:要保证好的写入性能,索引的工作集应当能够放在内存里。标准答案是这样的:如果索引的工作集比内存要大,写入就需要执行I/O,I/

本文翻译自?TokuMX Fractal Tree(R) indexes, what are they?

TokuMX的一大创新在于,它打破了一条长久存在的关于数据库的规则:要保证好的写入性能,索引的工作集应当能够放在内存里。标准答案是这样的:如果索引的工作集比内存要大,写入就需要执行I/O,I/O就会成为限制因素,性能就会下降。所以,要么让索引小到能全部放进内存,要么提供一种索引写入模式,避免工作集过大,比如MongoDB所采用的,内存中只为最近插入的数据保存索引。

但对TokuMX来说,这是绝对不成立的。依靠TokuMX所提供的创新性的分形树索引,索引的工作集可以比内存更大,同时写入性能不受影响。分形树索引为什么在重度写入(无论是MongoDB还是MySQL)的评测中能表现优异,原因就在这里。

其他数据库仍在苦苦挣扎时,TokuMX是如何提供这种写入性能的?做法就是将众多数据库(MongoDB, MySQL, BerkelyDB等等)使用的主要存储结构——B树索引,替换成为写入优化的数据结构——分形树索引。

“为写入优化的数据结构”意味着什么?

为了解这一点,首先你需要理解,为什么B树索引在索引超出内存限制时的表现会变差?下面是B树的图。

B树是种简单(同时美观)的数据结构。在B树中,内部节点存储支点(Pivot)及指针,叶子节点存储全部真正的数据。在B树上插入时,需要找到数据对应叶子节点,再将数据写入。如果所有节点都在内存里,这样做的速度是很快的。但是如果大部分数据不在内存里(在上图中,只有内部节点和极少数叶子节点在内存里),检索叶子节点就需要执行I/O操作。其实,基本上所有的插入都会执行I/O操作。I/O的瓶颈就从这里来。写入性能下降的根源就在这里。如果硬盘每秒可以执行数百次I/O操作,那么B树充其量也只能执行这么几百次写入操作。所以MongoDB和MySQL会在iiBench测试中败下阵来,自然而然地,用户会被告知“应当把索引的工作集保存在内存里”。

那么,分形树索引的速度为什么会快很多?简单说,它大量减少了I/O操作。下面解释原因。

分形树索引和B树索引的主要差别,解释了在内部节点中的写入性能差别。

  • 使用B树时,内部节点只保存支点和指向各子节点的指针。
  • 使用分形树索引时,内部节点保存支点、指针,以及各子节点的缓冲区

请注意,在上图中,每个内部节点中都有其子节点对应的缓冲区(灰色)。

依靠缓冲,写操作可以累积起来批量执行,所以整个过程是这样的:

  • 从根节点出发,找到应当向下开始遍历的那个子节点
  • 将待定(pending)的写操作加入缓冲区
  • 如果该子节点对应的缓冲去还有空间,返回。否则,将待定的写操作到下一层节点的缓冲区中,腾出空间用于未来的写入。

在根节点执行刷缓冲区,可能导致一系列的缓冲区刷新。也就是说,在根节点刷缓冲区可能将大量数据刷向其子节点,结果子节点的缓冲区也满了,于是它们也需要刷缓冲区。这种情况会持续发生,最终刷到叶子节点为止。

这种算法为什么会提供如此好的性能呢?简单说是减少了I/O(真的,关键就在I/O)。I/O的代价日益高昂,如果要执行I/O操作,总得有对应的回报来合算。如果使用B树索引,每插入一小篇文档,或者一行数据,或者一个键值对,就需要执行一次I/O。如果使用分形树索引,可以假设根节点是常驻内存的,所以我们知道,如果在某次写入时引发了了I/O操作,其实是写入了一整个缓冲区的数据。这可能包含很多文档(或者很多行,很多键值对…)。因为每个I/O操作其实归拢了很多写入,所以分形树索引大大减少了I/O操作的数量,也就解除了B树索引中的I/O瓶颈。

因为I/O的减少,分形树索引不会要求索引必须小于内存。即使超过内存的限制,TokuMX依然可以维持很高的写入性能。

关于这种算法,还有一点也值得一提,如果数据都存在内存里,在写入性能上,分形树索引相对B树索引并没有算法上的优势。如果内存足够大,从算法来分析,B树和分形树都很快。

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

ccsvchst.exe는 어떤 프로세스인가요? ccsvchst.exe는 어떤 프로세스인가요? Feb 19, 2024 pm 11:33 PM

ccsvchst.exe는 SEP(Symantec Endpoint Protection) 소프트웨어의 일부인 공통 프로세스 파일이며, SEP는 잘 알려진 네트워크 보안 회사인 Symantec이 개발한 엔드포인트 보호 솔루션입니다. 소프트웨어의 일부로 ccsvchst.exe는 SEP 관련 프로세스를 관리하고 모니터링하는 역할을 담당합니다. 먼저 SymantecEndpointProtection(

Edge 브라우저와 함께 제공되는 번역 웹 페이지가 누락된 경우 어떻게 해야 합니까? Edge 브라우저와 함께 제공되는 번역 웹 페이지가 누락된 경우 어떻게 해야 합니까? Mar 14, 2024 pm 08:50 PM

엣지 브라우저에는 언제 어디서나 번역할 수 있는 번역 기능이 있어 사용자에게 큰 편리함을 제공합니다. 그러나 많은 사용자들은 내장된 번역 웹 페이지가 누락되었다고 말합니다. 그러면 엣지 브라우저가 자동으로 어떻게 해야 합니까? 내가 가져온 번역 페이지가 없어졌나요? Edge 브라우저와 함께 제공되는 번역된 웹 페이지가 누락된 경우 이를 복원하는 방법을 이 사이트에서 소개하겠습니다. Edge 브라우저에 포함된 번역 웹페이지가 누락되어 복원하는 방법 1. 번역 기능이 활성화되어 있는지 확인하십시오. Edge 브라우저에서 오른쪽 상단에 있는 세 개의 점 아이콘을 클릭한 후 "설정" 옵션을 선택하십시오. 설정 페이지 왼쪽에서 언어 옵션을 선택하세요. '번역'을 확인하세요.

이 문서의 페이지를 다시 매거나 인쇄하려면 메모리나 디스크 공간이 부족합니다. Word 오류 이 문서의 페이지를 다시 매거나 인쇄하려면 메모리나 디스크 공간이 부족합니다. Word 오류 Feb 19, 2024 pm 07:15 PM

이 기사에서는 Microsoft Word에서 문서를 다시 페이지하거나 인쇄하기 위한 메모리나 디스크 공간 부족 문제를 해결하는 방법을 소개합니다. 이 오류는 일반적으로 사용자가 Word 문서를 인쇄하려고 할 때 발생합니다. 비슷한 오류가 발생하는 경우 이 문서에 제공된 제안 사항을 참조하여 문제를 해결하세요. 이 문서를 다시 페이지하거나 인쇄할 메모리나 디스크 공간이 부족합니다. Word 오류 "문서를 다시 페이지하거나 인쇄할 메모리나 디스크 공간이 부족합니다."라는 Microsoft Word 인쇄 오류를 해결하는 방법입니다. Microsoft Office 업데이트 메모리를 많이 차지하는 응용 프로그램 닫기 기본 프린터 변경 안전 모드에서 Word 시작 NorMal.dotm 파일 이름 바꾸기 Word 파일을 다른 이름으로 저장

Word 문서에 수정 지시를 추가하는 방법 Word 문서에 수정 지시를 추가하는 방법 Mar 01, 2024 am 09:40 AM

395단어, 즉 495단어입니다. 이 기사에서는 Word 문서에 빨간색 선을 추가하는 방법을 보여줍니다. 문서에 레드라인을 긋는 것은 사용자가 변경 사항을 명확하게 볼 수 있도록 문서를 수정하는 것을 의미합니다. 이 기능은 여러 사람이 함께 문서를 편집할 때 매우 중요합니다. 빨간색 선의 의미 문서 표시 빨간색 선은 빨간색 선이나 설명선을 사용하여 문서의 변경, 편집 또는 수정 사항을 나타내는 것을 의미합니다. 이 용어는 인쇄된 문서를 표시하기 위해 빨간 펜을 사용하는 관행에서 영감을 받았습니다. Redline 주석은 문서를 편집할 때 작성자, 편집자 및 검토자에게 권장되는 변경 사항을 명확하게 표시하는 등 다양한 시나리오에서 널리 사용됩니다. 법적 계약이나 계약의 변경 및 수정을 제안합니다. 논문, 발표 등에 대한 건설적인 비판과 제안을 제공합니다. W를 주는 방법

자막 없이 영화를 본다고 걱정하지 마세요! Xiaomi는 일본어 및 한국어 번역을 위한 Xiaoai 번역 실시간 자막 출시를 발표했습니다. 자막 없이 영화를 본다고 걱정하지 마세요! Xiaomi는 일본어 및 한국어 번역을 위한 Xiaoai 번역 실시간 자막 출시를 발표했습니다. Jul 22, 2024 pm 02:11 PM

7월 22일 소식에 따르면, 오늘 샤오미 더페이퍼 OS 공식 웨이보에서는 샤오아이 번역이 업그레이드됐다고 발표했다. 일본어와 한국어 번역에 실시간 자막이 추가됐고, 자막 없는 영상과 라이브 회의도 전사 및 번역이 가능해졌다. 실시간. 대면동시통역은 중국어, 영어, 일본어, 한국어, 러시아어, 포르투갈어, 스페인어, 이탈리아어, 프랑스어, 독일어, 인도네시아어, 힌디어 등 12개 언어 번역을 지원합니다. 위 기능은 현재 다음 세 가지 새로운 휴대폰만 지원합니다. Xiaomi MIX Fold 4 Xiaomi MIX Flip Redmi K70 Extreme Edition 2021년에는 Xiao Ai의 AI 자막이 일본어 및 한국어 번역에 추가될 예정인 것으로 알려졌습니다. AI 자막은 샤오미가 자체 개발한 동시통역 기술을 사용해 더 빠르고 안정적이며 정확한 자막 읽기 경험을 제공합니다. 1. 공식 성명에 따르면 Xiaoai 번역기는 오디오 및 비디오 장소에서만 사용할 수 있는 것이 아닙니다.

Sogou 브라우저를 번역하는 방법 Sogou 브라우저를 번역하는 방법 Feb 01, 2024 am 11:09 AM

Sogou 브라우저는 어떻게 번역하나요? 우리가 일반적으로 정보를 확인하기 위해 Sogou 브라우저를 사용할 때 영어로 된 일부 웹사이트를 보게 됩니다. 왜냐하면 웹사이트를 탐색하는 것이 매우 어렵기 때문입니다. 이런 상황이 발생합니다! Sogou 브라우저에는 번역 버튼이 내장되어 있습니다. 단 한 번의 클릭만으로 Sogou 브라우저가 자동으로 전체 웹페이지를 번역해 줍니다. 작동 방법을 모르신다면 편집자가 Sogou 브라우저에서 번역하는 방법에 대한 구체적인 단계를 정리했습니다. 방법을 모르신다면 저를 따라가서 읽어보세요! Sogou 브라우저 번역 방법 1. Sogou 브라우저를 열고 오른쪽 상단의 번역 아이콘을 클릭합니다. 2. 번역 텍스트 유형을 선택한 다음 번역해야 하는 텍스트를 입력합니다. 3. Sogou 브라우저가 자동으로 텍스트를 번역합니다. 이로써 위의 Sogou Browsing 작업이 모두 완료되었습니다.

Word 문서에서 하이퍼링크를 열 수 없습니다 Word 문서에서 하이퍼링크를 열 수 없습니다 Feb 18, 2024 pm 06:10 PM

최근 네트워크 기술의 지속적인 발전으로 인해 우리의 삶은 다양한 디지털 도구와 인터넷으로부터 분리될 수 없게 되었습니다. 문서를 처리할 때, 특히 서면으로 문서를 처리할 때 우리는 종종 워드 문서를 사용합니다. 그러나 때로는 어려운 문제에 직면할 수도 있습니다. 즉, 단어 문서의 하이퍼링크가 열리지 않는 경우가 있습니다. 이 문제는 아래에서 논의됩니다. 우선, 하이퍼링크는 워드 문서에 추가된 다른 문서, 웹 페이지, 디렉터리, 북마크 등에 대한 링크를 의미한다는 점을 분명히 해야 합니다. 이 링크를 클릭하면 나는

Windows 11/10에서 열 때 Word 문서가 비어 있습니다. Windows 11/10에서 열 때 Word 문서가 비어 있습니다. Mar 11, 2024 am 09:34 AM

Windows 11/10 컴퓨터에서 Word 문서를 열 때 빈 페이지 문제가 발생하면 상황을 해결하기 위해 복구해야 할 수도 있습니다. 이 문제의 원인은 다양하며, 가장 일반적인 원인 중 하나는 손상된 문서 자체입니다. 또한 Office 파일이 손상되면 유사한 상황이 발생할 수도 있습니다. 따라서 이 문서에서 제공하는 수정 사항이 도움이 될 수 있습니다. 일부 도구를 사용하여 손상된 Word 문서를 복구해 보거나 문서를 다른 형식으로 변환한 후 다시 열어볼 수 있습니다. 또한 시스템의 Office 소프트웨어를 업데이트해야 하는지 확인하는 것도 이 문제를 해결하는 방법입니다. 다음의 간단한 단계를 따르면 Win에서 Word 문서를 열 때 Word 문서가 비어 있는 문제를 해결할 수 있습니다.

See all articles