diff --git a/Makefile b/Makefile index 5f8aeec..0530138 100644 --- a/Makefile +++ b/Makefile @@ -2,6 +2,7 @@ serve: hugo server \ --buildDrafts \ --buildFuture \ + --bind 0.0.0.0 \ --disableFastRender production-build: diff --git a/assets/sass/style.sass b/assets/sass/style.sass index fff6dab..ee339db 100644 --- a/assets/sass/style.sass +++ b/assets/sass/style.sass @@ -50,7 +50,7 @@ $colors: mergeColorMaps(("twitter-blue": ($twitter-blue, $white)), $colors) +touch margin-bottom: 2rem -.is-cncf-logo +.brought-to-you-by +logo(40, 60) margin-top: 2.5rem diff --git a/config.toml b/config.toml index 17abd9c..10c3d00 100644 --- a/config.toml +++ b/config.toml @@ -1,4 +1,4 @@ -title = "TiKV" +title = "RustCon Asia 2019" baseURL = "https://tikv.org" languageCode = "en-us" pygmentsCodeFences = true @@ -7,14 +7,20 @@ disableKinds = ["taxonomy", "taxonomyTerm"] [params] favicon = "favicon.png" -googleAnalyticsId = "UA-130734531-1" +googleAnalyticsId = "TODO" -[params.versions] -latest = "2.1" +[params.dates] +start = "1 April" +end = "2 April" +year = "2019" + +[params.location] +name = "TODO" +address = "TODO" [params.description] -brief = "A distributed transactional key-value database" -long = "Based on the design of [Google Spanner](https://ai.google/research/pubs/pub39966) and [HBase](https://hbase.apache.org), but simpler to manage and without dependencies on any distributed filesystem" +brief = "Beijing" +long = "Join us for the first Rust Conference in Asia!" [params.fonts] sansserif = "Titillium Web" @@ -24,7 +30,9 @@ monospace = "Inconsolata" white = "img/logos/horizontal/white/tikv-horizontal-white.png" color = "img/logos/horizontal/color/tikv-horizontal-color.png" black = "img/logos/horizontal/black/tikv-horizontal-black.png" -cncf = "img/logos/cncf-color.png" +pingcap = "img/logos/pingcap.png" +baidu = "img/logos/baidu.png" +nervos = "img/logos/nervos.png" [params.assets] fontAwesomeVersion = "5.3.1" @@ -32,16 +40,15 @@ js = ["jquery-3.3.1", "anchor", "app"] css = ["syntax"] [params.socialmedia] -twitter = "tikvproject" -github = "https://github.com/tikv/tikv" +github = "https://github.com/rustcon-asia/beijing-2019" [[params.home.buttons]] -text = "Overview" -link = "/docs" +text = "Tickets" +link = "/tickets" [[params.home.buttons]] -text = "Concepts and architecture" -link = "/docs/architecture" +text = "Call for Proposals" +link = "/cfp" [[params.home.buttons]] text = "Blog" diff --git a/content/about.md b/content/about.md new file mode 100644 index 0000000..c650864 --- /dev/null +++ b/content/about.md @@ -0,0 +1,19 @@ +--- +title: About +--- + +In 2018 several members of the Rust community in China began talking: Europe, North America, and now South America have their own community conferences. + +## What about Asia? + +Founding organizers from Nervos and PingCAP knew that something must be done. Later, our friends from Baidu X-lab offered their help. With the support & assistance of the Rust team itself, as well as the RustFest Europe team, a conference began to take shape. + +## RustCon Asia + +> Asia has a long history of Rust use. + +**People in Asia are using Rust.** With a 'Rust China Community' group on Wechat of over 300 users and other Rust centric learning groups (some with over 80 members), we wanted to connect with other Rust communities across Asia, & Worldwide. + +**Companies in Asia are using Rust.** PingCAP, based in Beijing, was one of the first production users of Rust in the (now CNCF) project [TiKV](http://tikv.org/). Nervos is using Rust to build next trust layers in [Cryptape](https://www.cryptape.com/#/). Baidu X-Lab is using Rust to build a more secure Linux with their [MesaLock](https://github.com/mesalock-linux/) project. + +We can accomplish more, and do better, together. So let us gather our voices together at RustCon Asia. \ No newline at end of file diff --git a/content/adopters.md b/content/adopters.md deleted file mode 100644 index 80456e3..0000000 --- a/content/adopters.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: TiKV adopters ---- - -TiKV has been adopted by many companies across a wide range of industries. The table below lists many of them: - -{{< adopters >}} diff --git a/content/blog/hello-asia.md b/content/blog/hello-asia.md new file mode 100644 index 0000000..b817304 --- /dev/null +++ b/content/blog/hello-asia.md @@ -0,0 +1,32 @@ +--- +title: "Hello Asia" +date: 2019-01-08 +author: Ana, RustCon Team +--- + +Today we are very proud to announce RustCon Asia {{< param "dates.year" >}}, happening {{< param "dates.start" >}} to {{< param "dates.end" >}} at {{< param "location.name" >}} in Beijing, China. The conference will span two days, including 1 day of talks and 1 day of workshops. + + + +We chose Beijing to host this conference because it makes the most sense. All of our organizers are based in China, and we are most familiar with the Chinese community. We hope to make the conference annual, and we hope to have it migrate between places to ensure everyone can access the event. + +While we're still organizing the final details, you can expect the following things from us: + +* A space to meet new friends, new or old. +* English and Chinese talks. Live transcription will be available on-site, so you'll be able to follow along even if you don't speak both languages. +* Hands-on workshops (not transcribed). +* A blind CFP process, mirroring that of Rust LatAm, Rust Belt Rust and RustFest, to ensure a high quality of content. +* Members of organizations using Rust in production like Mozilla, Nervos, and PingCAP. +* An open, inviting atmosphere where everyone is welcome. +* A team that wants to make sure you can access the event. Contact us (team@rustcon.asia) for help. +* A chance to explore Beijing with new & old friends. + +You can propose a talk or workshop here: + +// TODO + +You can buy earlybird tickets here: + +// TODO + +RustCon Asia is organized by members of PingCAP (makers of TiKV), Nervos (makers of Cryptape), and Baidu X-Lab (makers of Mesalock Linux). For some of us, it's our first time organizing an event like this. So please give us constructive feedback if you see something wrong. \ No newline at end of file diff --git a/content/blog/tikv-2.1-more-raft-less-hotspots.md b/content/blog/tikv-2.1-more-raft-less-hotspots.md deleted file mode 100644 index 2ab80c8..0000000 --- a/content/blog/tikv-2.1-more-raft-less-hotspots.md +++ /dev/null @@ -1,51 +0,0 @@ ---- -title: "TiKV 2.1: More Raft, Less Hotspots" -date: 2018-12-04 -author: Siddon Tang, Chief Engineer at PingCAP and TiKV Project Lead ---- - -The TiKV team is proud to announce today that TiKV 2.1 is ready for General Availability (GA). TiKV is an open-source distributed transactional [key-value store](https://github.com/tikv/tikv) built in Rust. - - - -Since its [2.0](https://www.pingcap.com/blog/tidb-2-0-announcement/) release back in April 2018, TiKV became a member project of the [Cloud Native Computing Foundation](https://www.cncf.io/blog/2018/08/28/cncf-to-host-tikv-in-the-sandbox/), so it can be an independent foundational building block for other systems. - -TiKV is currently being adopted in production by [hundreds of companies](https://pingcap.com/success-stories/), often times together with [TiDB](https://github.com/pingcap/tidb), its stateless SQL layer companion, but also increasingly on its own to help users unify its data storage layer while exposing a key-value interface. It is currently serving millions of users in industries from banking, fintech, and insurance, to food delivery, ridesharing, and gaming. The largest cluster has more than 100 nodes storing 100+ TB of data. - -The TiKV community is also thriving, with 39 new contributors since 2.0 and a newly [open-sourced Redis implementation](https://github.com/meitu/titan) on top of TiKV called Titan, led by our friends at [Meitu](https://www.crunchbase.com/organization/meitu). - -What's exciting isn't just the rate of adoption and community engagement, but also the multitude of real-world scenarios that TiKV is exposed to and must navigate with resilience and grace. In the last few months, it has had to handle cross-data center disaster recovery, six-figure throughput requirement, [massive traffic spike on Singles’ Day](https://twitter.com/pingcap/status/1061679993040834560) (one of the largest online shopping holidays in the world), hardware and network failures, and more. - -These experiences shaped what we built in 2.1, so TiKV, whether it's used with TiDB or by itself, would always have your back and help you navigate the future and handle an unpredictable world. - -## What's New in TiKV 2.1 - -There are many new features, improvements, and enhancements in 2.1. To check out the full list, please see the TiKV section of the [official 2.1 GA release notes](https://tikv.org/blog/tikv-2.1ga-release-notes/), but here are some major highlights: - -### New and Improved Raft - -The Raft consensus protocol inside TiKV is at the core of how it ensures strong consistency and high availability of your data. Thus, constantly improving Raft has always been a high priority. In 2.1, we have incorporated three new Raft features: - -- PreVote -- this feature pre-checks the likelihood of certain members of a Raft group becoming a Leader before voting takes place, which reduces performance fluctuation and improves stability when a TiKV node enters or returns to a cluster. - -- Learner -- a Raft Learner node is a non-voting member of a Raft group. By adding a Learner first before other voting members are added, this feature improves data safety and availability, especially in a cross-data center deployment. - -- Region Merge -- automatically merge many small regions into one larger region to reduce cost of cluster management, and improve overall performance and stability for large-scale clusters. Note: this feature is available in 2.1 but not enabled by default. - -### Hotspot Scheduling - -Hotspot formation is one of the biggest enemies to a performant distributed database. It is also one of the most unpredictable -- you never know when and how hotspots could form to create bottlenecks in your system. - -Thus, in this new version we did a lot of work to make TiKV, working with the Placement Driver (PD), smarter at detecting hotspot formation more quickly by aggregating additional system metadata to be monitored continuously. We also further optimized its ability to execute hotspot scheduling policy -- breaking up and distributing hotspots with more efficiency and lower system cost. Lastly, 2.1 also makes available an interface where users can manually break up Regions in specific TiKV nodes to remove hotspots, which can be useful in extreme situations where the system cannot respond quickly enough to remove hotspots automatically. - -### More Efficient Garbage Collection - -In 2.1, we further optimized garbage collection (GC) in TiKV. The new optimization reduced GC's affect on online write performance, while increasing the speed in storage recovery. Based on our internal testing, when deleting a 1TB table in 2.1, it takes about 10 seconds to recover 99% of the storage space. - -## Ode to Open Source - -TiKV 2.1 simply would not be possible with the help and support of an increasingly vibrant open source community. We firmly believe that for TiKV to become a core infrastructure technology that can help its users handle an unpredictable world, the open source way is the only way forward to achieve that goal. And our community has more than validated our belief, with bug fixes, issue reports, and valuable contributions in every corner of this major release. - -To encourage more community participation, we've made design documents for [TiKV](https://github.com/tikv/rfcs) public with a transparent RFC process. If you are interested in contributing to TiKV, please see our contribution guide [here](https://github.com/tikv/tikv/blob/master/CONTRIBUTING.md). - -We are forever grateful and indebted to our open source community for always fueling our spirit with your encouragement, critique, contribution, and patience. TiKV would not be what it is today without you. And we can’t wait to take it to new heights with you, together. diff --git a/content/blog/tikv-2.1ga-release-notes.md b/content/blog/tikv-2.1ga-release-notes.md deleted file mode 100644 index 5afd86b..0000000 --- a/content/blog/tikv-2.1ga-release-notes.md +++ /dev/null @@ -1,44 +0,0 @@ ---- -title: TiKV 2.1 GA Release Notes -date: 2018-11-30 ---- - -On November 30, 2018, TiKV 2.1 GA is released. See the following updates in this release. Compared with TiKV 2.0, this release has great improvements in stability, performance, and usability. - - - -## Coprocessor - -- Add more built-in functions -- [Add Coprocessor `ReadPool` to improve the concurrency in processing the requests](https://github.com/tikv/rfcs/blob/master/text/2017-12-22-read-pool.md) -- Fix the time function parsing issue and the time zone related issues -- Optimize the memory usage for pushdown aggregation computing - -## Transaction - -- Optimize the read logic and memory usage of MVCC to improve the performance of the scan operation and the performance of full table scan is 1 time better than that in TiDB 2.0 -- Fold the continuous Rollback records to ensure the read performance -- [Add the `UnsafeDestroyRange` API to support to collecting space for the dropping table/index](https://github.com/tikv/rfcs/blob/master/text/2018-08-29-unsafe-destroy-range.md) -- Separate the GC module to reduce the impact on write -- Add the `upper bound` support in the `kv_scan` command - -## Raftstore - -- Improve the snapshot writing process to avoid RocksDB stall -- [Add the `LocalReader` thread to process read requests and reduce the delay for read requests](https://github.com/tikv/rfcs/pull/17) -- [Support `BatchSplit` to avoid large Region brought by large amounts of write](https://github.com/tikv/rfcs/pull/6) -- Support `Region Split` according to statistics to reduce the I/O overhead -- Support `Region Split` according to the number of keys to improve the concurrency of index scan -- Improve the Raft message process to avoid unnecessary delay brought by `Region Split` -- Enable the `PreVote` feature by default to reduce the impact of network isolation on services - -## Storage Engine - -- Fix the `CompactFiles`bug in RocksDB and reduce the impact on importing data using Lightning -- Upgrade RocksDB to v5.15 to fix the possible issue of snapshot file corruption -- Improve `IngestExternalFile` to avoid the issue that flush could block write - -## tikv-ctl - -- [Add the `ldb` command to diagnose RocksDB related issues](https://github.com/tikv/tikv/blob/master/docs/tools/tikv-control.md#ldb-command) -- The `compact` command supports specifying whether to compact data in the bottommost level diff --git a/data/adopters.yaml b/data/adopters.yaml deleted file mode 100644 index 34d2d6f..0000000 --- a/data/adopters.yaml +++ /dev/null @@ -1,38 +0,0 @@ -- name: Mobike - url: https://en.wikipedia.org/wiki/Mobike - industry: Ridesharing - stories: - - language: English - url: https://www.pingcap.com/blog/Use-Case-TiDB-in-Mobike/ - - language: Chinese - url: https://www.pingcap.com/cases-cn/user-case-mobike/ -- name: Jinri Toutiao - url: https://en.wikipedia.org/wiki/Toutiao - industry: Mobile news platform - stories: - - language: Chinese - url: https://www.pingcap.com/cases-cn/user-case-toutiao/ -- name: Yiguo.com - url: https://www.crunchbase.com/organization/shanghai-yiguo-electron-business - industry: E-commerce - stories: - - language: English - url: https://www.datanami.com/2018/02/22/hybrid-database-capturing-perishable-insights-yiguo/ - - language: Chinese - url: https://www.pingcap.com/cases-cn/user-case-yiguo -- name: Yuanfudao.com - url: https://www.crunchbase.com/organization/yuanfudao - industry: EdTech - stories: - - language: English - url: https://www.pingcap.com/blog/2017-08-08-tidbforyuanfudao - - language: Chinese - url: https://www.pingcap.com/cases-cn/user-case-yuanfudao -- name: Ele.me - url: https://www.ele.me/home/ - industry: Food delivery - stories: - - language: English - url: https://www.pingcap.com/blog/use-case-tidb-in-eleme/ - - language: Chinese - url: https://www.pingcap.com/cases-cn/user-case-eleme-1/ diff --git a/data/features.yaml b/data/features.yaml index 55141bb..28b0c63 100644 --- a/data/features.yaml +++ b/data/features.yaml @@ -1,12 +1,24 @@ -- name: Geo-replication - description: TiKV uses the [Raft](https://raft.github.io/) consensus algorithm and the [Placement Driver](/docs/architecture#placement-driver) to support geo-replication. - icon: fa-globe -- name: Horizontal scalability - description: With the [Placement Driver](/docs/architecture#placement-driver) and carefully designed Raft groups, TiKV excels in horizontal scalability and can easily scale to 100+ terabytes of data. +- name: All Skill Levels + description: | + Our content will be catered towards having something for all of our attendees. + + From never ran `cargo` to core committer. icon: fa-ruler-horizontal -- name: Consistent distributed transactions - description: Similar to Google's [Spanner](https://ai.google/research/pubs/pub39966), TiKV supports externally consistent distributed transactions. - icon: fa-align-center -- name: Coprocessor support - description: Similar to [Hbase](https://hbase.apache.org), TiKV implements a coprocessor framework to support distributed computing. +- name: Local Connections + description: | + Get a chance to meet with other Rust users in your area and learn how they're using Rust. + + Need a job, an employee? We want to help. icon: fa-microchip +- name: Global Reach + description: | + We invite speakers from both Asia & worldwide to share with us in either Chinese or English. + + Live translation will be available. + icon: fa-align-center +- name: Warm & Welcoming + description: | + As the Rust community has shown, a diverse set of attendees creates a better event. + + We follow the [Berlin Code of Conduct](https://berlincodeofconduct.org/) for this event. + icon: fa-globe diff --git a/data/organizers.yaml b/data/organizers.yaml new file mode 100644 index 0000000..89853a3 --- /dev/null +++ b/data/organizers.yaml @@ -0,0 +1,9 @@ +- name: Baidu X-Lab + url: http://xlab.baidu.com/en/ + logo: img/logos/baidu.png +- name: Nervos + url: https://www.nervos.org/ + logo: img/logos/nervos.png +- name: PingCAP + url: https://pingcap.com/ + logo: img/logos/pingcap.png \ No newline at end of file diff --git a/layouts/index.html b/layouts/index.html index 5049285..b77304a 100644 --- a/layouts/index.html +++ b/layouts/index.html @@ -3,12 +3,14 @@ {{- $longDesc := .Site.Params.description.long | markdownify }} {{- $buttons := .Site.Params.home.buttons }} {{- $logo := .Site.Params.logos.color | relURL }} -{{- $cncfLogo := .Site.Params.logos.cncf | relURL }} +{{- $orga := .Site.Data.organizers }} +{{- $baiduLogo := .Site.Params.logos.baidu | relURL }} +{{- $nervosLogo := .Site.Params.logos.nervos | relURL }} {{- $features := .Site.Data.features }}
- +
@@ -74,10 +76,15 @@

- TiKV is a Cloud Native Computing Foundation member project + A Rust Community conference organized by a team from Nervos, PingCAP, and Baidu X-Lab.

- +
+ {{- range $orga }} +
+ {{ .name }}
+ {{- end}} +
{{ end }} diff --git a/layouts/partials/footer.html b/layouts/partials/footer.html index c134458..48c7424 100644 --- a/layouts/partials/footer.html +++ b/layouts/partials/footer.html @@ -1,27 +1,27 @@ {{- $year := now.Year }} {{- $logo := .Site.Params.logos.white | relURL }} -{{- $docs := where .Site.Pages "Section" "docs" }} +{{- $orga := .Site.Data.organizers }} {{- $latest := .Site.Params.versions.latest }} {{- $blogPosts := where .Site.RegularPages "Section" "blog" }}